Merge branch '0.9.x' into socialbookmark

This commit is contained in:
Evan Prodromou 2010-12-27 22:38:36 -08:00
commit 8814fb3822
3 changed files with 48 additions and 25 deletions

View File

@ -1026,3 +1026,17 @@ StartActivityObjectFromGroup: When converting a group to an activity:object
EndActivityObjectFromGroup: After converting a group to an activity:object EndActivityObjectFromGroup: After converting a group to an activity:object
- $group: The group being converted - $group: The group being converted
- &$object: The finished object. Tweak as needed. - &$object: The finished object. Tweak as needed.
StartImportActivity: when we start to import an activity
- $user: User to make the author import
- $author: Author of the feed; good for comparisons
- $activity: The current activity
- $trusted: How "trusted" the process is
- &$done: Return value; whether to continue
EndImportActivity: when we finish importing an activity
- $user: User to make the author import
- $author: Author of the feed; good for comparisons
- $activity: The current activity
- $trusted: How "trusted" the process is

View File

@ -2033,7 +2033,7 @@ class Notice extends Memcached_DataObject
*/ */
public static function addWhereSinceId(DB_DataObject $obj, $id, $idField='id', $createdField='created') public static function addWhereSinceId(DB_DataObject $obj, $id, $idField='id', $createdField='created')
{ {
$since = self::whereSinceId($id); $since = self::whereSinceId($id, $idField, $createdField);
if ($since) { if ($since) {
$obj->whereAdd($since); $obj->whereAdd($since);
} }
@ -2072,7 +2072,7 @@ class Notice extends Memcached_DataObject
*/ */
public static function addWhereMaxId(DB_DataObject $obj, $id, $idField='id', $createdField='created') public static function addWhereMaxId(DB_DataObject $obj, $id, $idField='id', $createdField='created')
{ {
$max = self::whereMaxId($id); $max = self::whereMaxId($id, $idField, $createdField);
if ($max) { if ($max) {
$obj->whereAdd($max); $obj->whereAdd($max);
} }

View File

@ -63,6 +63,11 @@ class ActivityImporter extends QueueHandler
$this->trusted = $trusted; $this->trusted = $trusted;
$done = null;
if (Event::handle('StartImportActivity',
array($user, $author, $activity, $trusted, &$done))) {
try { try {
switch ($activity->verb) { switch ($activity->verb) {
case ActivityVerb::FOLLOW: case ActivityVerb::FOLLOW:
@ -75,19 +80,23 @@ class ActivityImporter extends QueueHandler
$this->postNote($user, $author, $activity); $this->postNote($user, $author, $activity);
break; break;
default: default:
throw new Exception("Unknown verb: {$activity->verb}"); throw new ClientException("Unknown verb: {$activity->verb}");
} }
Event::handle('EndImportActivity',
array($user, $author, $activity, $trusted));
$done = true;
} catch (ClientException $ce) { } catch (ClientException $ce) {
common_log(LOG_WARNING, $ce->getMessage()); common_log(LOG_WARNING, $ce->getMessage());
return true; $done = true;
} catch (ServerException $se) { } catch (ServerException $se) {
common_log(LOG_ERR, $se->getMessage()); common_log(LOG_ERR, $se->getMessage());
return false; $done = false;
} catch (Exception $e) { } catch (Exception $e) {
common_log(LOG_ERR, $e->getMessage()); common_log(LOG_ERR, $e->getMessage());
return false; $done = false;
} }
return true; }
return $done;
} }
function subscribeProfile($user, $author, $activity) function subscribeProfile($user, $author, $activity)