]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
StatusNet class renamed GNUsocial
authorMikael Nordfeldth <mmn@hethane.se>
Fri, 27 Feb 2015 11:44:15 +0000 (12:44 +0100)
committerMikael Nordfeldth <mmn@hethane.se>
Fri, 27 Feb 2015 11:44:15 +0000 (12:44 +0100)
also added backward compatible StatusNet class for the two calls I know
third party plugins use, isHTTPS and getActivePlugins

48 files changed:
actions/cancelsubscription.php
actions/newnotice.php
actions/shownotice.php
classes/File.php
index.php
lib/action.php
lib/apiaction.php
lib/attachmentlistitem.php
lib/cache.php
lib/common.php
lib/docfile.php
lib/error.php
lib/framework.php
lib/gnusocial.php [new file with mode: 0644]
lib/htmloutputter.php
lib/installer.php
lib/plugin.php
lib/statusnet.php
lib/stompqueuemanager.php
lib/theme.php
lib/util.php
plugins/Autocomplete/actions/autocomplete.php
plugins/Bookmark/actions/newbookmark.php
plugins/DomainStatusNetwork/DomainStatusNetworkPlugin.php
plugins/DomainStatusNetwork/actions/globalapi.php
plugins/DomainStatusNetwork/lib/domainstatusnetworkinstaller.php
plugins/EmailReminder/scripts/sendemailreminder.php
plugins/EmailSummary/scripts/sendemailsummary.php
plugins/Event/actions/cancelrsvp.php
plugins/Event/actions/newrsvp.php
plugins/Favorite/actions/disfavor.php
plugins/LinkPreview/actions/oembedproxy.php
plugins/Mapstraction/MapstractionPlugin.php
plugins/OStatus/actions/pushcallback.php
plugins/OStatus/actions/pushhub.php
plugins/OStatus/lib/salmonaction.php
plugins/Oembed/OembedPlugin.php
plugins/Poll/actions/newpoll.php
plugins/Poll/actions/respondpoll.php
plugins/QnA/actions/qnaclosequestion.php
plugins/QnA/actions/qnanewanswer.php
plugins/QnA/actions/qnanewquestion.php
plugins/QnA/actions/qnareviseanswer.php
plugins/QnA/actions/qnavote.php
plugins/Realtime/scripts/cleanupchannels.php
plugins/Recaptcha/RecaptchaPlugin.php
plugins/SearchSub/actions/searchsub.php
plugins/TagSub/actions/tagsub.php

index 35e775ab1ddfb2ebb1e322a5011e3e4c3d8a2b3c..4f4805814bd9357ec108efcd310dcdc01735b3a8 100644 (file)
@@ -70,7 +70,7 @@ class CancelsubscriptionAction extends FormAction
             common_debug('Tried to cancel a non-existing pending subscription');
         }
 
