]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Some changes required from Orbited debugging
authorEvan Prodromou <evan@status.net>
Sun, 4 Oct 2009 08:05:40 +0000 (04:05 -0400)
committerEvan Prodromou <evan@status.net>
Sun, 4 Oct 2009 08:05:40 +0000 (04:05 -0400)
plugins/Orbited/OrbitedPlugin.php
plugins/Orbited/orbitedextra.js [new file with mode: 0644]
plugins/Orbited/orbitedupdater.js

index ad7d1d2764d566c096c01b397eb6b6af48517f59..ba87b266a03b2588cb62988531838dce483693c0 100644 (file)
@@ -60,6 +60,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,6 +77,7 @@ class OrbitedPlugin extends RealtimePlugin
         $root = 'http://'.$server.(($port == 80) ? '':':'.$port);
 
         $scripts[] = $root.'/static/Orbited.js';
+        $scripts[] = common_path('plugins/Orbited/orbitedextra.js');
         $scripts[] = $root.'/static/protocols/stomp/stomp.js';
         $scripts[] = common_path('plugins/Orbited/orbitedupdater.js');
 
@@ -90,16 +97,16 @@ 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');
+            $this->log(LOG_ERR, 'Failed to connect to queue server');
             throw new ServerException('Failed to connect to queue server');
         }
     }
@@ -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()
diff --git a/plugins/Orbited/orbitedextra.js b/plugins/Orbited/orbitedextra.js
new file mode 100644 (file)
index 0000000..47e5c0c
--- /dev/null
@@ -0,0 +1,2 @@
+TCPSocket = Orbited.TCPSocket;
+
index d70f4a4fda1d9ed95465b0829c232ae36c9f5789..8c5ab3b7327458063237126bf9f933ed9d4c1715 100644 (file)
@@ -9,13 +9,16 @@ var OrbitedUpdater = function()
                // set up stomp client.
                stomp = new STOMPClient();
 
-               stomp.connect(server, port, username, password);
-               stomp.subscribe(timeline);
-
                stomp.onmessageframe = function(frame) {
                     RealtimeUpdate.receive(JSON.parse(frame.body));
                };
-          };
+
+               stomp.onconnectedframe = function() {
+                    stomp.subscribe(timeline);
+               }
+
+               stomp.connect(server, port, username, password);
+          }
      }
 }();