]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Make Twitter bridge truncate and add a link back to the original notice when notice...
authorZach Copley <zach@status.net>
Thu, 4 Feb 2010 03:17:48 +0000 (03:17 +0000)
committerZach Copley <zach@status.net>
Thu, 4 Feb 2010 03:17:48 +0000 (03:17 +0000)
plugins/TwitterBridge/twitter.php

index 33dfb788bf5d3d27d11b447bbc8644cdf51660a7..6944a1ace07e3d6517a9bd481c28e07e94b4e858 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /*
  * StatusNet - the distributed open-source microblogging tool
- * Copyright (C) 2008, 2009, StatusNet, Inc.
+ * Copyright (C) 2008-2010 StatusNet, Inc.
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as published by
@@ -295,8 +295,17 @@ function format_status($notice)
     $statustxt = preg_replace('/^@/', ' @', $notice->content);
 
     // Convert !groups to #hashes
+
+    // XXX: Make this an optional setting?
+
     $statustxt = preg_replace('/(^|\s)!([A-Za-z0-9]{1,64})/', "\\1#\\2", $statustxt);
 
+    if (mb_strlen($statustxt) > 140) {
+        $noticeUrl = common_shorten_url($notice->uri);
+        $urlLen = mb_strlen($noticeUrl);
+        $statustxt = mb_substr($statustxt, 0, 140 - ($urlLen + 3)) . ' … ' . $noticeUrl;
+    }
+
     return $statustxt;
 }