-        if (StatusNet::isAjax()) {
+        if (GNUsocial::isAjax()) {
             $this->startHTML('text/xml;charset=utf-8');
             $this->elementStart('head');
             // TRANS: Title after unsubscribing from a group.
index 692ba765c8a4dd485b25abb0930e24c3a23b7f2d..f9b04cae3c3b29d325cb4797f2a87d782e437e11 100644 (file)
@@ -110,7 +110,7 @@ class NewnoticeAction extends FormAction
         $cmd = $inter->handle_command($user, $content);
 
         if ($cmd) {
-            if (StatusNet::isAjax()) {
+            if (GNUsocial::isAjax()) {
                 $cmd->execute(new AjaxWebChannel($this));
             } else {
                 $cmd->execute(new WebChannel($this));
@@ -195,7 +195,7 @@ class NewnoticeAction extends FormAction
 
         Event::handle('EndSaveNewNoticeWeb', array($this, $user, &$content_shortened, &$options));
 
-        if (!StatusNet::isAjax()) {
+        if (!GNUsocial::isAjax()) {
             $url = common_local_url('shownotice', array('notice' => $this->stored->id));
             common_redirect($url, 303);
         }
index 2576bcc111fc65b394f48f2acd74b8f763803087..4a1adfd7de938aac1061cb6d93c93e01363c736b 100644 (file)
@@ -70,7 +70,7 @@ class ShownoticeAction extends ManagedAction
     {
         parent::prepare($args);
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
 
         $this->notice = $this->getNotice();
index f1f1493dce55be6fd54d045ed825aaf501ce6171..3048eb49833881b148620fcde230bf48e4ad7a65 100644 (file)
@@ -325,7 +325,7 @@ class File extends Managed_DataObject
 
         }
 
-        if (StatusNet::useHTTPS()) {
+        if (GNUsocial::useHTTPS()) {
 
             $sslserver = common_config('attachments', 'sslserver');
 
index 674099e7128c1193547cf1fe689a1e6032e0eb50..44599d68e94b146465af18a657ecb7660981e757 100644 (file)
--- a/index.php
+++ b/index.php
@@ -265,7 +265,7 @@ function main()
     $site_ssl = common_config('site', 'ssl');
 
     // If the request is HTTP and it should be HTTPS...
-    if ($site_ssl != 'never' && !StatusNet::isHTTPS() && common_is_sensitive($args['action'])) {
+    if ($site_ssl != 'never' && !GNUsocial::isHTTPS() && common_is_sensitive($args['action'])) {
         common_redirect(common_local_url($args['action'], $args));
     }
 
index 3b3d21680e1975fadfc91221ba786656522be264..d8b691093cc58a4489afdf213891513cb32cac03 100644 (file)
@@ -158,8 +158,8 @@ class Action extends HTMLOutputter // lawsuit
         $this->action = strtolower($this->trimmed('action'));
 
         if ($this->ajax || $this->boolean('ajax')) {
-            // check with StatusNet::isAjax()
-            StatusNet::setAjax(true);
+            // check with GNUsocial::isAjax()
+            GNUsocial::setAjax(true);
         }
 
         if ($this->needLogin) {
@@ -208,7 +208,7 @@ class Action extends HTMLOutputter // lawsuit
      */
     function showPage()
     {
-        if (StatusNet::isAjax()) {
+        if (GNUsocial::isAjax()) {
             self::showAjax();
             return;
         }
@@ -328,7 +328,7 @@ class Action extends HTMLOutputter // lawsuit
         } else {
             // favicon.ico should be HTTPS if the rest of the page is
             $this->element('link', array('rel' => 'shortcut icon',
-                                         'href' => common_path('favicon.ico', StatusNet::isHTTPS())));
+                                         'href' => common_path('favicon.ico', GNUsocial::isHTTPS())));
         }
 
         if (common_config('site', 'mobile')) {
@@ -417,7 +417,7 @@ class Action extends HTMLOutputter // lawsuit
                 $this->script('extlib/jquery.form.js');
                 $this->script('extlib/jquery-ui/jquery-ui.js');
                 $this->script('extlib/jquery.cookie.js');
-                $this->inlineScript('if (typeof window.JSON !== "object") { $.getScript("'.common_path('js/extlib/json2.js', StatusNet::isHTTPS()).'"); }');
+                $this->inlineScript('if (typeof window.JSON !== "object") { $.getScript("'.common_path('js/extlib/json2.js', GNUsocial::isHTTPS()).'"); }');
                 $this->script('extlib/jquery.infieldlabel.js');
 
                 Event::handle('EndShowJQueryScripts', array($this));
@@ -640,7 +640,7 @@ class Action extends HTMLOutputter // lawsuit
             $this->elementStart('a', array('class' => 'home bookmark',
                                            'href' => $url));
 
-            if (StatusNet::isHTTPS()) {
+            if (GNUsocial::isHTTPS()) {
                 $logoUrl = common_config('site', 'ssllogo');
                 if (empty($logoUrl)) {
                     // if logo is an uploaded file, try to fall back to HTTPS file URL
@@ -1146,7 +1146,7 @@ class Action extends HTMLOutputter // lawsuit
                 $image    = common_config('license', 'image');
                 $sslimage = common_config('license', 'sslimage');
 
-                if (StatusNet::isHTTPS()) {
+                if (GNUsocial::isHTTPS()) {
                     if (!empty($sslimage)) {
                         $url = $sslimage;
                     } else if (preg_match('#^http://i.creativecommons.org/#', $image)) {
index f1304a1d1e4f40d7f28db1c480de4706628504df..09061e364769342b230fbb47d0ecb2d56a536273 100755 (executable)
@@ -144,7 +144,7 @@ class ApiAction extends Action
      */
     protected function prepare(array $args=array())
     {
-        StatusNet::setApi(true); // reduce exception reports to aid in debugging
+        GNUsocial::setApi(true); // reduce exception reports to aid in debugging
         parent::prepare($args);
 
         $this->format   = $this->arg('format');
index 919727bc1f8ff69beab70f7c573bdd6efad20974..47ffaaec239ff73eed942e78887596f414cc0ad4 100644 (file)
@@ -163,7 +163,7 @@ class AttachmentListItem extends Widget
 
                 case 'text/html':
                     if (!empty($this->attachment->filename)
-                            && (StatusNet::isAjax() || common_config('attachments', 'show_html'))) {
+                            && (GNUsocial::isAjax() || common_config('attachments', 'show_html'))) {
                         // Locally-uploaded HTML. Scrub and display inline.
                         $this->showHtmlFile($this->attachment);
                         break;
index e79d75c294b1a49175d05d3ac2dcefc40f3249c1..104314cb06b24aee08eb3688b12dd9e7af6c4bce 100644 (file)
@@ -127,7 +127,7 @@ class Cache
            
             $names   = array();
            
-            foreach (StatusNet::getActivePlugins() as $plugin=>$attrs) {
+            foreach (GNUsocial::getActivePlugins() as $plugin=>$attrs) {
                 $names[] = $plugin;
             }
            
index 4592fd15a59c266f704927b43402b90b7c217a05..c31c45f62612f8d218f6ef8cfe33a72ad3b94c17 100644 (file)
@@ -24,7 +24,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
 require_once INSTALLDIR . '/lib/framework.php';
 
 try {
-    StatusNet::init(@$server, @$path, @$conffile);
+    GNUsocial::init(@$server, @$path, @$conffile);
 } catch (NoConfigException $e) {
     // XXX: Throw a conniption if database not installed
     // XXX: Find a way to use htmlwriter for this instead of handcoded markup
index e3968706953003e5a88e752930c956f22ec0967f..3331bcd19dc262597b97c9bebc00d8f60fae7350 100644 (file)
@@ -113,7 +113,7 @@ class DocFile
         $paths = array(INSTALLDIR.'/local/doc-src/',
                        INSTALLDIR.'/doc-src/');
 
-        $site = StatusNet::currentSite();
+        $site = GNUsocial::currentSite();
         
         if (!empty($site)) {
             array_unshift($paths, INSTALLDIR.'/local/doc-src/'.$site.'/');
@@ -127,7 +127,7 @@ class DocFile
         $paths = array(INSTALLDIR.'/local/mail-src/',
                        INSTALLDIR.'/mail-src/');
 
-        $site = StatusNet::currentSite();
+        $site = GNUsocial::currentSite();
         
         if (!empty($site)) {
             array_unshift($paths, INSTALLDIR.'/local/mail-src/'.$site.'/');
index e7bdd0570703efc048c2e4b7481e3e9514132ad4..03a1960c620bdc124836e16f276426b2f210185f 100644 (file)
@@ -56,7 +56,7 @@ class ErrorAction extends InfoAction
 
         $this->code = $code;
         $this->message = $message;
-        $this->minimal = StatusNet::isApi();
+        $this->minimal = GNUsocial::isApi();
 
         // XXX: hack alert: usually we aren't going to
         // call this page directly, but because it's
@@ -66,7 +66,7 @@ class ErrorAction extends InfoAction
 
     function showPage()
     {
-        if (StatusNet::isAjax()) {
+        if (GNUsocial::isAjax()) {
             $this->extraHeaders();
             $this->ajaxErrorMsg();
             exit();
index d3b59cf11194eb0eff0938ac7429b7a92631ed80..b71f365c244cd0e3320142c87be199dc219f1550 100644 (file)
@@ -97,12 +97,12 @@ require_once(INSTALLDIR.'/lib/plugin.php');
 
 function addPlugin($name, array $attrs=array())
 {
-    return StatusNet::addPlugin($name, $attrs);
+    return GNUsocial::addPlugin($name, $attrs);
 }
 
 function _have_config()
 {
-    return StatusNet::haveConfig();
+    return GNUsocial::haveConfig();
 }
 
 function GNUsocial_class_autoload($cls)
diff --git a/lib/gnusocial.php b/lib/gnusocial.php
new file mode 100644 (file)
index 0000000..5551f43
--- /dev/null
@@ -0,0 +1,449 @@
+<?php
+/**
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 2009-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
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+if (!defined('GNUSOCIAL')) { exit(1); }
+
+global $config, $_server, $_path;
+
+/**
+ * Global configuration setup and management.
+ */
+class GNUsocial
+{
+    protected static $have_config;
+    protected static $is_api;
+    protected static $is_ajax;
+    protected static $plugins = array();
+
+    /**
+     * Configure and instantiate a plugin into the current configuration.
+     * Class definitions will be loaded from standard paths if necessary.
+     * Note that initialization events won't be fired until later.
+     *
+     * @param string $name class name & plugin file/subdir name
+     * @param array $attrs key/value pairs of public attributes to set on plugin instance
+     *
+     * @throws ServerException if plugin can't be found
+     */
+    public static function addPlugin($name, array $attrs=array())
+    {
+        $name = ucfirst($name);
+
+        if (isset(self::$plugins[$name])) {
+            // We have already loaded this plugin. Don't try to
+            // do it again with (possibly) different values.
+            // Försten till kvarn fÃ¥r mala.
+            return true;
+        }
+
+        $pluginclass = "{$name}Plugin";
+
+        if (!class_exists($pluginclass)) {
+
+            $files = array("local/plugins/{$pluginclass}.php",
+                           "local/plugins/{$name}/{$pluginclass}.php",
+                           "local/{$pluginclass}.php",
+                           "local/{$name}/{$pluginclass}.php",
+                           "plugins/{$pluginclass}.php",
+                           "plugins/{$name}/{$pluginclass}.php");
+
+            foreach ($files as $file) {
+                $fullpath = INSTALLDIR.'/'.$file;
+                if (@file_exists($fullpath)) {
+                    include_once($fullpath);
+                    break;
+                }
+            }
+            if (!class_exists($pluginclass)) {
+                throw new ServerException("Plugin $name not found.", 500);
+            }
+        }
+
+        // Doesn't this $inst risk being garbage collected or something?
+        // TODO: put into a static array that makes sure $inst isn't lost.
+        $inst = new $pluginclass();
+        foreach ($attrs as $aname => $avalue) {
+            $inst->$aname = $avalue;
+        }
+
+        // Record activated plugins for later display/config dump
+        self::$plugins[$name] = $attrs;
+
+        return true;
+    }
+
+    public static function delPlugin($name)
+    {
+        // Remove our plugin if it was previously loaded
+        $name = ucfirst($name);
+        if (isset(self::$plugins[$name])) {
+            unset(self::$plugins[$name]);
+        }
+
+        // make sure initPlugins will avoid this
+        common_config_set('plugins', 'disable-'.$name, true);
+
+        return true;
+    }
+
+    /**
+     * Get a list of activated plugins in this process.
+     * @return array of (string $name, array $args) pairs
+     */
+    public static function getActivePlugins()
+    {
+        return self::$plugins;
+    }
+
+    /**
+     * Initialize, or re-initialize, GNU social global configuration
+     * and plugins.
+     *
+     * If switching site configurations during script execution, be
+     * careful when working with leftover objects -- global settings
+     * affect many things and they may not behave as you expected.
+     *
+     * @param $server optional web server hostname for picking config
+     * @param $path optional URL path for picking config
+     * @param $conffile optional configuration file path
+     *
+     * @throws NoConfigException if config file can't be found
+     */
+    public static function init($server=null, $path=null, $conffile=null)
+    {
+        Router::clear();
+
+        self::initDefaults($server, $path);
+        self::loadConfigFile($conffile);
+
+        $sprofile = common_config('site', 'profile');
+        if (!empty($sprofile)) {
+            self::loadSiteProfile($sprofile);
+        }
+        // Load settings from database; note we need autoload for this
+        Config::loadSettings();
+
+        self::initPlugins();
+    }
+
+    /**
+     * Get identifier of the currently active site configuration
+     * @return string
+     */
+    public static function currentSite()
+    {
+        return common_config('site', 'nickname');
+    }
+
+    /**
+     * Change site configuration to site specified by nickname,
+     * if set up via Status_network. If not, sites other than
+     * the current will fail horribly.
+     *
+     * May throw exception or trigger a fatal error if the given
+     * site is missing or configured incorrectly.
+     *
+     * @param string $nickname
+     */
+    public static function switchSite($nickname)
+    {
+        if ($nickname == self::currentSite()) {
+            return true;
+        }
+
+        $sn = Status_network::getKV('nickname', $nickname);
+        if (empty($sn)) {
+            return false;
+            throw new Exception("No such site nickname '$nickname'");
+        }
+
+        $server = $sn->getServerName();
+        self::init($server);
+    }
+
+    /**
+     * Pull all local sites from status_network table.
+     *
+     * Behavior undefined if site is not configured via Status_network.
+     *
+     * @return array of nicknames
+     */
+    public static function findAllSites()
+    {
+        $sites = array();
+        $sn = new Status_network();
+        $sn->find();
+        while ($sn->fetch()) {
+            $sites[] = $sn->nickname;
+        }
+        return $sites;
+    }
+
+    /**
+     * Fire initialization events for all instantiated plugins.
+     */
+    protected static function initPlugins()
+    {
+        // User config may have already added some of these plugins, with
+        // maybe configured parameters. The self::addPlugin function will
+        // ignore the new call if it has already been instantiated.
+
+        // Load core plugins
+        foreach (common_config('plugins', 'core') as $name => $params) {
+            call_user_func('self::addPlugin', $name, $params);
+        }
+
+        // Load default plugins
+        foreach (common_config('plugins', 'default') as $name => $params) {
+            $key = 'disable-' . $name;
+            if (common_config('plugins', $key)) {
+                continue;
+            }
+
+            // TODO: We should be able to avoid this is_null and assume $params
+            // is an array, since that's how it is typed in addPlugin
+            if (is_null($params)) {
+                self::addPlugin($name);
+            } else if (is_array($params)) {
+                if (count($params) == 0) {
+                    self::addPlugin($name);
+                } else {
+                    $keys = array_keys($params);
+                    if (is_string($keys[0])) {
+                        self::addPlugin($name, $params);
+                    } else {
+                        foreach ($params as $paramset) {
+                            self::addPlugin($name, $paramset);
+                        }
+                    }
+                }
+            }
+        }
+
+        // XXX: if plugins should check the schema at runtime, do that here.
+        if (common_config('db', 'schemacheck') == 'runtime') {
+            Event::handle('CheckSchema');
+        }
+
+        // Give plugins a chance to initialize in a fully-prepared environment
+        Event::handle('InitializePlugin');
+    }
+
+    /**
+     * Quick-check if configuration has been established.
+     * Useful for functions which may get used partway through
+     * initialization to back off from fancier things.
+     *
+     * @return bool
+     */
+    public static function haveConfig()
+    {
+        return self::$have_config;
+    }
+
+    public static function isApi()
+    {
+        return self::$is_api;
+    }
+
+    public static function setApi($mode)
+    {
+        self::$is_api = $mode;
+    }
+
+    public static function isAjax()
+    {
+        return self::$is_ajax;
+    }
+
+    public static function setAjax($mode)
+    {
+        self::$is_ajax = $mode;
+    }
+
+    /**
+     * Build default configuration array
+     * @return array
+     */
+    protected static function defaultConfig()
+    {
+        global $_server, $_path;
+        require(INSTALLDIR.'/lib/default.php');
+        return $default;
+    }
+
+    /**
+     * Establish default configuration based on given or default server and path
+     * Sets global $_server, $_path, and $config
+     */
+    public static function initDefaults($server, $path)
+    {
+        global $_server, $_path, $config, $_PEAR;
+
+        Event::clearHandlers();
+        self::$plugins = array();
+
+        // try to figure out where we are. $server and $path
+        // can be set by including module, else we guess based
+        // on HTTP info.
+
+        if (isset($server)) {
+            $_server = $server;
+        } else {
+            $_server = array_key_exists('SERVER_NAME', $_SERVER) ?
+              strtolower($_SERVER['SERVER_NAME']) :
+            null;
+        }
+
+        if (isset($path)) {
+            $_path = $path;
+        } else {
+            $_path = (array_key_exists('SERVER_NAME', $_SERVER) && array_key_exists('SCRIPT_NAME', $_SERVER)) ?
+              self::_sn_to_path($_SERVER['SCRIPT_NAME']) :
+            null;
+        }
+
+        // Set config values initially to default values
+        $default = self::defaultConfig();
+        $config = $default;
+
+        // default configuration, overwritten in config.php
+        // Keep DB_DataObject's db config synced to ours...
+
+        $config['db'] = &$_PEAR->getStaticProperty('DB_DataObject','options');
+
+        $config['db'] = $default['db'];
+
+        if (function_exists('date_default_timezone_set')) {
+            /* Work internally in UTC */
+            date_default_timezone_set('UTC');
+        }
+    }
+
+    public static function loadSiteProfile($name)
+    {
+        global $config;
+        $settings = SiteProfile::getSettings($name);
+        $config = array_replace_recursive($config, $settings);
+    }
+
+    protected static function _sn_to_path($sn)
+    {
+        $past_root = substr($sn, 1);
+        $last_slash = strrpos($past_root, '/');
+        if ($last_slash > 0) {
+            $p = substr($past_root, 0, $last_slash);
+        } else {
+            $p = '';
+        }
+        return $p;
+    }
+
+    /**
+     * Load the default or specified configuration file.
+     * Modifies global $config and may establish plugins.
+     *
+     * @throws NoConfigException
+     */
+    protected static function loadConfigFile($conffile=null)
+    {
+        global $_server, $_path, $config;
+
+        // From most general to most specific:
+        // server-wide, then vhost-wide, then for a path,
+        // finally for a dir (usually only need one of the last two).
+
+        if (isset($conffile)) {
+            $config_files = array($conffile);
+        } else {
+            $config_files = array('/etc/statusnet/statusnet.php',
+                                  '/etc/statusnet/laconica.php',
+                                  '/etc/laconica/laconica.php',
+                                  '/etc/statusnet/'.$_server.'.php',
+                                  '/etc/laconica/'.$_server.'.php');
+
+            if (strlen($_path) > 0) {
+                $config_files[] = '/etc/statusnet/'.$_server.'_'.$_path.'.php';
+                $config_files[] = '/etc/laconica/'.$_server.'_'.$_path.'.php';
+            }
+
+            $config_files[] = INSTALLDIR.'/config.php';
+        }
+
+        self::$have_config = false;
+
+        foreach ($config_files as $_config_file) {
+            if (@file_exists($_config_file)) {
+                // Ignore 0-byte config files
+                if (filesize($_config_file) > 0) {
+                    common_log(LOG_INFO, "Including config file: " . $_config_file);
+                    include($_config_file);
+                    self::$have_config = true;
+                }
+            }
+        }
+
+        if (!self::$have_config) {
+            throw new NoConfigException("No configuration file found.",
+                                        $config_files);
+        }
+
+        // Check for database server; must exist!
+
+        if (empty($config['db']['database'])) {
+            throw new ServerException("No database server for this site.");
+        }
+    }
+
+    /**
+     * Are we running from the web with HTTPS?
+     *
+     * @return boolean true if we're running with HTTPS; else false
+     */
+
+    static function isHTTPS()
+    {
+        // There are some exceptions to this; add them here!
+        if (empty($_SERVER['HTTPS'])) {
+            return false;
+        }
+
+        // If it is _not_ "off", it is on, so "true".
+        return strtolower($_SERVER['HTTPS']) !== 'off';
+    }
+
+    /**
+     * Can we use HTTPS? Then do! Only return false if it's not configured ("never").
+     */
+    static function useHTTPS()
+    {
+        return self::isHTTPS() || common_config('site', 'ssl') != 'never';
+    }
+}
+
+class NoConfigException extends Exception
+{
+    public $configFiles;
+
+    function __construct($msg, $configFiles) {
+        parent::__construct($msg);
+        $this->configFiles = $configFiles;
+    }
+}
index b1aae16fad7a0819b634c4069b60d85837a92c52..9e9dc02e59c02755eb2abd95dbb92a85bc857519 100644 (file)
@@ -386,11 +386,11 @@ class HTMLOutputter extends XMLOutputter
 
                 if (strpos($src, 'plugins/') === 0 || strpos($src, 'local/') === 0) {
 
-                    $src = common_path($src, StatusNet::isHTTPS()) . '?version=' . GNUSOCIAL_VERSION;
+                    $src = common_path($src, GNUsocial::isHTTPS()) . '?version=' . GNUSOCIAL_VERSION;
 
                 } else {
 
-                    if (StatusNet::isHTTPS()) {
+                    if (GNUsocial::isHTTPS()) {
 
                         $sslserver = common_config('javascript', 'sslserver');
 
@@ -493,7 +493,7 @@ class HTMLOutputter extends XMLOutputter
                 if(file_exists(Theme::file($src,$theme))){
                    $src = Theme::path($src, $theme);
                 }else{
-                    $src = common_path($src, StatusNet::isHTTPS());
+                    $src = common_path($src, GNUsocial::isHTTPS());
                 }
                 $src.= '?version=' . GNUSOCIAL_VERSION;
             }
index 1fcd0961c5ba9c9b365797caada18e241f496a01..d6e7fddf53f40f804d933a6acfa55fdaa19534fc 100644 (file)
@@ -551,7 +551,7 @@ abstract class Installer
         }
 
         require_once INSTALLDIR . '/lib/framework.php';
-        StatusNet::initDefaults($this->server, $this->path);
+        GNUsocial::initDefaults($this->server, $this->path);
 
         if ($this->siteProfile == "singleuser") {
             // Until we use ['site']['profile']==='singleuser' everywhere
index 5acdc1c2ba5e076be788deb9206010767be1606a..42339137526a136db70c882bf73d7d953b1e813a 100644 (file)
@@ -196,7 +196,7 @@ class Plugin
 
     static function staticPath($plugin, $relative)
     {
-        $isHTTPS = StatusNet::isHTTPS();
+        $isHTTPS = GNUsocial::isHTTPS();
 
         if ($isHTTPS) {
             $server = common_config('plugins', 'sslserver');
index 844a15c339d10cc8ab363ef296c366ccba1c5963..0ab869ab182a37d3d64ec353172a7e1dcbc81a7f 100644 (file)
 <?php
-/**
- * StatusNet - the distributed open-source microblogging tool
- * Copyright (C) 2009-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
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- */
-
-if (!defined('STATUSNET') && !defined('LACONICA')) {
-    exit(1);
-}
 
-global $config, $_server, $_path;
+if (!defined('GNUSOCIAL')) { exit(1); }
 
 /**
- * Global configuration setup and management.
+ * Backwards compatible class for plugins for GNU social <1.2
+ * and thus only have the class StatusNet defined.
  */
 class StatusNet
 {
-    protected static $have_config;
-    protected static $is_api;
-    protected static $is_ajax;
-    protected static $plugins = array();
-
-    /**
-     * Configure and instantiate a plugin into the current configuration.
-     * Class definitions will be loaded from standard paths if necessary.
-     * Note that initialization events won't be fired until later.
-     *
-     * @param string $name class name & plugin file/subdir name
-     * @param array $attrs key/value pairs of public attributes to set on plugin instance
-     *
-     * @throws ServerException if plugin can't be found
-     */
-    public static function addPlugin($name, array $attrs=array())
-    {
-        $name = ucfirst($name);
-
-        if (isset(self::$plugins[$name])) {
-            // We have already loaded this plugin. Don't try to
-            // do it again with (possibly) different values.
-            // Försten till kvarn fÃ¥r mala.
-            return true;
-        }
-
-        $pluginclass = "{$name}Plugin";
-
-        if (!class_exists($pluginclass)) {
-
-            $files = array("local/plugins/{$pluginclass}.php",
-                           "local/plugins/{$name}/{$pluginclass}.php",
-                           "local/{$pluginclass}.php",
-                           "local/{$name}/{$pluginclass}.php",
-                           "plugins/{$pluginclass}.php",
-                           "plugins/{$name}/{$pluginclass}.php");
-
-            foreach ($files as $file) {
-                $fullpath = INSTALLDIR.'/'.$file;
-                if (@file_exists($fullpath)) {
-                    include_once($fullpath);
-                    break;
-                }
-            }
-            if (!class_exists($pluginclass)) {
-                throw new ServerException("Plugin $name not found.", 500);
-            }
-        }
-
-        // Doesn't this $inst risk being garbage collected or something?
-        // TODO: put into a static array that makes sure $inst isn't lost.
-        $inst = new $pluginclass();
-        foreach ($attrs as $aname => $avalue) {
-            $inst->$aname = $avalue;
-        }
-
-        // Record activated plugins for later display/config dump
-        self::$plugins[$name] = $attrs;
-
-        return true;
-    }
-
-    public static function delPlugin($name)
-    {
-        // Remove our plugin if it was previously loaded
-        $name = ucfirst($name);
-        if (isset(self::$plugins[$name])) {
-            unset(self::$plugins[$name]);
-        }
-
-        // make sure initPlugins will avoid this
-        common_config_set('plugins', 'disable-'.$name, true);
-
-        return true;
-    }
-
-    /**
-     * Get a list of activated plugins in this process.
-     * @return array of (string $name, array $args) pairs
-     */
     public static function getActivePlugins()
     {
-        return self::$plugins;
-    }
-
-    /**
-     * Initialize, or re-initialize, StatusNet global configuration
-     * and plugins.
-     *
-     * If switching site configurations during script execution, be
-     * careful when working with leftover objects -- global settings
-     * affect many things and they may not behave as you expected.
-     *
-     * @param $server optional web server hostname for picking config
-     * @param $path optional URL path for picking config
-     * @param $conffile optional configuration file path
-     *
-     * @throws NoConfigException if config file can't be found
-     */
-    public static function init($server=null, $path=null, $conffile=null)
-    {
-        Router::clear();
-
-        self::initDefaults($server, $path);
-        self::loadConfigFile($conffile);
-
-        $sprofile = common_config('site', 'profile');
-        if (!empty($sprofile)) {
-            self::loadSiteProfile($sprofile);
-        }
-        // Load settings from database; note we need autoload for this
-        Config::loadSettings();
-
-        self::initPlugins();
-    }
-
-    /**
-     * Get identifier of the currently active site configuration
-     * @return string
-     */
-    public static function currentSite()
-    {
-        return common_config('site', 'nickname');
-    }
-
-    /**
-     * Change site configuration to site specified by nickname,
-     * if set up via Status_network. If not, sites other than
-     * the current will fail horribly.
-     *
-     * May throw exception or trigger a fatal error if the given
-     * site is missing or configured incorrectly.
-     *
-     * @param string $nickname
-     */
-    public static function switchSite($nickname)
-    {
-        if ($nickname == StatusNet::currentSite()) {
-            return true;
-        }
-
-        $sn = Status_network::getKV('nickname', $nickname);
-        if (empty($sn)) {
-            return false;
-            throw new Exception("No such site nickname '$nickname'");
-        }
-
-        $server = $sn->getServerName();
-        StatusNet::init($server);
-    }
-
-    /**
-     * Pull all local sites from status_network table.
-     *
-     * Behavior undefined if site is not configured via Status_network.
-     *
-     * @return array of nicknames
-     */
-    public static function findAllSites()
-    {
-        $sites = array();
-        $sn = new Status_network();
-        $sn->find();
-        while ($sn->fetch()) {
-            $sites[] = $sn->nickname;
-        }
-        return $sites;
-    }
-
-    /**
-     * Fire initialization events for all instantiated plugins.
-     */
-    protected static function initPlugins()
-    {
-        // User config may have already added some of these plugins, with
-        // maybe configured parameters. The self::addPlugin function will
-        // ignore the new call if it has already been instantiated.
-
-        // Load core plugins
-        foreach (common_config('plugins', 'core') as $name => $params) {
-            call_user_func('self::addPlugin', $name, $params);
-        }
-
-        // Load default plugins
-        foreach (common_config('plugins', 'default') as $name => $params) {
-            $key = 'disable-' . $name;
-            if (common_config('plugins', $key)) {
-                continue;
-            }
-
-            // TODO: We should be able to avoid this is_null and assume $params
-            // is an array, since that's how it is typed in addPlugin
-            if (is_null($params)) {
-                self::addPlugin($name);
-            } else if (is_array($params)) {
-                if (count($params) == 0) {
-                    self::addPlugin($name);
-                } else {
-                    $keys = array_keys($params);
-                    if (is_string($keys[0])) {
-                        self::addPlugin($name, $params);
-                    } else {
-                        foreach ($params as $paramset) {
-                            self::addPlugin($name, $paramset);
-                        }
-                    }
-                }
-            }
-        }
-
-        // XXX: if plugins should check the schema at runtime, do that here.
-        if (common_config('db', 'schemacheck') == 'runtime') {
-            Event::handle('CheckSchema');
-        }
-
-        // Give plugins a chance to initialize in a fully-prepared environment
-        Event::handle('InitializePlugin');
-    }
-
-    /**
-     * Quick-check if configuration has been established.
-     * Useful for functions which may get used partway through
-     * initialization to back off from fancier things.
-     *
-     * @return bool
-     */
-    public static function haveConfig()
-    {
-        return self::$have_config;
-    }
-
-    public static function isApi()
-    {
-        return self::$is_api;
+        return GNUsocial::getActivePlugins();
     }
 
-    public static function setApi($mode)
+    public static function isHTTPS()
     {
-        self::$is_api = $mode;
-    }
-
-    public static function isAjax()
-    {
-        return self::$is_ajax;
-    }
-
-    public static function setAjax($mode)
-    {
-        self::$is_ajax = $mode;
-    }
-
-    /**
-     * Build default configuration array
-     * @return array
-     */
-    protected static function defaultConfig()
-    {
-        global $_server, $_path;
-        require(INSTALLDIR.'/lib/default.php');
-        return $default;
-    }
-
-    /**
-     * Establish default configuration based on given or default server and path
-     * Sets global $_server, $_path, and $config
-     */
-    public static function initDefaults($server, $path)
-    {
-        global $_server, $_path, $config, $_PEAR;
-
-        Event::clearHandlers();
-        self::$plugins = array();
-
-        // try to figure out where we are. $server and $path
-        // can be set by including module, else we guess based
-        // on HTTP info.
-
-        if (isset($server)) {
-            $_server = $server;
-        } else {
-            $_server = array_key_exists('SERVER_NAME', $_SERVER) ?
-              strtolower($_SERVER['SERVER_NAME']) :
-            null;
-        }
-
-        if (isset($path)) {
-            $_path = $path;
-        } else {
-            $_path = (array_key_exists('SERVER_NAME', $_SERVER) && array_key_exists('SCRIPT_NAME', $_SERVER)) ?
-              self::_sn_to_path($_SERVER['SCRIPT_NAME']) :
-            null;
-        }
-
-        // Set config values initially to default values
-        $default = self::defaultConfig();
-        $config = $default;
-
-        // default configuration, overwritten in config.php
-        // Keep DB_DataObject's db config synced to ours...
-
-        $config['db'] = &$_PEAR->getStaticProperty('DB_DataObject','options');
-
-        $config['db'] = $default['db'];
-
-        if (function_exists('date_default_timezone_set')) {
-            /* Work internally in UTC */
-            date_default_timezone_set('UTC');
-        }
-    }
-
-    public static function loadSiteProfile($name)
-    {
-        global $config;
-        $settings = SiteProfile::getSettings($name);
-        $config = array_replace_recursive($config, $settings);
-    }
-
-    protected static function _sn_to_path($sn)
-    {
-        $past_root = substr($sn, 1);
-        $last_slash = strrpos($past_root, '/');
-        if ($last_slash > 0) {
-            $p = substr($past_root, 0, $last_slash);
-        } else {
-            $p = '';
-        }
-        return $p;
-    }
-
-    /**
-     * Load the default or specified configuration file.
-     * Modifies global $config and may establish plugins.
-     *
-     * @throws NoConfigException
-     */
-    protected static function loadConfigFile($conffile=null)
-    {
-        global $_server, $_path, $config;
-
-        // From most general to most specific:
-        // server-wide, then vhost-wide, then for a path,
-        // finally for a dir (usually only need one of the last two).
-
-        if (isset($conffile)) {
-            $config_files = array($conffile);
-        } else {
-            $config_files = array('/etc/statusnet/statusnet.php',
-                                  '/etc/statusnet/laconica.php',
-                                  '/etc/laconica/laconica.php',
-                                  '/etc/statusnet/'.$_server.'.php',
-                                  '/etc/laconica/'.$_server.'.php');
-
-            if (strlen($_path) > 0) {
-                $config_files[] = '/etc/statusnet/'.$_server.'_'.$_path.'.php';
-                $config_files[] = '/etc/laconica/'.$_server.'_'.$_path.'.php';
-            }
-
-            $config_files[] = INSTALLDIR.'/config.php';
-        }
-
-        self::$have_config = false;
-
-        foreach ($config_files as $_config_file) {
-            if (@file_exists($_config_file)) {
-                // Ignore 0-byte config files
-                if (filesize($_config_file) > 0) {
-                    common_log(LOG_INFO, "Including config file: " . $_config_file);
-                    include($_config_file);
-                    self::$have_config = true;
-                }
-            }
-        }
-
-        if (!self::$have_config) {
-            throw new NoConfigException("No configuration file found.",
-                                        $config_files);
-        }
-
-        // Check for database server; must exist!
-
-        if (empty($config['db']['database'])) {
-            throw new ServerException("No database server for this site.");
-        }
-    }
-
-    /**
-     * Are we running from the web with HTTPS?
-     *
-     * @return boolean true if we're running with HTTPS; else false
-     */
-
-    static function isHTTPS()
-    {
-        // There are some exceptions to this; add them here!
-        if (empty($_SERVER['HTTPS'])) {
-            return false;
-        }
-
-        // If it is _not_ "off", it is on, so "true".
-        return strtolower($_SERVER['HTTPS']) !== 'off';
-    }
-
-    /**
-     * Can we use HTTPS? Then do! Only return false if it's not configured ("never").
-     */
-    static function useHTTPS()
-    {
-        return self::isHTTPS() || common_config('site', 'ssl') != 'never';
-    }
-}
-
-class NoConfigException extends Exception
-{
-    public $configFiles;
-
-    function __construct($msg, $configFiles) {
-        parent::__construct($msg);
-        $this->configFiles = $configFiles;
+        return GNUsocial::isHTTPS();
     }
 }
index 25a8e2a27ebaef546bfa6ea7017c83dd7583a709..4084470e211f9cc0c656c18512f637bf6cd48e19 100644 (file)
@@ -638,9 +638,9 @@ class StompQueueManager extends QueueManager
      */
     function switchSite($site)
     {
-        if ($site != StatusNet::currentSite()) {
+        if ($site != GNUsocial::currentSite()) {
             $this->stats('switch');
-            StatusNet::switchSite($site);
+            GNUsocial::switchSite($site);
             $this->initialize();
         }
     }
@@ -683,7 +683,7 @@ class StompQueueManager extends QueueManager
     protected function queueName($queue)
     {
         $group = $this->queueGroup($queue);
-        $site = StatusNet::currentSite();
+        $site = GNUsocial::currentSite();
 
         $specs = array("$group/$queue/$site",
                        "$group/$queue");
index fbcbbe052a3934eaad47fdd94d28ed15f1506dfd..ef7290de2398ea2cdb973f3dea636f3831424a34 100644 (file)
@@ -130,7 +130,7 @@ class Theme
      */
     protected function relativeThemePath($group, $fallbackSubdir, $name)
     {
-        if (StatusNet::isHTTPS()) {
+        if (GNUsocial::isHTTPS()) {
             $sslserver = common_config($group, 'sslserver');
 
             if (empty($sslserver)) {
index e132c587faf01fbe8693c6701c1b98661d2d76e5..f29507f8465bbe7e2b9fb85109a00f0a01cc096c 100644 (file)
@@ -1260,7 +1260,7 @@ function common_local_url($action, $args=null, $params=null, $fragment=null, $ad
         $path = $r->build($action, $args, $params, $fragment);
 
         $ssl = common_config('site', 'ssl') === 'always'
-                || StatusNet::isHTTPS()
+                || GNUsocial::isHTTPS()
                 || common_is_sensitive($action);
 
         if (common_config('site','fancy')) {
@@ -1304,7 +1304,7 @@ function common_path($relative, $ssl=false, $addSession=true)
     $pathpart = (common_config('site', 'path')) ? common_config('site', 'path')."/" : '';
 
     if (($ssl && (common_config('site', 'ssl') === 'sometimes'))
-        || StatusNet::isHTTPS()
+        || GNUsocial::isHTTPS()
         || common_config('site', 'ssl') === 'always') {
         $proto = 'https';
         if (is_string(common_config('site', 'sslserver')) &&
index 6c8775d65a7946bf74f688637d61ffee4924aa18..56df4eb6d8b6c205c2775745d33ab2297a01c238 100644 (file)
@@ -92,7 +92,7 @@ class AutocompleteAction extends Action
     protected function prepare(array $args=array())
     {
         // If we die, show short error messages.
-        StatusNet::setApi(true);
+        GNUsocial::setApi(true);
 
         parent::prepare($args);
 
index bc043f41ed51e01eafdde5878efde1fb4e07f4ae..7551994b7ce02015beebc74affd9ef1552392799 100644 (file)
@@ -76,7 +76,7 @@ class NewbookmarkAction extends Action
         parent::prepare($argarray);
 
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
 
         $this->user = common_current_user();
index 0d0f74427722841a6045e7988b5c24d308ae2de5..d0e1ea7d76fc912ca3596c2f285bd5239ed99856 100644 (file)
@@ -66,7 +66,7 @@ class DomainStatusNetworkPlugin extends Plugin
             }
         }
 
-        $nickname = StatusNet::currentSite();
+        $nickname = GNUsocial::currentSite();
 
         if (empty($nickname)) {
             $this->log(LOG_WARNING, "No current site");
@@ -212,7 +212,7 @@ class DomainStatusNetworkPlugin extends Plugin
             return false;
         }
 
-        StatusNet::switchSite($sn->nickname);
+        GNUsocial::switchSite($sn->nickname);
 
         $user = User::getKV('email', $email);
 
@@ -242,7 +242,7 @@ class DomainStatusNetworkPlugin extends Plugin
             Status_network::$wildcard = $config['WILDCARD'];
         }
 
-        StatusNet::switchSite($sn->nickname);
+        GNUsocial::switchSite($sn->nickname);
 
         $confirm = EmailRegistrationPlugin::registerEmail($email);
 
@@ -259,7 +259,7 @@ class DomainStatusNetworkPlugin extends Plugin
             throw new ClientException(_("No such site."));
         }
 
-        StatusNet::switchSite($sn->nickname);
+        GNUsocial::switchSite($sn->nickname);
 
         $user = common_check_user($email, $password);
 
@@ -294,7 +294,7 @@ class DomainStatusNetworkPlugin extends Plugin
             throw new NoSuchUserException(array('email' => $email));
         }
 
-        StatusNet::switchSite($sn->nickname);
+        GNUsocial::switchSite($sn->nickname);
 
         $user = User::getKV('email', $email);
         
index cd0c7f9526232549e9e8076940abb621df44ca82..d47a254940e45dcc099c8004f810bb599706b2d1 100644 (file)
@@ -59,7 +59,7 @@ class GlobalApiAction extends Action
 
     function prepare($args)
     {
-        StatusNet::setApi(true); // reduce exception reports to aid in debugging
+        GNUsocial::setApi(true); // reduce exception reports to aid in debugging
 
         parent::prepare($args);
 
index 0547a2596f610aacf1ad8029d3af2e367ec6b0cf..877319be759d95875b0b1547bcd1d82319639248 100644 (file)
@@ -212,7 +212,7 @@ class DomainStatusNetworkInstaller extends Installer
 
         Status_network::$wildcard = $config['WILDCARD'];
 
-        StatusNet::switchSite($this->nickname);
+        GNUsocial::switchSite($this->nickname);
 
         // We need to initialize the schema_version stuff to make later setup easier
 
index 2cc214a671c04e11bd874563099e3f0f0029e59d..5b5b26dde38aa9a4d9a68e216336d64fd80a6dcc 100644 (file)
@@ -95,7 +95,7 @@ if (have_option('u', 'universe')) {
             while ($sn->fetch()) {
                 try {
                     $server = $sn->getServerName();
-                    StatusNet::init($server);
+                    GNUsocial::init($server);
                     // Different queue manager, maybe!
                     $qm = QueueManager::get();
                     foreach ($reminders as $reminder) {
index 06a5327f619560e7d65cc2cd473dfdb11509af59..721fede55b4e45c74e3dbf6cc47050df0e75af9b 100644 (file)
@@ -40,7 +40,7 @@ if (have_option('u', 'universe')) {
     if ($sn->find()) {
         while ($sn->fetch()) {
             $server = $sn->getServerName();
-            StatusNet::init($server);
+            GNUsocial::init($server);
             // Different queue manager, maybe!
             $qm = QueueManager::get();
             $qm->enqueue(1, 'sitesum');
index 1a30e86a1e8e87eb0d51ef380f2895d5b094ff2c..1f8e6fde71a3fcbfb547a6b696606afa0f33d668 100644 (file)
@@ -72,7 +72,7 @@ class CancelrsvpAction extends Action
     {
         parent::prepare($argarray);
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true); // short error results!
+            GNUsocial::setApi(true); // short error results!
         }
 
         $rsvpId = $this->trimmed('rsvp');
index 7a87d359e07c77a9b81a094ec30fd7d9b80b2973..adc97514486cd47dc8997d62bf0319847690185b 100644 (file)
@@ -72,7 +72,7 @@ class NewrsvpAction extends Action
     {
         parent::prepare($argarray);
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true); // short error results!
+            GNUsocial::setApi(true); // short error results!
         }
 
         $eventId = $this->trimmed('event');
index 3ce7e74c79e7e3fda655048cb86aa503a6fd4107..b39453b5aa7f83f31b9beb557e2dff6835f26dcd 100644 (file)
@@ -74,7 +74,7 @@ class DisfavorAction extends FormAction
             $this->serverError(_('Could not delete favorite.'));
         }
         Fave::blowCacheForProfileId($this->scoped->id);
-        if (StatusNet::isAjax()) {
+        if (GNUsocial::isAjax()) {
             $this->startHTML('text/xml;charset=utf-8');
             $this->elementStart('head');
             // TRANS: Title for page on which favorites can be added.
index 7e54aca57067de6bce92a0e4d76f7f85c22181a5..97b0942441e94a8a93bcb9663ae13c26294fed51 100644 (file)
@@ -49,7 +49,7 @@ class OembedproxyAction extends OembedAction
     function handle($args)
     {
         // Trigger short error responses; not a human-readable web page.
-        StatusNet::setApi(true);
+        GNUsocial::setApi(true);
 
         // We're not a general oEmbed proxy service; limit to valid sessions.
         $token = $this->trimmed('token');
index e2551de184ea4b04d8a7ec9148e3c6705b1cb333..1e0d05f8ad36e342d13422e0362a847c29560522 100644 (file)
@@ -102,7 +102,7 @@ class MapstractionPlugin extends Plugin
                                     urlencode($this->apikey)));
             break;
         case 'microsoft':
-            $action->script((StatusNet::isHTTPS()?'https':'http') + '://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6');
+            $action->script((GNUsocial::isHTTPS()?'https':'http') + '://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6');
             break;
         case 'openlayers':
             // Use our included stripped & minified OpenLayers.
index 1dab72b2e0fc95d941dc6c3f8bdcaf38094911dd..95514112ca63e08c7518175ca82e1502d9910f3e 100644 (file)
@@ -30,7 +30,7 @@ class PushCallbackAction extends Action
 {
     protected function handle()
     {
-        StatusNet::setApi(true); // Minimize error messages to aid in debugging
+        GNUsocial::setApi(true); // Minimize error messages to aid in debugging
         parent::handle();
         if ($this->isPost()) {
             return $this->handlePost();
index 5ab1fc23d833d435787eda24144c363ee15dcc93..5d0b9fbf903f64686388e4eeefc494bdddccc511 100644 (file)
@@ -49,7 +49,7 @@ class PushHubAction extends Action
 
     protected function prepare(array $args=array())
     {
-        StatusNet::setApi(true); // reduce exception reports to aid in debugging
+        GNUsocial::setApi(true); // reduce exception reports to aid in debugging
         return parent::prepare($args);
     }
 
index 2954d8038c9492b00a5db95bdc2abebf92fd08c9..6fb3d2f9fe20bf175437305ba3004d8e46836e63 100644 (file)
@@ -37,7 +37,7 @@ class SalmonAction extends Action
 
     protected function prepare(array $args=array())
     {
-        StatusNet::setApi(true); // Send smaller error pages
+        GNUsocial::setApi(true); // Send smaller error pages
 
         parent::prepare($args);
 
index a366103a021f92cca829e3c12039397ddfc34588..44e5d1a72bad57e2a46e38a2a3f7e72d741861d3 100644 (file)
@@ -182,7 +182,7 @@ class OembedPlugin extends Plugin
         case 'video':
         case 'link':
             if (!empty($oembed->html)
-                    && (StatusNet::isAjax() || common_config('attachments', 'show_html'))) {
+                    && (GNUsocial::isAjax() || common_config('attachments', 'show_html'))) {
                 require_once INSTALLDIR.'/extlib/htmLawed/htmLawed.php';
                 $config = array(
                     'safe'=>1,
index 071778aaa2109486618b515a3ce8d4b091a20a47..b097553498e449e15f8a57896ee577f027581edf 100644 (file)
@@ -125,7 +125,7 @@ class NewPollAction extends Action
     function newPoll()
     {
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
         try {
             if (empty($this->question)) {
index 13d3abf683702a8742d24ead105ef3553b4552ad..02aec678304b0de15d64b5868f76841d69c44664 100644 (file)
@@ -74,7 +74,7 @@ class RespondPollAction extends Action
     {
         parent::prepare($argarray);
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
 
         $this->user = common_current_user();
index b8fed19480263d6e5da5dad09cc4ef3d16b22372..5c5e0f846757b1a046404e870565fda533088cd1 100644 (file)
@@ -74,7 +74,7 @@ class QnaclosequestionAction extends Action
     {
         parent::prepare($argarray);
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
 
         $this->user = common_current_user();
index aad207fba215e5f2df1c1087af8fbf6aecd58ccf..94561a154861908a0e73a5d98bd0dc1112b99934 100644 (file)
@@ -74,7 +74,7 @@ class QnanewanswerAction extends Action
     {
         parent::prepare($argarray);
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
         common_debug("in qnanewanswer");
         $this->user = common_current_user();
index ab3c9db136d76ec22ad89de334be5af620de1c69..79ef3a6eb05c99d334d169899f4fdc81d79550c6 100644 (file)
@@ -121,7 +121,7 @@ class QnanewquestionAction extends Action
     function newQuestion()
     {
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
         try {
             if (empty($this->title)) {
index e2e76a787356b768bceea32094c81f507c1cfc21..ae9644a7e0a94454a12772247bdbf96297919324 100644 (file)
@@ -73,7 +73,7 @@ class QnareviseanswerAction extends Action
     {
         parent::prepare($argarray);
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
 
         $this->user = common_current_user();
index 6cda1ff827fef15e8d008a04411f793424a029e9..5531b3124bdfe4f8fd2d3dbc05e36cdf88ebcd81 100644 (file)
@@ -74,7 +74,7 @@ class Qnavote extends Action
     {
         parent::prepare($argarray);
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
 
         $this->user = common_current_user();
index ea195b02cddccb7b113f82f31329e9247ae54696..37883b1da65d41f013273b5f8cdc355432b64baa 100644 (file)
@@ -62,7 +62,7 @@ if (have_option('u', 'universe')) {
     if ($sn->find()) {
         while ($sn->fetch()) {
             $server = $sn->getServerName();
-            StatusNet::init($server);
+            GNUsocial::init($server);
             cleanupChannels();
         }
     }
index 10bf2a3c0488a2ae40dec0b132ec334597019777..946c604e65c52f1b3805ed92dec25c8a2094669d 100644 (file)
@@ -71,7 +71,7 @@ class RecaptchaPlugin extends Plugin
     {
         if (isset($action->recaptchaPluginNeedsOutput) && $action->recaptchaPluginNeedsOutput) {
             // Load the AJAX API
-            if (StatusNet::isHTTPS()) {
+            if (GNUsocial::isHTTPS()) {
                 $url = "https://www.google.com/recaptcha/api/js/recaptcha_ajax.js";
             } else {
                 $url = "http://www.google.com/recaptcha/api/js/recaptcha_ajax.js";
index cf9e5e5e949f3de1c4f2ee8ca499e6f026e4c5da..586f2252f67a70bcdb269d9033da9675d377357d 100644 (file)
@@ -67,7 +67,7 @@ class SearchsubAction extends Action
     {
         parent::prepare($args);
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
 
         // Only allow POST requests
index 4550716cab8f39bb63c004dbbe15dff70e577f53..de333c8f58971659805094cb475fe381532ca4e2 100644 (file)
@@ -67,7 +67,7 @@ class TagsubAction extends Action
     {
         parent::prepare($args);
         if ($this->boolean('ajax')) {
-            StatusNet::setApi(true);
+            GNUsocial::setApi(true);
         }
 
         // Only allow POST requests