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 + ")" : "";
--------------------------------------------------------------------------------

Post a comment in response:

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org