X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=lib%2Factivityhandlerplugin.php;h=22f794e14bc1fea23360e76c2f7d13c4c736bb42;hb=7220b3ddd4a32b947e851c946cb6ad6146bebf7d;hp=68907af0fb4970e77206bcc99c6c0bd4f7e501ad;hpb=f69f713360930ecf5adfa6bc40ee9db867c34bc1;p=quix0rs-gnu-social.git diff --git a/lib/activityhandlerplugin.php b/lib/activityhandlerplugin.php index 68907af0fb..22f794e14b 100644 --- a/lib/activityhandlerplugin.php +++ b/lib/activityhandlerplugin.php @@ -430,12 +430,13 @@ abstract class ActivityHandlerPlugin extends Plugin * Handle object posted via AtomPub * * @param Activity &$activity Activity that was posted - * @param User $user User that posted it + * @param Profile $scoped Profile of user posting * @param Notice &$notice Resulting notice * * @return boolean hook value */ - function onStartAtomPubNewActivity(Activity &$activity, $user, &$notice) + // FIXME: Make sure we can really do strong Notice typing with a $notice===null without having =null here + public function onStartAtomPubNewActivity(Activity &$activity, Profile $scoped, Notice &$notice) { if (!$this->isMyActivity($activity)) { return true; @@ -443,10 +444,9 @@ abstract class ActivityHandlerPlugin extends Plugin $options = array('source' => 'atompub'); - // $user->getProfile() is a Profile - $notice = $this->saveNoticeFromActivity($activity, - $user->getProfile(), - $options); + $notice = $this->saveNoticeFromActivity($activity, $scoped, $options); + + Event::handle('EndAtomPubNewActivity', array($activity, $scoped, $notice)); return false; } @@ -594,12 +594,32 @@ abstract class ActivityHandlerPlugin extends Plugin $nli->showNoticeLink(); $nli->showNoticeSource(); $nli->showNoticeLocation(); - $nli->showContext(); + $nli->showPermalink(); $nli->showRepeat(); $nli->showNoticeOptions(); } + public function onStartShowNoticeItemNotice(NoticeListItem $nli) + { + if (!$this->isMyNotice($nli->notice)) { + return true; + } + + $this->showNoticeItemNotice($nli); + + Event::handle('EndShowNoticeItemNotice', array($nli)); + return false; + } + + protected function showNoticeItemNotice(NoticeListItem $nli) + { + $nli->showNoticeTitle(); + $nli->showAuthor(); + $nli->showAddressees(); + $nli->showContent(); + } + public function onStartShowNoticeContent(Notice $stored, HTMLOutputter $out, Profile $scoped=null) { if (!$this->isMyNotice($stored)) {