mark: A photo of Mark kneeling on top of the Taal Volcano in the Philippines. It was a long hike. (Default)
Mark Smith ([staff profile] mark) wrote in [site community profile] changelog2009-11-10 03:07 am

[dw-free] Dynamic inbox count in menu

[commit: http://hg.dwscoalition.org/dw-free/rev/9e56f58fbc0e]

http://bugs.dwscoalition.org/show_bug.cgi?id=378

Inbox count on site scheme should update dynamically.

Patch by [personal profile] afuna.

Files modified:
  • cgi-bin/bml/scheme/blueshift.look
  • cgi-bin/bml/scheme/celerity.look
  • cgi-bin/bml/scheme/gradation-vertical.look
  • htdocs/js/esn_inbox.js
  • htdocs/js/livejournal.js
--------------------------------------------------------------------------------
diff -r e5edb7c3bc86 -r 9e56f58fbc0e cgi-bin/bml/scheme/blueshift.look
--- a/cgi-bin/bml/scheme/blueshift.look	Tue Nov 10 03:05:21 2009 +0000
+++ b/cgi-bin/bml/scheme/blueshift.look	Tue Nov 10 03:07:27 2009 +0000
@@ -86,7 +86,7 @@ accountlinks<=
         $ret .= "<li><a href='$LJ::SITEROOT/update'>$ML{'sitescheme.accountlinks.post'}</a>  &bull; </li>" unless $identity;
         $ret .= "<li><a href='" . $remote->journal_base . "/read'>$ML{'sitescheme.accountlinks.readinglist'}</a> &bull; </li>";
         $ret .= "<li><a href='$LJ::SITEROOT/inbox/'>$ML{'sitescheme.accountlinks.inbox'}";
-        $ret .= " ($unread)" if $unread;
+        $ret .= " <span id='Inbox_Unread_Count'>($unread)</span>" if $unread;
         $ret .= "</a> &bull; </li>";
         $ret .= "<li><a href='$LJ::SITEROOT/manage/settings/'>$ML{'sitescheme.accountlinks.account'}</a></li> <br />";
         $ret .= "<li><a href='$LJ::SITEROOT/manage/circle/invite'>$ML{'sitescheme.accountlinks.invitefriend'}</a> &bull; </li>" unless $identity;
diff -r e5edb7c3bc86 -r 9e56f58fbc0e cgi-bin/bml/scheme/celerity.look
--- a/cgi-bin/bml/scheme/celerity.look	Tue Nov 10 03:05:21 2009 +0000
+++ b/cgi-bin/bml/scheme/celerity.look	Tue Nov 10 03:07:27 2009 +0000
@@ -76,7 +76,7 @@ accountlinks<=
         $ret .= "<li><a href='$LJ::SITEROOT/update'>$ML{'sitescheme.accountlinks.post'}</a>  &bull; </li>" unless $identity;
         $ret .= "<li><a href='" . $remote->journal_base . "/read'>$ML{'sitescheme.accountlinks.readinglist'}</a> &bull; </li>";
         $ret .= "<li><a href='$LJ::SITEROOT/inbox/'>$ML{'sitescheme.accountlinks.inbox'}";
-        $ret .= " ($unread)" if $unread;
+        $ret .= " <span id='Inbox_Unread_Count'>($unread)</span>" if $unread;
         $ret .= "</a> &bull; </li>";
         $ret .= "<li><a href='$LJ::SITEROOT/manage/settings/'>$ML{'sitescheme.accountlinks.account'}</a></li> <br />";
         $ret .= "<li><a href='$LJ::SITEROOT/manage/circle/invite'>$ML{'sitescheme.accountlinks.invitefriend'}</a> &bull; </li>" unless $identity;
diff -r e5edb7c3bc86 -r 9e56f58fbc0e cgi-bin/bml/scheme/gradation-vertical.look
--- a/cgi-bin/bml/scheme/gradation-vertical.look	Tue Nov 10 03:05:21 2009 +0000
+++ b/cgi-bin/bml/scheme/gradation-vertical.look	Tue Nov 10 03:07:27 2009 +0000
@@ -85,7 +85,7 @@ accountlinks<=
         $ret .= "<li><a href='$LJ::SITEROOT/update'>$ML{'sitescheme.accountlinks.post'}</a>  &bull; </li>" unless $identity;
         $ret .= "<li><a href='" . $remote->journal_base . "/read'>$ML{'sitescheme.accountlinks.readinglist'}</a> &bull; </li>";
         $ret .= "<li><a href='$LJ::SITEROOT/inbox/'>$ML{'sitescheme.accountlinks.inbox'}";
-        $ret .= " ($unread)" if $unread;
+        $ret .= " <span id='Inbox_Unread_Count'>($unread)</span>" if $unread;
         $ret .= "</a> &bull; </li>";
         $ret .= "<li><a href='$LJ::SITEROOT/manage/settings/'>$ML{'sitescheme.accountlinks.account'}</a></li> <br />";
         $ret .= "<li><a href='$LJ::SITEROOT/manage/circle/invite'>$ML{'sitescheme.accountlinks.invitefriend'}</a> &bull; </li>" unless $identity;
diff -r e5edb7c3bc86 -r 9e56f58fbc0e htdocs/js/esn_inbox.js
--- a/htdocs/js/esn_inbox.js	Tue Nov 10 03:05:21 2009 +0000
+++ b/htdocs/js/esn_inbox.js	Tue Nov 10 03:07:27 2009 +0000
@@ -356,6 +356,9 @@ ESN_Inbox.finishedUpdate = function (inf
     ESN_Inbox.refresh_count("esn_folder_entrycomment", info.unread_entrycomment);
     ESN_Inbox.refresh_count("esn_folder_usermsg_sent", info.unread_usermsg_sent);
 
+    if ( LiveJournal.gotInboxUpdate )
+        LiveJournal.gotInboxUpdate( { "unread_count" : info.unread_all } );
+
     // Bo row of action buttons counts as 1 row
     if ($(folder + "_Body").getElementsByTagName("tr").length < 2) {
         // no rows left, refresh page if more messages
diff -r e5edb7c3bc86 -r 9e56f58fbc0e htdocs/js/livejournal.js
--- a/htdocs/js/livejournal.js	Tue Nov 10 03:05:21 2009 +0000
+++ b/htdocs/js/livejournal.js	Tue Nov 10 03:07:27 2009 +0000
@@ -68,7 +68,7 @@ LiveJournal.initInboxUpdate = function (
     if (! Site || ! Site.has_remote || ! Site.inbox_update_poll) return;
 
     // Don't run if no inbox count
-    var unread = $("LJ_Inbox_Unread_Count");
+    var unread = $("Inbox_Unread_Count");
     if (! unread) return;
 
     // Update every five minutes
@@ -96,7 +96,7 @@ LiveJournal.gotInboxUpdate = function (r
 LiveJournal.gotInboxUpdate = function (resp) {
     if (! resp || resp.error) return;
 
-    var unread = $("LJ_Inbox_Unread_Count");
+    var unread = $("Inbox_Unread_Count");
     if (! unread) return;
 
     unread.innerHTML = resp.unread_count ? "  (" + resp.unread_count + ")" : "";
--------------------------------------------------------------------------------