]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 1.0.x
authorBrion Vibber <brion@pobox.com>
Thu, 10 Jun 2010 22:37:06 +0000 (15:37 -0700)
committerBrion Vibber <brion@pobox.com>
Thu, 10 Jun 2010 22:37:06 +0000 (15:37 -0700)
Conflicts:
lib/default.php
lib/util.php
plugins/UrlShortener/UrlShortenerPlugin.php (has been removed?)

13 files changed:
1  2 
actions/apiaccountupdatedeliverydevice.php
index.php
lib/apiaction.php
lib/default.php
lib/router.php
lib/util.php
plugins/BitlyUrl/BitlyUrlPlugin.php
plugins/ClientSideShorten/ClientSideShortenPlugin.php
plugins/Imap/imapmanager.php
plugins/LilUrl/LilUrlPlugin.php
plugins/PtitUrl/PtitUrlPlugin.php
plugins/SimpleUrl/SimpleUrlPlugin.php
plugins/TightUrl/TightUrlPlugin.php

index d42d25a6180be75d7ec211d11a0fb82f4e5acdcd,295378aa679ffd238a3f7bb28fa11f68bb462063..e25b9a954d1ada5e1fea82d9fa83a66ab8dfa92a
@@@ -21,6 -21,7 +21,7 @@@
   *
   * @category  API
   * @package   StatusNet
+  * @author    Siebrand Mazeland <s.mazeland@xs4all.nl>
   * @author    Zach Copley <zach@status.net>
   * @copyright 2009 StatusNet, Inc.
   * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
@@@ -119,16 -120,10 +120,16 @@@ class ApiAccountUpdateDeliveryDeviceAct
          if (strtolower($this->device) == 'sms') {
              $this->user->smsnotify = true;
          } elseif (strtolower($this->device) == 'im') {
 -            $this->user->jabbernotify = true;
 +            //TODO IM is pluginized now, so what should we do?
 +            //Enable notifications for all IM plugins?
 +            //For now, don't do anything
 +            //$this->user->jabbernotify = true;
          } elseif (strtolower($this->device == 'none')) {
              $this->user->smsnotify    = false;
 -            $this->user->jabbernotify = false;
 +            //TODO IM is pluginized now, so what should we do?
 +            //Disable notifications for all IM plugins?
 +            //For now, don't do anything
 +            //$this->user->jabbernotify = false;
          }
  
          $result = $this->user->update($original);
diff --combined index.php
index b60b5bd8c9ad2507851e53c2bc4236944c191c4e,bf6cf7c00ca7eee261323185e61d41ad0c353f89..0aceeda55a8174d2e6425ba656e554ab96fb3655
+++ b/index.php
   * @category StatusNet
   * @package  StatusNet
   * @author   Brenda Wallace <shiny@cpan.org>
+  * @author   Brion Vibber <brion@pobox.com>
   * @author   Christopher Vollick <psycotica0@gmail.com>
   * @author   CiaranG <ciaran@ciarang.com>
   * @author   Craig Andrews <candrews@integralblue.com>
   * @author   Evan Prodromou <evan@controlezvous.ca>
   * @author   Gina Haeussge <osd@foosel.net>
+  * @author   James Walker <walkah@walkah.net>
   * @author   Jeffery To <jeffery.to@gmail.com>
   * @author   Mike Cochrane <mikec@mikenz.geek.nz>
   * @author   Robin Millette <millette@controlyourself.ca>
   * @author   Sarven Capadisli <csarven@controlyourself.ca>
   * @author   Tom Adams <tom@holizz.com>
+  * @author   Zach Copley <zach@status.net>
+  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
   *
   * @license  GNU Affero General Public License http://www.gnu.org/licenses/
   */
@@@ -37,6 -41,8 +41,6 @@@ define('INSTALLDIR', dirname(__FILE__))
  define('STATUSNET', true);
  define('LACONICA', true); // compatibility
  
 -require_once INSTALLDIR . '/lib/common.php';
 -
  $user = null;
  $action = null;
  
