X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FOrbited%2FOrbitedPlugin.php;h=d3b73a96148b0184bde067633c909bc285a8507c;hb=ed13c9a09840f4ed13473eaa4804cb9b192ba7b1;hp=ad7d1d2764d566c096c01b397eb6b6af48517f59;hpb=035978270d609b650b8e32f252366e0e75b12507;p=quix0rs-gnu-social.git diff --git a/plugins/Orbited/OrbitedPlugin.php b/plugins/Orbited/OrbitedPlugin.php index ad7d1d2764..d3b73a9614 100644 --- a/plugins/Orbited/OrbitedPlugin.php +++ b/plugins/Orbited/OrbitedPlugin.php @@ -45,7 +45,6 @@ require_once INSTALLDIR.'/plugins/Realtime/RealtimePlugin.php'; * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://laconi.ca/ */ - class OrbitedPlugin extends RealtimePlugin { public $webserver = null; @@ -60,6 +59,12 @@ class OrbitedPlugin extends RealtimePlugin protected $con = null; + function onStartShowHeadElements($action) + { + // See http://orbited.org/wiki/Deployment#Cross-SubdomainDeployment + $action->element('script', null, ' document.domain = document.domain; '); + } + function _getScripts() { $scripts = parent::_getScripts(); @@ -71,8 +76,9 @@ class OrbitedPlugin extends RealtimePlugin $root = 'http://'.$server.(($port == 80) ? '':':'.$port); $scripts[] = $root.'/static/Orbited.js'; + $scripts[] = 'plugins/Orbited/orbitedextra.js'; $scripts[] = $root.'/static/protocols/stomp/stomp.js'; - $scripts[] = common_path('plugins/Orbited/orbitedupdater.js'); + $scripts[] = 'plugins/Orbited/orbitedupdater.js'; return $scripts; } @@ -90,17 +96,18 @@ class OrbitedPlugin extends RealtimePlugin function _connect() { - require_once(INSTALLDIR.'/extlibs/Stomp.php'); + require_once(INSTALLDIR.'/extlib/Stomp.php'); $url = $this->_getStompUrl(); $this->con = new Stomp($url); if ($this->con->connect($this->username, $this->password)) { - $this->_log(LOG_INFO, "Connected."); + $this->log(LOG_INFO, "Connected."); } else { - $this->_log(LOG_ERR, 'Failed to connect to queue server'); - throw new ServerException('Failed to connect to queue server'); + $this->log(LOG_ERR, 'Failed to connect to queue server'); + // TRANS: Server exception thrown when no connection can be made to a queue server. + throw new ServerException(_m('Failed to connect to queue server.')); } } @@ -110,7 +117,7 @@ class OrbitedPlugin extends RealtimePlugin json_encode($message)); return $result; - // TODO: parse and deal with result + // @todo Parse and deal with result. } function _disconnect() @@ -128,15 +135,14 @@ class OrbitedPlugin extends RealtimePlugin function _getStompServer() { - $server = (!is_null($this->stompserver)) ? $this->stompserver : + return (!is_null($this->stompserver)) ? $this->stompserver : (!is_null($this->webserver)) ? $this->webserver : common_config('site', 'server'); - return $server; } function _getStompPort() { - $port = (!is_null($this->stompport)) ? $this->stompport : 61613; + return (!is_null($this->stompport)) ? $this->stompport : 61613; } function _getStompUrl() @@ -145,4 +151,23 @@ class OrbitedPlugin extends RealtimePlugin $port = $this->_getStompPort(); return "tcp://$server:$port/"; } + + /** + * Add our version information to output + * + * @param array &$versions Array of version-data arrays + * + * @return boolean hook value + */ + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'Orbited', + 'version' => STATUSNET_VERSION, + 'author' => 'Evan Prodromou', + 'homepage' => 'http://status.net/wiki/Plugin:Orbited', + 'rawdescription' => + // TRANS: Plugin description. + _m('Plugin to make updates using Orbited and STOMP.')); + return true; + } }