Skip to content

Commit

Permalink
Fixing loading indicators and storage for stats pages (bug 578411)
Browse files Browse the repository at this point in the history
  • Loading branch information
potch committed Apr 29, 2011
1 parent 91261c5 commit 76de7c4
Show file tree
Hide file tree
Showing 7 changed files with 29 additions and 21 deletions.
2 changes: 1 addition & 1 deletion apps/stats/helpers.py
Expand Up @@ -25,7 +25,7 @@ def report_menu(context, addon, report):
{
'name': 'sources',
'url': '/downloads/sources/',
'title': _('by Download Source'),
'title': _('by Source'),
},
]
},
Expand Down
2 changes: 1 addition & 1 deletion apps/stats/templates/stats/report_menu.html
@@ -1,6 +1,6 @@
{% set show_contributions = false %}
<div class="secondary-item-list report-menu">
<h3>{{ _('Add-On Statistics') }}</h3>
<h3>{{ _('Add-on Statistics') }}</h3>
<ul>
{% for item in report_tree %}
{% if item.name != 'contributions' or show_contributions %}
Expand Down
19 changes: 8 additions & 11 deletions apps/stats/templates/stats/stats.html
Expand Up @@ -22,16 +22,19 @@

<div class="criteria range">
<ul>
<li>{{ _('For Last:') }}</li>
<li>{{ _('For last:') }}</li>
<li data-range="7 days"
{% if range=='7' %}class="selected"{% endif %}>
<a href="#">{{ _('7 Days') }}</a></li>
<a href="#">{{ _('7 days') }}</a></li>
<li data-range="30 days"
{% if range=='30' %}class="selected"{% endif %}>
<a href="#">{{ _('30 Days') }}</a></li>
<a href="#">{{ _('30 days') }}</a></li>
<li data-range="90 days"
{% if range=='90' %}class="selected"{% endif %}>
<a href="#">{{ _('90 Days') }}</a></li>
<a href="#">{{ _('90 days') }}</a></li>
<li data-range="365 days"
{% if range=='365' %}class="selected"{% endif %}>
<a href="#">{{ _('365 days') }}</a></li>
<li class="divider"></li>
<li data-range="custom"
{% if range=='custom' %}class="selected"{% endif %}>
Expand Down Expand Up @@ -122,14 +125,8 @@ <h4 class="author">{{ _('by {0}')|f(users_list(addon.listed_authors))|xssafe }}<
{% endblock %}

{% block js %}
<script src="{{ media('js/lib/jquery-datepicker.js') }}"></script>
<script src="{{ media('js/lib/highcharts.src.js') }}"></script>
<!--[if IE]>
<script src="{{ media('js/lib/excanvas.compiled.js" type="text/javascript') }}"></script>
<![endif]-->
<script src="{{ media('js/zamboni/stats/csv_keys.js') }}"></script>
<script src="{{ media('js/zamboni/stats/helpers.js') }}"></script>
<script src="{{ media('js/zamboni/stats/stats_manager.js') }}"></script>
<script src="{{ media('js/zamboni/stats/stats_tables.js') }}"></script>
<script src="{{ media('js/zamboni/stats/stats.js') }}"></script>
{{ js('stats') }}
{% endblock %}
2 changes: 1 addition & 1 deletion media/css/legacy/stats.css
Expand Up @@ -110,7 +110,7 @@ div.statbox {
.criteria.range {
float: right;
position: relative;
top: -18px;
top: -2px;
z-index: 1000;
}
.criteria li {
Expand Down
2 changes: 2 additions & 0 deletions media/js/zamboni/stats/stats.js
Expand Up @@ -249,6 +249,7 @@ function SeriesChart() {
this.render = function(view) {
var newView = $.extend({}, currentView, view);
dbg("rendering", newView);
set_loading(chartObj.container);
Series.get(newView, function(seriesSet) {
var s = chartObj.series;
while(chartObj.series.length) {
Expand All @@ -266,6 +267,7 @@ function SeriesChart() {
if ('time' in view) {
drawFieldMenu();
}
$(chartObj.container).addClass("loaded");
});
};
this.chart = function() { return chartObj; };
Expand Down
14 changes: 7 additions & 7 deletions media/js/zamboni/stats/stats_manager.js
@@ -1,7 +1,7 @@
// (function () {

// Versioning for offline storage
var version = "11";
var version = "12";

// where all the time-series data for the page is kept
var datastore = {};
Expand Down Expand Up @@ -53,7 +53,7 @@

// Worker pool for Web Worker management

var stats_worker_url = z.media_url+"js/workers/stats_worker.js";
var stats_worker_url = '/media/js/workers/stats_worker.js';

var StatsWorkerPool = new WorkerPool(4);

Expand Down Expand Up @@ -245,7 +245,7 @@
init: function () {
dbg("looking for local data");
if (AMO.StatsManager.verify_local()) {
var cacheObject = storageCache.get(AMO.getAddonId());
var cacheObject = AMO.StatsManager.storageCache.get(AMO.getAddonId());
if (cacheObject) {
dbg("found local data, loading...");
cacheObject = JSON.parse(cacheObject);
Expand All @@ -258,18 +258,18 @@

write_local: function () {
dbg("saving local data");
storageCache.set(AMO.getAddonId(), JSON.stringify(datastore));
storage.set("version", version);
AMO.StatsManager.storageCache.set(AMO.getAddonId(), JSON.stringify(datastore));
AMO.StatsManager.storage.set("version", version);
dbg("saved local data");
},

clear_local: function () {
storageCache.remove(AMO.getAddonId());
AMO.StatsManager.storageCache.remove(AMO.getAddonId());
dbg("cleared local data");
},

verify_local: function () {
if (storage.get("version") == version) {
if (AMO.StatsManager.storage.get("version") == version) {
return true;
} else {
dbg("wrong offline data verion");
Expand Down
9 changes: 9 additions & 0 deletions settings.py
Expand Up @@ -556,6 +556,15 @@ def JINJA_CONFIG():
'js/zamboni/truncation.js',
'js/zamboni/mobile.js',
),
'stats': (
'js/lib/jquery-datepicker.js',
'js/lib/highcharts.src.js',
'js/zamboni/stats/csv_keys.js',
'js/zamboni/stats/helpers.js',
'js/zamboni/stats/stats_manager.js',
'js/zamboni/stats/stats_tables.js',
'js/zamboni/stats/stats.js',
),
# This is included when DEBUG is True. Bundle in <head>.
'debug': (
'js/debug/less_setup.js',
Expand Down

0 comments on commit 76de7c4

Please sign in to comment.