Mercurial > bugzilla-dashboard
diff js/modules/app.js @ 79:a6ad06a2dbc1
don't refresh data on page reload; only when user clicks 'refresh'
author | Atul Varma <avarma@mozilla.com> |
---|---|
date | Sun, 25 Apr 2010 21:22:32 -0700 |
parents | 4bb45ff5788a |
children | 677df912e92d |
line wrap: on
line diff
--- a/js/modules/app.js Sun Apr 25 20:54:51 2010 -0700 +++ b/js/modules/app.js Sun Apr 25 21:22:32 2010 -0700 @@ -525,16 +525,19 @@ }); } - function report(selector, key, searchTerms) { + function report(selector, key, forceUpdate, searchTerms) { var newTerms = {__proto__: defaults}; for (name in searchTerms) newTerms[name.replace(/_DOT_/g, ".")] = searchTerms[name]; var cacheKey = key + "/" + selector; var cached = cache.get(cacheKey); - if (cached) + if (cached) { showBugs($(selector), cached); - + if (!forceUpdate) + return; + } + $(selector).find("h2").addClass("loading"); xhrQueue.enqueue( @@ -563,20 +566,20 @@ changed_after: timeAgo(MS_PER_WEEK * 14) }; - function update(myUsername) { + function update(myUsername, forceUpdate) { xhrQueue.clear(); - report("#code-reviews", myUsername, + report("#code-reviews", myUsername, forceUpdate, {status: ["NEW", "UNCONFIRMED", "ASSIGNED", "REOPENED"], flag_DOT_requestee: myUsername}); - report("#assigned-bugs", myUsername, + report("#assigned-bugs", myUsername, forceUpdate, {status: ["NEW", "UNCONFIRMED", "ASSIGNED", "REOPENED"], email1: myUsername, email1_type: "equals", email1_assigned_to: 1}); - report("#reported-bugs", myUsername, + report("#reported-bugs", myUsername, forceUpdate, {status: ["NEW", "UNCONFIRMED", "ASSIGNED", "REOPENED"], email1: myUsername, email1_type: "equals", @@ -585,7 +588,7 @@ email2_type: "not_equals", email2_assigned_to: 1}); - report("#cc-bugs", myUsername, + report("#cc-bugs", myUsername, forceUpdate, {status: ["NEW", "UNCONFIRMED", "ASSIGNED", "REOPENED"], email1: myUsername, email1_type: "equals", @@ -595,7 +598,7 @@ email2_assigned_to: 1, email2_reporter: 1}); - report("#fixed-bugs", myUsername, + report("#fixed-bugs", myUsername, forceUpdate, {resolution: ["FIXED"], changed_after: timeAgo(MS_PER_WEEK), email1: myUsername, @@ -610,7 +613,7 @@ execute: function execute() { var user = require("app/login").get(); if (user.isLoggedIn) - update(user.username); + update(user.username, true); } }; @@ -619,7 +622,7 @@ require("app/login").whenChanged( function changeSearchCriteria(user) { if (user.isLoggedIn) { - update(user.username); + update(user.username, false); } }); };