]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - plugins/Realtime/RealtimePlugin.php
Merge branch '0.8.x' of git://gitorious.org/~brion/statusnet/brion-fixes into 0.8.x
[quix0rs-gnu-social.git] / plugins / Realtime / RealtimePlugin.php
index c41c9ce4ac08918d02d286963409d496e572008a..e30c4115676b3740205af9caec39936a7b1c03eb 100644 (file)
@@ -76,6 +76,13 @@ class RealtimePlugin extends Plugin
             return true;
         }
 
+        $base = $action->selfUrl();
+        if (mb_strstr($base, '?')) {
+            $url = $base . '&realtime=1';
+        } else {
+            $url = $base . '?realtime=1';
+        }
+
         $scripts = $this->_getScripts();
 
         foreach ($scripts as $script) {
@@ -90,12 +97,20 @@ class RealtimePlugin extends Plugin
             $user_id = 0;
         }
 
+        if ($action->boolean('realtime')) {
+            $realtimeUI = ' RealtimeUpdate.initPopupWindow();';
+        }
+        else {
+            $iconurl = common_path('plugins/Realtime/icon_external.gif');
+            $realtimeUI = ' RealtimeUpdate.addPopup("'.$url.'", "'.$timeline.'", "'. $iconurl .'");';
+        }
+
         $action->elementStart('script', array('type' => 'text/javascript'));
 
         $script = ' $(document).ready(function() { '.
+          $realtimeUI.
           $this->_updateInitialize($timeline, $user_id).
           '}); ';
-
         $action->raw($script);
 
         $action->elementEnd('script');
@@ -189,28 +204,6 @@ class RealtimePlugin extends Plugin
         return true;
     }
 
-    function onStartShowPageNotice($action)
-    {
-        $timeline = $this->_getTimeline($action);
-        if (!empty($timeline)) {
-            $base = $action->selfUrl();
-            if (mb_strstr($url, '?')) {
-                $url = $base . '&realtime=1';
-            } else {
-                $url = $base . '?realtime=1';
-            }
-            $title = $action->title();
-            $code = "window.open('$url', '$title', 'toolbar=no,resizable=yes,scrollbars=yes,status=yes,height=640,width=575');";
-            $action->element('a', array('href' => $base,
-                                        'onclick' => $code,
-                                        'id' => 'realtime_timeline',
-                                        'title' => _('Pop up')),
-                             'Pop up');
-
-        }
-        return true;
-    }
-
     function onStartShowBody($action)
     {
         $realtime = $action->boolean('realtime');
@@ -223,6 +216,8 @@ class RealtimePlugin extends Plugin
                                                               'class' => 'user_in')
                               : array('id' => $action->trimmed('action')));
 
+        $action->elementStart('div', array('id' => 'header'));
+
         // XXX hack to deal with JS that tries to get the
         // root url from page output
 
@@ -235,7 +230,9 @@ class RealtimePlugin extends Plugin
         if (common_logged_in()) {
             $action->showNoticeForm();
         }
-        $action->showContent();
+        $action->elementEnd('div');
+
+        $action->showContentBlock();
         $action->elementEnd('body');
         return false; // No default processing
     }