@@@ -66,69 -72,52 +70,69 @@@ function getPath($req
   */
  function handleError($error)
  {
 -    if ($error->getCode() == DB_DATAOBJECT_ERROR_NODATA) {
 -        return;
 -    }
 +    try {
  
 -    $logmsg = "PEAR error: " . $error->getMessage();
 -    if (common_config('site', 'logdebug')) {
 -        $logmsg .= " : ". $error->getDebugInfo();
 -    }
 -    // DB queries often end up with a lot of newlines; merge to a single line
 -    // for easier grepability...
 -    $logmsg = str_replace("\n", " ", $logmsg);
 -    common_log(LOG_ERR, $logmsg);
 -
 -    // @fixme backtrace output should be consistent with exception handling
 -    if (common_config('site', 'logdebug')) {
 -        $bt = $error->getBacktrace();
 -        foreach ($bt as $n => $line) {
 -            common_log(LOG_ERR, formatBacktraceLine($n, $line));
 +        if ($error->getCode() == DB_DATAOBJECT_ERROR_NODATA) {
 +            return;
          }
 -    }
 -    if ($error instanceof DB_DataObject_Error
 -        || $error instanceof DB_Error
 -    ) {
 -        $msg = sprintf(
 -            _(
 -                'The database for %s isn\'t responding correctly, '.
 -                'so the site won\'t work properly. '.
 -                'The site admins probably know about the problem, '.
 -                'but you can contact them at %s to make sure. '.
 -                'Otherwise, wait a few minutes and try again.'
 -            ),
 -            common_config('site', 'name'),
 -            common_config('site', 'email')
 -        );
 -    } else {
 -        $msg = _(
 -            'An important error occured, probably related to email setup. '.
 -            'Check logfiles for more info..'
 -        );
 -    }
  
 -    $dac = new DBErrorAction($msg, 500);
 -    $dac->showPage();
 +        $logmsg = "PEAR error: " . $error->getMessage();
 +        if ($error instanceof PEAR_Exception && common_config('site', 'logdebug')) {
 +            $logmsg .= " : ". $error->toText();
 +        }
 +        // DB queries often end up with a lot of newlines; merge to a single line
 +        // for easier grepability...
 +        $logmsg = str_replace("\n", " ", $logmsg);
 +        common_log(LOG_ERR, $logmsg);
 +
 +        // @fixme backtrace output should be consistent with exception handling
 +        if (common_config('site', 'logdebug')) {
 +            $bt = $error->getTrace();
 +            foreach ($bt as $n => $line) {
 +                common_log(LOG_ERR, formatBacktraceLine($n, $line));
 +            }
 +        }
 +        if ($error instanceof DB_DataObject_Error
 +            || $error instanceof DB_Error
 +            || ($error instanceof PEAR_Exception && $error->getCode() == -24)
 +        ) {
 +            //If we run into a DB error, assume we can't connect to the DB at all
 +            //so set the current user to null, so we don't try to access the DB
 +            //while rendering the error page.
 +            global $_cur;
 +            $_cur = null;
 +
 +            $msg = sprintf(
 +                _(
 +                    'The database for %s isn\'t responding correctly, '.
 +                    'so the site won\'t work properly. '.
 +                    'The site admins probably know about the problem, '.
 +                    'but you can contact them at %s to make sure. '.
 +                    'Otherwise, wait a few minutes and try again.'
 +                ),
 +                common_config('site', 'name'),
 +                common_config('site', 'email')
 +            );
 +        } else {
 +            $msg = _(
 +                'An important error occured, probably related to email setup. '.
 +                'Check logfiles for more info..'
 +            );
 +        }
 +
 +        $dac = new DBErrorAction($msg, 500);
 +        $dac->showPage();
 +
 +    } catch (Exception $e) {
 +        echo _('An error occurred.');
 +    }
      exit(-1);
  }
  
 +set_exception_handler('handleError');
 +
 +require_once INSTALLDIR . '/lib/common.php';
 +
  /**
   * Format a backtrace line for debug output roughly like debug_print_backtrace() does.
   * Exceptions already have this built in, but PEAR error objects just give us the array.
@@@ -253,6 -242,10 +257,6 @@@ function main(
          return;
      }
  
 -    // For database errors
 -
 -    PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'handleError');
 -
      // Make sure RW database is setup
  
      setupRW();
diff --combined lib/apiaction.php
index e481a1ef29ebbd151ccc68e3618f9ee9ddd68949,7085c096baae44c074dadc6983cf6210663b611c..04028aef083220b3a093d8f00e2d22e0cbc40934
@@@ -28,6 -28,7 +28,7 @@@
   * @author    Toby Inkster <mail@tobyinkster.co.uk>
   * @author    Zach Copley <zach@status.net>
   * @copyright 2009 StatusNet, Inc.
+  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
   * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
   * @link      http://status.net/
   */
@@@ -97,8 -98,6 +98,8 @@@ if (!defined('STATUSNET')) 
      exit(1);
  }
  
 +class ApiValidationException extends Exception { }
 +
  /**
   * Contains most of the Twitter-compatible API output functions.
   *
diff --combined lib/default.php
index 52a4ec7836e7a7d4b76259525235fa94df38a821,950c6018d8f167095e7b9d30a9eeb9a63e823c17..754cf5728b28c0d2d9164fae73d933ac032eb0e6
@@@ -287,12 -287,10 +287,12 @@@ $default 
                                   'OStatus' => null,
                                   'WikiHashtags' => null,
                                   'RSSCloud' => null,
 +                                 'ClientSideShorten' => null,
                                   'OpenID' => null),
                ),
 +        'pluginlist' => array(),
          'admin' =>
 -        array('panels' => array('design', 'site', 'user', 'paths', 'access', 'sessions', 'sitenotice')),
 +        array('panels' => array('design', 'site', 'user', 'paths', 'access', 'sessions', 'sitenotice', 'plugins')),
          'singleuser' =>
          array('enabled' => false,
                'nickname' => null),
          array('subscribers' => true,
                'members' => true,
                'peopletag' => true),
-               'maxnoticelength' => -1)
 +        'url' =>
 +        array('shortener' => 'ur1.ca',
 +              'maxlength' => 25,
++              'maxnoticelength' => -1),
+         'http' => // HTTP client settings when contacting other sites
+         array('ssl_cafile' => false // To enable SSL cert validation, point to a CA bundle (eg '/usr/lib/ssl/certs/ca-certificates.crt')
+               ),
          );
diff --combined lib/router.php
index faa26c8610e0eabf206feb3b0a4e62c14508567b,afe44f92adcf86df75734312ee368c063faec8be..ef5fece137d31882ce4559b215c888720bcf2dc1
@@@ -136,6 -136,11 +136,11 @@@ class Route
                  $m->connect('main/'.$a, array('action' => $a));
              }
  
+             // Also need a block variant accepting ID on URL for mail links
+             $m->connect('main/block/:profileid',
+                         array('action' => 'block'),
+                         array('profileid' => '[0-9]+'));
              $m->connect('main/sup/:seconds', array('action' => 'sup'),
                          array('seconds' => '[0-9]+'));
  
              $m->connect('api/statusnet/groups/create.:format',
                          array('action' => 'ApiGroupCreate',
                                'format' => '(xml|json)'));
 +
 +            $m->connect('api/statusnet/groups/update/:id.:format',
 +                        array('action' => 'ApiGroupProfileUpdate',
 +                              'id' => '[a-zA-Z0-9]+',
 +                              'format' => '(xml|json)'));
 +
              // Tags
              $m->connect('api/statusnet/tags/timeline/:tag.:format',
                          array('action' => 'ApiTimelineTag',
              $m->connect('admin/sessions', array('action' => 'sessionsadminpanel'));
              $m->connect('admin/sitenotice', array('action' => 'sitenoticeadminpanel'));
              $m->connect('admin/snapshot', array('action' => 'snapshotadminpanel'));
 +            $m->connect('admin/plugins', array('action' => 'pluginsadminpanel'));
 +            $m->connect('admin/plugins/enable/:plugin',
 +                        array('action' => 'pluginenable'),
 +                        array('plugin' => '[A-Za-z0-9_]+'));
 +            $m->connect('admin/plugins/disable/:plugin',
 +                        array('action' => 'plugindisable'),
 +                        array('plugin' => '[A-Za-z0-9_]+'));
  
              $m->connect('getfile/:filename',
                          array('action' => 'getfile'),
diff --combined lib/util.php
index c6d8f814df7593fd778bac80ddf9f338777be4ee,2a90b56a992dcb27383f13b30243aba65c52eba9..d8fb3b65e44070e4f83dd680f6d607ee97570df1
@@@ -155,38 -155,23 +155,38 @@@ function common_timezone(
      return common_config('site', 'timezone');
  }
  
 +function common_valid_language($lang)
 +{
 +    if ($lang) {
 +        // Validate -- we don't want to end up with a bogus code
 +        // left over from some old junk.
 +        foreach (common_config('site', 'languages') as $code => $info) {
 +            if ($info['lang'] == $lang) {
 +                return true;
 +            }
 +        }
 +    }
 +    return false;
 +}
 +
  function common_language()
  {
 +    // Allow ?uselang=xx override, very useful for debugging
 +    // and helping translators check usage and context.
 +    if (isset($_GET['uselang'])) {
 +        $uselang = strval($_GET['uselang']);
 +        if (common_valid_language($uselang)) {
 +            return $uselang;
 +        }
 +    }
  
      // If there is a user logged in and they've set a language preference
      // then return that one...
      if (_have_config() && common_logged_in()) {
          $user = common_current_user();
 -        $user_language = $user->language;
 -
 -        if ($user->language) {
 -            // Validate -- we don't want to end up with a bogus code
 -            // left over from some old junk.
 -            foreach (common_config('site', 'languages') as $code => $info) {
 -                if ($info['lang'] == $user_language) {
 -                    return $user_language;
 -                }
 -            }
 +
 +        if (common_valid_language($user->language)) {
 +            return $user->language;
          }
      }
  
@@@ -889,21 -874,9 +889,21 @@@ function common_linkify($url) 
  
  function common_shorten_links($text, $always = false)
  {
 -    $maxLength = Notice::maxContent();
 -    if (!$always && ($maxLength == 0 || mb_strlen($text) <= $maxLength)) return $text;
 -    return common_replace_urls_callback($text, array('File_redirection', 'makeShort'));
 +    common_debug("common_shorten_links() called");
 +
 +    $user = common_current_user();
 +
 +    $maxLength = User_urlshortener_prefs::maxNoticeLength($user);
 +
 +    common_debug("maxLength = $maxLength");
 +
 +    if ($always || mb_strlen($text) > $maxLength) {
 +        common_debug("Forcing shortening");
 +        return common_replace_urls_callback($text, array('File_redirection', 'forceShort'));
 +    } else {
 +        common_debug("Not forcing shortening");
 +        return common_replace_urls_callback($text, array('File_redirection', 'makeShort'));
 +    }
  }
  
  function common_xml_safe_str($str)
@@@ -1270,10 -1243,18 +1270,9 @@@ function common_enqueue_notice($notice
          $transports[] = 'plugin';
      }
  
-     // @fixme move these checks into QueueManager and/or individual handlers
-     if ($notice->is_local == Notice::LOCAL_PUBLIC ||
-         $notice->is_local == Notice::LOCAL_NONPUBLIC) {
 -    $xmpp = common_config('xmpp', 'enabled');
 -
 -    if ($xmpp) {
 -        $transports[] = 'jabber';
 -    }
 -
+     // We can skip these for gatewayed notices.
+     if ($notice->isLocal()) {
          $transports = array_merge($transports, $localTransports);
 -        if ($xmpp) {
 -            $transports[] = 'public';
 -        }
      }
  
      if (Event::handle('StartEnqueueNotice', array($notice, &$transports))) {
@@@ -1512,7 -1493,7 +1511,7 @@@ function common_valid_tag($tag
   * Determine if given domain or address literal is valid
   * eg for use in JIDs and URLs. Does not check if the domain
   * exists!
 - * 
 + *
   * @param string $domain
   * @return boolean valid or not
   */
@@@ -1854,42 -1835,30 +1853,42 @@@ function common_database_tablename($tab
  /**
   * Shorten a URL with the current user's configured shortening service,
   * or ur1.ca if configured, or not at all if no shortening is set up.
 - * Length is not considered.
   *
 - * @param string $long_url
 + * @param string  $long_url original URL
 + * @param boolean $force    Force shortening (used when notice is too long)
 + *
   * @return string may return the original URL if shortening failed
   *
   * @fixme provide a way to specify a particular shortener
   * @fixme provide a way to specify to use a given user's shortening preferences
   */
 -function common_shorten_url($long_url)
 +
 +function common_shorten_url($long_url, $force = false)
  {
 +    common_debug("Shortening URL '$long_url' (force = $force)");
 +
      $long_url = trim($long_url);
 +
      $user = common_current_user();
 -    if (empty($user)) {
 -        // common current user does not find a user when called from the XMPP daemon
 -        // therefore we'll set one here fix, so that XMPP given URLs may be shortened
 -        $shortenerName = 'ur1.ca';
 -    } else {
 -        $shortenerName = $user->urlshorteningservice;
 +
 +    $maxUrlLength = User_urlshortener_prefs::maxUrlLength($user);
 +    common_debug("maxUrlLength = $maxUrlLength");
 +
 +    // $force forces shortening even if it's not strictly needed
 +
 +    if (mb_strlen($long_url) < $maxUrlLength && !$force) {
 +        common_debug("Skipped shortening URL.");
 +        return $long_url;
      }
  
 -    if(Event::handle('StartShortenUrl', array($long_url,$shortenerName,&$shortenedUrl))){
 +    $shortenerName = User_urlshortener_prefs::urlShorteningService($user);
 +
 +    common_debug("Shortener name = '$shortenerName'");
 +
 +    if (Event::handle('StartShortenUrl', array($long_url, $shortenerName, &$shortenedUrl))) {
          //URL wasn't shortened, so return the long url
          return $long_url;
 -    }else{
 +    } else {
          //URL was shortened, so return the result
          return trim($shortenedUrl);
      }
@@@ -1969,6 -1938,15 +1968,15 @@@ function common_url_to_nickname($url
              $path = preg_replace('@/$@', '', $parts['path']);
              $path = preg_replace('@^/@', '', $path);
              $path = basename($path);
+             // Hack for MediaWiki user pages, in the form:
+             // http://example.com/wiki/User:Myname
+             // ('User' may be localized.)
+             if (strpos($path, ':')) {
+                 $parts = array_filter(explode(':', $path));
+                 $path = $parts[count($parts) - 1];
+             }
              if ($path) {
                  return common_nicknamize($path);
              }
index b649d3d0b2cc5eca2b6c8cff782f812032415027,11e3c0b84ba612a0f6615288f26a2cfc590d3447..38c821636107bc2f21350707d7603d16ec4f9f20
@@@ -22,7 -22,7 +22,7 @@@
   * @category  Plugin
   * @package   StatusNet
   * @author    Craig Andrews <candrews@integralblue.com>
-  * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
   * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
   * @link      http://status.net/
   */
@@@ -31,6 -31,8 +31,6 @@@ if (!defined('STATUSNET')) 
      exit(1);
  }
  
 -require_once INSTALLDIR.'/plugins/UrlShortener/UrlShortenerPlugin.php';
 -
  class BitlyUrlPlugin extends UrlShortenerPlugin
  {
      public $serviceUrl;
index 454bedb0844fcfeafab7240018b43f31fc9ad81b,57f5ad89e0f0a5392d145788baa3514ca9f9ef12..3da08e05da351c67372609ed5b7d891970f19bdd
@@@ -22,7 -22,7 +22,7 @@@
   * @category  Plugin
   * @package   StatusNet
   * @author    Craig Andrews <candrews@integralblue.com>
-  * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
   * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
   * @link      http://status.net/
   */
@@@ -51,10 -51,8 +51,10 @@@ class ClientSideShortenPlugin extends P
      }
  
      function onEndShowScripts($action){
 -        $action->inlineScript('var Notice_maxContent = ' . Notice::maxContent());
          if (common_logged_in()) {
 +            $user = common_current_user();
 +            $action->inlineScript('var maxNoticeLength = ' . User_urlshortener_prefs::maxNoticeLength($user));
 +            $action->inlineScript('var maxUrlLength = ' . User_urlshortener_prefs::maxUrlLength($user));
              $action->script('plugins/ClientSideShorten/shorten.js');
          }
      }
index 4c0edeaa1d5cca3c0b21676553da22da8d4ce1fb,0bbd42e78f023deec1d45443848fbd21e1a6ef07..cfc08c1ee1fd0252ad324bd8bba8a1f3204a6504
@@@ -23,6 -23,8 +23,8 @@@
   * @package   StatusNet
   * @author    Craig Andrews <candrews@integralblue.com>
   * @copyright 2009-2010 StatusNet, Inc.
+  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
+  * @maintainer Craig Andrews <candrews@integralblue.com>
   * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
   * @link      http://status.net/
   */
@@@ -57,14 -59,12 +59,14 @@@ class ImapManager extends IoManage
      }
  
      /**
 -     * Tell the i/o master we need one instance for each supporting site
 -     * being handled in this process.
 +     * Tell the i/o master we need one instance globally.
 +     * Since this is a plugin manager, the plugin class itself will
 +     * create one instance per site. This prevents the IoMaster from
 +     * making more instances.
       */
      public static function multiSite()
      {
 -        return IoManager::INSTANCE_PER_SITE;
 +        return IoManager::GLOBAL_SINGLE_ONLY;
      }
  
      /**
index cdff9f4e657021b26170a385eb36c718ec506a88,1c3d6f84b3446724fe17d8896f5c21d2e4382733..06ea49ff57d542050531366bc2e3334226cc619e
@@@ -22,7 -22,7 +22,7 @@@
   * @category  Plugin
   * @package   StatusNet
   * @author    Craig Andrews <candrews@integralblue.com>
-  * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
   * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
   * @link      http://status.net/
   */
@@@ -31,6 -31,8 +31,6 @@@ if (!defined('STATUSNET')) 
      exit(1);
  }
  
 -require_once INSTALLDIR.'/plugins/UrlShortener/UrlShortenerPlugin.php';
 -
  class LilUrlPlugin extends UrlShortenerPlugin
  {
      public $serviceUrl;
index cdf46846ba43cbe981e5b5bb91209d9788602bd0,2963e8997b4912ab75a0d1ba810e9de16d036fd8..25a463c0be08470c185e56b9e6d811c92f52251f
@@@ -22,7 -22,7 +22,7 @@@
   * @category  Plugin
   * @package   StatusNet
   * @author    Craig Andrews <candrews@integralblue.com>
-  * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
   * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
   * @link      http://status.net/
   */
@@@ -30,6 -30,7 +30,6 @@@
  if (!defined('STATUSNET')) {
      exit(1);
  }
 -require_once INSTALLDIR.'/plugins/UrlShortener/UrlShortenerPlugin.php';
  
  class PtitUrlPlugin extends UrlShortenerPlugin
  {
index 5d3f97d33dbdfc53b792fefc8304937175432c16,5e2e8587824895d0a8ba629e481993d74f6bc5f2..24250f4d07e5e04ef9394ad74b75ed212f5ef98c
@@@ -22,7 -22,7 +22,7 @@@
   * @category  Plugin
   * @package   StatusNet
   * @author    Craig Andrews <candrews@integralblue.com>
-  * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
   * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
   * @link      http://status.net/
   */
@@@ -31,6 -31,8 +31,6 @@@ if (!defined('STATUSNET')) 
      exit(1);
  }
  
 -require_once INSTALLDIR.'/plugins/UrlShortener/UrlShortenerPlugin.php';
 -
  class SimpleUrlPlugin extends UrlShortenerPlugin
  {
      public $serviceUrl;
index f242db6c8093307a9c41e9bf937ceaf02718776e,b8e5addb11bf6202e4fc0e898106e1585e73265c..8fd645945b0f5577481697a61821acb03ea5b3bc
@@@ -22,7 -22,7 +22,7 @@@
   * @category  Plugin
   * @package   StatusNet
   * @author    Craig Andrews <candrews@integralblue.com>
-  * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
   * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
   * @link      http://status.net/
   */
@@@ -31,6 -31,8 +31,6 @@@ if (!defined('STATUSNET')) 
      exit(1);
  }
  
 -require_once INSTALLDIR.'/plugins/UrlShortener/UrlShortenerPlugin.php';
 -
  class TightUrlPlugin extends UrlShortenerPlugin
  {
      public $serviceUrl;