]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Created separate objects for receive actions
authorSarven Capadisli <csarven@status.net>
Wed, 18 Nov 2009 13:34:06 +0000 (13:34 +0000)
committerSarven Capadisli <csarven@status.net>
Wed, 18 Nov 2009 13:34:06 +0000 (13:34 +0000)
plugins/Realtime/realtimeupdate.js

index d1cf1d5070792f9d28eb2241b32b142269ccce41..6404cf896560ae2aa082b54d54ba315788f28595 100644 (file)
@@ -36,6 +36,7 @@ RealtimeUpdate = {
      _updatecounter: 0,
      _maxnotices: 50,
      _windowhasfocus: true,
+     _documenttitle: '',
 
      init: function(userid, replyurl, favorurl, deleteurl)
      {
@@ -44,7 +45,7 @@ RealtimeUpdate = {
         RealtimeUpdate._favorurl = favorurl;
         RealtimeUpdate._deleteurl = deleteurl;
 
-        DT = document.title;
+        RealtimeUpdate._documenttitle = document.title;
 
         $(window).bind('focus', function(){ RealtimeUpdate._windowhasfocus = true; });
 
@@ -54,7 +55,7 @@ RealtimeUpdate = {
           $('#notices_primary .notice:first').addClass('mark-top');
 
           RealtimeUpdate._updatecounter = 0;
-          document.title = DT;
+          document.title = RealtimeUpdate._documenttitle;
           RealtimeUpdate._windowhasfocus = false;
 
           return false;
@@ -70,24 +71,37 @@ RealtimeUpdate = {
                return;
           }
 
-          var noticeItem = RealtimeUpdate.makeNoticeItem(data);
-          $("#notices_primary .notices").prepend(noticeItem);
-          $("#notices_primary .notice:first").css({display:"none"});
-          $("#notices_primary .notice:first").fadeIn(1000);
+          RealtimeUpdate.purgeLastNoticeItem();
 
-          if ($('#notices_primary .notice').length > RealtimeUpdate._maxnotices) {
-               $("#notices_primary .notice:last .form_disfavor").unbind('submit');
-               $("#notices_primary .notice:last .form_favor").unbind('submit');
-               $("#notices_primary .notice:last .notice_reply").unbind('click');
-               $("#notices_primary .notice:last").remove();
-          }
+          RealtimeUpdate.insertNoticeItem(data);
+
+          RealtimeUpdate.updateWindowCounter();
+
+     },
 
-          SN.U.NoticeReply();
-          SN.U.NoticeFavor();
+     insertNoticeItem: function(data) {
+        var noticeItem = RealtimeUpdate.makeNoticeItem(data);
+        $("#notices_primary .notices").prepend(noticeItem);
+        $("#notices_primary .notice:first").css({display:"none"});
+        $("#notices_primary .notice:first").fadeIn(1000);
+
+        SN.U.NoticeReply();
+        SN.U.NoticeFavor();
+     },
+
+     purgeLastNoticeItem: function() {
+        if ($('#notices_primary .notice').length > RealtimeUpdate._maxnotices) {
+            $("#notices_primary .notice:last .form_disfavor").unbind('submit');
+            $("#notices_primary .notice:last .form_favor").unbind('submit');
+            $("#notices_primary .notice:last .notice_reply").unbind('click');
+            $("#notices_primary .notice:last").remove();
+        }
+     },
 
+     updateWindowCounter: function() {
           if (RealtimeUpdate._windowhasfocus === false) {
               RealtimeUpdate._updatecounter += 1;
-              document.title = '('+RealtimeUpdate._updatecounter+') ' + DT;
+              document.title = '('+RealtimeUpdate._updatecounter+') ' + RealtimeUpdate._documenttitle;
           }
      },