summaryrefslogtreecommitdiff
path: root/lib/xmppmanager.php
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2010-12-02 10:56:44 -0800
committerBrion Vibber <brion@pobox.com>2010-12-02 13:41:56 -0800
commitaa96c3c1d9823382e9e6de0da5084fcc111f2ee5 (patch)
tree06846b7b32f718d3e62a212fc60924d2f6008668 /lib/xmppmanager.php
parentc4f67f76476a4ca608bcf2fc860ad5ef889d269d (diff)
Fix for tickets #2917, #2262: user URL shortening options not being applied in non-web channels
common_shorten_links() can only access the web session's logged-in user, so never properly took user options into effect for posting via XMPP, API, mail, etc. Adds an optional $user parameter on common_shorten_links(), and a $user->shortenLinks() as a clearer interface for that. Tweaked some lower-level functions so $user gets passed down -- making the $notice_id param previously there for saving URLs at notice save time generalized a little. Note also ticket #2919: there's a lot of duplicate code calling the shortening, checking the length, and reporting near-identical error messages. These should be consolidated to aid in code and translation maintenance.
Diffstat (limited to 'lib/xmppmanager.php')
-rw-r--r--lib/xmppmanager.php2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/xmppmanager.php b/lib/xmppmanager.php
index 238696664..585d044c7 100644
--- a/lib/xmppmanager.php
+++ b/lib/xmppmanager.php
@@ -398,7 +398,7 @@ class XmppManager extends IoManager
function add_notice(&$user, &$pl)
{
$body = trim($pl['body']);
- $content_shortened = common_shorten_links($body);
+ $content_shortened = $user->shortenLinks($body);
if (Notice::contentTooLong($content_shortened)) {
$from = jabber_normalize_jid($pl['from']);
// TRANS: Response to XMPP source when it sent too long a message.