simple_metrics 0.3.5 → 0.3.6
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/simple_metrics/metric_repository.rb +1 -1
- data/lib/simple_metrics/public/js/helpers.js +23 -0
- data/lib/simple_metrics/public/js/lib/moment.min.js +6 -0
- data/lib/simple_metrics/public/js/views/graph.js +59 -59
- data/lib/simple_metrics/version.rb +1 -1
- data/lib/simple_metrics/views/layout.erb +7 -3
- metadata +32 -30
@@ -0,0 +1,23 @@
|
|
1
|
+
(function() {
|
2
|
+
|
3
|
+
// return the first item of a list only
|
4
|
+
// usage: {{#first items}}{{name}}{{/first}}
|
5
|
+
Handlebars.registerHelper('first', function(context, block) {
|
6
|
+
return block(context[0]);
|
7
|
+
});
|
8
|
+
|
9
|
+
// format an ISO date using Moment.js
|
10
|
+
// http://momentjs.com/
|
11
|
+
// moment syntax example: moment(Date("2011-07-18T15:50:52")).format("MMMM YYYY")
|
12
|
+
// usage: {{dateFormat creation_date format="MMMM YYYY"}}
|
13
|
+
Handlebars.registerHelper('dateFormat', function(context, block) {
|
14
|
+
if (window.moment) {
|
15
|
+
var f = block.hash.format || "YYYY-MM-DD h:mm a";
|
16
|
+
console.log(context);
|
17
|
+
return moment.utc(context, "YYYY-MM-DD hh:mm:ss z").local().format(f);
|
18
|
+
} else {
|
19
|
+
return context; // moment plugin not available. return data as is.
|
20
|
+
}
|
21
|
+
});
|
22
|
+
|
23
|
+
})();
|
@@ -0,0 +1,6 @@
|
|
1
|
+
// moment.js
|
2
|
+
// version : 1.5.0
|
3
|
+
// author : Tim Wood
|
4
|
+
// license : MIT
|
5
|
+
// momentjs.com
|
6
|
+
(function(a,b){function u(a,b){this._d=a,this._isUTC=!!b}function v(a,b){var c=a+"";while(c.length<b)c="0"+c;return c}function w(b,c,d,e){var f=typeof c=="string",g=f?{}:c,h,i,j,k;return f&&e&&(g[c]=+e),h=(g.ms||g.milliseconds||0)+(g.s||g.seconds||0)*1e3+(g.m||g.minutes||0)*6e4+(g.h||g.hours||0)*36e5,i=(g.d||g.days||0)+(g.w||g.weeks||0)*7,j=(g.M||g.months||0)+(g.y||g.years||0)*12,h&&b.setTime(+b+h*d),i&&b.setDate(b.getDate()+i*d),j&&(k=b.getDate(),b.setDate(1),b.setMonth(b.getMonth()+j*d),b.setDate(Math.min((new a(b.getFullYear(),b.getMonth()+1,0)).getDate(),k))),b}function x(a){return Object.prototype.toString.call(a)==="[object Array]"}function y(b){return new a(b[0],b[1]||0,b[2]||1,b[3]||0,b[4]||0,b[5]||0,b[6]||0)}function z(b,d){function r(d){var j,s;switch(d){case"M":return e+1;case"Mo":return e+1+p(e+1);case"MM":return v(e+1,2);case"MMM":return c.monthsShort[e];case"MMMM":return c.months[e];case"D":return f;case"Do":return f+p(f);case"DD":return v(f,2);case"DDD":return j=new a(g,e,f),s=new a(g,0,1),~~((j-s)/864e5+1.5);case"DDDo":return j=r("DDD"),j+p(j);case"DDDD":return v(r("DDD"),3);case"d":return h;case"do":return h+p(h);case"ddd":return c.weekdaysShort[h];case"dddd":return c.weekdays[h];case"w":return j=new a(g,e,f-h+5),s=new a(j.getFullYear(),0,4),~~((j-s)/864e5/7+1.5);case"wo":return j=r("w"),j+p(j);case"ww":return v(r("w"),2);case"YY":return v(g%100,2);case"YYYY":return g;case"a":return i>11?q.pm:q.am;case"A":return i>11?q.PM:q.AM;case"H":return i;case"HH":return v(i,2);case"h":return i%12||12;case"hh":return v(i%12||12,2);case"m":return m;case"mm":return v(m,2);case"s":return n;case"ss":return v(n,2);case"zz":case"z":return(b._d.toString().match(l)||[""])[0].replace(k,"");case"Z":return(o<0?"-":"+")+v(~~(Math.abs(o)/60),2)+":"+v(~~(Math.abs(o)%60),2);case"ZZ":return(o<0?"-":"+")+v(~~(10*Math.abs(o)/6),4);case"L":case"LL":case"LLL":case"LLLL":case"LT":return z(b,c.longDateFormat[d]);default:return d.replace(/(^\[)|(\\)|\]$/g,"")}}var e=b.month(),f=b.date(),g=b.year(),h=b.day(),i=b.hours(),m=b.minutes(),n=b.seconds(),o=-b.zone(),p=c.ordinal,q=c.meridiem;return d.replace(j,r)}function A(b,d){function p(a,b){var d;switch(a){case"M":case"MM":e[1]=~~b-1;break;case"MMM":case"MMMM":for(d=0;d<12;d++)if(c.monthsParse[d].test(b)){e[1]=d;break}break;case"D":case"DD":case"DDD":case"DDDD":e[2]=~~b;break;case"YY":b=~~b,e[0]=b+(b>70?1900:2e3);break;case"YYYY":e[0]=~~Math.abs(b);break;case"a":case"A":o=b.toLowerCase()==="pm";break;case"H":case"HH":case"h":case"hh":e[3]=~~b;break;case"m":case"mm":e[4]=~~b;break;case"s":case"ss":e[5]=~~b;break;case"Z":case"ZZ":h=!0,d=(b||"").match(r),d&&d[1]&&(f=~~d[1]),d&&d[2]&&(g=~~d[2]),d&&d[0]==="+"&&(f=-f,g=-g)}}var e=[0,0,1,0,0,0,0],f=0,g=0,h=!1,i=b.match(n),j=d.match(m),k=Math.min(i.length,j.length),l,o;for(l=0;l<k;l++)p(j[l],i[l]);return o&&e[3]<12&&(e[3]+=12),o===!1&&e[3]===12&&(e[3]=0),e[3]+=f,e[4]+=g,h?new a(a.UTC.apply({},e)):y(e)}function B(a,b){var c=Math.min(a.length,b.length),d=Math.abs(a.length-b.length),e=0,f;for(f=0;f<c;f++)~~a[f]!==~~b[f]&&e++;return e+d}function C(a,b){var c,d=a.match(n),e=[],f=99,g,h,i;for(g=0;g<b.length;g++)h=A(a,b[g]),i=B(d,z(new u(h),b[g]).match(n)),i<f&&(f=i,c=h);return c}function D(b){var c="YYYY-MM-DDT",d;if(o.exec(b)){for(d=0;d<3;d++)if(q[d][1].exec(b)){c+=q[d][0];break}return A(b,c+"Z")}return new a(b)}function E(a,b,d){var e=c.relativeTime[a];return typeof e=="function"?e(b||1,!!d,a):e.replace(/%d/i,b||1)}function F(a,b){var c=d(Math.abs(a)/1e3),e=d(c/60),f=d(e/60),g=d(f/24),h=d(g/365),i=c<45&&["s",c]||e===1&&["m"]||e<45&&["mm",e]||f===1&&["h"]||f<22&&["hh",f]||g===1&&["d"]||g<=25&&["dd",g]||g<=45&&["M"]||g<345&&["MM",d(g/30)]||h===1&&["y"]||["yy",h];return i[2]=b,E.apply({},i)}function G(a,b){c.fn[a]=function(a){var c=this._isUTC?"UTC":"";return a!=null?(this._d["set"+c+b](a),this):this._d["get"+c+b]()}}var c,d=Math.round,e={},f=typeof module!="undefined",g="months|monthsShort|monthsParse|weekdays|weekdaysShort|longDateFormat|calendar|relativeTime|ordinal|meridiem".split("|"),h,i=/^\/?Date\((\-?\d+)/i,j=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|dddd?|do?|w[o|w]?|YYYY|YY|a|A|hh?|HH?|mm?|ss?|zz?|ZZ?|LT|LL?L?L?)/g,k=/[^A-Z]/g,l=/\([A-Za-z ]+\)|:[0-9]{2} [A-Z]{3} /g,m=/(\\)?(MM?M?M?|dd?d?d|DD?D?D?|YYYY|YY|a|A|hh?|HH?|mm?|ss?|ZZ?|T)/g,n=/(\\)?([0-9]+|([a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+|([\+\-]\d\d:?\d\d))/gi,o=/\d{4}.\d\d.\d\d(T(\d\d(.\d\d(.\d\d)?)?)?([\+\-]\d\d:?\d\d)?)?/,p="YYYY-MM-DDTHH:mm:ssZ",q=[["HH:mm:ss",/T\d\d:\d\d:\d\d/],["HH:mm",/T\d\d:\d\d/],["HH",/T\d\d/]],r=/([\+\-]|\d\d)/gi,s="1.5.0",t="Month|Date|Hours|Minutes|Seconds|Milliseconds".split("|");c=function(c,d){if(c===null||c==="")return null;var e,f;return c&&c._d instanceof a?e=new a(+c._d):d?x(d)?e=C(c,d):e=A(c,d):(f=i.exec(c),e=c===b?new a:f?new a(+f[1]):c instanceof a?c:x(c)?y(c):typeof c=="string"?D(c):new a(c)),new u(e)},c.utc=function(b,d){return x(b)?new u(new a(a.UTC.apply({},b)),!0):d&&b?c(b+" 0",d+" Z").utc():c(b).utc()},c.humanizeDuration=function(a,b,d){var e=+a,f=c.relativeTime,g;switch(b){case"seconds":e*=1e3;break;case"minutes":e*=6e4;break;case"hours":e*=36e5;break;case"days":e*=864e5;break;case"weeks":e*=6048e5;break;case"months":e*=2592e6;break;case"years":e*=31536e6;break;default:d=!!b}return g=F(e,!d),d?(e<=0?f.past:f.future).replace(/%s/i,g):g},c.version=s,c.defaultFormat=p,c.lang=function(a,b){var d,h,i,j=[];if(b){for(d=0;d<12;d++)j[d]=new RegExp("^"+b.months[d]+"|^"+b.monthsShort[d].replace(".",""),"i");b.monthsParse=b.monthsParse||j,e[a]=b}if(e[a])for(d=0;d<g.length;d++)h=g[d],c[h]=e[a][h]||c[h];else f&&(i=require("./lang/"+a),c.lang(a,i))},c.lang("en",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D YYYY",LLL:"MMMM D YYYY LT",LLLL:"dddd, MMMM D YYYY LT"},meridiem:{AM:"AM",am:"am",PM:"PM",pm:"pm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10;return~~(a%100/10)===1?"th":b===1?"st":b===2?"nd":b===3?"rd":"th"}}),c.isMoment=function(a){return a instanceof u},c.fn=u.prototype={clone:function(){return c(this)},valueOf:function(){return+this._d},"native":function(){return this._d},toString:function(){return this._d.toString()},toDate:function(){return this._d},utc:function(){return this._isUTC=!0,this},local:function(){return this._isUTC=!1,this},format:function(a){return z(this,a?a:c.defaultFormat)},add:function(a,b){return this._d=w(this._d,a,1,b),this},subtract:function(a,b){return this._d=w(this._d,a,-1,b),this},diff:function(a,b,e){var f=c(a),g=(this.zone()-f.zone())*6e4,h=this._d-f._d-g,i=this.year()-f.year(),j=this.month()-f.month(),k=this.date()-f.date(),l;return b==="months"?l=i*12+j+k/30:b==="years"?l=i+j/12:l=b==="seconds"?h/1e3:b==="minutes"?h/6e4:b==="hours"?h/36e5:b==="days"?h/864e5:b==="weeks"?h/6048e5:h,e?l:d(l)},from:function(a,b){return c.humanizeDuration(this.diff(a),!b)},fromNow:function(a){return this.from(c(),a)},calendar:function(){var a=this.diff(c().sod(),"days",!0),b=c.calendar,d=b.sameElse,e=a<-6?d:a<-1?b.lastWeek:a<0?b.lastDay:a<1?b.sameDay:a<2?b.nextDay:a<7?b.nextWeek:d;return this.format(typeof e=="function"?e.apply(this):e)},isLeapYear:function(){var a=this.year();return a%4===0&&a%100!==0||a%400===0},isDST:function(){return this.zone()<c([this.year()]).zone()||this.zone()<c([this.year(),5]).zone()},day:function(a){var b=this._d.getDay();return a==null?b:this.add({d:a-b})},sod:function(){return this.clone().hours(0).minutes(0).seconds(0).milliseconds(0)},eod:function(){return this.sod().add({d:1,ms:-1})},zone:function(){return this._isUTC?0:this._d.getTimezoneOffset()},daysInMonth:function(){return this.clone().month(this.month()+1).date(0).date()}};for(h=0;h<t.length;h++)G(t[h].toLowerCase(),t[h]);G("year","FullYear"),f&&(module.exports=c),typeof window!="undefined"&&(window.moment=c),typeof define=="function"&&define.amd&&define("moment",[],function(){return c})})(Date);
|
@@ -1,5 +1,63 @@
|
|
1
1
|
( function (views){
|
2
2
|
|
3
|
+
var pastel = [
|
4
|
+
'#239928',
|
5
|
+
'#6CCC70',
|
6
|
+
'#DEFFA1',
|
7
|
+
'#DEFFA1',
|
8
|
+
'#DEFFA1',
|
9
|
+
'#362F2B',
|
10
|
+
'#BFD657',
|
11
|
+
'#FF6131',
|
12
|
+
'#FFFF9D',
|
13
|
+
'#BEEB9F',
|
14
|
+
'#79BD8F',
|
15
|
+
'#00A388'
|
16
|
+
].reverse();
|
17
|
+
|
18
|
+
var customPalette = new Rickshaw.Color.Palette( { scheme: pastel } );
|
19
|
+
var spectrum14Palette = new Rickshaw.Color.Palette( { scheme: "spectrum14" } );
|
20
|
+
|
21
|
+
function addColorToSeries(data, palette) {
|
22
|
+
var result = [];
|
23
|
+
$.each(data, function(k, v){
|
24
|
+
v.color = palette.color();
|
25
|
+
result.push(v);
|
26
|
+
});
|
27
|
+
return result;
|
28
|
+
}
|
29
|
+
|
30
|
+
function timeUnit(time) {
|
31
|
+
var timeFixture = new Rickshaw.Fixtures.Time();
|
32
|
+
var minuteCustom = {
|
33
|
+
name: 'minute',
|
34
|
+
seconds: 60,
|
35
|
+
formatter: function(d) { return d.getUTCHours()+':'+d.getUTCMinutes()+'h';}
|
36
|
+
};
|
37
|
+
var hourCustom = {
|
38
|
+
name: 'hour',
|
39
|
+
seconds: 60*15,
|
40
|
+
formatter: function(d) { return d.getUTCHours()+':'+d.getUTCMinutes()+'h';}
|
41
|
+
};
|
42
|
+
var dayCustom = {
|
43
|
+
name: 'day',
|
44
|
+
seconds: 60*60*2,
|
45
|
+
formatter: function(d) { return d.getUTCHours()+'h';}
|
46
|
+
};
|
47
|
+
var weekCustom = {
|
48
|
+
name: 'week',
|
49
|
+
seconds: 60*60*2*7*2,
|
50
|
+
formatter: function(d) { return d.getUTCDate()+'. '+d.getUTCMonth()+'.';}
|
51
|
+
};
|
52
|
+
|
53
|
+
switch(time){
|
54
|
+
case 'minute': return minuteCustom;
|
55
|
+
case 'hour': return hourCustom;
|
56
|
+
case 'day': return dayCustom;
|
57
|
+
case 'week': return weekCustom;
|
58
|
+
}
|
59
|
+
}
|
60
|
+
|
3
61
|
views.Graph = Backbone.View.extend({
|
4
62
|
template: Handlebars.compile($("#graph").html()),
|
5
63
|
|
@@ -12,73 +70,15 @@
|
|
12
70
|
render: function() {
|
13
71
|
$(this.el).html(this.template({ time: this.time }));
|
14
72
|
|
15
|
-
var pastel = [
|
16
|
-
'#239928',
|
17
|
-
'#6CCC70',
|
18
|
-
'#DEFFA1',
|
19
|
-
'#DEFFA1',
|
20
|
-
'#DEFFA1',
|
21
|
-
'#362F2B',
|
22
|
-
'#BFD657',
|
23
|
-
'#FF6131',
|
24
|
-
'#FFFF9D',
|
25
|
-
'#BEEB9F',
|
26
|
-
'#79BD8F',
|
27
|
-
'#00A388'
|
28
|
-
].reverse();
|
29
|
-
|
30
|
-
var customPalette = new Rickshaw.Color.Palette( { scheme: pastel } );
|
31
|
-
var spectrum14Palette = new Rickshaw.Color.Palette( { scheme: "spectrum14" } );
|
32
|
-
|
33
|
-
function addColorToSeries(data, palette) {
|
34
|
-
var result = [];
|
35
|
-
$.each(data, function(k, v){
|
36
|
-
v.color = palette.color();
|
37
|
-
result.push(v);
|
38
|
-
});
|
39
|
-
return result;
|
40
|
-
}
|
41
|
-
|
42
73
|
graph = new Rickshaw.Graph({
|
43
74
|
element: this.$('.graph').get(0),
|
44
75
|
renderer: 'line',
|
45
76
|
series: addColorToSeries(this.series, spectrum14Palette)
|
46
77
|
});
|
47
78
|
|
48
|
-
function timeUnit(time) {
|
49
|
-
var timeFixture = new Rickshaw.Fixtures.Time();
|
50
|
-
var minuteCustom = {
|
51
|
-
name: 'minute',
|
52
|
-
seconds: 60,
|
53
|
-
formatter: function(d) { return d.getUTCHours()+':'+d.getUTCMinutes()+'h';}
|
54
|
-
};
|
55
|
-
var hourCustom = {
|
56
|
-
name: 'hour',
|
57
|
-
seconds: 60*15,
|
58
|
-
formatter: function(d) { return d.getUTCHours()+':'+d.getUTCMinutes()+'h';}
|
59
|
-
};
|
60
|
-
var dayCustom = {
|
61
|
-
name: 'day',
|
62
|
-
seconds: 60*60*2,
|
63
|
-
formatter: function(d) { return d.getUTCHours()+'h';}
|
64
|
-
};
|
65
|
-
var weekCustom = {
|
66
|
-
name: 'week',
|
67
|
-
seconds: 60*60*2*7*2,
|
68
|
-
formatter: function(d) { return d.getUTCDate()+'. '+d.getUTCMonth()+'.';}
|
69
|
-
};
|
70
|
-
|
71
|
-
switch(time){
|
72
|
-
case 'minute': return minuteCustom;
|
73
|
-
case 'hour': return hourCustom;
|
74
|
-
case 'day': return dayCustom;
|
75
|
-
case 'week': return weekCustom;
|
76
|
-
}
|
77
|
-
}
|
78
|
-
|
79
79
|
var x_axis = new Rickshaw.Graph.Axis.Time({
|
80
80
|
graph: graph,
|
81
|
-
timeUnit: timeUnit(this.
|
81
|
+
timeUnit: timeUnit(this.time)
|
82
82
|
});
|
83
83
|
|
84
84
|
var y_axis = new Rickshaw.Graph.Axis.Y({
|
@@ -42,6 +42,7 @@
|
|
42
42
|
<th>Name</th>
|
43
43
|
<th>Total</th>
|
44
44
|
<th>Last Modified</th>
|
45
|
+
<th>Created At</th>
|
45
46
|
</tr>
|
46
47
|
</thead>
|
47
48
|
<tbody>
|
@@ -49,7 +50,8 @@
|
|
49
50
|
<tr>
|
50
51
|
<td><a href="#metrics/{{name}}">{{name}}</a></td>
|
51
52
|
<td>{{total}}</td>
|
52
|
-
<td>{{updated_at}}</td>
|
53
|
+
<td>{{dateFormat updated_at}}</td>
|
54
|
+
<td>{{dateFormat created_at}}</td>
|
53
55
|
</tr>
|
54
56
|
{{/each}}
|
55
57
|
</tbody>
|
@@ -95,8 +97,8 @@
|
|
95
97
|
<a class="brand" href="/">SimpleMetrics</a>
|
96
98
|
<div class="nav-collapse">
|
97
99
|
<ul class="nav">
|
98
|
-
<li class="active"><a href="/">
|
99
|
-
<li><a href="/dashboard">
|
100
|
+
<li class="active"><a href="/">Metrics</a></li>
|
101
|
+
<li><a href="/dashboard">Dashboards</a></li>
|
100
102
|
<li><a href="/about">About</a></li>
|
101
103
|
</ul>
|
102
104
|
</div><!--/.nav-collapse -->
|
@@ -115,9 +117,11 @@
|
|
115
117
|
<script src="js/lib/handlebars-1.0.0.beta.6.js" type="text/javascript"></script>
|
116
118
|
<script src="js/lib/d3.v2.min.js" type="text/javascript"></script>
|
117
119
|
<script src="js/lib/rickshaw.min.js" type="text/javascript"></script>
|
120
|
+
<script src="js/lib/moment.min.js" type="text/javascript"></script>
|
118
121
|
|
119
122
|
<script src="js/app.js" type="text/javascript"></script>
|
120
123
|
<script src="js/router.js" type="text/javascript"></script>
|
124
|
+
<script src="js/helpers.js" type="text/javascript"></script>
|
121
125
|
|
122
126
|
<script src="js/models/metric.js" type="text/javascript"></script>
|
123
127
|
<script src="js/models/graph.js" type="text/javascript"></script>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simple_metrics
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-04-
|
12
|
+
date: 2012-04-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: &
|
16
|
+
requirement: &70211252366540 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70211252366540
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rspec
|
27
|
-
requirement: &
|
27
|
+
requirement: &70211252365800 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70211252365800
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rr
|
38
|
-
requirement: &
|
38
|
+
requirement: &70211252365360 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70211252365360
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: shotgun
|
49
|
-
requirement: &
|
49
|
+
requirement: &70211252364740 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70211252364740
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: eventmachine
|
60
|
-
requirement: &
|
60
|
+
requirement: &70211252380520 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70211252380520
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: daemons
|
71
|
-
requirement: &
|
71
|
+
requirement: &70211252380000 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70211252380000
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: mongo
|
82
|
-
requirement: &
|
82
|
+
requirement: &70211252379280 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ~>
|
@@ -87,10 +87,10 @@ dependencies:
|
|
87
87
|
version: '1.6'
|
88
88
|
type: :runtime
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *70211252379280
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: bson
|
93
|
-
requirement: &
|
93
|
+
requirement: &70211252378520 !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
96
96
|
- - ~>
|
@@ -98,10 +98,10 @@ dependencies:
|
|
98
98
|
version: '1.6'
|
99
99
|
type: :runtime
|
100
100
|
prerelease: false
|
101
|
-
version_requirements: *
|
101
|
+
version_requirements: *70211252378520
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
name: bson_ext
|
104
|
-
requirement: &
|
104
|
+
requirement: &70211252377940 !ruby/object:Gem::Requirement
|
105
105
|
none: false
|
106
106
|
requirements:
|
107
107
|
- - ~>
|
@@ -109,10 +109,10 @@ dependencies:
|
|
109
109
|
version: '1.6'
|
110
110
|
type: :runtime
|
111
111
|
prerelease: false
|
112
|
-
version_requirements: *
|
112
|
+
version_requirements: *70211252377940
|
113
113
|
- !ruby/object:Gem::Dependency
|
114
114
|
name: sinatra
|
115
|
-
requirement: &
|
115
|
+
requirement: &70211252377400 !ruby/object:Gem::Requirement
|
116
116
|
none: false
|
117
117
|
requirements:
|
118
118
|
- - ! '>='
|
@@ -120,10 +120,10 @@ dependencies:
|
|
120
120
|
version: '0'
|
121
121
|
type: :runtime
|
122
122
|
prerelease: false
|
123
|
-
version_requirements: *
|
123
|
+
version_requirements: *70211252377400
|
124
124
|
- !ruby/object:Gem::Dependency
|
125
125
|
name: erubis
|
126
|
-
requirement: &
|
126
|
+
requirement: &70211252376600 !ruby/object:Gem::Requirement
|
127
127
|
none: false
|
128
128
|
requirements:
|
129
129
|
- - ! '>='
|
@@ -131,10 +131,10 @@ dependencies:
|
|
131
131
|
version: '0'
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
|
-
version_requirements: *
|
134
|
+
version_requirements: *70211252376600
|
135
135
|
- !ruby/object:Gem::Dependency
|
136
136
|
name: vegas
|
137
|
-
requirement: &
|
137
|
+
requirement: &70211252375960 !ruby/object:Gem::Requirement
|
138
138
|
none: false
|
139
139
|
requirements:
|
140
140
|
- - ~>
|
@@ -142,10 +142,10 @@ dependencies:
|
|
142
142
|
version: 0.1.2
|
143
143
|
type: :runtime
|
144
144
|
prerelease: false
|
145
|
-
version_requirements: *
|
145
|
+
version_requirements: *70211252375960
|
146
146
|
- !ruby/object:Gem::Dependency
|
147
147
|
name: json
|
148
|
-
requirement: &
|
148
|
+
requirement: &70211252375460 !ruby/object:Gem::Requirement
|
149
149
|
none: false
|
150
150
|
requirements:
|
151
151
|
- - ! '>='
|
@@ -153,7 +153,7 @@ dependencies:
|
|
153
153
|
version: '0'
|
154
154
|
type: :runtime
|
155
155
|
prerelease: false
|
156
|
-
version_requirements: *
|
156
|
+
version_requirements: *70211252375460
|
157
157
|
description: SimpleMetrics
|
158
158
|
email:
|
159
159
|
- fdietz@gmail.com
|
@@ -201,11 +201,13 @@ files:
|
|
201
201
|
- lib/simple_metrics/public/js/app.js
|
202
202
|
- lib/simple_metrics/public/js/collections/graph.js
|
203
203
|
- lib/simple_metrics/public/js/collections/metric.js
|
204
|
+
- lib/simple_metrics/public/js/helpers.js
|
204
205
|
- lib/simple_metrics/public/js/lib/backbone-0.9.2.min.js
|
205
206
|
- lib/simple_metrics/public/js/lib/bootstrap.min.js
|
206
207
|
- lib/simple_metrics/public/js/lib/d3.v2.min.js
|
207
208
|
- lib/simple_metrics/public/js/lib/handlebars-1.0.0.beta.6.js
|
208
209
|
- lib/simple_metrics/public/js/lib/jquery-1.7.1.min.js
|
210
|
+
- lib/simple_metrics/public/js/lib/moment.min.js
|
209
211
|
- lib/simple_metrics/public/js/lib/rickshaw.min.js
|
210
212
|
- lib/simple_metrics/public/js/lib/underscore-1.3.1.min.js
|
211
213
|
- lib/simple_metrics/public/js/models/graph.js
|
@@ -245,7 +247,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
245
247
|
version: '0'
|
246
248
|
segments:
|
247
249
|
- 0
|
248
|
-
hash:
|
250
|
+
hash: -3369843487740317274
|
249
251
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
250
252
|
none: false
|
251
253
|
requirements:
|
@@ -254,7 +256,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
254
256
|
version: '0'
|
255
257
|
segments:
|
256
258
|
- 0
|
257
|
-
hash:
|
259
|
+
hash: -3369843487740317274
|
258
260
|
requirements: []
|
259
261
|
rubyforge_project:
|
260
262
|
rubygems_version: 1.8.15
|