Provisional tweak for polls to go through atom feeds / ostatus

Had to fix some calls to MicroAppPlugin->saveNoticeFromActivity() which passed an OStatus_profile instead of a Profile...
Imported polls don't get data from upstream or send it back currently.
This commit is contained in:
Brion Vibber 2011-03-10 11:35:04 -08:00
parent 2567474ddd
commit 0511800351
2 changed files with 15 additions and 3 deletions

View File

@ -308,8 +308,9 @@ abstract class MicroAppPlugin extends Plugin
'url' => $object->link,
'is_local' => Notice::REMOTE_OMB,
'source' => 'ostatus');
$this->saveNoticeFromActivity($activity, $actor);
// $actor is an ostatus_profile
$this->saveNoticeFromActivity($activity, $actor->localProfile());
return false;
}
@ -365,7 +366,8 @@ abstract class MicroAppPlugin extends Plugin
'is_local' => Notice::REMOTE_OMB,
'source' => 'ostatus');
$this->saveNoticeFromActivity($activity, $actor, $options);
// $actor is an ostatus_profile
$this->saveNoticeFromActivity($activity, $actor->localProfile(), $options);
return false;
}
@ -389,6 +391,7 @@ abstract class MicroAppPlugin extends Plugin
$options = array('source' => 'atompub');
// $user->getProfile() is a Profile
$this->saveNoticeFromActivity($activity,
$user->getProfile(),
$options);
@ -421,6 +424,7 @@ abstract class MicroAppPlugin extends Plugin
'url' => $object->link,
'source' => 'restore');
// $user->getProfile() is a Profile
$saved = $this->saveNoticeFromActivity($activity,
$user->getProfile(),
$options);

View File

@ -194,6 +194,7 @@ class PollPlugin extends MicroAppPlugin
{
// @fixme
common_log(LOG_DEBUG, "XXX activity: " . var_export($activity, true));
common_log(LOG_DEBUG, "XXX profile: " . var_export($profile, true));
common_log(LOG_DEBUG, "XXX options: " . var_export($options, true));
// Ok for now, we can grab stuff from the XML entry directly.
@ -215,6 +216,13 @@ class PollPlugin extends MicroAppPlugin
}
common_log(LOG_DEBUG, "YYY question: $question");
common_log(LOG_DEBUG, "YYY opts: " . var_export($opts, true));
try {
$notice = Poll::saveNew($profile, $question, $opts, $options);
common_log(LOG_DEBUG, "YYY ok: " . $notice->id);
return $notice;
} catch (Exception $e) {
common_log(LOG_DEBUG, "YYY fail: " . $e->getMessage());
}
} else {
common_log(LOG_DEBUG, "YYY no poll data");
}