IM/XMPP Plugin classes use throwing getParent

This commit is contained in:
Mikael Nordfeldth 2013-10-05 12:30:52 +02:00
parent 29de09a63d
commit 8fdc999be4
2 changed files with 20 additions and 21 deletions

View File

@ -84,7 +84,7 @@ abstract class ImPlugin extends Plugin
* *
* @return boolean success value * @return boolean success value
*/ */
function sendNotice($screenname, $notice) function sendNotice($screenname, Notice $notice)
{ {
return $this->sendMessage($screenname, $this->formatNotice($notice)); return $this->sendMessage($screenname, $this->formatNotice($notice));
} }
@ -370,19 +370,18 @@ abstract class ImPlugin extends Plugin
* @return string plain-text version of the notice, with user nickname prefixed * @return string plain-text version of the notice, with user nickname prefixed
*/ */
function formatNotice($notice) protected function formatNotice(Notice $notice)
{ {
$profile = $notice->getProfile(); $profile = $notice->getProfile();
$nicknames = $profile->nickname;
if (!empty($notice->reply_to)) {
$orig_notice = $notice->getParent();
$orig_profile = $orig_notice->getProfile();
$nicknames = $nicknames . " => " . $orig_profile->nickname;
}
common_log(LOG_INFO, "Notice: " . $notice->content, __FILE__);
$data = $nicknames . ': ' . $notice->content . ' [' . $notice->id . ']';
return $data;
try {
$orig_profile = $notice->getParent()->getProfile();
$nicknames = sprintf('%1$s => %2$s', $profile->nickname, $orig_profile->nickname);
} catch (Exception $e) {
$nicknames = $profile->nickname;
}
return sprintf('%1$s: %2$s [%3$u]', $nicknames, $notice->content, $notice->id);
} }
//========================UTILITY FUNCTIONS USEFUL TO IMPLEMENTATIONS - RECEIVING ========================\ //========================UTILITY FUNCTIONS USEFUL TO IMPLEMENTATIONS - RECEIVING ========================\

View File

@ -335,7 +335,7 @@ class XmppPlugin extends ImPlugin
* *
* @return string Extra information (Atom, HTML, addresses) in string format * @return string Extra information (Atom, HTML, addresses) in string format
*/ */
function format_entry($notice) protected function format_entry(Notice $notice)
{ {
$profile = $notice->getProfile(); $profile = $notice->getProfile();
@ -344,16 +344,16 @@ class XmppPlugin extends ImPlugin
$xs = new XMLStringer(); $xs = new XMLStringer();
$xs->elementStart('html', array('xmlns' => 'http://jabber.org/protocol/xhtml-im')); $xs->elementStart('html', array('xmlns' => 'http://jabber.org/protocol/xhtml-im'));
$xs->elementStart('body', array('xmlns' => 'http://www.w3.org/1999/xhtml')); $xs->elementStart('body', array('xmlns' => 'http://www.w3.org/1999/xhtml'));
$xs->element('a', array('href' => $profile->profileurl), $xs->element('a', array('href' => $profile->profileurl), $profile->nickname);
$profile->nickname); try {
if (!empty($notice->reply_to)) { $orig_profile = $notice->getParent()->getProfile();
$orig_notice = Notice::getKV('id', $notice->reply_to); $orig_profurl = $orig_profile->getUrl();
$orig_profile = $orig_notice->getProfile();
$xs->text(" => "); $xs->text(" => ");
$xs->element('a', array('href' => $orig_profile->profileurl), $xs->element('a', array('href' => $orig_profurl), $orig_profile->nickname);
$orig_profile->nickname);
$xs->text(": "); $xs->text(": ");
} else { } catch (InvalidUrlException $e) {
$xs->text(sprintf(' => %s', $orig_profile->nickname));
} catch (Exception $e) {
$xs->text(": "); $xs->text(": ");
} }
if (!empty($notice->rendered)) { if (!empty($notice->rendered)) {
@ -368,7 +368,7 @@ class XmppPlugin extends ImPlugin
array('id' => $notice->conversation)).'#notice-'.$notice->id), array('id' => $notice->conversation)).'#notice-'.$notice->id),
// TRANS: Link description to notice in conversation. // TRANS: Link description to notice in conversation.
// TRANS: %s is a notice ID. // TRANS: %s is a notice ID.
sprintf(_m('[%s]'),$notice->id)); sprintf(_m('[%u]'),$notice->id));
$xs->elementEnd('body'); $xs->elementEnd('body');
$xs->elementEnd('html'); $xs->elementEnd('html');