X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Fjabber.php;h=7d584ad0164edc18155e4e541f9025b14ace0294;hb=fcb43dd7112740284d2c1cb2708ac6a8a135cbdb;hp=f1be5776813164dd5e37999d4a900d8eaf118c72;hpb=34db24e4d53d017a3f77807ac69b067f31728716;p=quix0rs-gnu-social.git
diff --git a/lib/jabber.php b/lib/jabber.php
index f1be577681..7d584ad016 100644
--- a/lib/jabber.php
+++ b/lib/jabber.php
@@ -114,7 +114,7 @@ function jabber_connect($resource=null)
try {
$conn->connect(true); // true = persistent connection
} catch (XMPPHP_Exception $e) {
- common_log(LOG_ERROR, $e->getMessage());
+ common_log(LOG_ERR, $e->getMessage());
return false;
}
@@ -163,45 +163,25 @@ function jabber_send_notice($to, $notice)
function jabber_format_entry($profile, $notice)
{
- // FIXME: notice url might be remote
-
- $noticeurl = common_local_url('shownotice',
- array('notice' => $notice->id));
-
- $msg = jabber_format_notice($profile, $notice);
-
- $self_url = common_local_url('userrss', array('nickname' => $profile->nickname));
-
- $entry = "\n\n";
- $entry .= "\n";
- $entry .= "" . $profile->nickname . " - " . common_config('site', 'name') . "\n";
- $entry .= "\n";
- $entry .= "\n";
- $entry .= "" . $profile->nickname . "\n";
- $entry .= "" . common_profile_avatar_url($profile, AVATAR_PROFILE_SIZE) . "\n";
- $entry .= "\n";
- $entry .= "" . htmlspecialchars($msg) . "\n";
- $entry .= "" . htmlspecialchars($msg) . "\n";
- $entry .= "\n";
- $entry .= "". $notice->uri . "\n";
- $entry .= "".common_date_w3dtf($notice->created)."\n";
- $entry .= "".common_date_w3dtf($notice->modified)."\n";
- $entry .= "\n";
-
- $html = "\n\n";
- $html .= "
\n";
- $html .= "".$profile->nickname.": ";
- $html .= ($notice->rendered) ? $notice->rendered : common_render_content($notice->content, $notice);
- $html .= "\n\n";
- $html .= "\n\n";
-
- $address = "\n";
- $address .= "\n";
- $address .= "\n";
-
- // FIXME: include a pubsub event, too.
-
- return $html . $entry . $address;
+ $entry = $notice->asAtomEntry(true, true);
+
+ $xs = new XMLStringer();
+ $xs->elementStart('html', array('xmlns' => 'http://jabber.org/protocol/xhtml-im'));
+ $xs->elementStart('body', array('xmlns' => 'http://www.w3.org/1999/xhtml'));
+ $xs->element('a', array('href' => $profile->profileurl),
+ $profile->nickname);
+ $xs->text(": ");
+ if (!empty($notice->rendered)) {
+ $xs->raw($notice->rendered);
+ } else {
+ $xs->raw(common_render_content($notice->content, $notice));
+ }
+ $xs->elementEnd('body');
+ $xs->elementEnd('html');
+
+ $html = $xs->getString();
+
+ return $html . ' ' . $entry;
}
/**
@@ -405,8 +385,8 @@ function jabber_broadcast_notice($notice)
"ON $UT.id = notice_inbox.user_id " .
'WHERE notice_inbox.notice_id = ' . $notice->id . ' ' .
'AND notice_inbox.source = 2 ' .
- 'AND user.jabber is not null ' .
- 'AND user.jabbernotify = 1 ');
+ "AND $UT.jabber is not null " .
+ "AND $UT.jabbernotify = 1 ");
while ($user->fetch()) {
if (!array_key_exists($user->id, $sent_to)) {