(no commit message)
[ppastats.git] / www / js / ppastats.js
index 81d2ef1..8217d55 100644 (file)
@@ -35,25 +35,81 @@ function ppastats_chart(ddts) {
     });
 }
 
-function ppastats_pkg() {
-    $(document).ready(function() {
-       $("#ppa_owner").html(data["ppa_owner"]);
-       $("#ppa_name").html(data["ppa_name"]);
-       $("#pkg_name").html(data["name"]);
-       
-       $.each(data["versions"], function(i, v) {
-           var v_url = data["name"]+"_"+v+".html";
-           
-           $("#versions").append("<li><a href='"+v_url+"'>"+v+"</a></li>");
-       });
+function ppastats_distros(distros) {
+    var data_chart = [];
+    var max_date = null;
+    var min_date = null;
+    var series_opt = [];
+    
+    $.each(distros, function(i, distro) {
+       var arr = [];
 
-       $("#distros").append("<ul>");
-       $.each(data["distros"], function(i, d) {
-           $("#distros ul").append("<li><em>"+d["name"]+"</em>: "+d["count"]+"</li>");
+       $.each(distro["ddts"], function(j, item) {
+            var tm = item["time"];
+            var d = new Date(tm[0], tm[1]-1, tm[2]);
+            var entry = [d, item["value"]];
+            arr.push(entry);
+           
+            if (max_date == null || max_date < d) {
+               max_date = d;
+            }
+           
+            if (min_date == null || min_date > d) { 
+               min_date = d;
+            }
        });
+       data_chart[i] = arr;
+       series_opt[i] = {label: distro["name"]};
+    });
+    
+    var plot1 = $.jqplot ('chart_distro', data_chart, {
+       title: 'Daily Download Count by Ubuntu Distribution',
+        axes: {
+           xaxis: {
+                renderer:$.jqplot.DateAxisRenderer,
+                tickOptions:{formatString:'%Y/%m/%d'},
+                min: min_date,
+                max: max_date
+           },
+           yaxis: {
+                min: 0
+           }
+        },
+        seriesDefaults: {
+           lineWidth:1,
+           showMarker:false
+       },
+       legend: {
+           show: true
+       },
+       series: series_opt
+    });
+}
 
 
-       ppastats_chart(data["ddts"]);
+function ppastats_pkg(json_url) {
+    $(document).ready(function() {
+       $.getJSON(json_url, function(data) {
+           $("#ppa_owner").html(data["ppa_owner"]);
+           $("#ppa_name").html(data["ppa_name"]);
+           $("#pkg_name").html(data["name"]);
+           
+           $("#versions").append("<ul>");
+           $.each(data["versions"], function(i, v) {
+               var v_url = data["name"]+"_"+v+".html";
+               
+               $("#versions ul").append("<li><a href='"+v_url+"'>"+v+"</a></li>");
+           });
+           
+           $("#distros").append("<ul>");
+           $.each(data["distros"], function(i, d) {
+               $("#distros ul").append("<li>"+d["name"]+": "+d["count"]+"</li>");
+           });
+           
+           
+           ppastats_chart(data["ddts"]);
+           ppastats_distros(data["distros"]);
+       });
     });
 }
 
@@ -66,13 +122,16 @@ function ppastats_ver() {
        $("#pkg_name").html("<a href='"+pkg_url+"'>"+data["pkg_name"]+"</a>");
        $("#version").append(" "+data["name"]);
        
+       $("#distros").append("<ul>");
        $.each(data["distros"], function(i, distro) {
            $.each(distro["archs"], function(i, arch) {
-               $("#distros").append("<li><em>"+distro["name"]+"_"+arch["name"]+"</em>: "+arch["count"]+"</li");
+               $("#distros ul").append("<li>"+distro["name"]+"_"+arch["name"]+": "+arch["count"]+"</li");
            });
        });
 
        ppastats_chart(data["ddts"]);
+
+       $("#date_created").append(data["date_created"]);
     });
 }
                      
@@ -80,17 +139,20 @@ function ppastats_ppa() {
     $(document).ready(function() {
        var max_date = null;
        var min_date = null;
-       var pkg_url = data["pkg_name"]+".html";
-       
-       $("#ppa_name").html(data["ppa_owner"]+"/"+data["ppa_name"]);
+       var pkg_url;
 
-       $.each(data["packages"], function(i, item) {
-           var url = item["name"]+".html";
-           $("#pkgs").append("<li><a href='"+url+"'>"+item["name"]+"</a>: "+item["count"]+"</li>");
+       $.getJSON("index.json", function(data) {
+           pkg_url = data["pkg_name"]+".html";
+           
+           $("#ppa_name").html(data["ppa_owner"]+"/"+data["ppa_name"]);
+           
+           $.each(data["packages"], function(i, item) {
+               var url = item["name"]+".html";
+               $("#pkgs").append("<li><a href='"+url+"'>"+item["name"]+"</a>: "+item["count"]+"</li>");
+           });
+           
+           ppastats_chart(data["ddts"]);
        });
-
-       ppastats_chart(data["ddts"]);
     });
 }
-                     
-                     
\ No newline at end of file
+