my_dashboard 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +13 -0
- data/.travis.yml +9 -0
- data/CHANGELOG.md +23 -0
- data/Gemfile +20 -0
- data/MIT-LICENSE +20 -0
- data/README.md +223 -0
- data/Rakefile +7 -0
- data/app/assets/javascripts/my_dashboard/application.js +17 -0
- data/app/assets/javascripts/my_dashboard/my_dashboard.coffee +0 -0
- data/app/assets/stylesheets/my_dashboard/application.css +13 -0
- data/app/controllers/my_dashboard/application_controller.rb +23 -0
- data/app/controllers/my_dashboard/dashboards_controller.rb +31 -0
- data/app/controllers/my_dashboard/events_controller.rb +28 -0
- data/app/controllers/my_dashboard/widgets_controller.rb +45 -0
- data/app/helpers/my_dashboard/application_helper.rb +4 -0
- data/app/views/layouts/my_dashboard/dashboard.html.erb +30 -0
- data/app/views/my_dashboard/widgets/clock.html +2 -0
- data/app/views/my_dashboard/widgets/comments.html +7 -0
- data/app/views/my_dashboard/widgets/graph.html +5 -0
- data/app/views/my_dashboard/widgets/iframe.html +1 -0
- data/app/views/my_dashboard/widgets/image.html +1 -0
- data/app/views/my_dashboard/widgets/list.html +18 -0
- data/app/views/my_dashboard/widgets/meter.html +7 -0
- data/app/views/my_dashboard/widgets/number.html +11 -0
- data/app/views/my_dashboard/widgets/text.html +7 -0
- data/bin/rails +8 -0
- data/config/routes.rb +15 -0
- data/lib/assets/javascripts/my_dashboard.gridster.coffee +0 -0
- data/lib/generators/my_dashboard/install_generator.rb +36 -0
- data/lib/generators/my_dashboard/job_generator.rb +15 -0
- data/lib/generators/my_dashboard/widget_generator.rb +17 -0
- data/lib/generators/templates/dashboards/sample.html.erb +28 -0
- data/lib/generators/templates/initializer.rb +58 -0
- data/lib/generators/templates/jobs/new.rb +3 -0
- data/lib/generators/templates/jobs/sample.rb +9 -0
- data/lib/generators/templates/layouts/dashboard.html.erb +30 -0
- data/lib/generators/templates/widgets/index.css +12 -0
- data/lib/generators/templates/widgets/index.js +13 -0
- data/lib/generators/templates/widgets/new.coffee +9 -0
- data/lib/generators/templates/widgets/new.html +1 -0
- data/lib/generators/templates/widgets/new.scss +10 -0
- data/lib/my_dashboard.rb +50 -0
- data/lib/my_dashboard/configuration.rb +63 -0
- data/lib/my_dashboard/engine.rb +7 -0
- data/lib/my_dashboard/railtie.rb +31 -0
- data/lib/my_dashboard/version.rb +3 -0
- data/lib/tasks/my_dashboard_tasks.rake +4 -0
- data/my_dashboard.gemspec +31 -0
- data/spec/controllers/my_dashboard/application_controller_spec.rb +21 -0
- data/spec/controllers/my_dashboard/dashboards_controller_spec.rb +46 -0
- data/spec/controllers/my_dashboard/events_controller_spec.rb +11 -0
- data/spec/controllers/my_dashboard/widgets_controller_spec.rb +72 -0
- data/spec/dummy/README.rdoc +28 -0
- data/spec/dummy/Rakefile +6 -0
- data/spec/dummy/app/assets/images/.keep +0 -0
- data/spec/dummy/app/assets/javascripts/application.js +13 -0
- data/spec/dummy/app/assets/javascripts/my_dashboard/widgets/foo.coffee +0 -0
- data/spec/dummy/app/assets/javascripts/my_dashboard/widgets/index.js +13 -0
- data/spec/dummy/app/assets/stylesheets/application.css +13 -0
- data/spec/dummy/app/assets/stylesheets/my_dashboard/widgets/foo.scss +0 -0
- data/spec/dummy/app/assets/stylesheets/my_dashboard/widgets/index.css +12 -0
- data/spec/dummy/app/controllers/application_controller.rb +5 -0
- data/spec/dummy/app/controllers/concerns/.keep +0 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/jobs/sample.rb +9 -0
- data/spec/dummy/app/mailers/.keep +0 -0
- data/spec/dummy/app/models/.keep +0 -0
- data/spec/dummy/app/models/concerns/.keep +0 -0
- data/spec/dummy/app/views/layouts/application.html.erb +14 -0
- data/spec/dummy/app/views/layouts/my_dashboard/dashboard.html.erb +30 -0
- data/spec/dummy/app/views/my_dashboard/dashboards/foo.erb +0 -0
- data/spec/dummy/app/views/my_dashboard/dashboards/sample.html.erb +28 -0
- data/spec/dummy/app/views/my_dashboard/widgets/foo.html +0 -0
- data/spec/dummy/bin/bundle +3 -0
- data/spec/dummy/bin/rails +4 -0
- data/spec/dummy/bin/rake +4 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/config/application.rb +23 -0
- data/spec/dummy/config/boot.rb +5 -0
- data/spec/dummy/config/database.yml +25 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +29 -0
- data/spec/dummy/config/environments/production.rb +80 -0
- data/spec/dummy/config/environments/test.rb +36 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec/dummy/config/initializers/inflections.rb +16 -0
- data/spec/dummy/config/initializers/mime_types.rb +5 -0
- data/spec/dummy/config/initializers/my_dashboard.rb +58 -0
- data/spec/dummy/config/initializers/secret_token.rb +12 -0
- data/spec/dummy/config/initializers/session_store.rb +3 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/spec/dummy/config/locales/en.yml +23 -0
- data/spec/dummy/config/routes.rb +3 -0
- data/spec/dummy/lib/assets/.keep +0 -0
- data/spec/dummy/log/.keep +0 -0
- data/spec/dummy/public/404.html +58 -0
- data/spec/dummy/public/422.html +58 -0
- data/spec/dummy/public/500.html +57 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/lib/generators/widget_generator_spec.rb +26 -0
- data/spec/lib/my_dashboard/configuration_spec.rb +66 -0
- data/spec/lib/my_dashboard_spec.rb +55 -0
- data/spec/spec_helper.rb +52 -0
- data/spec/support/controller_spec_helpers.rb +9 -0
- data/vendor/assets/fonts/my_dashboard/fontawesome-webfont.eot +0 -0
- data/vendor/assets/fonts/my_dashboard/fontawesome-webfont.svg +414 -0
- data/vendor/assets/fonts/my_dashboard/fontawesome-webfont.ttf +0 -0
- data/vendor/assets/fonts/my_dashboard/fontawesome-webfont.woff +0 -0
- data/vendor/assets/javascripts/my_dashboard/batman.jquery.js +163 -0
- data/vendor/assets/javascripts/my_dashboard/batman.js +13680 -0
- data/vendor/assets/javascripts/my_dashboard/d3-3.2.8.min.js +5 -0
- data/vendor/assets/javascripts/my_dashboard/default_widgets/clock.coffee +18 -0
- data/vendor/assets/javascripts/my_dashboard/default_widgets/comments.coffee +24 -0
- data/vendor/assets/javascripts/my_dashboard/default_widgets/graph.coffee +37 -0
- data/vendor/assets/javascripts/my_dashboard/default_widgets/iframe.coffee +9 -0
- data/vendor/assets/javascripts/my_dashboard/default_widgets/image.coffee +9 -0
- data/vendor/assets/javascripts/my_dashboard/default_widgets/index.js +13 -0
- data/vendor/assets/javascripts/my_dashboard/default_widgets/list.coffee +6 -0
- data/vendor/assets/javascripts/my_dashboard/default_widgets/meter.coffee +14 -0
- data/vendor/assets/javascripts/my_dashboard/default_widgets/number.coffee +25 -0
- data/vendor/assets/javascripts/my_dashboard/default_widgets/text.coffee +1 -0
- data/vendor/assets/javascripts/my_dashboard/es5-shim.js +1021 -0
- data/vendor/assets/javascripts/my_dashboard/index.js +21 -0
- data/vendor/assets/javascripts/my_dashboard/jquery.gridster.js +3987 -0
- data/vendor/assets/javascripts/my_dashboard/jquery.js +4 -0
- data/vendor/assets/javascripts/my_dashboard/jquery.knob.js +646 -0
- data/vendor/assets/javascripts/my_dashboard/jquery.leanModal.min.js +5 -0
- data/vendor/assets/javascripts/my_dashboard/jquery.timeago.js +184 -0
- data/vendor/assets/javascripts/my_dashboard/moment.min.js +6 -0
- data/vendor/assets/javascripts/my_dashboard/my_dashboard.coffee +0 -0
- data/vendor/assets/javascripts/my_dashboard/rickshaw-1.5.1.min.js +3 -0
- data/vendor/assets/stylesheets/my_dashboard/font-awesome.scss +1338 -0
- data/vendor/assets/stylesheets/my_dashboard/index.css +15 -0
- data/vendor/assets/stylesheets/my_dashboard/jquery.gridster.css +121 -0
- data/vendor/assets/stylesheets/my_dashboard/my_dashboard.scss +302 -0
- data/vendor/assets/stylesheets/my_dashboard/widgets/clock.scss +13 -0
- data/vendor/assets/stylesheets/my_dashboard/widgets/comments.scss +33 -0
- data/vendor/assets/stylesheets/my_dashboard/widgets/graph.scss +65 -0
- data/vendor/assets/stylesheets/my_dashboard/widgets/iframe.scss +8 -0
- data/vendor/assets/stylesheets/my_dashboard/widgets/image.scss +13 -0
- data/vendor/assets/stylesheets/my_dashboard/widgets/index.css +12 -0
- data/vendor/assets/stylesheets/my_dashboard/widgets/list.scss +60 -0
- data/vendor/assets/stylesheets/my_dashboard/widgets/meter.scss +35 -0
- data/vendor/assets/stylesheets/my_dashboard/widgets/number.scss +39 -0
- data/vendor/assets/stylesheets/my_dashboard/widgets/text.scss +32 -0
- metadata +373 -0
@@ -0,0 +1,5 @@
|
|
1
|
+
// leanModal v1.1 by Ray Stone - http://finelysliced.com.au
|
2
|
+
// Dual licensed under the MIT and GPL
|
3
|
+
|
4
|
+
(function($){$.fn.extend({leanModal:function(options){var defaults={top:100,overlay:0.5,closeButton:null};var overlay=$("<div id='lean_overlay'></div>");$("body").append(overlay);options=$.extend(defaults,options);return this.each(function(){var o=options;$(this).click(function(e){var modal_id=$(this).attr("href");$("#lean_overlay").click(function(){close_modal(modal_id)});$(o.closeButton).click(function(){close_modal(modal_id)});var modal_height=$(modal_id).outerHeight();var modal_width=$(modal_id).outerWidth();
|
5
|
+
$("#lean_overlay").css({"display":"block",opacity:0});$("#lean_overlay").fadeTo(200,o.overlay);$(modal_id).css({"display":"block","position":"fixed","opacity":0,"z-index":11000,"left":50+"%","margin-left":-(modal_width/2)+"px","top":o.top+"px"});$(modal_id).fadeTo(200,1);e.preventDefault()})});function close_modal(modal_id){$("#lean_overlay").fadeOut(200);$(modal_id).css({"display":"none"})}}})})(jQuery);
|
@@ -0,0 +1,184 @@
|
|
1
|
+
/**
|
2
|
+
* Timeago is a jQuery plugin that makes it easy to support automatically
|
3
|
+
* updating fuzzy timestamps (e.g. "4 minutes ago" or "about 1 day ago").
|
4
|
+
*
|
5
|
+
* @name timeago
|
6
|
+
* @version 1.1.0
|
7
|
+
* @requires jQuery v1.2.3+
|
8
|
+
* @author Ryan McGeary
|
9
|
+
* @license MIT License - http://www.opensource.org/licenses/mit-license.php
|
10
|
+
*
|
11
|
+
* For usage and examples, visit:
|
12
|
+
* http://timeago.yarp.com/
|
13
|
+
*
|
14
|
+
* Copyright (c) 2008-2013, Ryan McGeary (ryan -[at]- mcgeary [*dot*] org)
|
15
|
+
*/
|
16
|
+
|
17
|
+
(function (factory) {
|
18
|
+
if (typeof define === 'function' && define.amd) {
|
19
|
+
// AMD. Register as an anonymous module.
|
20
|
+
define(['jquery'], factory);
|
21
|
+
} else {
|
22
|
+
// Browser globals
|
23
|
+
factory(jQuery);
|
24
|
+
}
|
25
|
+
}(function ($) {
|
26
|
+
$.timeago = function(timestamp) {
|
27
|
+
if (timestamp instanceof Date) {
|
28
|
+
return inWords(timestamp);
|
29
|
+
} else if (typeof timestamp === "string") {
|
30
|
+
return inWords($.timeago.parse(timestamp));
|
31
|
+
} else if (typeof timestamp === "number") {
|
32
|
+
return inWords(new Date(timestamp));
|
33
|
+
} else {
|
34
|
+
return inWords($.timeago.datetime(timestamp));
|
35
|
+
}
|
36
|
+
};
|
37
|
+
var $t = $.timeago;
|
38
|
+
|
39
|
+
$.extend($.timeago, {
|
40
|
+
settings: {
|
41
|
+
refreshMillis: 60000,
|
42
|
+
allowFuture: false,
|
43
|
+
localeTitle: false,
|
44
|
+
strings: {
|
45
|
+
prefixAgo: null,
|
46
|
+
prefixFromNow: null,
|
47
|
+
suffixAgo: "ago",
|
48
|
+
suffixFromNow: "from now",
|
49
|
+
seconds: "less than a minute",
|
50
|
+
minute: "about a minute",
|
51
|
+
minutes: "%d minutes",
|
52
|
+
hour: "about an hour",
|
53
|
+
hours: "about %d hours",
|
54
|
+
day: "a day",
|
55
|
+
days: "%d days",
|
56
|
+
month: "about a month",
|
57
|
+
months: "%d months",
|
58
|
+
year: "about a year",
|
59
|
+
years: "%d years",
|
60
|
+
wordSeparator: " ",
|
61
|
+
numbers: []
|
62
|
+
}
|
63
|
+
},
|
64
|
+
inWords: function(distanceMillis) {
|
65
|
+
var $l = this.settings.strings;
|
66
|
+
var prefix = $l.prefixAgo;
|
67
|
+
var suffix = $l.suffixAgo;
|
68
|
+
if (this.settings.allowFuture) {
|
69
|
+
if (distanceMillis < 0) {
|
70
|
+
prefix = $l.prefixFromNow;
|
71
|
+
suffix = $l.suffixFromNow;
|
72
|
+
}
|
73
|
+
}
|
74
|
+
|
75
|
+
var seconds = Math.abs(distanceMillis) / 1000;
|
76
|
+
var minutes = seconds / 60;
|
77
|
+
var hours = minutes / 60;
|
78
|
+
var days = hours / 24;
|
79
|
+
var years = days / 365;
|
80
|
+
|
81
|
+
function substitute(stringOrFunction, number) {
|
82
|
+
var string = $.isFunction(stringOrFunction) ? stringOrFunction(number, distanceMillis) : stringOrFunction;
|
83
|
+
var value = ($l.numbers && $l.numbers[number]) || number;
|
84
|
+
return string.replace(/%d/i, value);
|
85
|
+
}
|
86
|
+
|
87
|
+
var words = seconds < 45 && substitute($l.seconds, Math.round(seconds)) ||
|
88
|
+
seconds < 90 && substitute($l.minute, 1) ||
|
89
|
+
minutes < 45 && substitute($l.minutes, Math.round(minutes)) ||
|
90
|
+
minutes < 90 && substitute($l.hour, 1) ||
|
91
|
+
hours < 24 && substitute($l.hours, Math.round(hours)) ||
|
92
|
+
hours < 42 && substitute($l.day, 1) ||
|
93
|
+
days < 30 && substitute($l.days, Math.round(days)) ||
|
94
|
+
days < 45 && substitute($l.month, 1) ||
|
95
|
+
days < 365 && substitute($l.months, Math.round(days / 30)) ||
|
96
|
+
years < 1.5 && substitute($l.year, 1) ||
|
97
|
+
substitute($l.years, Math.round(years));
|
98
|
+
|
99
|
+
var separator = $l.wordSeparator || "";
|
100
|
+
if ($l.wordSeparator === undefined) { separator = " "; }
|
101
|
+
return $.trim([prefix, words, suffix].join(separator));
|
102
|
+
},
|
103
|
+
parse: function(iso8601) {
|
104
|
+
var s = $.trim(iso8601);
|
105
|
+
s = s.replace(/\.\d+/,""); // remove milliseconds
|
106
|
+
s = s.replace(/-/,"/").replace(/-/,"/");
|
107
|
+
s = s.replace(/T/," ").replace(/Z/," UTC");
|
108
|
+
s = s.replace(/([\+\-]\d\d)\:?(\d\d)/," $1$2"); // -04:00 -> -0400
|
109
|
+
return new Date(s);
|
110
|
+
},
|
111
|
+
datetime: function(elem) {
|
112
|
+
var iso8601 = $t.isTime(elem) ? $(elem).attr("datetime") : $(elem).attr("title");
|
113
|
+
return $t.parse(iso8601);
|
114
|
+
},
|
115
|
+
isTime: function(elem) {
|
116
|
+
// jQuery's `is()` doesn't play well with HTML5 in IE
|
117
|
+
return $(elem).get(0).tagName.toLowerCase() === "time"; // $(elem).is("time");
|
118
|
+
}
|
119
|
+
});
|
120
|
+
|
121
|
+
// functions that can be called via $(el).timeago('action')
|
122
|
+
// init is default when no action is given
|
123
|
+
// functions are called with context of a single element
|
124
|
+
var functions = {
|
125
|
+
init: function(){
|
126
|
+
var refresh_el = $.proxy(refresh, this);
|
127
|
+
refresh_el();
|
128
|
+
var $s = $t.settings;
|
129
|
+
if ($s.refreshMillis > 0) {
|
130
|
+
setInterval(refresh_el, $s.refreshMillis);
|
131
|
+
}
|
132
|
+
},
|
133
|
+
update: function(time){
|
134
|
+
$(this).data('timeago', { datetime: $t.parse(time) });
|
135
|
+
refresh.apply(this);
|
136
|
+
}
|
137
|
+
};
|
138
|
+
|
139
|
+
$.fn.timeago = function(action, options) {
|
140
|
+
var fn = action ? functions[action] : functions.init;
|
141
|
+
if(!fn){
|
142
|
+
throw new Error("Unknown function name '"+ action +"' for timeago");
|
143
|
+
}
|
144
|
+
// each over objects here and call the requested function
|
145
|
+
this.each(function(){
|
146
|
+
fn.call(this, options);
|
147
|
+
});
|
148
|
+
return this;
|
149
|
+
};
|
150
|
+
|
151
|
+
function refresh() {
|
152
|
+
var data = prepareData(this);
|
153
|
+
if (!isNaN(data.datetime)) {
|
154
|
+
$(this).text(inWords(data.datetime));
|
155
|
+
}
|
156
|
+
return this;
|
157
|
+
}
|
158
|
+
|
159
|
+
function prepareData(element) {
|
160
|
+
element = $(element);
|
161
|
+
if (!element.data("timeago")) {
|
162
|
+
element.data("timeago", { datetime: $t.datetime(element) });
|
163
|
+
var text = $.trim(element.text());
|
164
|
+
if ($t.settings.localeTitle) {
|
165
|
+
element.attr("title", element.data('timeago').datetime.toLocaleString());
|
166
|
+
} else if (text.length > 0 && !($t.isTime(element) && element.attr("title"))) {
|
167
|
+
element.attr("title", text);
|
168
|
+
}
|
169
|
+
}
|
170
|
+
return element.data("timeago");
|
171
|
+
}
|
172
|
+
|
173
|
+
function inWords(date) {
|
174
|
+
return $t.inWords(distance(date));
|
175
|
+
}
|
176
|
+
|
177
|
+
function distance(date) {
|
178
|
+
return (new Date().getTime() - date.getTime());
|
179
|
+
}
|
180
|
+
|
181
|
+
// fix for IE6 suckage
|
182
|
+
document.createElement("abbr");
|
183
|
+
document.createElement("time");
|
184
|
+
}));
|
@@ -0,0 +1,6 @@
|
|
1
|
+
// moment.js
|
2
|
+
// version : 2.0.0
|
3
|
+
// author : Tim Wood
|
4
|
+
// license : MIT
|
5
|
+
// momentjs.com
|
6
|
+
(function(e){function O(e,t){return function(n){return j(e.call(this,n),t)}}function M(e){return function(t){return this.lang().ordinal(e.call(this,t))}}function _(){}function D(e){H(this,e)}function P(e){var t=this._data={},n=e.years||e.year||e.y||0,r=e.months||e.month||e.M||0,i=e.weeks||e.week||e.w||0,s=e.days||e.day||e.d||0,o=e.hours||e.hour||e.h||0,u=e.minutes||e.minute||e.m||0,a=e.seconds||e.second||e.s||0,f=e.milliseconds||e.millisecond||e.ms||0;this._milliseconds=f+a*1e3+u*6e4+o*36e5,this._days=s+i*7,this._months=r+n*12,t.milliseconds=f%1e3,a+=B(f/1e3),t.seconds=a%60,u+=B(a/60),t.minutes=u%60,o+=B(u/60),t.hours=o%24,s+=B(o/24),s+=i*7,t.days=s%30,r+=B(s/30),t.months=r%12,n+=B(r/12),t.years=n}function H(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}function B(e){return e<0?Math.ceil(e):Math.floor(e)}function j(e,t){var n=e+"";while(n.length<t)n="0"+n;return n}function F(e,t,n){var r=t._milliseconds,i=t._days,s=t._months,o;r&&e._d.setTime(+e+r*n),i&&e.date(e.date()+i*n),s&&(o=e.date(),e.date(1).month(e.month()+s*n).date(Math.min(o,e.daysInMonth())))}function I(e){return Object.prototype.toString.call(e)==="[object Array]"}function q(e,t){var n=Math.min(e.length,t.length),r=Math.abs(e.length-t.length),i=0,s;for(s=0;s<n;s++)~~e[s]!==~~t[s]&&i++;return i+r}function R(e,t){return t.abbr=e,s[e]||(s[e]=new _),s[e].set(t),s[e]}function U(e){return e?(!s[e]&&o&&require("./lang/"+e),s[e]):t.fn._lang}function z(e){return e.match(/\[.*\]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function W(e){var t=e.match(a),n,r;for(n=0,r=t.length;n<r;n++)A[t[n]]?t[n]=A[t[n]]:t[n]=z(t[n]);return function(i){var s="";for(n=0;n<r;n++)s+=typeof t[n].call=="function"?t[n].call(i,e):t[n];return s}}function X(e,t){function r(t){return e.lang().longDateFormat(t)||t}var n=5;while(n--&&f.test(t))t=t.replace(f,r);return C[t]||(C[t]=W(t)),C[t](e)}function V(e){switch(e){case"DDDD":return p;case"YYYY":return d;case"YYYYY":return v;case"S":case"SS":case"SSS":case"DDD":return h;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":case"a":case"A":return m;case"X":return b;case"Z":case"ZZ":return g;case"T":return y;case"MM":case"DD":case"YY":case"HH":case"hh":case"mm":case"ss":case"M":case"D":case"d":case"H":case"h":case"m":case"s":return c;default:return new RegExp(e.replace("\\",""))}}function $(e,t,n){var r,i,s=n._a;switch(e){case"M":case"MM":s[1]=t==null?0:~~t-1;break;case"MMM":case"MMMM":r=U(n._l).monthsParse(t),r!=null?s[1]=r:n._isValid=!1;break;case"D":case"DD":case"DDD":case"DDDD":t!=null&&(s[2]=~~t);break;case"YY":s[0]=~~t+(~~t>68?1900:2e3);break;case"YYYY":case"YYYYY":s[0]=~~t;break;case"a":case"A":n._isPm=(t+"").toLowerCase()==="pm";break;case"H":case"HH":case"h":case"hh":s[3]=~~t;break;case"m":case"mm":s[4]=~~t;break;case"s":case"ss":s[5]=~~t;break;case"S":case"SS":case"SSS":s[6]=~~(("0."+t)*1e3);break;case"X":n._d=new Date(parseFloat(t)*1e3);break;case"Z":case"ZZ":n._useUTC=!0,r=(t+"").match(x),r&&r[1]&&(n._tzh=~~r[1]),r&&r[2]&&(n._tzm=~~r[2]),r&&r[0]==="+"&&(n._tzh=-n._tzh,n._tzm=-n._tzm)}t==null&&(n._isValid=!1)}function J(e){var t,n,r=[];if(e._d)return;for(t=0;t<7;t++)e._a[t]=r[t]=e._a[t]==null?t===2?1:0:e._a[t];r[3]+=e._tzh||0,r[4]+=e._tzm||0,n=new Date(0),e._useUTC?(n.setUTCFullYear(r[0],r[1],r[2]),n.setUTCHours(r[3],r[4],r[5],r[6])):(n.setFullYear(r[0],r[1],r[2]),n.setHours(r[3],r[4],r[5],r[6])),e._d=n}function K(e){var t=e._f.match(a),n=e._i,r,i;e._a=[];for(r=0;r<t.length;r++)i=(V(t[r]).exec(n)||[])[0],i&&(n=n.slice(n.indexOf(i)+i.length)),A[t[r]]&&$(t[r],i,e);e._isPm&&e._a[3]<12&&(e._a[3]+=12),e._isPm===!1&&e._a[3]===12&&(e._a[3]=0),J(e)}function Q(e){var t,n,r,i=99,s,o,u;while(e._f.length){t=H({},e),t._f=e._f.pop(),K(t),n=new D(t);if(n.isValid()){r=n;break}u=q(t._a,n.toArray()),u<i&&(i=u,r=n)}H(e,r)}function G(e){var t,n=e._i;if(w.exec(n)){e._f="YYYY-MM-DDT";for(t=0;t<4;t++)if(S[t][1].exec(n)){e._f+=S[t][0];break}g.exec(n)&&(e._f+=" Z"),K(e)}else e._d=new Date(n)}function Y(t){var n=t._i,r=u.exec(n);n===e?t._d=new Date:r?t._d=new Date(+r[1]):typeof n=="string"?G(t):I(n)?(t._a=n.slice(0),J(t)):t._d=n instanceof Date?new Date(+n):new Date(n)}function Z(e,t,n,r,i){return i.relativeTime(t||1,!!n,e,r)}function et(e,t,n){var i=r(Math.abs(e)/1e3),s=r(i/60),o=r(s/60),u=r(o/24),a=r(u/365),f=i<45&&["s",i]||s===1&&["m"]||s<45&&["mm",s]||o===1&&["h"]||o<22&&["hh",o]||u===1&&["d"]||u<=25&&["dd",u]||u<=45&&["M"]||u<345&&["MM",r(u/30)]||a===1&&["y"]||["yy",a];return f[2]=t,f[3]=e>0,f[4]=n,Z.apply({},f)}function tt(e,n,r){var i=r-n,s=r-e.day();return s>i&&(s-=7),s<i-7&&(s+=7),Math.ceil(t(e).add("d",s).dayOfYear()/7)}function nt(e){var n=e._i,r=e._f;return n===null||n===""?null:(typeof n=="string"&&(e._i=n=U().preparse(n)),t.isMoment(n)?(e=H({},n),e._d=new Date(+n._d)):r?I(r)?Q(e):K(e):Y(e),new D(e))}function rt(e,n){t.fn[e]=t.fn[e+"s"]=function(e){var t=this._isUTC?"UTC":"";return e!=null?(this._d["set"+t+n](e),this):this._d["get"+t+n]()}}function it(e){t.duration.fn[e]=function(){return this._data[e]}}function st(e,n){t.duration.fn["as"+e]=function(){return+this/n}}var t,n="2.0.0",r=Math.round,i,s={},o=typeof module!="undefined"&&module.exports,u=/^\/?Date\((\-?\d+)/i,a=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|YYYYY|YYYY|YY|a|A|hh?|HH?|mm?|ss?|SS?S?|X|zz?|ZZ?|.)/g,f=/(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g,l=/([0-9a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+)/gi,c=/\d\d?/,h=/\d{1,3}/,p=/\d{3}/,d=/\d{1,4}/,v=/[+\-]?\d{1,6}/,m=/[0-9]*[a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF]+\s*?[\u0600-\u06FF]+/i,g=/Z|[\+\-]\d\d:?\d\d/i,y=/T/i,b=/[\+\-]?\d+(\.\d{1,3})?/,w=/^\s*\d{4}-\d\d-\d\d((T| )(\d\d(:\d\d(:\d\d(\.\d\d?\d?)?)?)?)?([\+\-]\d\d:?\d\d)?)?/,E="YYYY-MM-DDTHH:mm:ssZ",S=[["HH:mm:ss.S",/(T| )\d\d:\d\d:\d\d\.\d{1,3}/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],x=/([\+\-]|\d\d)/gi,T="Month|Date|Hours|Minutes|Seconds|Milliseconds".split("|"),N={Milliseconds:1,Seconds:1e3,Minutes:6e4,Hours:36e5,Days:864e5,Months:2592e6,Years:31536e6},C={},k="DDD w W M D d".split(" "),L="M D H h m s w W".split(" "),A={M:function(){return this.month()+1},MMM:function(e){return this.lang().monthsShort(this,e)},MMMM:function(e){return this.lang().months(this,e)},D:function(){return this.date()},DDD:function(){return this.dayOfYear()},d:function(){return this.day()},dd:function(e){return this.lang().weekdaysMin(this,e)},ddd:function(e){return this.lang().weekdaysShort(this,e)},dddd:function(e){return this.lang().weekdays(this,e)},w:function(){return this.week()},W:function(){return this.isoWeek()},YY:function(){return j(this.year()%100,2)},YYYY:function(){return j(this.year(),4)},YYYYY:function(){return j(this.year(),5)},a:function(){return this.lang().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.lang().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return~~(this.milliseconds()/100)},SS:function(){return j(~~(this.milliseconds()/10),2)},SSS:function(){return j(this.milliseconds(),3)},Z:function(){var e=-this.zone(),t="+";return e<0&&(e=-e,t="-"),t+j(~~(e/60),2)+":"+j(~~e%60,2)},ZZ:function(){var e=-this.zone(),t="+";return e<0&&(e=-e,t="-"),t+j(~~(10*e/6),4)},X:function(){return this.unix()}};while(k.length)i=k.pop(),A[i+"o"]=M(A[i]);while(L.length)i=L.pop(),A[i+i]=O(A[i],2);A.DDDD=O(A.DDD,3),_.prototype={set:function(e){var t,n;for(n in e)t=e[n],typeof t=="function"?this[n]=t:this["_"+n]=t},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(e){return this._months[e.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(e){return this._monthsShort[e.month()]},monthsParse:function(e){var n,r,i,s;this._monthsParse||(this._monthsParse=[]);for(n=0;n<12;n++){this._monthsParse[n]||(r=t([2e3,n]),i="^"+this.months(r,"")+"|^"+this.monthsShort(r,""),this._monthsParse[n]=new RegExp(i.replace(".",""),"i"));if(this._monthsParse[n].test(e))return n}},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(e){return this._weekdays[e.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(e){return this._weekdaysShort[e.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(e){return this._weekdaysMin[e.day()]},_longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D YYYY",LLL:"MMMM D YYYY LT",LLLL:"dddd, MMMM D YYYY LT"},longDateFormat:function(e){var t=this._longDateFormat[e];return!t&&this._longDateFormat[e.toUpperCase()]&&(t=this._longDateFormat[e.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(e){return e.slice(1)}),this._longDateFormat[e]=t),t},meridiem:function(e,t,n){return e>11?n?"pm":"PM":n?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[last] dddd [at] LT",sameElse:"L"},calendar:function(e,t){var n=this._calendar[e];return typeof n=="function"?n.apply(t):n},_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"},relativeTime:function(e,t,n,r){var i=this._relativeTime[n];return typeof i=="function"?i(e,t,n,r):i.replace(/%d/i,e)},pastFuture:function(e,t){var n=this._relativeTime[e>0?"future":"past"];return typeof n=="function"?n(t):n.replace(/%s/i,t)},ordinal:function(e){return this._ordinal.replace("%d",e)},_ordinal:"%d",preparse:function(e){return e},postformat:function(e){return e},week:function(e){return tt(e,this._week.dow,this._week.doy)},_week:{dow:0,doy:6}},t=function(e,t,n){return nt({_i:e,_f:t,_l:n,_isUTC:!1})},t.utc=function(e,t,n){return nt({_useUTC:!0,_isUTC:!0,_l:n,_i:e,_f:t})},t.unix=function(e){return t(e*1e3)},t.duration=function(e,n){var r=t.isDuration(e),i=typeof e=="number",s=r?e._data:i?{}:e,o;return i&&(n?s[n]=e:s.milliseconds=e),o=new P(s),r&&e.hasOwnProperty("_lang")&&(o._lang=e._lang),o},t.version=n,t.defaultFormat=E,t.lang=function(e,n){var r;if(!e)return t.fn._lang._abbr;n?R(e,n):s[e]||U(e),t.duration.fn._lang=t.fn._lang=U(e)},t.langData=function(e){return e&&e._lang&&e._lang._abbr&&(e=e._lang._abbr),U(e)},t.isMoment=function(e){return e instanceof D},t.isDuration=function(e){return e instanceof P},t.fn=D.prototype={clone:function(){return t(this)},valueOf:function(){return+this._d},unix:function(){return Math.floor(+this._d/1e3)},toString:function(){return this.format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._d},toJSON:function(){return t.utc(this).format("YYYY-MM-DD[T]HH:mm:ss.SSS[Z]")},toArray:function(){var e=this;return[e.year(),e.month(),e.date(),e.hours(),e.minutes(),e.seconds(),e.milliseconds()]},isValid:function(){return this._isValid==null&&(this._a?this._isValid=!q(this._a,(this._isUTC?t.utc(this._a):t(this._a)).toArray()):this._isValid=!isNaN(this._d.getTime())),!!this._isValid},utc:function(){return this._isUTC=!0,this},local:function(){return this._isUTC=!1,this},format:function(e){var n=X(this,e||t.defaultFormat);return this.lang().postformat(n)},add:function(e,n){var r;return typeof e=="string"?r=t.duration(+n,e):r=t.duration(e,n),F(this,r,1),this},subtract:function(e,n){var r;return typeof e=="string"?r=t.duration(+n,e):r=t.duration(e,n),F(this,r,-1),this},diff:function(e,n,r){var i=this._isUTC?t(e).utc():t(e).local(),s=(this.zone()-i.zone())*6e4,o,u;return n&&(n=n.replace(/s$/,"")),n==="year"||n==="month"?(o=(this.daysInMonth()+i.daysInMonth())*432e5,u=(this.year()-i.year())*12+(this.month()-i.month()),u+=(this-t(this).startOf("month")-(i-t(i).startOf("month")))/o,n==="year"&&(u/=12)):(o=this-i-s,u=n==="second"?o/1e3:n==="minute"?o/6e4:n==="hour"?o/36e5:n==="day"?o/864e5:n==="week"?o/6048e5:o),r?u:B(u)},from:function(e,n){return t.duration(this.diff(e)).lang(this.lang()._abbr).humanize(!n)},fromNow:function(e){return this.from(t(),e)},calendar:function(){var e=this.diff(t().startOf("day"),"days",!0),n=e<-6?"sameElse":e<-1?"lastWeek":e<0?"lastDay":e<1?"sameDay":e<2?"nextDay":e<7?"nextWeek":"sameElse";return this.format(this.lang().calendar(n,this))},isLeapYear:function(){var e=this.year();return e%4===0&&e%100!==0||e%400===0},isDST:function(){return this.zone()<t([this.year()]).zone()||this.zone()<t([this.year(),5]).zone()},day:function(e){var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return e==null?t:this.add({d:e-t})},startOf:function(e){e=e.replace(/s$/,"");switch(e){case"year":this.month(0);case"month":this.date(1);case"week":case"day":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return e==="week"&&this.day(0),this},endOf:function(e){return this.startOf(e).add(e.replace(/s?$/,"s"),1).subtract("ms",1)},isAfter:function(e,n){return n=typeof n!="undefined"?n:"millisecond",+this.clone().startOf(n)>+t(e).startOf(n)},isBefore:function(e,n){return n=typeof n!="undefined"?n:"millisecond",+this.clone().startOf(n)<+t(e).startOf(n)},isSame:function(e,n){return n=typeof n!="undefined"?n:"millisecond",+this.clone().startOf(n)===+t(e).startOf(n)},zone:function(){return this._isUTC?0:this._d.getTimezoneOffset()},daysInMonth:function(){return t.utc([this.year(),this.month()+1,0]).date()},dayOfYear:function(e){var n=r((t(this).startOf("day")-t(this).startOf("year"))/864e5)+1;return e==null?n:this.add("d",e-n)},isoWeek:function(e){var t=tt(this,1,4);return e==null?t:this.add("d",(e-t)*7)},week:function(e){var t=this.lang().week(this);return e==null?t:this.add("d",(e-t)*7)},lang:function(t){return t===e?this._lang:(this._lang=U(t),this)}};for(i=0;i<T.length;i++)rt(T[i].toLowerCase().replace(/s$/,""),T[i]);rt("year","FullYear"),t.fn.days=t.fn.day,t.fn.weeks=t.fn.week,t.fn.isoWeeks=t.fn.isoWeek,t.duration.fn=P.prototype={weeks:function(){return B(this.days()/7)},valueOf:function(){return this._milliseconds+this._days*864e5+this._months*2592e6},humanize:function(e){var t=+this,n=et(t,!e,this.lang());return e&&(n=this.lang().pastFuture(t,n)),this.lang().postformat(n)},lang:t.fn.lang};for(i in N)N.hasOwnProperty(i)&&(st(i,N[i]),it(i.toLowerCase()));st("Weeks",6048e5),t.lang("en",{ordinal:function(e){var t=e%10,n=~~(e%100/10)===1?"th":t===1?"st":t===2?"nd":t===3?"rd":"th";return e+n}}),o&&(module.exports=t),typeof ender=="undefined"&&(this.moment=t),typeof define=="function"&&define.amd&&define("moment",[],function(){return t})}).call(this);
|
File without changes
|
@@ -0,0 +1,3 @@
|
|
1
|
+
(function(root,factory){if(typeof define==="function"&&define.amd){define(["d3"],function(d3){return root.Rickshaw=factory(d3)})}else if(typeof exports==="object"){module.exports=factory(require("d3"))}else{root.Rickshaw=factory(d3)}})(this,function(d3){var Rickshaw={namespace:function(namespace,obj){var parts=namespace.split(".");var parent=Rickshaw;for(var i=1,length=parts.length;i<length;i++){var currentPart=parts[i];parent[currentPart]=parent[currentPart]||{};parent=parent[currentPart]}return parent},keys:function(obj){var keys=[];for(var key in obj)keys.push(key);return keys},extend:function(destination,source){for(var property in source){destination[property]=source[property]}return destination},clone:function(obj){return JSON.parse(JSON.stringify(obj))}};(function(globalContext){var _toString=Object.prototype.toString,NULL_TYPE="Null",UNDEFINED_TYPE="Undefined",BOOLEAN_TYPE="Boolean",NUMBER_TYPE="Number",STRING_TYPE="String",OBJECT_TYPE="Object",FUNCTION_CLASS="[object Function]";function isFunction(object){return _toString.call(object)===FUNCTION_CLASS}function extend(destination,source){for(var property in source)if(source.hasOwnProperty(property))destination[property]=source[property];return destination}function keys(object){if(Type(object)!==OBJECT_TYPE){throw new TypeError}var results=[];for(var property in object){if(object.hasOwnProperty(property)){results.push(property)}}return results}function Type(o){switch(o){case null:return NULL_TYPE;case void 0:return UNDEFINED_TYPE}var type=typeof o;switch(type){case"boolean":return BOOLEAN_TYPE;case"number":return NUMBER_TYPE;case"string":return STRING_TYPE}return OBJECT_TYPE}function isUndefined(object){return typeof object==="undefined"}var slice=Array.prototype.slice;function argumentNames(fn){var names=fn.toString().match(/^[\s\(]*function[^(]*\(([^)]*)\)/)[1].replace(/\/\/.*?[\r\n]|\/\*(?:.|[\r\n])*?\*\//g,"").replace(/\s+/g,"").split(",");return names.length==1&&!names[0]?[]:names}function wrap(fn,wrapper){var __method=fn;return function(){var a=update([bind(__method,this)],arguments);return wrapper.apply(this,a)}}function update(array,args){var arrayLength=array.length,length=args.length;while(length--)array[arrayLength+length]=args[length];return array}function merge(array,args){array=slice.call(array,0);return update(array,args)}function bind(fn,context){if(arguments.length<2&&isUndefined(arguments[0]))return this;var __method=fn,args=slice.call(arguments,2);return function(){var a=merge(args,arguments);return __method.apply(context,a)}}var emptyFunction=function(){};var Class=function(){var IS_DONTENUM_BUGGY=function(){for(var p in{toString:1}){if(p==="toString")return false}return true}();function subclass(){}function create(){var parent=null,properties=[].slice.apply(arguments);if(isFunction(properties[0]))parent=properties.shift();function klass(){this.initialize.apply(this,arguments)}extend(klass,Class.Methods);klass.superclass=parent;klass.subclasses=[];if(parent){subclass.prototype=parent.prototype;klass.prototype=new subclass;try{parent.subclasses.push(klass)}catch(e){}}for(var i=0,length=properties.length;i<length;i++)klass.addMethods(properties[i]);if(!klass.prototype.initialize)klass.prototype.initialize=emptyFunction;klass.prototype.constructor=klass;return klass}function addMethods(source){var ancestor=this.superclass&&this.superclass.prototype,properties=keys(source);if(IS_DONTENUM_BUGGY){if(source.toString!=Object.prototype.toString)properties.push("toString");if(source.valueOf!=Object.prototype.valueOf)properties.push("valueOf")}for(var i=0,length=properties.length;i<length;i++){var property=properties[i],value=source[property];if(ancestor&&isFunction(value)&&argumentNames(value)[0]=="$super"){var method=value;value=wrap(function(m){return function(){return ancestor[m].apply(this,arguments)}}(property),method);value.valueOf=bind(method.valueOf,method);value.toString=bind(method.toString,method)}this.prototype[property]=value}return this}return{create:create,Methods:{addMethods:addMethods}}}();if(globalContext.exports){globalContext.exports.Class=Class}else{globalContext.Class=Class}})(Rickshaw);Rickshaw.namespace("Rickshaw.Compat.ClassList");Rickshaw.Compat.ClassList=function(){if(typeof document!=="undefined"&&!("classList"in document.createElement("a"))){(function(view){"use strict";var classListProp="classList",protoProp="prototype",elemCtrProto=(view.HTMLElement||view.Element)[protoProp],objCtr=Object,strTrim=String[protoProp].trim||function(){return this.replace(/^\s+|\s+$/g,"")},arrIndexOf=Array[protoProp].indexOf||function(item){var i=0,len=this.length;for(;i<len;i++){if(i in this&&this[i]===item){return i}}return-1},DOMEx=function(type,message){this.name=type;this.code=DOMException[type];this.message=message},checkTokenAndGetIndex=function(classList,token){if(token===""){throw new DOMEx("SYNTAX_ERR","An invalid or illegal string was specified")}if(/\s/.test(token)){throw new DOMEx("INVALID_CHARACTER_ERR","String contains an invalid character")}return arrIndexOf.call(classList,token)},ClassList=function(elem){var trimmedClasses=strTrim.call(elem.className),classes=trimmedClasses?trimmedClasses.split(/\s+/):[],i=0,len=classes.length;for(;i<len;i++){this.push(classes[i])}this._updateClassName=function(){elem.className=this.toString()}},classListProto=ClassList[protoProp]=[],classListGetter=function(){return new ClassList(this)};DOMEx[protoProp]=Error[protoProp];classListProto.item=function(i){return this[i]||null};classListProto.contains=function(token){token+="";return checkTokenAndGetIndex(this,token)!==-1};classListProto.add=function(token){token+="";if(checkTokenAndGetIndex(this,token)===-1){this.push(token);this._updateClassName()}};classListProto.remove=function(token){token+="";var index=checkTokenAndGetIndex(this,token);if(index!==-1){this.splice(index,1);this._updateClassName()}};classListProto.toggle=function(token){token+="";if(checkTokenAndGetIndex(this,token)===-1){this.add(token)}else{this.remove(token)}};classListProto.toString=function(){return this.join(" ")};if(objCtr.defineProperty){var classListPropDesc={get:classListGetter,enumerable:true,configurable:true};try{objCtr.defineProperty(elemCtrProto,classListProp,classListPropDesc)}catch(ex){if(ex.number===-2146823252){classListPropDesc.enumerable=false;objCtr.defineProperty(elemCtrProto,classListProp,classListPropDesc)}}}else if(objCtr[protoProp].__defineGetter__){elemCtrProto.__defineGetter__(classListProp,classListGetter)}})(window)}};if(typeof RICKSHAW_NO_COMPAT!=="undefined"&&!RICKSHAW_NO_COMPAT||typeof RICKSHAW_NO_COMPAT==="undefined"){new Rickshaw.Compat.ClassList}Rickshaw.namespace("Rickshaw.Graph");Rickshaw.Graph=function(args){var self=this;this.initialize=function(args){if(!args.element)throw"Rickshaw.Graph needs a reference to an element";if(args.element.nodeType!==1)throw"Rickshaw.Graph element was defined but not an HTML element";this.element=args.element;this.series=args.series;this.window={};this.updateCallbacks=[];this.configureCallbacks=[];this.defaults={interpolation:"cardinal",offset:"zero",min:undefined,max:undefined,preserve:false,xScale:undefined,yScale:undefined,stack:true};this._loadRenderers();this.configure(args);this.validateSeries(args.series);this.series.active=function(){return self.series.filter(function(s){return!s.disabled})};this.setSize({width:args.width,height:args.height});this.element.classList.add("rickshaw_graph");this.vis=d3.select(this.element).append("svg:svg").attr("width",this.width).attr("height",this.height);this.discoverRange()};this._loadRenderers=function(){for(var name in Rickshaw.Graph.Renderer){if(!name||!Rickshaw.Graph.Renderer.hasOwnProperty(name))continue;var r=Rickshaw.Graph.Renderer[name];if(!r||!r.prototype||!r.prototype.render)continue;self.registerRenderer(new r({graph:self}))}};this.validateSeries=function(series){if(!Array.isArray(series)&&!(series instanceof Rickshaw.Series)){var seriesSignature=Object.prototype.toString.apply(series);throw"series is not an array: "+seriesSignature}var pointsCount;series.forEach(function(s){if(!(s instanceof Object)){throw"series element is not an object: "+s}if(!s.data){throw"series has no data: "+JSON.stringify(s)}if(!Array.isArray(s.data)){throw"series data is not an array: "+JSON.stringify(s.data)}if(s.data.length>0){var x=s.data[0].x;var y=s.data[0].y;if(typeof x!="number"||typeof y!="number"&&y!==null){throw"x and y properties of points should be numbers instead of "+typeof x+" and "+typeof y}}if(s.data.length>=3){if(s.data[2].x<s.data[1].x||s.data[1].x<s.data[0].x||s.data[s.data.length-1].x<s.data[0].x){throw"series data needs to be sorted on x values for series name: "+s.name}}},this)};this.dataDomain=function(){var data=this.series.map(function(s){return s.data});var min=d3.min(data.map(function(d){return d[0].x}));var max=d3.max(data.map(function(d){return d[d.length-1].x}));return[min,max]};this.discoverRange=function(){var domain=this.renderer.domain();this.x=(this.xScale||d3.scale.linear()).copy().domain(domain.x).range([0,this.width]);this.y=(this.yScale||d3.scale.linear()).copy().domain(domain.y).range([this.height,0]);this.x.magnitude=d3.scale.linear().domain([domain.x[0]-domain.x[0],domain.x[1]-domain.x[0]]).range([0,this.width]);this.y.magnitude=d3.scale.linear().domain([domain.y[0]-domain.y[0],domain.y[1]-domain.y[0]]).range([0,this.height])};this.render=function(){var stackedData=this.stackData();this.discoverRange();this.renderer.render();this.updateCallbacks.forEach(function(callback){callback()})};this.update=this.render;this.stackData=function(){var data=this.series.active().map(function(d){return d.data}).map(function(d){return d.filter(function(d){return this._slice(d)},this)},this);var preserve=this.preserve;if(!preserve){this.series.forEach(function(series){if(series.scale){preserve=true}})}data=preserve?Rickshaw.clone(data):data;this.series.active().forEach(function(series,index){if(series.scale){var seriesData=data[index];if(seriesData){seriesData.forEach(function(d){d.y=series.scale(d.y)})}}});this.stackData.hooks.data.forEach(function(entry){data=entry.f.apply(self,[data])});var stackedData;if(!this.renderer.unstack){this._validateStackable();var layout=d3.layout.stack();layout.offset(self.offset);stackedData=layout(data)}stackedData=stackedData||data;if(this.renderer.unstack){stackedData.forEach(function(seriesData){seriesData.forEach(function(d){d.y0=d.y0===undefined?0:d.y0})})}this.stackData.hooks.after.forEach(function(entry){stackedData=entry.f.apply(self,[data])});var i=0;this.series.forEach(function(series){if(series.disabled)return;series.stack=stackedData[i++]});this.stackedData=stackedData;return stackedData};this._validateStackable=function(){var series=this.series;var pointsCount;series.forEach(function(s){pointsCount=pointsCount||s.data.length;if(pointsCount&&s.data.length!=pointsCount){throw"stacked series cannot have differing numbers of points: "+pointsCount+" vs "+s.data.length+"; see Rickshaw.Series.fill()"}},this)};this.stackData.hooks={data:[],after:[]};this._slice=function(d){if(this.window.xMin||this.window.xMax){var isInRange=true;if(this.window.xMin&&d.x<this.window.xMin)isInRange=false;if(this.window.xMax&&d.x>this.window.xMax)isInRange=false;return isInRange}return true};this.onUpdate=function(callback){this.updateCallbacks.push(callback)};this.onConfigure=function(callback){this.configureCallbacks.push(callback)};this.registerRenderer=function(renderer){this._renderers=this._renderers||{};this._renderers[renderer.name]=renderer};this.configure=function(args){this.config=this.config||{};if(args.width||args.height){this.setSize(args)}Rickshaw.keys(this.defaults).forEach(function(k){this.config[k]=k in args?args[k]:k in this?this[k]:this.defaults[k]},this);Rickshaw.keys(this.config).forEach(function(k){this[k]=this.config[k]},this);if("stack"in args)args.unstack=!args.stack;var renderer=args.renderer||this.renderer&&this.renderer.name||"stack";this.setRenderer(renderer,args);this.configureCallbacks.forEach(function(callback){callback(args)})};this.setRenderer=function(r,args){if(typeof r=="function"){this.renderer=new r({graph:self});this.registerRenderer(this.renderer)}else{if(!this._renderers[r]){throw"couldn't find renderer "+r}this.renderer=this._renderers[r]}if(typeof args=="object"){this.renderer.configure(args)}};this.setSize=function(args){args=args||{};if(typeof window!==undefined){var style=window.getComputedStyle(this.element,null);var elementWidth=parseInt(style.getPropertyValue("width"),10);var elementHeight=parseInt(style.getPropertyValue("height"),10)}this.width=args.width||elementWidth||400;this.height=args.height||elementHeight||250;this.vis&&this.vis.attr("width",this.width).attr("height",this.height)};this.initialize(args)};Rickshaw.namespace("Rickshaw.Fixtures.Color");Rickshaw.Fixtures.Color=function(){this.schemes={};this.schemes.spectrum14=["#ecb796","#dc8f70","#b2a470","#92875a","#716c49","#d2ed82","#bbe468","#a1d05d","#e7cbe6","#d8aad6","#a888c2","#9dc2d3","#649eb9","#387aa3"].reverse();this.schemes.spectrum2000=["#57306f","#514c76","#646583","#738394","#6b9c7d","#84b665","#a7ca50","#bfe746","#e2f528","#fff726","#ecdd00","#d4b11d","#de8800","#de4800","#c91515","#9a0000","#7b0429","#580839","#31082b"];this.schemes.spectrum2001=["#2f243f","#3c2c55","#4a3768","#565270","#6b6b7c","#72957f","#86ad6e","#a1bc5e","#b8d954","#d3e04e","#ccad2a","#cc8412","#c1521d","#ad3821","#8a1010","#681717","#531e1e","#3d1818","#320a1b"];this.schemes.classic9=["#423d4f","#4a6860","#848f39","#a2b73c","#ddcb53","#c5a32f","#7d5836","#963b20","#7c2626","#491d37","#2f254a"].reverse();this.schemes.httpStatus={503:"#ea5029",502:"#d23f14",500:"#bf3613",410:"#efacea",409:"#e291dc",403:"#f457e8",408:"#e121d2",401:"#b92dae",405:"#f47ceb",404:"#a82a9f",400:"#b263c6",301:"#6fa024",302:"#87c32b",307:"#a0d84c",304:"#28b55c",200:"#1a4f74",206:"#27839f",201:"#52adc9",202:"#7c979f",203:"#a5b8bd",204:"#c1cdd1"};this.schemes.colorwheel=["#b5b6a9","#858772","#785f43","#96557e","#4682b4","#65b9ac","#73c03a","#cb513a"].reverse();this.schemes.cool=["#5e9d2f","#73c03a","#4682b4","#7bc3b8","#a9884e","#c1b266","#a47493","#c09fb5"];this.schemes.munin=["#00cc00","#0066b3","#ff8000","#ffcc00","#330099","#990099","#ccff00","#ff0000","#808080","#008f00","#00487d","#b35a00","#b38f00","#6b006b","#8fb300","#b30000","#bebebe","#80ff80","#80c9ff","#ffc080","#ffe680","#aa80ff","#ee00cc","#ff8080","#666600","#ffbfff","#00ffcc","#cc6699","#999900"]};Rickshaw.namespace("Rickshaw.Fixtures.RandomData");Rickshaw.Fixtures.RandomData=function(timeInterval){var addData;timeInterval=timeInterval||1;var lastRandomValue=200;var timeBase=Math.floor((new Date).getTime()/1e3);this.addData=function(data){var randomValue=Math.random()*100+15+lastRandomValue;var index=data[0].length;var counter=1;data.forEach(function(series){var randomVariance=Math.random()*20;var v=randomValue/25+counter++ +(Math.cos(index*counter*11/960)+2)*15+(Math.cos(index/7)+2)*7+(Math.cos(index/17)+2)*1;series.push({x:index*timeInterval+timeBase,y:v+randomVariance})});lastRandomValue=randomValue*.85};this.removeData=function(data){data.forEach(function(series){series.shift()});timeBase+=timeInterval}};Rickshaw.namespace("Rickshaw.Fixtures.Time");Rickshaw.Fixtures.Time=function(){var self=this;this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];this.units=[{name:"decade",seconds:86400*365.25*10,formatter:function(d){return parseInt(d.getUTCFullYear()/10,10)*10}},{name:"year",seconds:86400*365.25,formatter:function(d){return d.getUTCFullYear()}},{name:"month",seconds:86400*30.5,formatter:function(d){return self.months[d.getUTCMonth()]}},{name:"week",seconds:86400*7,formatter:function(d){return self.formatDate(d)}},{name:"day",seconds:86400,formatter:function(d){return d.getUTCDate()}},{name:"6 hour",seconds:3600*6,formatter:function(d){return self.formatTime(d)}},{name:"hour",seconds:3600,formatter:function(d){return self.formatTime(d)}},{name:"15 minute",seconds:60*15,formatter:function(d){return self.formatTime(d)}},{name:"minute",seconds:60,formatter:function(d){return d.getUTCMinutes()}},{name:"15 second",seconds:15,formatter:function(d){return d.getUTCSeconds()+"s"}},{name:"second",seconds:1,formatter:function(d){return d.getUTCSeconds()+"s"}},{name:"decisecond",seconds:1/10,formatter:function(d){return d.getUTCMilliseconds()+"ms"}},{name:"centisecond",seconds:1/100,formatter:function(d){return d.getUTCMilliseconds()+"ms"}}];this.unit=function(unitName){return this.units.filter(function(unit){return unitName==unit.name}).shift()};this.formatDate=function(d){return d3.time.format("%b %e")(d)};this.formatTime=function(d){return d.toUTCString().match(/(\d+:\d+):/)[1]};this.ceil=function(time,unit){var date,floor,year;if(unit.name=="month"){date=new Date(time*1e3);floor=Date.UTC(date.getUTCFullYear(),date.getUTCMonth())/1e3;if(floor==time)return time;year=date.getUTCFullYear();var month=date.getUTCMonth();if(month==11){month=0;year=year+1}else{month+=1}return Date.UTC(year,month)/1e3}if(unit.name=="year"){date=new Date(time*1e3);floor=Date.UTC(date.getUTCFullYear(),0)/1e3;if(floor==time)return time;year=date.getUTCFullYear()+1;return Date.UTC(year,0)/1e3}return Math.ceil(time/unit.seconds)*unit.seconds}};Rickshaw.namespace("Rickshaw.Fixtures.Time.Local");Rickshaw.Fixtures.Time.Local=function(){var self=this;this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];this.units=[{name:"decade",seconds:86400*365.25*10,formatter:function(d){return parseInt(d.getFullYear()/10,10)*10}},{name:"year",seconds:86400*365.25,formatter:function(d){return d.getFullYear()}},{name:"month",seconds:86400*30.5,formatter:function(d){return self.months[d.getMonth()]}},{name:"week",seconds:86400*7,formatter:function(d){return self.formatDate(d)}},{name:"day",seconds:86400,formatter:function(d){return d.getDate()}},{name:"6 hour",seconds:3600*6,formatter:function(d){return self.formatTime(d)}},{name:"hour",seconds:3600,formatter:function(d){return self.formatTime(d)}},{name:"15 minute",seconds:60*15,formatter:function(d){return self.formatTime(d)}},{name:"minute",seconds:60,formatter:function(d){return d.getMinutes()}},{name:"15 second",seconds:15,formatter:function(d){return d.getSeconds()+"s"}},{name:"second",seconds:1,formatter:function(d){return d.getSeconds()+"s"}},{name:"decisecond",seconds:1/10,formatter:function(d){return d.getMilliseconds()+"ms"}},{name:"centisecond",seconds:1/100,formatter:function(d){return d.getMilliseconds()+"ms"}}];this.unit=function(unitName){return this.units.filter(function(unit){return unitName==unit.name}).shift()};this.formatDate=function(d){return d3.time.format("%b %e")(d)};this.formatTime=function(d){return d.toString().match(/(\d+:\d+):/)[1]};this.ceil=function(time,unit){var date,floor,year;if(unit.name=="day"){var nearFuture=new Date((time+unit.seconds-1)*1e3);var rounded=new Date(0);rounded.setMilliseconds(0);rounded.setSeconds(0);rounded.setMinutes(0);rounded.setHours(0);rounded.setDate(nearFuture.getDate());rounded.setMonth(nearFuture.getMonth());rounded.setFullYear(nearFuture.getFullYear());return rounded.getTime()/1e3}if(unit.name=="month"){date=new Date(time*1e3);floor=new Date(date.getFullYear(),date.getMonth()).getTime()/1e3;if(floor==time)return time;year=date.getFullYear();var month=date.getMonth();if(month==11){month=0;year=year+1}else{month+=1}return new Date(year,month).getTime()/1e3}if(unit.name=="year"){date=new Date(time*1e3);floor=new Date(date.getUTCFullYear(),0).getTime()/1e3;if(floor==time)return time;year=date.getFullYear()+1;return new Date(year,0).getTime()/1e3}return Math.ceil(time/unit.seconds)*unit.seconds}};Rickshaw.namespace("Rickshaw.Fixtures.Number");Rickshaw.Fixtures.Number.formatKMBT=function(y){var abs_y=Math.abs(y);if(abs_y>=1e12){return y/1e12+"T"}else if(abs_y>=1e9){return y/1e9+"B"}else if(abs_y>=1e6){return y/1e6+"M"}else if(abs_y>=1e3){return y/1e3+"K"}else if(abs_y<1&&y>0){return y.toFixed(2)}else if(abs_y===0){return""}else{return y}};Rickshaw.Fixtures.Number.formatBase1024KMGTP=function(y){var abs_y=Math.abs(y);if(abs_y>=0x4000000000000){return y/0x4000000000000+"P"}else if(abs_y>=1099511627776){return y/1099511627776+"T"}else if(abs_y>=1073741824){return y/1073741824+"G"}else if(abs_y>=1048576){return y/1048576+"M"}else if(abs_y>=1024){return y/1024+"K"}else if(abs_y<1&&y>0){return y.toFixed(2)}else if(abs_y===0){return""}else{return y}};Rickshaw.namespace("Rickshaw.Color.Palette");Rickshaw.Color.Palette=function(args){var color=new Rickshaw.Fixtures.Color;args=args||{};this.schemes={};this.scheme=color.schemes[args.scheme]||args.scheme||color.schemes.colorwheel;this.runningIndex=0;this.generatorIndex=0;if(args.interpolatedStopCount){var schemeCount=this.scheme.length-1;var i,j,scheme=[];for(i=0;i<schemeCount;i++){scheme.push(this.scheme[i]);var generator=d3.interpolateHsl(this.scheme[i],this.scheme[i+1]);for(j=1;j<args.interpolatedStopCount;j++){scheme.push(generator(1/args.interpolatedStopCount*j))}}scheme.push(this.scheme[this.scheme.length-1]);this.scheme=scheme}this.rotateCount=this.scheme.length;this.color=function(key){return this.scheme[key]||this.scheme[this.runningIndex++]||this.interpolateColor()||"#808080"};this.interpolateColor=function(){if(!Array.isArray(this.scheme))return;var color;if(this.generatorIndex==this.rotateCount*2-1){color=d3.interpolateHsl(this.scheme[this.generatorIndex],this.scheme[0])(.5);this.generatorIndex=0;this.rotateCount*=2}else{color=d3.interpolateHsl(this.scheme[this.generatorIndex],this.scheme[this.generatorIndex+1])(.5);this.generatorIndex++}this.scheme.push(color);return color}};Rickshaw.namespace("Rickshaw.Graph.Ajax");Rickshaw.Graph.Ajax=Rickshaw.Class.create({initialize:function(args){this.dataURL=args.dataURL;this.onData=args.onData||function(d){return d};this.onComplete=args.onComplete||function(){};this.onError=args.onError||function(){};this.args=args;this.request()},request:function(){jQuery.ajax({url:this.dataURL,dataType:"json",success:this.success.bind(this),error:this.error.bind(this)})},error:function(){console.log("error loading dataURL: "+this.dataURL);this.onError(this)},success:function(data,status){data=this.onData(data);this.args.series=this._splice({data:data,series:this.args.series});this.graph=this.graph||new Rickshaw.Graph(this.args);this.graph.render();this.onComplete(this)},_splice:function(args){var data=args.data;var series=args.series;if(!args.series)return data;series.forEach(function(s){var seriesKey=s.key||s.name;if(!seriesKey)throw"series needs a key or a name";data.forEach(function(d){var dataKey=d.key||d.name;if(!dataKey)throw"data needs a key or a name";if(seriesKey==dataKey){var properties=["color","name","data"];properties.forEach(function(p){if(d[p])s[p]=d[p]})}})});return series}});Rickshaw.namespace("Rickshaw.Graph.Annotate");Rickshaw.Graph.Annotate=function(args){var graph=this.graph=args.graph;this.elements={timeline:args.element};var self=this;this.data={};this.elements.timeline.classList.add("rickshaw_annotation_timeline");this.add=function(time,content,end_time){self.data[time]=self.data[time]||{boxes:[]};self.data[time].boxes.push({content:content,end:end_time})};this.update=function(){Rickshaw.keys(self.data).forEach(function(time){var annotation=self.data[time];var left=self.graph.x(time);if(left<0||left>self.graph.x.range()[1]){if(annotation.element){annotation.line.classList.add("offscreen");annotation.element.style.display="none"}annotation.boxes.forEach(function(box){if(box.rangeElement)box.rangeElement.classList.add("offscreen")});return}if(!annotation.element){var element=annotation.element=document.createElement("div");element.classList.add("annotation");this.elements.timeline.appendChild(element);element.addEventListener("click",function(e){element.classList.toggle("active");annotation.line.classList.toggle("active");annotation.boxes.forEach(function(box){if(box.rangeElement)box.rangeElement.classList.toggle("active")})},false)}annotation.element.style.left=left+"px";annotation.element.style.display="block";annotation.boxes.forEach(function(box){var element=box.element;if(!element){element=box.element=document.createElement("div");element.classList.add("content");element.innerHTML=box.content;annotation.element.appendChild(element);annotation.line=document.createElement("div");annotation.line.classList.add("annotation_line");self.graph.element.appendChild(annotation.line);if(box.end){box.rangeElement=document.createElement("div");box.rangeElement.classList.add("annotation_range");self.graph.element.appendChild(box.rangeElement)}}if(box.end){var annotationRangeStart=left;var annotationRangeEnd=Math.min(self.graph.x(box.end),self.graph.x.range()[1]);if(annotationRangeStart>annotationRangeEnd){annotationRangeEnd=left;annotationRangeStart=Math.max(self.graph.x(box.end),self.graph.x.range()[0])}var annotationRangeWidth=annotationRangeEnd-annotationRangeStart;box.rangeElement.style.left=annotationRangeStart+"px";box.rangeElement.style.width=annotationRangeWidth+"px";box.rangeElement.classList.remove("offscreen")}annotation.line.classList.remove("offscreen");annotation.line.style.left=left+"px"})},this)};this.graph.onUpdate(function(){self.update()})};Rickshaw.namespace("Rickshaw.Graph.Axis.Time");Rickshaw.Graph.Axis.Time=function(args){var self=this;this.graph=args.graph;this.elements=[];this.ticksTreatment=args.ticksTreatment||"plain";this.fixedTimeUnit=args.timeUnit;var time=args.timeFixture||new Rickshaw.Fixtures.Time;this.appropriateTimeUnit=function(){var unit;var units=time.units;var domain=this.graph.x.domain();var rangeSeconds=domain[1]-domain[0];units.forEach(function(u){if(Math.floor(rangeSeconds/u.seconds)>=2){unit=unit||u}});return unit||time.units[time.units.length-1]};this.tickOffsets=function(){var domain=this.graph.x.domain();var unit=this.fixedTimeUnit||this.appropriateTimeUnit();var count=Math.ceil((domain[1]-domain[0])/unit.seconds);var runningTick=domain[0];var offsets=[];for(var i=0;i<count;i++){var tickValue=time.ceil(runningTick,unit);runningTick=tickValue+unit.seconds/2;offsets.push({value:tickValue,unit:unit})}return offsets};this.render=function(){this.elements.forEach(function(e){e.parentNode.removeChild(e)});this.elements=[];var offsets=this.tickOffsets();offsets.forEach(function(o){if(self.graph.x(o.value)>self.graph.x.range()[1])return;var element=document.createElement("div");element.style.left=self.graph.x(o.value)+"px";element.classList.add("x_tick");element.classList.add(self.ticksTreatment);var title=document.createElement("div");title.classList.add("title");title.innerHTML=o.unit.formatter(new Date(o.value*1e3));element.appendChild(title);self.graph.element.appendChild(element);self.elements.push(element)})};this.graph.onUpdate(function(){self.render()})};Rickshaw.namespace("Rickshaw.Graph.Axis.X");Rickshaw.Graph.Axis.X=function(args){var self=this;var berthRate=.1;this.initialize=function(args){this.graph=args.graph;this.orientation=args.orientation||"top";this.pixelsPerTick=args.pixelsPerTick||75;if(args.ticks)this.staticTicks=args.ticks;if(args.tickValues)this.tickValues=args.tickValues;this.tickSize=args.tickSize||4;this.ticksTreatment=args.ticksTreatment||"plain";if(args.element){this.element=args.element;this._discoverSize(args.element,args);this.vis=d3.select(args.element).append("svg:svg").attr("height",this.height).attr("width",this.width).attr("class","rickshaw_graph x_axis_d3");this.element=this.vis[0][0];this.element.style.position="relative";this.setSize({width:args.width,height:args.height})}else{this.vis=this.graph.vis}this.graph.onUpdate(function(){self.render()})};this.setSize=function(args){args=args||{};if(!this.element)return;this._discoverSize(this.element.parentNode,args);this.vis.attr("height",this.height).attr("width",this.width*(1+berthRate));var berth=Math.floor(this.width*berthRate/2);this.element.style.left=-1*berth+"px"};this.render=function(){if(this._renderWidth!==undefined&&this.graph.width!==this._renderWidth)this.setSize({auto:true});var axis=d3.svg.axis().scale(this.graph.x).orient(this.orientation);axis.tickFormat(args.tickFormat||function(x){return x});if(this.tickValues)axis.tickValues(this.tickValues);this.ticks=this.staticTicks||Math.floor(this.graph.width/this.pixelsPerTick);var berth=Math.floor(this.width*berthRate/2)||0;var transform;if(this.orientation=="top"){var yOffset=this.height||this.graph.height;transform="translate("+berth+","+yOffset+")"}else{transform="translate("+berth+", 0)"}if(this.element){this.vis.selectAll("*").remove()}this.vis.append("svg:g").attr("class",["x_ticks_d3",this.ticksTreatment].join(" ")).attr("transform",transform).call(axis.ticks(this.ticks).tickSubdivide(0).tickSize(this.tickSize));var gridSize=(this.orientation=="bottom"?1:-1)*this.graph.height;this.graph.vis.append("svg:g").attr("class","x_grid_d3").call(axis.ticks(this.ticks).tickSubdivide(0).tickSize(gridSize)).selectAll("text").each(function(){this.parentNode.setAttribute("data-x-value",this.textContent)});this._renderHeight=this.graph.height};this._discoverSize=function(element,args){if(typeof window!=="undefined"){var style=window.getComputedStyle(element,null);var elementHeight=parseInt(style.getPropertyValue("height"),10);if(!args.auto){var elementWidth=parseInt(style.getPropertyValue("width"),10)}}this.width=(args.width||elementWidth||this.graph.width)*(1+berthRate);this.height=args.height||elementHeight||40};this.initialize(args)};Rickshaw.namespace("Rickshaw.Graph.Axis.Y");Rickshaw.Graph.Axis.Y=Rickshaw.Class.create({initialize:function(args){this.graph=args.graph;this.orientation=args.orientation||"right";this.pixelsPerTick=args.pixelsPerTick||75;if(args.ticks)this.staticTicks=args.ticks;if(args.tickValues)this.tickValues=args.tickValues;this.tickSize=args.tickSize||4;this.ticksTreatment=args.ticksTreatment||"plain";this.tickFormat=args.tickFormat||function(y){return y};this.berthRate=.1;if(args.element){this.element=args.element;this.vis=d3.select(args.element).append("svg:svg").attr("class","rickshaw_graph y_axis");this.element=this.vis[0][0];this.element.style.position="relative";this.setSize({width:args.width,height:args.height})}else{this.vis=this.graph.vis}var self=this;this.graph.onUpdate(function(){self.render()})},setSize:function(args){args=args||{};if(!this.element)return;if(typeof window!=="undefined"){var style=window.getComputedStyle(this.element.parentNode,null);var elementWidth=parseInt(style.getPropertyValue("width"),10);if(!args.auto){var elementHeight=parseInt(style.getPropertyValue("height"),10)}}this.width=args.width||elementWidth||this.graph.width*this.berthRate;this.height=args.height||elementHeight||this.graph.height;this.vis.attr("width",this.width).attr("height",this.height*(1+this.berthRate));var berth=this.height*this.berthRate;if(this.orientation=="left"){this.element.style.top=-1*berth+"px"}},render:function(){if(this._renderHeight!==undefined&&this.graph.height!==this._renderHeight)this.setSize({auto:true});this.ticks=this.staticTicks||Math.floor(this.graph.height/this.pixelsPerTick);var axis=this._drawAxis(this.graph.y);this._drawGrid(axis);this._renderHeight=this.graph.height},_drawAxis:function(scale){var axis=d3.svg.axis().scale(scale).orient(this.orientation);axis.tickFormat(this.tickFormat);if(this.tickValues)axis.tickValues(this.tickValues);if(this.orientation=="left"){var berth=this.height*this.berthRate;var transform="translate("+this.width+", "+berth+")"}if(this.element){this.vis.selectAll("*").remove()}this.vis.append("svg:g").attr("class",["y_ticks",this.ticksTreatment].join(" ")).attr("transform",transform).call(axis.ticks(this.ticks).tickSubdivide(0).tickSize(this.tickSize));return axis},_drawGrid:function(axis){var gridSize=(this.orientation=="right"?1:-1)*this.graph.width;this.graph.vis.append("svg:g").attr("class","y_grid").call(axis.ticks(this.ticks).tickSubdivide(0).tickSize(gridSize)).selectAll("text").each(function(){this.parentNode.setAttribute("data-y-value",this.textContent)
|
2
|
+
})}});Rickshaw.namespace("Rickshaw.Graph.Axis.Y.Scaled");Rickshaw.Graph.Axis.Y.Scaled=Rickshaw.Class.create(Rickshaw.Graph.Axis.Y,{initialize:function($super,args){if(typeof args.scale==="undefined"){throw new Error("Scaled requires scale")}this.scale=args.scale;if(typeof args.grid==="undefined"){this.grid=true}else{this.grid=args.grid}$super(args)},_drawAxis:function($super,scale){var domain=this.scale.domain();var renderDomain=this.graph.renderer.domain().y;var extents=[Math.min.apply(Math,domain),Math.max.apply(Math,domain)];var extentMap=d3.scale.linear().domain([0,1]).range(extents);var adjExtents=[extentMap(renderDomain[0]),extentMap(renderDomain[1])];var adjustment=d3.scale.linear().domain(extents).range(adjExtents);var adjustedScale=this.scale.copy().domain(domain.map(adjustment)).range(scale.range());return $super(adjustedScale)},_drawGrid:function($super,axis){if(this.grid){$super(axis)}}});Rickshaw.namespace("Rickshaw.Graph.Behavior.Series.Highlight");Rickshaw.Graph.Behavior.Series.Highlight=function(args){this.graph=args.graph;this.legend=args.legend;var self=this;var colorSafe={};var activeLine=null;var disabledColor=args.disabledColor||function(seriesColor){return d3.interpolateRgb(seriesColor,d3.rgb("#d8d8d8"))(.8).toString()};this.addHighlightEvents=function(l){l.element.addEventListener("mouseover",function(e){if(activeLine)return;else activeLine=l;self.legend.lines.forEach(function(line){if(l===line){if(self.graph.renderer.unstack&&(line.series.renderer?line.series.renderer.unstack:true)){var seriesIndex=self.graph.series.indexOf(line.series);line.originalIndex=seriesIndex;var series=self.graph.series.splice(seriesIndex,1)[0];self.graph.series.push(series)}return}colorSafe[line.series.name]=colorSafe[line.series.name]||line.series.color;line.series.color=disabledColor(line.series.color)});self.graph.update()},false);l.element.addEventListener("mouseout",function(e){if(!activeLine)return;else activeLine=null;self.legend.lines.forEach(function(line){if(l===line&&line.hasOwnProperty("originalIndex")){var series=self.graph.series.pop();self.graph.series.splice(line.originalIndex,0,series);delete line.originalIndex}if(colorSafe[line.series.name]){line.series.color=colorSafe[line.series.name]}});self.graph.update()},false)};if(this.legend){this.legend.lines.forEach(function(l){self.addHighlightEvents(l)})}};Rickshaw.namespace("Rickshaw.Graph.Behavior.Series.Order");Rickshaw.Graph.Behavior.Series.Order=function(args){this.graph=args.graph;this.legend=args.legend;var self=this;if(typeof window.jQuery=="undefined"){throw"couldn't find jQuery at window.jQuery"}if(typeof window.jQuery.ui=="undefined"){throw"couldn't find jQuery UI at window.jQuery.ui"}jQuery(function(){jQuery(self.legend.list).sortable({containment:"parent",tolerance:"pointer",update:function(event,ui){var series=[];jQuery(self.legend.list).find("li").each(function(index,item){if(!item.series)return;series.push(item.series)});for(var i=self.graph.series.length-1;i>=0;i--){self.graph.series[i]=series.shift()}self.graph.update()}});jQuery(self.legend.list).disableSelection()});this.graph.onUpdate(function(){var h=window.getComputedStyle(self.legend.element).height;self.legend.element.style.height=h})};Rickshaw.namespace("Rickshaw.Graph.Behavior.Series.Toggle");Rickshaw.Graph.Behavior.Series.Toggle=function(args){this.graph=args.graph;this.legend=args.legend;var self=this;this.addAnchor=function(line){var anchor=document.createElement("a");anchor.innerHTML="✔";anchor.classList.add("action");line.element.insertBefore(anchor,line.element.firstChild);anchor.onclick=function(e){if(line.series.disabled){line.series.enable();line.element.classList.remove("disabled")}else{if(this.graph.series.filter(function(s){return!s.disabled}).length<=1)return;line.series.disable();line.element.classList.add("disabled")}self.graph.update()}.bind(this);var label=line.element.getElementsByTagName("span")[0];label.onclick=function(e){var disableAllOtherLines=line.series.disabled;if(!disableAllOtherLines){for(var i=0;i<self.legend.lines.length;i++){var l=self.legend.lines[i];if(line.series===l.series){}else if(l.series.disabled){}else{disableAllOtherLines=true;break}}}if(disableAllOtherLines){line.series.enable();line.element.classList.remove("disabled");self.legend.lines.forEach(function(l){if(line.series===l.series){}else{l.series.disable();l.element.classList.add("disabled")}})}else{self.legend.lines.forEach(function(l){l.series.enable();l.element.classList.remove("disabled")})}self.graph.update()}};if(this.legend){var $=jQuery;if(typeof $!="undefined"&&$(this.legend.list).sortable){$(this.legend.list).sortable({start:function(event,ui){ui.item.bind("no.onclick",function(event){event.preventDefault()})},stop:function(event,ui){setTimeout(function(){ui.item.unbind("no.onclick")},250)}})}this.legend.lines.forEach(function(l){self.addAnchor(l)})}this._addBehavior=function(){this.graph.series.forEach(function(s){s.disable=function(){if(self.graph.series.length<=1){throw"only one series left"}s.disabled=true};s.enable=function(){s.disabled=false}})};this._addBehavior();this.updateBehaviour=function(){this._addBehavior()}};Rickshaw.namespace("Rickshaw.Graph.HoverDetail");Rickshaw.Graph.HoverDetail=Rickshaw.Class.create({initialize:function(args){var graph=this.graph=args.graph;this.xFormatter=args.xFormatter||function(x){return new Date(x*1e3).toUTCString()};this.yFormatter=args.yFormatter||function(y){return y===null?y:y.toFixed(2)};var element=this.element=document.createElement("div");element.className="detail";this.visible=true;graph.element.appendChild(element);this.lastEvent=null;this._addListeners();this.onShow=args.onShow;this.onHide=args.onHide;this.onRender=args.onRender;this.formatter=args.formatter||this.formatter},formatter:function(series,x,y,formattedX,formattedY,d){return series.name+": "+formattedY},update:function(e){e=e||this.lastEvent;if(!e)return;this.lastEvent=e;if(!e.target.nodeName.match(/^(path|svg|rect|circle)$/))return;var graph=this.graph;var eventX=e.offsetX||e.layerX;var eventY=e.offsetY||e.layerY;var j=0;var points=[];var nearestPoint;this.graph.series.active().forEach(function(series){var data=this.graph.stackedData[j++];if(!data.length)return;var domainX=graph.x.invert(eventX);var domainIndexScale=d3.scale.linear().domain([data[0].x,data.slice(-1)[0].x]).range([0,data.length-1]);var approximateIndex=Math.round(domainIndexScale(domainX));if(approximateIndex==data.length-1)approximateIndex--;var dataIndex=Math.min(approximateIndex||0,data.length-1);for(var i=approximateIndex;i<data.length-1;){if(!data[i]||!data[i+1])break;if(data[i].x<=domainX&&data[i+1].x>domainX){dataIndex=Math.abs(domainX-data[i].x)<Math.abs(domainX-data[i+1].x)?i:i+1;break}if(data[i+1].x<=domainX){i++}else{i--}}if(dataIndex<0)dataIndex=0;var value=data[dataIndex];var distance=Math.sqrt(Math.pow(Math.abs(graph.x(value.x)-eventX),2)+Math.pow(Math.abs(graph.y(value.y+value.y0)-eventY),2));var xFormatter=series.xFormatter||this.xFormatter;var yFormatter=series.yFormatter||this.yFormatter;var point={formattedXValue:xFormatter(value.x),formattedYValue:yFormatter(series.scale?series.scale.invert(value.y):value.y),series:series,value:value,distance:distance,order:j,name:series.name};if(!nearestPoint||distance<nearestPoint.distance){nearestPoint=point}points.push(point)},this);if(!nearestPoint)return;nearestPoint.active=true;var domainX=nearestPoint.value.x;var formattedXValue=nearestPoint.formattedXValue;this.element.innerHTML="";this.element.style.left=graph.x(domainX)+"px";this.visible&&this.render({points:points,detail:points,mouseX:eventX,mouseY:eventY,formattedXValue:formattedXValue,domainX:domainX})},hide:function(){this.visible=false;this.element.classList.add("inactive");if(typeof this.onHide=="function"){this.onHide()}},show:function(){this.visible=true;this.element.classList.remove("inactive");if(typeof this.onShow=="function"){this.onShow()}},render:function(args){var graph=this.graph;var points=args.points;var point=points.filter(function(p){return p.active}).shift();if(point.value.y===null)return;var formattedXValue=point.formattedXValue;var formattedYValue=point.formattedYValue;this.element.innerHTML="";this.element.style.left=graph.x(point.value.x)+"px";var xLabel=document.createElement("div");xLabel.className="x_label";xLabel.innerHTML=formattedXValue;this.element.appendChild(xLabel);var item=document.createElement("div");item.className="item";var series=point.series;var actualY=series.scale?series.scale.invert(point.value.y):point.value.y;item.innerHTML=this.formatter(series,point.value.x,actualY,formattedXValue,formattedYValue,point);item.style.top=this.graph.y(point.value.y0+point.value.y)+"px";this.element.appendChild(item);var dot=document.createElement("div");dot.className="dot";dot.style.top=item.style.top;dot.style.borderColor=series.color;this.element.appendChild(dot);if(point.active){item.classList.add("active");dot.classList.add("active")}var alignables=[xLabel,item];alignables.forEach(function(el){el.classList.add("left")});this.show();var leftAlignError=this._calcLayoutError(alignables);if(leftAlignError>0){alignables.forEach(function(el){el.classList.remove("left");el.classList.add("right")});var rightAlignError=this._calcLayoutError(alignables);if(rightAlignError>leftAlignError){alignables.forEach(function(el){el.classList.remove("right");el.classList.add("left")})}}if(typeof this.onRender=="function"){this.onRender(args)}},_calcLayoutError:function(alignables){var parentRect=this.element.parentNode.getBoundingClientRect();var error=0;var alignRight=alignables.forEach(function(el){var rect=el.getBoundingClientRect();if(!rect.width){return}if(rect.right>parentRect.right){error+=rect.right-parentRect.right}if(rect.left<parentRect.left){error+=parentRect.left-rect.left}});return error},_addListeners:function(){this.graph.element.addEventListener("mousemove",function(e){this.visible=true;this.update(e)}.bind(this),false);this.graph.onUpdate(function(){this.update()}.bind(this));this.graph.element.addEventListener("mouseout",function(e){if(e.relatedTarget&&!(e.relatedTarget.compareDocumentPosition(this.graph.element)&Node.DOCUMENT_POSITION_CONTAINS)){this.hide()}}.bind(this),false)}});Rickshaw.namespace("Rickshaw.Graph.JSONP");Rickshaw.Graph.JSONP=Rickshaw.Class.create(Rickshaw.Graph.Ajax,{request:function(){jQuery.ajax({url:this.dataURL,dataType:"jsonp",success:this.success.bind(this),error:this.error.bind(this)})}});Rickshaw.namespace("Rickshaw.Graph.Legend");Rickshaw.Graph.Legend=Rickshaw.Class.create({className:"rickshaw_legend",initialize:function(args){this.element=args.element;this.graph=args.graph;this.naturalOrder=args.naturalOrder;this.element.classList.add(this.className);this.list=document.createElement("ul");this.element.appendChild(this.list);this.render();this.graph.onUpdate(function(){})},render:function(){var self=this;while(this.list.firstChild){this.list.removeChild(this.list.firstChild)}this.lines=[];var series=this.graph.series.map(function(s){return s});if(!this.naturalOrder){series=series.reverse()}series.forEach(function(s){self.addLine(s)})},addLine:function(series){var line=document.createElement("li");line.className="line";if(series.disabled){line.className+=" disabled"}if(series.className){d3.select(line).classed(series.className,true)}var swatch=document.createElement("div");swatch.className="swatch";swatch.style.backgroundColor=series.color;line.appendChild(swatch);var label=document.createElement("span");label.className="label";label.innerHTML=series.name;line.appendChild(label);this.list.appendChild(line);line.series=series;if(series.noLegend){line.style.display="none"}var _line={element:line,series:series};if(this.shelving){this.shelving.addAnchor(_line);this.shelving.updateBehaviour()}if(this.highlighter){this.highlighter.addHighlightEvents(_line)}this.lines.push(_line);return line}});Rickshaw.namespace("Rickshaw.Graph.RangeSlider");Rickshaw.Graph.RangeSlider=Rickshaw.Class.create({initialize:function(args){var element=this.element=args.element;var graph=this.graph=args.graph;this.slideCallbacks=[];this.build();graph.onUpdate(function(){this.update()}.bind(this))},build:function(){var element=this.element;var graph=this.graph;var $=jQuery;var domain=graph.dataDomain();var self=this;$(function(){$(element).slider({range:true,min:domain[0],max:domain[1],values:[domain[0],domain[1]],slide:function(event,ui){if(ui.values[1]<=ui.values[0])return;graph.window.xMin=ui.values[0];graph.window.xMax=ui.values[1];graph.update();var domain=graph.dataDomain();if(domain[0]==ui.values[0]){graph.window.xMin=undefined}if(domain[1]==ui.values[1]){graph.window.xMax=undefined}self.slideCallbacks.forEach(function(callback){callback(graph,graph.window.xMin,graph.window.xMax)})}})});$(element)[0].style.width=graph.width+"px"},update:function(){var element=this.element;var graph=this.graph;var $=jQuery;var values=$(element).slider("option","values");var domain=graph.dataDomain();$(element).slider("option","min",domain[0]);$(element).slider("option","max",domain[1]);if(graph.window.xMin==null){values[0]=domain[0]}if(graph.window.xMax==null){values[1]=domain[1]}$(element).slider("option","values",values)},onSlide:function(callback){this.slideCallbacks.push(callback)}});Rickshaw.namespace("Rickshaw.Graph.RangeSlider.Preview");Rickshaw.Graph.RangeSlider.Preview=Rickshaw.Class.create({initialize:function(args){if(!args.element)throw"Rickshaw.Graph.RangeSlider.Preview needs a reference to an element";if(!args.graph&&!args.graphs)throw"Rickshaw.Graph.RangeSlider.Preview needs a reference to an graph or an array of graphs";this.element=args.element;this.element.style.position="relative";this.graphs=args.graph?[args.graph]:args.graphs;this.defaults={height:75,width:400,gripperColor:undefined,frameTopThickness:3,frameHandleThickness:10,frameColor:"#d4d4d4",frameOpacity:1,minimumFrameWidth:0,heightRatio:.2};this.heightRatio=args.heightRatio||this.defaults.heightRatio;this.defaults.gripperColor=d3.rgb(this.defaults.frameColor).darker().toString();this.configureCallbacks=[];this.slideCallbacks=[];this.previews=[];if(!args.width)this.widthFromGraph=true;if(!args.height)this.heightFromGraph=true;if(this.widthFromGraph||this.heightFromGraph){this.graphs[0].onConfigure(function(){this.configure(args);this.render()}.bind(this))}args.width=args.width||this.graphs[0].width||this.defaults.width;args.height=args.height||this.graphs[0].height*this.heightRatio||this.defaults.height;this.configure(args);this.render()},onSlide:function(callback){this.slideCallbacks.push(callback)},onConfigure:function(callback){this.configureCallbacks.push(callback)},configure:function(args){this.config=this.config||{};this.configureCallbacks.forEach(function(callback){callback(args)});Rickshaw.keys(this.defaults).forEach(function(k){this.config[k]=k in args?args[k]:k in this.config?this.config[k]:this.defaults[k]},this);if("width"in args||"height"in args){if(this.widthFromGraph){this.config.width=this.graphs[0].width}if(this.heightFromGraph){this.config.height=this.graphs[0].height*this.heightRatio;this.previewHeight=this.config.height}this.previews.forEach(function(preview){var height=this.previewHeight/this.graphs.length-this.config.frameTopThickness*2;var width=this.config.width-this.config.frameHandleThickness*2;preview.setSize({width:width,height:height});if(this.svg){var svgHeight=height+this.config.frameHandleThickness*2;var svgWidth=width+this.config.frameHandleThickness*2;this.svg.style("width",svgWidth+"px");this.svg.style("height",svgHeight+"px")}},this)}},render:function(){var self=this;this.svg=d3.select(this.element).selectAll("svg.rickshaw_range_slider_preview").data([null]);this.previewHeight=this.config.height-this.config.frameTopThickness*2;this.previewWidth=this.config.width-this.config.frameHandleThickness*2;this.currentFrame=[0,this.previewWidth];var buildGraph=function(parent,index){var graphArgs=Rickshaw.extend({},parent.config);var height=self.previewHeight/self.graphs.length;var renderer=parent.renderer.name;Rickshaw.extend(graphArgs,{element:this.appendChild(document.createElement("div")),height:height,width:self.previewWidth,series:parent.series,renderer:renderer});var graph=new Rickshaw.Graph(graphArgs);self.previews.push(graph);parent.onUpdate(function(){graph.render();self.render()});parent.onConfigure(function(args){delete args.height;args.width=args.width-self.config.frameHandleThickness*2;graph.configure(args);graph.render()});graph.render()};var graphContainer=d3.select(this.element).selectAll("div.rickshaw_range_slider_preview_container").data(this.graphs);var translateCommand="translate("+this.config.frameHandleThickness+"px, "+this.config.frameTopThickness+"px)";graphContainer.enter().append("div").classed("rickshaw_range_slider_preview_container",true).style("-webkit-transform",translateCommand).style("-moz-transform",translateCommand).style("-ms-transform",translateCommand).style("transform",translateCommand).each(buildGraph);graphContainer.exit().remove();var masterGraph=this.graphs[0];var domainScale=d3.scale.linear().domain([0,this.previewWidth]).range(masterGraph.dataDomain());var currentWindow=[masterGraph.window.xMin,masterGraph.window.xMax];this.currentFrame[0]=currentWindow[0]===undefined?0:Math.round(domainScale.invert(currentWindow[0]));if(this.currentFrame[0]<0)this.currentFrame[0]=0;this.currentFrame[1]=currentWindow[1]===undefined?this.previewWidth:domainScale.invert(currentWindow[1]);if(this.currentFrame[1]-this.currentFrame[0]<self.config.minimumFrameWidth){this.currentFrame[1]=(this.currentFrame[0]||0)+self.config.minimumFrameWidth}this.svg.enter().append("svg").classed("rickshaw_range_slider_preview",true).style("height",this.config.height+"px").style("width",this.config.width+"px").style("position","absolute").style("top",0);this._renderDimming();this._renderFrame();this._renderGrippers();this._renderHandles();this._renderMiddle();this._registerMouseEvents()},_renderDimming:function(){var element=this.svg.selectAll("path.dimming").data([null]);element.enter().append("path").attr("fill","white").attr("fill-opacity","0.7").attr("fill-rule","evenodd").classed("dimming",true);var path="";path+=" M "+this.config.frameHandleThickness+" "+this.config.frameTopThickness;path+=" h "+this.previewWidth;path+=" v "+this.previewHeight;path+=" h "+-this.previewWidth;path+=" z ";path+=" M "+Math.max(this.currentFrame[0],this.config.frameHandleThickness)+" "+this.config.frameTopThickness;path+=" H "+Math.min(this.currentFrame[1]+this.config.frameHandleThickness*2,this.previewWidth+this.config.frameHandleThickness);path+=" v "+this.previewHeight;path+=" H "+Math.max(this.currentFrame[0],this.config.frameHandleThickness);path+=" z";element.attr("d",path)},_renderFrame:function(){var element=this.svg.selectAll("path.frame").data([null]);element.enter().append("path").attr("stroke","white").attr("stroke-width","1px").attr("stroke-linejoin","round").attr("fill",this.config.frameColor).attr("fill-opacity",this.config.frameOpacity).attr("fill-rule","evenodd").classed("frame",true);var path="";path+=" M "+this.currentFrame[0]+" 0";path+=" H "+(this.currentFrame[1]+this.config.frameHandleThickness*2);path+=" V "+this.config.height;path+=" H "+this.currentFrame[0];path+=" z";path+=" M "+(this.currentFrame[0]+this.config.frameHandleThickness)+" "+this.config.frameTopThickness;path+=" H "+(this.currentFrame[1]+this.config.frameHandleThickness);path+=" v "+this.previewHeight;path+=" H "+(this.currentFrame[0]+this.config.frameHandleThickness);path+=" z";element.attr("d",path)},_renderGrippers:function(){var gripper=this.svg.selectAll("path.gripper").data([null]);gripper.enter().append("path").attr("stroke",this.config.gripperColor).classed("gripper",true);var path="";[.4,.6].forEach(function(spacing){path+=" M "+Math.round(this.currentFrame[0]+this.config.frameHandleThickness*spacing)+" "+Math.round(this.config.height*.3);path+=" V "+Math.round(this.config.height*.7);path+=" M "+Math.round(this.currentFrame[1]+this.config.frameHandleThickness*(1+spacing))+" "+Math.round(this.config.height*.3);path+=" V "+Math.round(this.config.height*.7)}.bind(this));gripper.attr("d",path)},_renderHandles:function(){var leftHandle=this.svg.selectAll("rect.left_handle").data([null]);leftHandle.enter().append("rect").attr("width",this.config.frameHandleThickness).style("cursor","ew-resize").style("fill-opacity","0").classed("left_handle",true);leftHandle.attr("x",this.currentFrame[0]).attr("height",this.config.height);var rightHandle=this.svg.selectAll("rect.right_handle").data([null]);rightHandle.enter().append("rect").attr("width",this.config.frameHandleThickness).style("cursor","ew-resize").style("fill-opacity","0").classed("right_handle",true);rightHandle.attr("x",this.currentFrame[1]+this.config.frameHandleThickness).attr("height",this.config.height)},_renderMiddle:function(){var middleHandle=this.svg.selectAll("rect.middle_handle").data([null]);middleHandle.enter().append("rect").style("cursor","move").style("fill-opacity","0").classed("middle_handle",true);middleHandle.attr("width",Math.max(0,this.currentFrame[1]-this.currentFrame[0])).attr("x",this.currentFrame[0]+this.config.frameHandleThickness).attr("height",this.config.height)},_registerMouseEvents:function(){var element=d3.select(this.element);var drag={target:null,start:null,stop:null,left:false,right:false,rigid:false};var self=this;function onMousemove(datum,index){drag.stop=self._getClientXFromEvent(d3.event,drag);var distanceTraveled=drag.stop-drag.start;var frameAfterDrag=self.frameBeforeDrag.slice(0);var minimumFrameWidth=self.config.minimumFrameWidth;if(drag.rigid){minimumFrameWidth=self.frameBeforeDrag[1]-self.frameBeforeDrag[0]}if(drag.left){frameAfterDrag[0]=Math.max(frameAfterDrag[0]+distanceTraveled,0)}if(drag.right){frameAfterDrag[1]=Math.min(frameAfterDrag[1]+distanceTraveled,self.previewWidth)}var currentFrameWidth=frameAfterDrag[1]-frameAfterDrag[0];if(currentFrameWidth<=minimumFrameWidth){if(drag.left){frameAfterDrag[0]=frameAfterDrag[1]-minimumFrameWidth}if(drag.right){frameAfterDrag[1]=frameAfterDrag[0]+minimumFrameWidth}if(frameAfterDrag[0]<=0){frameAfterDrag[1]-=frameAfterDrag[0];frameAfterDrag[0]=0}if(frameAfterDrag[1]>=self.previewWidth){frameAfterDrag[0]-=frameAfterDrag[1]-self.previewWidth;frameAfterDrag[1]=self.previewWidth}}self.graphs.forEach(function(graph){var domainScale=d3.scale.linear().interpolate(d3.interpolateNumber).domain([0,self.previewWidth]).range(graph.dataDomain());var windowAfterDrag=[domainScale(frameAfterDrag[0]),domainScale(frameAfterDrag[1])];self.slideCallbacks.forEach(function(callback){callback(graph,windowAfterDrag[0],windowAfterDrag[1])});if(frameAfterDrag[0]===0){windowAfterDrag[0]=undefined}if(frameAfterDrag[1]===self.previewWidth){windowAfterDrag[1]=undefined}graph.window.xMin=windowAfterDrag[0];graph.window.xMax=windowAfterDrag[1];graph.update()})}function onMousedown(){drag.target=d3.event.target;drag.start=self._getClientXFromEvent(d3.event,drag);self.frameBeforeDrag=self.currentFrame.slice();d3.event.preventDefault?d3.event.preventDefault():d3.event.returnValue=false;d3.select(document).on("mousemove.rickshaw_range_slider_preview",onMousemove);d3.select(document).on("mouseup.rickshaw_range_slider_preview",onMouseup);d3.select(document).on("touchmove.rickshaw_range_slider_preview",onMousemove);d3.select(document).on("touchend.rickshaw_range_slider_preview",onMouseup);d3.select(document).on("touchcancel.rickshaw_range_slider_preview",onMouseup)}function onMousedownLeftHandle(datum,index){drag.left=true;onMousedown()}function onMousedownRightHandle(datum,index){drag.right=true;onMousedown()}function onMousedownMiddleHandle(datum,index){drag.left=true;drag.right=true;drag.rigid=true;onMousedown()}function onMouseup(datum,index){d3.select(document).on("mousemove.rickshaw_range_slider_preview",null);d3.select(document).on("mouseup.rickshaw_range_slider_preview",null);d3.select(document).on("touchmove.rickshaw_range_slider_preview",null);d3.select(document).on("touchend.rickshaw_range_slider_preview",null);d3.select(document).on("touchcancel.rickshaw_range_slider_preview",null);delete self.frameBeforeDrag;drag.left=false;drag.right=false;drag.rigid=false}element.select("rect.left_handle").on("mousedown",onMousedownLeftHandle);element.select("rect.right_handle").on("mousedown",onMousedownRightHandle);element.select("rect.middle_handle").on("mousedown",onMousedownMiddleHandle);element.select("rect.left_handle").on("touchstart",onMousedownLeftHandle);element.select("rect.right_handle").on("touchstart",onMousedownRightHandle);element.select("rect.middle_handle").on("touchstart",onMousedownMiddleHandle)},_getClientXFromEvent:function(event,drag){switch(event.type){case"touchstart":case"touchmove":var touchList=event.changedTouches;var touch=null;for(var touchIndex=0;touchIndex<touchList.length;touchIndex++){if(touchList[touchIndex].target===drag.target){touch=touchList[touchIndex];break}}return touch!==null?touch.clientX:undefined;default:return event.clientX}}});Rickshaw.namespace("Rickshaw.Graph.Renderer");Rickshaw.Graph.Renderer=Rickshaw.Class.create({initialize:function(args){this.graph=args.graph;this.tension=args.tension||this.tension;this.configure(args)},seriesPathFactory:function(){},seriesStrokeFactory:function(){},defaults:function(){return{tension:.8,strokeWidth:2,unstack:true,padding:{top:.01,right:0,bottom:.01,left:0},stroke:false,fill:false}},domain:function(data){var stackedData=data||this.graph.stackedData||this.graph.stackData();var xMin=+Infinity;var xMax=-Infinity;var yMin=+Infinity;var yMax=-Infinity;stackedData.forEach(function(series){series.forEach(function(d){if(d.y==null)return;var y=d.y+d.y0;if(y<yMin)yMin=y;if(y>yMax)yMax=y});if(!series.length)return;if(series[0].x<xMin)xMin=series[0].x;if(series[series.length-1].x>xMax)xMax=series[series.length-1].x});xMin-=(xMax-xMin)*this.padding.left;xMax+=(xMax-xMin)*this.padding.right;yMin=this.graph.min==="auto"?yMin:this.graph.min||0;yMax=this.graph.max===undefined?yMax:this.graph.max;if(this.graph.min==="auto"||yMin<0){yMin-=(yMax-yMin)*this.padding.bottom}if(this.graph.max===undefined){yMax+=(yMax-yMin)*this.padding.top}return{x:[xMin,xMax],y:[yMin,yMax]}},render:function(args){args=args||{};var graph=this.graph;var series=args.series||graph.series;var vis=args.vis||graph.vis;vis.selectAll("*").remove();var data=series.filter(function(s){return!s.disabled}).map(function(s){return s.stack});var pathNodes=vis.selectAll("path.path").data(data).enter().append("svg:path").classed("path",true).attr("d",this.seriesPathFactory());if(this.stroke){var strokeNodes=vis.selectAll("path.stroke").data(data).enter().append("svg:path").classed("stroke",true).attr("d",this.seriesStrokeFactory())}var i=0;series.forEach(function(series){if(series.disabled)return;series.path=pathNodes[0][i];if(this.stroke)series.stroke=strokeNodes[0][i];this._styleSeries(series);i++},this)},_styleSeries:function(series){var fill=this.fill?series.color:"none";var stroke=this.stroke?series.color:"none";series.path.setAttribute("fill",fill);series.path.setAttribute("stroke",stroke);series.path.setAttribute("stroke-width",this.strokeWidth);if(series.className){d3.select(series.path).classed(series.className,true)}if(series.className&&this.stroke){d3.select(series.stroke).classed(series.className,true)}},configure:function(args){args=args||{};Rickshaw.keys(this.defaults()).forEach(function(key){if(!args.hasOwnProperty(key)){this[key]=this[key]||this.graph[key]||this.defaults()[key];return}if(typeof this.defaults()[key]=="object"){Rickshaw.keys(this.defaults()[key]).forEach(function(k){this[key][k]=args[key][k]!==undefined?args[key][k]:this[key][k]!==undefined?this[key][k]:this.defaults()[key][k]},this)}else{this[key]=args[key]!==undefined?args[key]:this[key]!==undefined?this[key]:this.graph[key]!==undefined?this.graph[key]:this.defaults()[key]}},this)},setStrokeWidth:function(strokeWidth){if(strokeWidth!==undefined){this.strokeWidth=strokeWidth}},setTension:function(tension){if(tension!==undefined){this.tension=tension}}});Rickshaw.namespace("Rickshaw.Graph.Renderer.Line");Rickshaw.Graph.Renderer.Line=Rickshaw.Class.create(Rickshaw.Graph.Renderer,{name:"line",defaults:function($super){return Rickshaw.extend($super(),{unstack:true,fill:false,stroke:true})},seriesPathFactory:function(){var graph=this.graph;var factory=d3.svg.line().x(function(d){return graph.x(d.x)}).y(function(d){return graph.y(d.y)}).interpolate(this.graph.interpolation).tension(this.tension);factory.defined&&factory.defined(function(d){return d.y!==null});return factory}});Rickshaw.namespace("Rickshaw.Graph.Renderer.Stack");Rickshaw.Graph.Renderer.Stack=Rickshaw.Class.create(Rickshaw.Graph.Renderer,{name:"stack",defaults:function($super){return Rickshaw.extend($super(),{fill:true,stroke:false,unstack:false})},seriesPathFactory:function(){var graph=this.graph;var factory=d3.svg.area().x(function(d){return graph.x(d.x)}).y0(function(d){return graph.y(d.y0)}).y1(function(d){return graph.y(d.y+d.y0)}).interpolate(this.graph.interpolation).tension(this.tension);factory.defined&&factory.defined(function(d){return d.y!==null});return factory}});Rickshaw.namespace("Rickshaw.Graph.Renderer.Bar");Rickshaw.Graph.Renderer.Bar=Rickshaw.Class.create(Rickshaw.Graph.Renderer,{name:"bar",defaults:function($super){var defaults=Rickshaw.extend($super(),{gapSize:.05,unstack:false});delete defaults.tension;return defaults},initialize:function($super,args){args=args||{};this.gapSize=args.gapSize||this.gapSize;$super(args)},domain:function($super){var domain=$super();var frequentInterval=this._frequentInterval(this.graph.stackedData.slice(-1).shift());domain.x[1]+=Number(frequentInterval.magnitude);return domain},barWidth:function(series){var frequentInterval=this._frequentInterval(series.stack);var barWidth=this.graph.x.magnitude(frequentInterval.magnitude)*(1-this.gapSize);return barWidth},render:function(args){args=args||{};var graph=this.graph;var series=args.series||graph.series;var vis=args.vis||graph.vis;vis.selectAll("*").remove();var barWidth=this.barWidth(series.active()[0]);var barXOffset=0;var activeSeriesCount=series.filter(function(s){return!s.disabled}).length;var seriesBarWidth=this.unstack?barWidth/activeSeriesCount:barWidth;var transform=function(d){var matrix=[1,0,0,d.y<0?-1:1,0,d.y<0?graph.y.magnitude(Math.abs(d.y))*2:0];return"matrix("+matrix.join(",")+")"};series.forEach(function(series){if(series.disabled)return;var barWidth=this.barWidth(series);var nodes=vis.selectAll("path").data(series.stack.filter(function(d){return d.y!==null})).enter().append("svg:rect").attr("x",function(d){return graph.x(d.x)+barXOffset}).attr("y",function(d){return graph.y(d.y0+Math.abs(d.y))*(d.y<0?-1:1)}).attr("width",seriesBarWidth).attr("height",function(d){return graph.y.magnitude(Math.abs(d.y))}).attr("transform",transform);Array.prototype.forEach.call(nodes[0],function(n){n.setAttribute("fill",series.color)});if(this.unstack)barXOffset+=seriesBarWidth},this)},_frequentInterval:function(data){var intervalCounts={};for(var i=0;i<data.length-1;i++){var interval=data[i+1].x-data[i].x;intervalCounts[interval]=intervalCounts[interval]||0;intervalCounts[interval]++}var frequentInterval={count:0,magnitude:1};Rickshaw.keys(intervalCounts).forEach(function(i){if(frequentInterval.count<intervalCounts[i]){frequentInterval={count:intervalCounts[i],magnitude:i}}});return frequentInterval}});Rickshaw.namespace("Rickshaw.Graph.Renderer.Area");Rickshaw.Graph.Renderer.Area=Rickshaw.Class.create(Rickshaw.Graph.Renderer,{name:"area",defaults:function($super){return Rickshaw.extend($super(),{unstack:false,fill:false,stroke:false})},seriesPathFactory:function(){var graph=this.graph;var factory=d3.svg.area().x(function(d){return graph.x(d.x)}).y0(function(d){return graph.y(d.y0)}).y1(function(d){return graph.y(d.y+d.y0)}).interpolate(graph.interpolation).tension(this.tension);
|
3
|
+
factory.defined&&factory.defined(function(d){return d.y!==null});return factory},seriesStrokeFactory:function(){var graph=this.graph;var factory=d3.svg.line().x(function(d){return graph.x(d.x)}).y(function(d){return graph.y(d.y+d.y0)}).interpolate(graph.interpolation).tension(this.tension);factory.defined&&factory.defined(function(d){return d.y!==null});return factory},render:function(args){args=args||{};var graph=this.graph;var series=args.series||graph.series;var vis=args.vis||graph.vis;vis.selectAll("*").remove();var method=this.unstack?"append":"insert";var data=series.filter(function(s){return!s.disabled}).map(function(s){return s.stack});var nodes=vis.selectAll("path").data(data).enter()[method]("svg:g","g");nodes.append("svg:path").attr("d",this.seriesPathFactory()).attr("class","area");if(this.stroke){nodes.append("svg:path").attr("d",this.seriesStrokeFactory()).attr("class","line")}var i=0;series.forEach(function(series){if(series.disabled)return;series.path=nodes[0][i++];this._styleSeries(series)},this)},_styleSeries:function(series){if(!series.path)return;d3.select(series.path).select(".area").attr("fill",series.color);if(this.stroke){d3.select(series.path).select(".line").attr("fill","none").attr("stroke",series.stroke||d3.interpolateRgb(series.color,"black")(.125)).attr("stroke-width",this.strokeWidth)}if(series.className){series.path.setAttribute("class",series.className)}}});Rickshaw.namespace("Rickshaw.Graph.Renderer.ScatterPlot");Rickshaw.Graph.Renderer.ScatterPlot=Rickshaw.Class.create(Rickshaw.Graph.Renderer,{name:"scatterplot",defaults:function($super){return Rickshaw.extend($super(),{unstack:true,fill:true,stroke:false,padding:{top:.01,right:.01,bottom:.01,left:.01},dotSize:4})},initialize:function($super,args){$super(args)},render:function(args){args=args||{};var graph=this.graph;var series=args.series||graph.series;var vis=args.vis||graph.vis;var dotSize=this.dotSize;vis.selectAll("*").remove();series.forEach(function(series){if(series.disabled)return;var nodes=vis.selectAll("path").data(series.stack.filter(function(d){return d.y!==null})).enter().append("svg:circle").attr("cx",function(d){return graph.x(d.x)}).attr("cy",function(d){return graph.y(d.y)}).attr("r",function(d){return"r"in d?d.r:dotSize});if(series.className){nodes.classed(series.className,true)}Array.prototype.forEach.call(nodes[0],function(n){n.setAttribute("fill",series.color)})},this)}});Rickshaw.namespace("Rickshaw.Graph.Renderer.Multi");Rickshaw.Graph.Renderer.Multi=Rickshaw.Class.create(Rickshaw.Graph.Renderer,{name:"multi",initialize:function($super,args){$super(args)},defaults:function($super){return Rickshaw.extend($super(),{unstack:true,fill:false,stroke:true})},configure:function($super,args){args=args||{};this.config=args;$super(args)},domain:function($super){this.graph.stackData();var domains=[];var groups=this._groups();this._stack(groups);groups.forEach(function(group){var data=group.series.filter(function(s){return!s.disabled}).map(function(s){return s.stack});if(!data.length)return;var domain=null;if(group.renderer&&group.renderer.domain){domain=group.renderer.domain(data)}else{domain=$super(data)}domains.push(domain)});var xMin=d3.min(domains.map(function(d){return d.x[0]}));var xMax=d3.max(domains.map(function(d){return d.x[1]}));var yMin=d3.min(domains.map(function(d){return d.y[0]}));var yMax=d3.max(domains.map(function(d){return d.y[1]}));return{x:[xMin,xMax],y:[yMin,yMax]}},_groups:function(){var graph=this.graph;var renderGroups={};graph.series.forEach(function(series){if(series.disabled)return;if(!renderGroups[series.renderer]){var ns="http://www.w3.org/2000/svg";var vis=document.createElementNS(ns,"g");graph.vis[0][0].appendChild(vis);var renderer=graph._renderers[series.renderer];var config={};var defaults=[this.defaults(),renderer.defaults(),this.config,this.graph];defaults.forEach(function(d){Rickshaw.extend(config,d)});renderer.configure(config);renderGroups[series.renderer]={renderer:renderer,series:[],vis:d3.select(vis)}}renderGroups[series.renderer].series.push(series)},this);var groups=[];Object.keys(renderGroups).forEach(function(key){var group=renderGroups[key];groups.push(group)});return groups},_stack:function(groups){groups.forEach(function(group){var series=group.series.filter(function(series){return!series.disabled});var data=series.map(function(series){return series.stack});if(!group.renderer.unstack){var layout=d3.layout.stack();var stackedData=Rickshaw.clone(layout(data));series.forEach(function(series,index){series._stack=Rickshaw.clone(stackedData[index])})}},this);return groups},render:function(){this.graph.series.forEach(function(series){if(!series.renderer){throw new Error("Each series needs a renderer for graph 'multi' renderer")}});this.graph.vis.selectAll("*").remove();var groups=this._groups();groups=this._stack(groups);groups.forEach(function(group){var series=group.series.filter(function(series){return!series.disabled});series.active=function(){return series};group.renderer.render({series:series,vis:group.vis});series.forEach(function(s){s.stack=s._stack||s.stack||s.data})})}});Rickshaw.namespace("Rickshaw.Graph.Renderer.LinePlot");Rickshaw.Graph.Renderer.LinePlot=Rickshaw.Class.create(Rickshaw.Graph.Renderer,{name:"lineplot",defaults:function($super){return Rickshaw.extend($super(),{unstack:true,fill:false,stroke:true,padding:{top:.01,right:.01,bottom:.01,left:.01},dotSize:3,strokeWidth:2})},seriesPathFactory:function(){var graph=this.graph;var factory=d3.svg.line().x(function(d){return graph.x(d.x)}).y(function(d){return graph.y(d.y)}).interpolate(this.graph.interpolation).tension(this.tension);factory.defined&&factory.defined(function(d){return d.y!==null});return factory},render:function(args){args=args||{};var graph=this.graph;var series=args.series||graph.series;var vis=args.vis||graph.vis;var dotSize=this.dotSize;vis.selectAll("*").remove();var data=series.filter(function(s){return!s.disabled}).map(function(s){return s.stack});var nodes=vis.selectAll("path").data(data).enter().append("svg:path").attr("d",this.seriesPathFactory());var i=0;series.forEach(function(series){if(series.disabled)return;series.path=nodes[0][i++];this._styleSeries(series)},this);series.forEach(function(series){if(series.disabled)return;var nodes=vis.selectAll("x").data(series.stack.filter(function(d){return d.y!==null})).enter().append("svg:circle").attr("cx",function(d){return graph.x(d.x)}).attr("cy",function(d){return graph.y(d.y)}).attr("r",function(d){return"r"in d?d.r:dotSize});Array.prototype.forEach.call(nodes[0],function(n){if(!n)return;n.setAttribute("data-color",series.color);n.setAttribute("fill","white");n.setAttribute("stroke",series.color);n.setAttribute("stroke-width",this.strokeWidth)}.bind(this))},this)}});Rickshaw.namespace("Rickshaw.Graph.Smoother");Rickshaw.Graph.Smoother=Rickshaw.Class.create({initialize:function(args){this.graph=args.graph;this.element=args.element;this.aggregationScale=1;this.build();this.graph.stackData.hooks.data.push({name:"smoother",orderPosition:50,f:this.transformer.bind(this)})},build:function(){var self=this;var $=jQuery;if(this.element){$(function(){$(self.element).slider({min:1,max:100,slide:function(event,ui){self.setScale(ui.value)}})})}},setScale:function(scale){if(scale<1){throw"scale out of range: "+scale}this.aggregationScale=scale;this.graph.update()},transformer:function(data){if(this.aggregationScale==1)return data;var aggregatedData=[];data.forEach(function(seriesData){var aggregatedSeriesData=[];while(seriesData.length){var avgX=0,avgY=0;var slice=seriesData.splice(0,this.aggregationScale);slice.forEach(function(d){avgX+=d.x/slice.length;avgY+=d.y/slice.length});aggregatedSeriesData.push({x:avgX,y:avgY})}aggregatedData.push(aggregatedSeriesData)}.bind(this));return aggregatedData}});Rickshaw.namespace("Rickshaw.Graph.Socketio");Rickshaw.Graph.Socketio=Rickshaw.Class.create(Rickshaw.Graph.Ajax,{request:function(){var socket=io.connect(this.dataURL);var self=this;socket.on("rickshaw",function(data){self.success(data)})}});Rickshaw.namespace("Rickshaw.Series");Rickshaw.Series=Rickshaw.Class.create(Array,{initialize:function(data,palette,options){options=options||{};this.palette=new Rickshaw.Color.Palette(palette);this.timeBase=typeof options.timeBase==="undefined"?Math.floor((new Date).getTime()/1e3):options.timeBase;var timeInterval=typeof options.timeInterval=="undefined"?1e3:options.timeInterval;this.setTimeInterval(timeInterval);if(data&&typeof data=="object"&&Array.isArray(data)){data.forEach(function(item){this.addItem(item)},this)}},addItem:function(item){if(typeof item.name==="undefined"){throw"addItem() needs a name"}item.color=item.color||this.palette.color(item.name);item.data=item.data||[];if(item.data.length===0&&this.length&&this.getIndex()>0){this[0].data.forEach(function(plot){item.data.push({x:plot.x,y:0})})}else if(item.data.length===0){item.data.push({x:this.timeBase-(this.timeInterval||0),y:0})}this.push(item);if(this.legend){this.legend.addLine(this.itemByName(item.name))}},addData:function(data,x){var index=this.getIndex();Rickshaw.keys(data).forEach(function(name){if(!this.itemByName(name)){this.addItem({name:name})}},this);this.forEach(function(item){item.data.push({x:x||(index*this.timeInterval||1)+this.timeBase,y:data[item.name]||0})},this)},getIndex:function(){return this[0]&&this[0].data&&this[0].data.length?this[0].data.length:0},itemByName:function(name){for(var i=0;i<this.length;i++){if(this[i].name==name)return this[i]}},setTimeInterval:function(iv){this.timeInterval=iv/1e3},setTimeBase:function(t){this.timeBase=t},dump:function(){var data={timeBase:this.timeBase,timeInterval:this.timeInterval,items:[]};this.forEach(function(item){var newItem={color:item.color,name:item.name,data:[]};item.data.forEach(function(plot){newItem.data.push({x:plot.x,y:plot.y})});data.items.push(newItem)});return data},load:function(data){if(data.timeInterval){this.timeInterval=data.timeInterval}if(data.timeBase){this.timeBase=data.timeBase}if(data.items){data.items.forEach(function(item){this.push(item);if(this.legend){this.legend.addLine(this.itemByName(item.name))}},this)}}});Rickshaw.Series.zeroFill=function(series){Rickshaw.Series.fill(series,0)};Rickshaw.Series.fill=function(series,fill){var x;var i=0;var data=series.map(function(s){return s.data});while(i<Math.max.apply(null,data.map(function(d){return d.length}))){x=Math.min.apply(null,data.filter(function(d){return d[i]}).map(function(d){return d[i].x}));data.forEach(function(d){if(!d[i]||d[i].x!=x){d.splice(i,0,{x:x,y:fill})}});i++}};Rickshaw.namespace("Rickshaw.Series.FixedDuration");Rickshaw.Series.FixedDuration=Rickshaw.Class.create(Rickshaw.Series,{initialize:function(data,palette,options){options=options||{};if(typeof options.timeInterval==="undefined"){throw new Error("FixedDuration series requires timeInterval")}if(typeof options.maxDataPoints==="undefined"){throw new Error("FixedDuration series requires maxDataPoints")}this.palette=new Rickshaw.Color.Palette(palette);this.timeBase=typeof options.timeBase==="undefined"?Math.floor((new Date).getTime()/1e3):options.timeBase;this.setTimeInterval(options.timeInterval);if(this[0]&&this[0].data&&this[0].data.length){this.currentSize=this[0].data.length;this.currentIndex=this[0].data.length}else{this.currentSize=0;this.currentIndex=0}this.maxDataPoints=options.maxDataPoints;if(data&&typeof data=="object"&&Array.isArray(data)){data.forEach(function(item){this.addItem(item)},this);this.currentSize+=1;this.currentIndex+=1}this.timeBase-=(this.maxDataPoints-this.currentSize)*this.timeInterval;if(typeof this.maxDataPoints!=="undefined"&&this.currentSize<this.maxDataPoints){for(var i=this.maxDataPoints-this.currentSize-1;i>1;i--){this.currentSize+=1;this.currentIndex+=1;this.forEach(function(item){item.data.unshift({x:((i-1)*this.timeInterval||1)+this.timeBase,y:0,i:i})},this)}}},addData:function($super,data,x){$super(data,x);this.currentSize+=1;this.currentIndex+=1;if(this.maxDataPoints!==undefined){while(this.currentSize>this.maxDataPoints){this.dropData()}}},dropData:function(){this.forEach(function(item){item.data.splice(0,1)});this.currentSize-=1},getIndex:function(){return this.currentIndex}});return Rickshaw});
|
@@ -0,0 +1,1338 @@
|
|
1
|
+
/*!
|
2
|
+
* Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome
|
3
|
+
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
|
4
|
+
*/
|
5
|
+
/* FONT PATH
|
6
|
+
* -------------------------- */
|
7
|
+
@font-face {
|
8
|
+
font-family: 'FontAwesome';
|
9
|
+
src: font-url('fontawesome-webfont.eot?v=4.0.3');
|
10
|
+
src: font-url('fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'), font-url('fontawesome-webfont.woff?v=4.0.3') format('woff'), font-url('fontawesome-webfont.ttf?v=4.0.3') format('truetype'), font-url('fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');
|
11
|
+
font-weight: normal;
|
12
|
+
font-style: normal;
|
13
|
+
}
|
14
|
+
.fa {
|
15
|
+
display: inline-block;
|
16
|
+
font-family: FontAwesome;
|
17
|
+
font-style: normal;
|
18
|
+
font-weight: normal;
|
19
|
+
line-height: 1;
|
20
|
+
-webkit-font-smoothing: antialiased;
|
21
|
+
-moz-osx-font-smoothing: grayscale;
|
22
|
+
}
|
23
|
+
/* makes the font 33% larger relative to the icon container */
|
24
|
+
.fa-lg {
|
25
|
+
font-size: 1.3333333333333333em;
|
26
|
+
line-height: 0.75em;
|
27
|
+
vertical-align: -15%;
|
28
|
+
}
|
29
|
+
.fa-2x {
|
30
|
+
font-size: 2em;
|
31
|
+
}
|
32
|
+
.fa-3x {
|
33
|
+
font-size: 3em;
|
34
|
+
}
|
35
|
+
.fa-4x {
|
36
|
+
font-size: 4em;
|
37
|
+
}
|
38
|
+
.fa-5x {
|
39
|
+
font-size: 5em;
|
40
|
+
}
|
41
|
+
.fa-fw {
|
42
|
+
width: 1.2857142857142858em;
|
43
|
+
text-align: center;
|
44
|
+
}
|
45
|
+
.fa-ul {
|
46
|
+
padding-left: 0;
|
47
|
+
margin-left: 2.142857142857143em;
|
48
|
+
list-style-type: none;
|
49
|
+
}
|
50
|
+
.fa-ul > li {
|
51
|
+
position: relative;
|
52
|
+
}
|
53
|
+
.fa-li {
|
54
|
+
position: absolute;
|
55
|
+
left: -2.142857142857143em;
|
56
|
+
width: 2.142857142857143em;
|
57
|
+
top: 0.14285714285714285em;
|
58
|
+
text-align: center;
|
59
|
+
}
|
60
|
+
.fa-li.fa-lg {
|
61
|
+
left: -1.8571428571428572em;
|
62
|
+
}
|
63
|
+
.fa-border {
|
64
|
+
padding: .2em .25em .15em;
|
65
|
+
border: solid 0.08em #eeeeee;
|
66
|
+
border-radius: .1em;
|
67
|
+
}
|
68
|
+
.pull-right {
|
69
|
+
float: right;
|
70
|
+
}
|
71
|
+
.pull-left {
|
72
|
+
float: left;
|
73
|
+
}
|
74
|
+
.fa.pull-left {
|
75
|
+
margin-right: .3em;
|
76
|
+
}
|
77
|
+
.fa.pull-right {
|
78
|
+
margin-left: .3em;
|
79
|
+
}
|
80
|
+
.fa-spin {
|
81
|
+
-webkit-animation: spin 2s infinite linear;
|
82
|
+
-moz-animation: spin 2s infinite linear;
|
83
|
+
-o-animation: spin 2s infinite linear;
|
84
|
+
animation: spin 2s infinite linear;
|
85
|
+
}
|
86
|
+
@-moz-keyframes spin {
|
87
|
+
0% {
|
88
|
+
-moz-transform: rotate(0deg);
|
89
|
+
}
|
90
|
+
100% {
|
91
|
+
-moz-transform: rotate(359deg);
|
92
|
+
}
|
93
|
+
}
|
94
|
+
@-webkit-keyframes spin {
|
95
|
+
0% {
|
96
|
+
-webkit-transform: rotate(0deg);
|
97
|
+
}
|
98
|
+
100% {
|
99
|
+
-webkit-transform: rotate(359deg);
|
100
|
+
}
|
101
|
+
}
|
102
|
+
@-o-keyframes spin {
|
103
|
+
0% {
|
104
|
+
-o-transform: rotate(0deg);
|
105
|
+
}
|
106
|
+
100% {
|
107
|
+
-o-transform: rotate(359deg);
|
108
|
+
}
|
109
|
+
}
|
110
|
+
@-ms-keyframes spin {
|
111
|
+
0% {
|
112
|
+
-ms-transform: rotate(0deg);
|
113
|
+
}
|
114
|
+
100% {
|
115
|
+
-ms-transform: rotate(359deg);
|
116
|
+
}
|
117
|
+
}
|
118
|
+
@keyframes spin {
|
119
|
+
0% {
|
120
|
+
transform: rotate(0deg);
|
121
|
+
}
|
122
|
+
100% {
|
123
|
+
transform: rotate(359deg);
|
124
|
+
}
|
125
|
+
}
|
126
|
+
.fa-rotate-90 {
|
127
|
+
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
|
128
|
+
-webkit-transform: rotate(90deg);
|
129
|
+
-moz-transform: rotate(90deg);
|
130
|
+
-ms-transform: rotate(90deg);
|
131
|
+
-o-transform: rotate(90deg);
|
132
|
+
transform: rotate(90deg);
|
133
|
+
}
|
134
|
+
.fa-rotate-180 {
|
135
|
+
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
|
136
|
+
-webkit-transform: rotate(180deg);
|
137
|
+
-moz-transform: rotate(180deg);
|
138
|
+
-ms-transform: rotate(180deg);
|
139
|
+
-o-transform: rotate(180deg);
|
140
|
+
transform: rotate(180deg);
|
141
|
+
}
|
142
|
+
.fa-rotate-270 {
|
143
|
+
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
|
144
|
+
-webkit-transform: rotate(270deg);
|
145
|
+
-moz-transform: rotate(270deg);
|
146
|
+
-ms-transform: rotate(270deg);
|
147
|
+
-o-transform: rotate(270deg);
|
148
|
+
transform: rotate(270deg);
|
149
|
+
}
|
150
|
+
.fa-flip-horizontal {
|
151
|
+
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
|
152
|
+
-webkit-transform: scale(-1, 1);
|
153
|
+
-moz-transform: scale(-1, 1);
|
154
|
+
-ms-transform: scale(-1, 1);
|
155
|
+
-o-transform: scale(-1, 1);
|
156
|
+
transform: scale(-1, 1);
|
157
|
+
}
|
158
|
+
.fa-flip-vertical {
|
159
|
+
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
|
160
|
+
-webkit-transform: scale(1, -1);
|
161
|
+
-moz-transform: scale(1, -1);
|
162
|
+
-ms-transform: scale(1, -1);
|
163
|
+
-o-transform: scale(1, -1);
|
164
|
+
transform: scale(1, -1);
|
165
|
+
}
|
166
|
+
.fa-stack {
|
167
|
+
position: relative;
|
168
|
+
display: inline-block;
|
169
|
+
width: 2em;
|
170
|
+
height: 2em;
|
171
|
+
line-height: 2em;
|
172
|
+
vertical-align: middle;
|
173
|
+
}
|
174
|
+
.fa-stack-1x,
|
175
|
+
.fa-stack-2x {
|
176
|
+
position: absolute;
|
177
|
+
left: 0;
|
178
|
+
width: 100%;
|
179
|
+
text-align: center;
|
180
|
+
}
|
181
|
+
.fa-stack-1x {
|
182
|
+
line-height: inherit;
|
183
|
+
}
|
184
|
+
.fa-stack-2x {
|
185
|
+
font-size: 2em;
|
186
|
+
}
|
187
|
+
.fa-inverse {
|
188
|
+
color: #ffffff;
|
189
|
+
}
|
190
|
+
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
|
191
|
+
readers do not read off random characters that represent icons */
|
192
|
+
.fa-glass:before {
|
193
|
+
content: "\f000";
|
194
|
+
}
|
195
|
+
.fa-music:before {
|
196
|
+
content: "\f001";
|
197
|
+
}
|
198
|
+
.fa-search:before {
|
199
|
+
content: "\f002";
|
200
|
+
}
|
201
|
+
.fa-envelope-o:before {
|
202
|
+
content: "\f003";
|
203
|
+
}
|
204
|
+
.fa-heart:before {
|
205
|
+
content: "\f004";
|
206
|
+
}
|
207
|
+
.fa-star:before {
|
208
|
+
content: "\f005";
|
209
|
+
}
|
210
|
+
.fa-star-o:before {
|
211
|
+
content: "\f006";
|
212
|
+
}
|
213
|
+
.fa-user:before {
|
214
|
+
content: "\f007";
|
215
|
+
}
|
216
|
+
.fa-film:before {
|
217
|
+
content: "\f008";
|
218
|
+
}
|
219
|
+
.fa-th-large:before {
|
220
|
+
content: "\f009";
|
221
|
+
}
|
222
|
+
.fa-th:before {
|
223
|
+
content: "\f00a";
|
224
|
+
}
|
225
|
+
.fa-th-list:before {
|
226
|
+
content: "\f00b";
|
227
|
+
}
|
228
|
+
.fa-check:before {
|
229
|
+
content: "\f00c";
|
230
|
+
}
|
231
|
+
.fa-times:before {
|
232
|
+
content: "\f00d";
|
233
|
+
}
|
234
|
+
.fa-search-plus:before {
|
235
|
+
content: "\f00e";
|
236
|
+
}
|
237
|
+
.fa-search-minus:before {
|
238
|
+
content: "\f010";
|
239
|
+
}
|
240
|
+
.fa-power-off:before {
|
241
|
+
content: "\f011";
|
242
|
+
}
|
243
|
+
.fa-signal:before {
|
244
|
+
content: "\f012";
|
245
|
+
}
|
246
|
+
.fa-gear:before,
|
247
|
+
.fa-cog:before {
|
248
|
+
content: "\f013";
|
249
|
+
}
|
250
|
+
.fa-trash-o:before {
|
251
|
+
content: "\f014";
|
252
|
+
}
|
253
|
+
.fa-home:before {
|
254
|
+
content: "\f015";
|
255
|
+
}
|
256
|
+
.fa-file-o:before {
|
257
|
+
content: "\f016";
|
258
|
+
}
|
259
|
+
.fa-clock-o:before {
|
260
|
+
content: "\f017";
|
261
|
+
}
|
262
|
+
.fa-road:before {
|
263
|
+
content: "\f018";
|
264
|
+
}
|
265
|
+
.fa-download:before {
|
266
|
+
content: "\f019";
|
267
|
+
}
|
268
|
+
.fa-arrow-circle-o-down:before {
|
269
|
+
content: "\f01a";
|
270
|
+
}
|
271
|
+
.fa-arrow-circle-o-up:before {
|
272
|
+
content: "\f01b";
|
273
|
+
}
|
274
|
+
.fa-inbox:before {
|
275
|
+
content: "\f01c";
|
276
|
+
}
|
277
|
+
.fa-play-circle-o:before {
|
278
|
+
content: "\f01d";
|
279
|
+
}
|
280
|
+
.fa-rotate-right:before,
|
281
|
+
.fa-repeat:before {
|
282
|
+
content: "\f01e";
|
283
|
+
}
|
284
|
+
.fa-refresh:before {
|
285
|
+
content: "\f021";
|
286
|
+
}
|
287
|
+
.fa-list-alt:before {
|
288
|
+
content: "\f022";
|
289
|
+
}
|
290
|
+
.fa-lock:before {
|
291
|
+
content: "\f023";
|
292
|
+
}
|
293
|
+
.fa-flag:before {
|
294
|
+
content: "\f024";
|
295
|
+
}
|
296
|
+
.fa-headphones:before {
|
297
|
+
content: "\f025";
|
298
|
+
}
|
299
|
+
.fa-volume-off:before {
|
300
|
+
content: "\f026";
|
301
|
+
}
|
302
|
+
.fa-volume-down:before {
|
303
|
+
content: "\f027";
|
304
|
+
}
|
305
|
+
.fa-volume-up:before {
|
306
|
+
content: "\f028";
|
307
|
+
}
|
308
|
+
.fa-qrcode:before {
|
309
|
+
content: "\f029";
|
310
|
+
}
|
311
|
+
.fa-barcode:before {
|
312
|
+
content: "\f02a";
|
313
|
+
}
|
314
|
+
.fa-tag:before {
|
315
|
+
content: "\f02b";
|
316
|
+
}
|
317
|
+
.fa-tags:before {
|
318
|
+
content: "\f02c";
|
319
|
+
}
|
320
|
+
.fa-book:before {
|
321
|
+
content: "\f02d";
|
322
|
+
}
|
323
|
+
.fa-bookmark:before {
|
324
|
+
content: "\f02e";
|
325
|
+
}
|
326
|
+
.fa-print:before {
|
327
|
+
content: "\f02f";
|
328
|
+
}
|
329
|
+
.fa-camera:before {
|
330
|
+
content: "\f030";
|
331
|
+
}
|
332
|
+
.fa-font:before {
|
333
|
+
content: "\f031";
|
334
|
+
}
|
335
|
+
.fa-bold:before {
|
336
|
+
content: "\f032";
|
337
|
+
}
|
338
|
+
.fa-italic:before {
|
339
|
+
content: "\f033";
|
340
|
+
}
|
341
|
+
.fa-text-height:before {
|
342
|
+
content: "\f034";
|
343
|
+
}
|
344
|
+
.fa-text-width:before {
|
345
|
+
content: "\f035";
|
346
|
+
}
|
347
|
+
.fa-align-left:before {
|
348
|
+
content: "\f036";
|
349
|
+
}
|
350
|
+
.fa-align-center:before {
|
351
|
+
content: "\f037";
|
352
|
+
}
|
353
|
+
.fa-align-right:before {
|
354
|
+
content: "\f038";
|
355
|
+
}
|
356
|
+
.fa-align-justify:before {
|
357
|
+
content: "\f039";
|
358
|
+
}
|
359
|
+
.fa-list:before {
|
360
|
+
content: "\f03a";
|
361
|
+
}
|
362
|
+
.fa-dedent:before,
|
363
|
+
.fa-outdent:before {
|
364
|
+
content: "\f03b";
|
365
|
+
}
|
366
|
+
.fa-indent:before {
|
367
|
+
content: "\f03c";
|
368
|
+
}
|
369
|
+
.fa-video-camera:before {
|
370
|
+
content: "\f03d";
|
371
|
+
}
|
372
|
+
.fa-picture-o:before {
|
373
|
+
content: "\f03e";
|
374
|
+
}
|
375
|
+
.fa-pencil:before {
|
376
|
+
content: "\f040";
|
377
|
+
}
|
378
|
+
.fa-map-marker:before {
|
379
|
+
content: "\f041";
|
380
|
+
}
|
381
|
+
.fa-adjust:before {
|
382
|
+
content: "\f042";
|
383
|
+
}
|
384
|
+
.fa-tint:before {
|
385
|
+
content: "\f043";
|
386
|
+
}
|
387
|
+
.fa-edit:before,
|
388
|
+
.fa-pencil-square-o:before {
|
389
|
+
content: "\f044";
|
390
|
+
}
|
391
|
+
.fa-share-square-o:before {
|
392
|
+
content: "\f045";
|
393
|
+
}
|
394
|
+
.fa-check-square-o:before {
|
395
|
+
content: "\f046";
|
396
|
+
}
|
397
|
+
.fa-arrows:before {
|
398
|
+
content: "\f047";
|
399
|
+
}
|
400
|
+
.fa-step-backward:before {
|
401
|
+
content: "\f048";
|
402
|
+
}
|
403
|
+
.fa-fast-backward:before {
|
404
|
+
content: "\f049";
|
405
|
+
}
|
406
|
+
.fa-backward:before {
|
407
|
+
content: "\f04a";
|
408
|
+
}
|
409
|
+
.fa-play:before {
|
410
|
+
content: "\f04b";
|
411
|
+
}
|
412
|
+
.fa-pause:before {
|
413
|
+
content: "\f04c";
|
414
|
+
}
|
415
|
+
.fa-stop:before {
|
416
|
+
content: "\f04d";
|
417
|
+
}
|
418
|
+
.fa-forward:before {
|
419
|
+
content: "\f04e";
|
420
|
+
}
|
421
|
+
.fa-fast-forward:before {
|
422
|
+
content: "\f050";
|
423
|
+
}
|
424
|
+
.fa-step-forward:before {
|
425
|
+
content: "\f051";
|
426
|
+
}
|
427
|
+
.fa-eject:before {
|
428
|
+
content: "\f052";
|
429
|
+
}
|
430
|
+
.fa-chevron-left:before {
|
431
|
+
content: "\f053";
|
432
|
+
}
|
433
|
+
.fa-chevron-right:before {
|
434
|
+
content: "\f054";
|
435
|
+
}
|
436
|
+
.fa-plus-circle:before {
|
437
|
+
content: "\f055";
|
438
|
+
}
|
439
|
+
.fa-minus-circle:before {
|
440
|
+
content: "\f056";
|
441
|
+
}
|
442
|
+
.fa-times-circle:before {
|
443
|
+
content: "\f057";
|
444
|
+
}
|
445
|
+
.fa-check-circle:before {
|
446
|
+
content: "\f058";
|
447
|
+
}
|
448
|
+
.fa-question-circle:before {
|
449
|
+
content: "\f059";
|
450
|
+
}
|
451
|
+
.fa-info-circle:before {
|
452
|
+
content: "\f05a";
|
453
|
+
}
|
454
|
+
.fa-crosshairs:before {
|
455
|
+
content: "\f05b";
|
456
|
+
}
|
457
|
+
.fa-times-circle-o:before {
|
458
|
+
content: "\f05c";
|
459
|
+
}
|
460
|
+
.fa-check-circle-o:before {
|
461
|
+
content: "\f05d";
|
462
|
+
}
|
463
|
+
.fa-ban:before {
|
464
|
+
content: "\f05e";
|
465
|
+
}
|
466
|
+
.fa-arrow-left:before {
|
467
|
+
content: "\f060";
|
468
|
+
}
|
469
|
+
.fa-arrow-right:before {
|
470
|
+
content: "\f061";
|
471
|
+
}
|
472
|
+
.fa-arrow-up:before {
|
473
|
+
content: "\f062";
|
474
|
+
}
|
475
|
+
.fa-arrow-down:before {
|
476
|
+
content: "\f063";
|
477
|
+
}
|
478
|
+
.fa-mail-forward:before,
|
479
|
+
.fa-share:before {
|
480
|
+
content: "\f064";
|
481
|
+
}
|
482
|
+
.fa-expand:before {
|
483
|
+
content: "\f065";
|
484
|
+
}
|
485
|
+
.fa-compress:before {
|
486
|
+
content: "\f066";
|
487
|
+
}
|
488
|
+
.fa-plus:before {
|
489
|
+
content: "\f067";
|
490
|
+
}
|
491
|
+
.fa-minus:before {
|
492
|
+
content: "\f068";
|
493
|
+
}
|
494
|
+
.fa-asterisk:before {
|
495
|
+
content: "\f069";
|
496
|
+
}
|
497
|
+
.fa-exclamation-circle:before {
|
498
|
+
content: "\f06a";
|
499
|
+
}
|
500
|
+
.fa-gift:before {
|
501
|
+
content: "\f06b";
|
502
|
+
}
|
503
|
+
.fa-leaf:before {
|
504
|
+
content: "\f06c";
|
505
|
+
}
|
506
|
+
.fa-fire:before {
|
507
|
+
content: "\f06d";
|
508
|
+
}
|
509
|
+
.fa-eye:before {
|
510
|
+
content: "\f06e";
|
511
|
+
}
|
512
|
+
.fa-eye-slash:before {
|
513
|
+
content: "\f070";
|
514
|
+
}
|
515
|
+
.fa-warning:before,
|
516
|
+
.fa-exclamation-triangle:before {
|
517
|
+
content: "\f071";
|
518
|
+
}
|
519
|
+
.fa-plane:before {
|
520
|
+
content: "\f072";
|
521
|
+
}
|
522
|
+
.fa-calendar:before {
|
523
|
+
content: "\f073";
|
524
|
+
}
|
525
|
+
.fa-random:before {
|
526
|
+
content: "\f074";
|
527
|
+
}
|
528
|
+
.fa-comment:before {
|
529
|
+
content: "\f075";
|
530
|
+
}
|
531
|
+
.fa-magnet:before {
|
532
|
+
content: "\f076";
|
533
|
+
}
|
534
|
+
.fa-chevron-up:before {
|
535
|
+
content: "\f077";
|
536
|
+
}
|
537
|
+
.fa-chevron-down:before {
|
538
|
+
content: "\f078";
|
539
|
+
}
|
540
|
+
.fa-retweet:before {
|
541
|
+
content: "\f079";
|
542
|
+
}
|
543
|
+
.fa-shopping-cart:before {
|
544
|
+
content: "\f07a";
|
545
|
+
}
|
546
|
+
.fa-folder:before {
|
547
|
+
content: "\f07b";
|
548
|
+
}
|
549
|
+
.fa-folder-open:before {
|
550
|
+
content: "\f07c";
|
551
|
+
}
|
552
|
+
.fa-arrows-v:before {
|
553
|
+
content: "\f07d";
|
554
|
+
}
|
555
|
+
.fa-arrows-h:before {
|
556
|
+
content: "\f07e";
|
557
|
+
}
|
558
|
+
.fa-bar-chart-o:before {
|
559
|
+
content: "\f080";
|
560
|
+
}
|
561
|
+
.fa-twitter-square:before {
|
562
|
+
content: "\f081";
|
563
|
+
}
|
564
|
+
.fa-facebook-square:before {
|
565
|
+
content: "\f082";
|
566
|
+
}
|
567
|
+
.fa-camera-retro:before {
|
568
|
+
content: "\f083";
|
569
|
+
}
|
570
|
+
.fa-key:before {
|
571
|
+
content: "\f084";
|
572
|
+
}
|
573
|
+
.fa-gears:before,
|
574
|
+
.fa-cogs:before {
|
575
|
+
content: "\f085";
|
576
|
+
}
|
577
|
+
.fa-comments:before {
|
578
|
+
content: "\f086";
|
579
|
+
}
|
580
|
+
.fa-thumbs-o-up:before {
|
581
|
+
content: "\f087";
|
582
|
+
}
|
583
|
+
.fa-thumbs-o-down:before {
|
584
|
+
content: "\f088";
|
585
|
+
}
|
586
|
+
.fa-star-half:before {
|
587
|
+
content: "\f089";
|
588
|
+
}
|
589
|
+
.fa-heart-o:before {
|
590
|
+
content: "\f08a";
|
591
|
+
}
|
592
|
+
.fa-sign-out:before {
|
593
|
+
content: "\f08b";
|
594
|
+
}
|
595
|
+
.fa-linkedin-square:before {
|
596
|
+
content: "\f08c";
|
597
|
+
}
|
598
|
+
.fa-thumb-tack:before {
|
599
|
+
content: "\f08d";
|
600
|
+
}
|
601
|
+
.fa-external-link:before {
|
602
|
+
content: "\f08e";
|
603
|
+
}
|
604
|
+
.fa-sign-in:before {
|
605
|
+
content: "\f090";
|
606
|
+
}
|
607
|
+
.fa-trophy:before {
|
608
|
+
content: "\f091";
|
609
|
+
}
|
610
|
+
.fa-github-square:before {
|
611
|
+
content: "\f092";
|
612
|
+
}
|
613
|
+
.fa-upload:before {
|
614
|
+
content: "\f093";
|
615
|
+
}
|
616
|
+
.fa-lemon-o:before {
|
617
|
+
content: "\f094";
|
618
|
+
}
|
619
|
+
.fa-phone:before {
|
620
|
+
content: "\f095";
|
621
|
+
}
|
622
|
+
.fa-square-o:before {
|
623
|
+
content: "\f096";
|
624
|
+
}
|
625
|
+
.fa-bookmark-o:before {
|
626
|
+
content: "\f097";
|
627
|
+
}
|
628
|
+
.fa-phone-square:before {
|
629
|
+
content: "\f098";
|
630
|
+
}
|
631
|
+
.fa-twitter:before {
|
632
|
+
content: "\f099";
|
633
|
+
}
|
634
|
+
.fa-facebook:before {
|
635
|
+
content: "\f09a";
|
636
|
+
}
|
637
|
+
.fa-github:before {
|
638
|
+
content: "\f09b";
|
639
|
+
}
|
640
|
+
.fa-unlock:before {
|
641
|
+
content: "\f09c";
|
642
|
+
}
|
643
|
+
.fa-credit-card:before {
|
644
|
+
content: "\f09d";
|
645
|
+
}
|
646
|
+
.fa-rss:before {
|
647
|
+
content: "\f09e";
|
648
|
+
}
|
649
|
+
.fa-hdd-o:before {
|
650
|
+
content: "\f0a0";
|
651
|
+
}
|
652
|
+
.fa-bullhorn:before {
|
653
|
+
content: "\f0a1";
|
654
|
+
}
|
655
|
+
.fa-bell:before {
|
656
|
+
content: "\f0f3";
|
657
|
+
}
|
658
|
+
.fa-certificate:before {
|
659
|
+
content: "\f0a3";
|
660
|
+
}
|
661
|
+
.fa-hand-o-right:before {
|
662
|
+
content: "\f0a4";
|
663
|
+
}
|
664
|
+
.fa-hand-o-left:before {
|
665
|
+
content: "\f0a5";
|
666
|
+
}
|
667
|
+
.fa-hand-o-up:before {
|
668
|
+
content: "\f0a6";
|
669
|
+
}
|
670
|
+
.fa-hand-o-down:before {
|
671
|
+
content: "\f0a7";
|
672
|
+
}
|
673
|
+
.fa-arrow-circle-left:before {
|
674
|
+
content: "\f0a8";
|
675
|
+
}
|
676
|
+
.fa-arrow-circle-right:before {
|
677
|
+
content: "\f0a9";
|
678
|
+
}
|
679
|
+
.fa-arrow-circle-up:before {
|
680
|
+
content: "\f0aa";
|
681
|
+
}
|
682
|
+
.fa-arrow-circle-down:before {
|
683
|
+
content: "\f0ab";
|
684
|
+
}
|
685
|
+
.fa-globe:before {
|
686
|
+
content: "\f0ac";
|
687
|
+
}
|
688
|
+
.fa-wrench:before {
|
689
|
+
content: "\f0ad";
|
690
|
+
}
|
691
|
+
.fa-tasks:before {
|
692
|
+
content: "\f0ae";
|
693
|
+
}
|
694
|
+
.fa-filter:before {
|
695
|
+
content: "\f0b0";
|
696
|
+
}
|
697
|
+
.fa-briefcase:before {
|
698
|
+
content: "\f0b1";
|
699
|
+
}
|
700
|
+
.fa-arrows-alt:before {
|
701
|
+
content: "\f0b2";
|
702
|
+
}
|
703
|
+
.fa-group:before,
|
704
|
+
.fa-users:before {
|
705
|
+
content: "\f0c0";
|
706
|
+
}
|
707
|
+
.fa-chain:before,
|
708
|
+
.fa-link:before {
|
709
|
+
content: "\f0c1";
|
710
|
+
}
|
711
|
+
.fa-cloud:before {
|
712
|
+
content: "\f0c2";
|
713
|
+
}
|
714
|
+
.fa-flask:before {
|
715
|
+
content: "\f0c3";
|
716
|
+
}
|
717
|
+
.fa-cut:before,
|
718
|
+
.fa-scissors:before {
|
719
|
+
content: "\f0c4";
|
720
|
+
}
|
721
|
+
.fa-copy:before,
|
722
|
+
.fa-files-o:before {
|
723
|
+
content: "\f0c5";
|
724
|
+
}
|
725
|
+
.fa-paperclip:before {
|
726
|
+
content: "\f0c6";
|
727
|
+
}
|
728
|
+
.fa-save:before,
|
729
|
+
.fa-floppy-o:before {
|
730
|
+
content: "\f0c7";
|
731
|
+
}
|
732
|
+
.fa-square:before {
|
733
|
+
content: "\f0c8";
|
734
|
+
}
|
735
|
+
.fa-bars:before {
|
736
|
+
content: "\f0c9";
|
737
|
+
}
|
738
|
+
.fa-list-ul:before {
|
739
|
+
content: "\f0ca";
|
740
|
+
}
|
741
|
+
.fa-list-ol:before {
|
742
|
+
content: "\f0cb";
|
743
|
+
}
|
744
|
+
.fa-strikethrough:before {
|
745
|
+
content: "\f0cc";
|
746
|
+
}
|
747
|
+
.fa-underline:before {
|
748
|
+
content: "\f0cd";
|
749
|
+
}
|
750
|
+
.fa-table:before {
|
751
|
+
content: "\f0ce";
|
752
|
+
}
|
753
|
+
.fa-magic:before {
|
754
|
+
content: "\f0d0";
|
755
|
+
}
|
756
|
+
.fa-truck:before {
|
757
|
+
content: "\f0d1";
|
758
|
+
}
|
759
|
+
.fa-pinterest:before {
|
760
|
+
content: "\f0d2";
|
761
|
+
}
|
762
|
+
.fa-pinterest-square:before {
|
763
|
+
content: "\f0d3";
|
764
|
+
}
|
765
|
+
.fa-google-plus-square:before {
|
766
|
+
content: "\f0d4";
|
767
|
+
}
|
768
|
+
.fa-google-plus:before {
|
769
|
+
content: "\f0d5";
|
770
|
+
}
|
771
|
+
.fa-money:before {
|
772
|
+
content: "\f0d6";
|
773
|
+
}
|
774
|
+
.fa-caret-down:before {
|
775
|
+
content: "\f0d7";
|
776
|
+
}
|
777
|
+
.fa-caret-up:before {
|
778
|
+
content: "\f0d8";
|
779
|
+
}
|
780
|
+
.fa-caret-left:before {
|
781
|
+
content: "\f0d9";
|
782
|
+
}
|
783
|
+
.fa-caret-right:before {
|
784
|
+
content: "\f0da";
|
785
|
+
}
|
786
|
+
.fa-columns:before {
|
787
|
+
content: "\f0db";
|
788
|
+
}
|
789
|
+
.fa-unsorted:before,
|
790
|
+
.fa-sort:before {
|
791
|
+
content: "\f0dc";
|
792
|
+
}
|
793
|
+
.fa-sort-down:before,
|
794
|
+
.fa-sort-asc:before {
|
795
|
+
content: "\f0dd";
|
796
|
+
}
|
797
|
+
.fa-sort-up:before,
|
798
|
+
.fa-sort-desc:before {
|
799
|
+
content: "\f0de";
|
800
|
+
}
|
801
|
+
.fa-envelope:before {
|
802
|
+
content: "\f0e0";
|
803
|
+
}
|
804
|
+
.fa-linkedin:before {
|
805
|
+
content: "\f0e1";
|
806
|
+
}
|
807
|
+
.fa-rotate-left:before,
|
808
|
+
.fa-undo:before {
|
809
|
+
content: "\f0e2";
|
810
|
+
}
|
811
|
+
.fa-legal:before,
|
812
|
+
.fa-gavel:before {
|
813
|
+
content: "\f0e3";
|
814
|
+
}
|
815
|
+
.fa-dashboard:before,
|
816
|
+
.fa-tachometer:before {
|
817
|
+
content: "\f0e4";
|
818
|
+
}
|
819
|
+
.fa-comment-o:before {
|
820
|
+
content: "\f0e5";
|
821
|
+
}
|
822
|
+
.fa-comments-o:before {
|
823
|
+
content: "\f0e6";
|
824
|
+
}
|
825
|
+
.fa-flash:before,
|
826
|
+
.fa-bolt:before {
|
827
|
+
content: "\f0e7";
|
828
|
+
}
|
829
|
+
.fa-sitemap:before {
|
830
|
+
content: "\f0e8";
|
831
|
+
}
|
832
|
+
.fa-umbrella:before {
|
833
|
+
content: "\f0e9";
|
834
|
+
}
|
835
|
+
.fa-paste:before,
|
836
|
+
.fa-clipboard:before {
|
837
|
+
content: "\f0ea";
|
838
|
+
}
|
839
|
+
.fa-lightbulb-o:before {
|
840
|
+
content: "\f0eb";
|
841
|
+
}
|
842
|
+
.fa-exchange:before {
|
843
|
+
content: "\f0ec";
|
844
|
+
}
|
845
|
+
.fa-cloud-download:before {
|
846
|
+
content: "\f0ed";
|
847
|
+
}
|
848
|
+
.fa-cloud-upload:before {
|
849
|
+
content: "\f0ee";
|
850
|
+
}
|
851
|
+
.fa-user-md:before {
|
852
|
+
content: "\f0f0";
|
853
|
+
}
|
854
|
+
.fa-stethoscope:before {
|
855
|
+
content: "\f0f1";
|
856
|
+
}
|
857
|
+
.fa-suitcase:before {
|
858
|
+
content: "\f0f2";
|
859
|
+
}
|
860
|
+
.fa-bell-o:before {
|
861
|
+
content: "\f0a2";
|
862
|
+
}
|
863
|
+
.fa-coffee:before {
|
864
|
+
content: "\f0f4";
|
865
|
+
}
|
866
|
+
.fa-cutlery:before {
|
867
|
+
content: "\f0f5";
|
868
|
+
}
|
869
|
+
.fa-file-text-o:before {
|
870
|
+
content: "\f0f6";
|
871
|
+
}
|
872
|
+
.fa-building-o:before {
|
873
|
+
content: "\f0f7";
|
874
|
+
}
|
875
|
+
.fa-hospital-o:before {
|
876
|
+
content: "\f0f8";
|
877
|
+
}
|
878
|
+
.fa-ambulance:before {
|
879
|
+
content: "\f0f9";
|
880
|
+
}
|
881
|
+
.fa-medkit:before {
|
882
|
+
content: "\f0fa";
|
883
|
+
}
|
884
|
+
.fa-fighter-jet:before {
|
885
|
+
content: "\f0fb";
|
886
|
+
}
|
887
|
+
.fa-beer:before {
|
888
|
+
content: "\f0fc";
|
889
|
+
}
|
890
|
+
.fa-h-square:before {
|
891
|
+
content: "\f0fd";
|
892
|
+
}
|
893
|
+
.fa-plus-square:before {
|
894
|
+
content: "\f0fe";
|
895
|
+
}
|
896
|
+
.fa-angle-double-left:before {
|
897
|
+
content: "\f100";
|
898
|
+
}
|
899
|
+
.fa-angle-double-right:before {
|
900
|
+
content: "\f101";
|
901
|
+
}
|
902
|
+
.fa-angle-double-up:before {
|
903
|
+
content: "\f102";
|
904
|
+
}
|
905
|
+
.fa-angle-double-down:before {
|
906
|
+
content: "\f103";
|
907
|
+
}
|
908
|
+
.fa-angle-left:before {
|
909
|
+
content: "\f104";
|
910
|
+
}
|
911
|
+
.fa-angle-right:before {
|
912
|
+
content: "\f105";
|
913
|
+
}
|
914
|
+
.fa-angle-up:before {
|
915
|
+
content: "\f106";
|
916
|
+
}
|
917
|
+
.fa-angle-down:before {
|
918
|
+
content: "\f107";
|
919
|
+
}
|
920
|
+
.fa-desktop:before {
|
921
|
+
content: "\f108";
|
922
|
+
}
|
923
|
+
.fa-laptop:before {
|
924
|
+
content: "\f109";
|
925
|
+
}
|
926
|
+
.fa-tablet:before {
|
927
|
+
content: "\f10a";
|
928
|
+
}
|
929
|
+
.fa-mobile-phone:before,
|
930
|
+
.fa-mobile:before {
|
931
|
+
content: "\f10b";
|
932
|
+
}
|
933
|
+
.fa-circle-o:before {
|
934
|
+
content: "\f10c";
|
935
|
+
}
|
936
|
+
.fa-quote-left:before {
|
937
|
+
content: "\f10d";
|
938
|
+
}
|
939
|
+
.fa-quote-right:before {
|
940
|
+
content: "\f10e";
|
941
|
+
}
|
942
|
+
.fa-spinner:before {
|
943
|
+
content: "\f110";
|
944
|
+
}
|
945
|
+
.fa-circle:before {
|
946
|
+
content: "\f111";
|
947
|
+
}
|
948
|
+
.fa-mail-reply:before,
|
949
|
+
.fa-reply:before {
|
950
|
+
content: "\f112";
|
951
|
+
}
|
952
|
+
.fa-github-alt:before {
|
953
|
+
content: "\f113";
|
954
|
+
}
|
955
|
+
.fa-folder-o:before {
|
956
|
+
content: "\f114";
|
957
|
+
}
|
958
|
+
.fa-folder-open-o:before {
|
959
|
+
content: "\f115";
|
960
|
+
}
|
961
|
+
.fa-smile-o:before {
|
962
|
+
content: "\f118";
|
963
|
+
}
|
964
|
+
.fa-frown-o:before {
|
965
|
+
content: "\f119";
|
966
|
+
}
|
967
|
+
.fa-meh-o:before {
|
968
|
+
content: "\f11a";
|
969
|
+
}
|
970
|
+
.fa-gamepad:before {
|
971
|
+
content: "\f11b";
|
972
|
+
}
|
973
|
+
.fa-keyboard-o:before {
|
974
|
+
content: "\f11c";
|
975
|
+
}
|
976
|
+
.fa-flag-o:before {
|
977
|
+
content: "\f11d";
|
978
|
+
}
|
979
|
+
.fa-flag-checkered:before {
|
980
|
+
content: "\f11e";
|
981
|
+
}
|
982
|
+
.fa-terminal:before {
|
983
|
+
content: "\f120";
|
984
|
+
}
|
985
|
+
.fa-code:before {
|
986
|
+
content: "\f121";
|
987
|
+
}
|
988
|
+
.fa-reply-all:before {
|
989
|
+
content: "\f122";
|
990
|
+
}
|
991
|
+
.fa-mail-reply-all:before {
|
992
|
+
content: "\f122";
|
993
|
+
}
|
994
|
+
.fa-star-half-empty:before,
|
995
|
+
.fa-star-half-full:before,
|
996
|
+
.fa-star-half-o:before {
|
997
|
+
content: "\f123";
|
998
|
+
}
|
999
|
+
.fa-location-arrow:before {
|
1000
|
+
content: "\f124";
|
1001
|
+
}
|
1002
|
+
.fa-crop:before {
|
1003
|
+
content: "\f125";
|
1004
|
+
}
|
1005
|
+
.fa-code-fork:before {
|
1006
|
+
content: "\f126";
|
1007
|
+
}
|
1008
|
+
.fa-unlink:before,
|
1009
|
+
.fa-chain-broken:before {
|
1010
|
+
content: "\f127";
|
1011
|
+
}
|
1012
|
+
.fa-question:before {
|
1013
|
+
content: "\f128";
|
1014
|
+
}
|
1015
|
+
.fa-info:before {
|
1016
|
+
content: "\f129";
|
1017
|
+
}
|
1018
|
+
.fa-exclamation:before {
|
1019
|
+
content: "\f12a";
|
1020
|
+
}
|
1021
|
+
.fa-superscript:before {
|
1022
|
+
content: "\f12b";
|
1023
|
+
}
|
1024
|
+
.fa-subscript:before {
|
1025
|
+
content: "\f12c";
|
1026
|
+
}
|
1027
|
+
.fa-eraser:before {
|
1028
|
+
content: "\f12d";
|
1029
|
+
}
|
1030
|
+
.fa-puzzle-piece:before {
|
1031
|
+
content: "\f12e";
|
1032
|
+
}
|
1033
|
+
.fa-microphone:before {
|
1034
|
+
content: "\f130";
|
1035
|
+
}
|
1036
|
+
.fa-microphone-slash:before {
|
1037
|
+
content: "\f131";
|
1038
|
+
}
|
1039
|
+
.fa-shield:before {
|
1040
|
+
content: "\f132";
|
1041
|
+
}
|
1042
|
+
.fa-calendar-o:before {
|
1043
|
+
content: "\f133";
|
1044
|
+
}
|
1045
|
+
.fa-fire-extinguisher:before {
|
1046
|
+
content: "\f134";
|
1047
|
+
}
|
1048
|
+
.fa-rocket:before {
|
1049
|
+
content: "\f135";
|
1050
|
+
}
|
1051
|
+
.fa-maxcdn:before {
|
1052
|
+
content: "\f136";
|
1053
|
+
}
|
1054
|
+
.fa-chevron-circle-left:before {
|
1055
|
+
content: "\f137";
|
1056
|
+
}
|
1057
|
+
.fa-chevron-circle-right:before {
|
1058
|
+
content: "\f138";
|
1059
|
+
}
|
1060
|
+
.fa-chevron-circle-up:before {
|
1061
|
+
content: "\f139";
|
1062
|
+
}
|
1063
|
+
.fa-chevron-circle-down:before {
|
1064
|
+
content: "\f13a";
|
1065
|
+
}
|
1066
|
+
.fa-html5:before {
|
1067
|
+
content: "\f13b";
|
1068
|
+
}
|
1069
|
+
.fa-css3:before {
|
1070
|
+
content: "\f13c";
|
1071
|
+
}
|
1072
|
+
.fa-anchor:before {
|
1073
|
+
content: "\f13d";
|
1074
|
+
}
|
1075
|
+
.fa-unlock-alt:before {
|
1076
|
+
content: "\f13e";
|
1077
|
+
}
|
1078
|
+
.fa-bullseye:before {
|
1079
|
+
content: "\f140";
|
1080
|
+
}
|
1081
|
+
.fa-ellipsis-h:before {
|
1082
|
+
content: "\f141";
|
1083
|
+
}
|
1084
|
+
.fa-ellipsis-v:before {
|
1085
|
+
content: "\f142";
|
1086
|
+
}
|
1087
|
+
.fa-rss-square:before {
|
1088
|
+
content: "\f143";
|
1089
|
+
}
|
1090
|
+
.fa-play-circle:before {
|
1091
|
+
content: "\f144";
|
1092
|
+
}
|
1093
|
+
.fa-ticket:before {
|
1094
|
+
content: "\f145";
|
1095
|
+
}
|
1096
|
+
.fa-minus-square:before {
|
1097
|
+
content: "\f146";
|
1098
|
+
}
|
1099
|
+
.fa-minus-square-o:before {
|
1100
|
+
content: "\f147";
|
1101
|
+
}
|
1102
|
+
.fa-level-up:before {
|
1103
|
+
content: "\f148";
|
1104
|
+
}
|
1105
|
+
.fa-level-down:before {
|
1106
|
+
content: "\f149";
|
1107
|
+
}
|
1108
|
+
.fa-check-square:before {
|
1109
|
+
content: "\f14a";
|
1110
|
+
}
|
1111
|
+
.fa-pencil-square:before {
|
1112
|
+
content: "\f14b";
|
1113
|
+
}
|
1114
|
+
.fa-external-link-square:before {
|
1115
|
+
content: "\f14c";
|
1116
|
+
}
|
1117
|
+
.fa-share-square:before {
|
1118
|
+
content: "\f14d";
|
1119
|
+
}
|
1120
|
+
.fa-compass:before {
|
1121
|
+
content: "\f14e";
|
1122
|
+
}
|
1123
|
+
.fa-toggle-down:before,
|
1124
|
+
.fa-caret-square-o-down:before {
|
1125
|
+
content: "\f150";
|
1126
|
+
}
|
1127
|
+
.fa-toggle-up:before,
|
1128
|
+
.fa-caret-square-o-up:before {
|
1129
|
+
content: "\f151";
|
1130
|
+
}
|
1131
|
+
.fa-toggle-right:before,
|
1132
|
+
.fa-caret-square-o-right:before {
|
1133
|
+
content: "\f152";
|
1134
|
+
}
|
1135
|
+
.fa-euro:before,
|
1136
|
+
.fa-eur:before {
|
1137
|
+
content: "\f153";
|
1138
|
+
}
|
1139
|
+
.fa-gbp:before {
|
1140
|
+
content: "\f154";
|
1141
|
+
}
|
1142
|
+
.fa-dollar:before,
|
1143
|
+
.fa-usd:before {
|
1144
|
+
content: "\f155";
|
1145
|
+
}
|
1146
|
+
.fa-rupee:before,
|
1147
|
+
.fa-inr:before {
|
1148
|
+
content: "\f156";
|
1149
|
+
}
|
1150
|
+
.fa-cny:before,
|
1151
|
+
.fa-rmb:before,
|
1152
|
+
.fa-yen:before,
|
1153
|
+
.fa-jpy:before {
|
1154
|
+
content: "\f157";
|
1155
|
+
}
|
1156
|
+
.fa-ruble:before,
|
1157
|
+
.fa-rouble:before,
|
1158
|
+
.fa-rub:before {
|
1159
|
+
content: "\f158";
|
1160
|
+
}
|
1161
|
+
.fa-won:before,
|
1162
|
+
.fa-krw:before {
|
1163
|
+
content: "\f159";
|
1164
|
+
}
|
1165
|
+
.fa-bitcoin:before,
|
1166
|
+
.fa-btc:before {
|
1167
|
+
content: "\f15a";
|
1168
|
+
}
|
1169
|
+
.fa-file:before {
|
1170
|
+
content: "\f15b";
|
1171
|
+
}
|
1172
|
+
.fa-file-text:before {
|
1173
|
+
content: "\f15c";
|
1174
|
+
}
|
1175
|
+
.fa-sort-alpha-asc:before {
|
1176
|
+
content: "\f15d";
|
1177
|
+
}
|
1178
|
+
.fa-sort-alpha-desc:before {
|
1179
|
+
content: "\f15e";
|
1180
|
+
}
|
1181
|
+
.fa-sort-amount-asc:before {
|
1182
|
+
content: "\f160";
|
1183
|
+
}
|
1184
|
+
.fa-sort-amount-desc:before {
|
1185
|
+
content: "\f161";
|
1186
|
+
}
|
1187
|
+
.fa-sort-numeric-asc:before {
|
1188
|
+
content: "\f162";
|
1189
|
+
}
|
1190
|
+
.fa-sort-numeric-desc:before {
|
1191
|
+
content: "\f163";
|
1192
|
+
}
|
1193
|
+
.fa-thumbs-up:before {
|
1194
|
+
content: "\f164";
|
1195
|
+
}
|
1196
|
+
.fa-thumbs-down:before {
|
1197
|
+
content: "\f165";
|
1198
|
+
}
|
1199
|
+
.fa-youtube-square:before {
|
1200
|
+
content: "\f166";
|
1201
|
+
}
|
1202
|
+
.fa-youtube:before {
|
1203
|
+
content: "\f167";
|
1204
|
+
}
|
1205
|
+
.fa-xing:before {
|
1206
|
+
content: "\f168";
|
1207
|
+
}
|
1208
|
+
.fa-xing-square:before {
|
1209
|
+
content: "\f169";
|
1210
|
+
}
|
1211
|
+
.fa-youtube-play:before {
|
1212
|
+
content: "\f16a";
|
1213
|
+
}
|
1214
|
+
.fa-dropbox:before {
|
1215
|
+
content: "\f16b";
|
1216
|
+
}
|
1217
|
+
.fa-stack-overflow:before {
|
1218
|
+
content: "\f16c";
|
1219
|
+
}
|
1220
|
+
.fa-instagram:before {
|
1221
|
+
content: "\f16d";
|
1222
|
+
}
|
1223
|
+
.fa-flickr:before {
|
1224
|
+
content: "\f16e";
|
1225
|
+
}
|
1226
|
+
.fa-adn:before {
|
1227
|
+
content: "\f170";
|
1228
|
+
}
|
1229
|
+
.fa-bitbucket:before {
|
1230
|
+
content: "\f171";
|
1231
|
+
}
|
1232
|
+
.fa-bitbucket-square:before {
|
1233
|
+
content: "\f172";
|
1234
|
+
}
|
1235
|
+
.fa-tumblr:before {
|
1236
|
+
content: "\f173";
|
1237
|
+
}
|
1238
|
+
.fa-tumblr-square:before {
|
1239
|
+
content: "\f174";
|
1240
|
+
}
|
1241
|
+
.fa-long-arrow-down:before {
|
1242
|
+
content: "\f175";
|
1243
|
+
}
|
1244
|
+
.fa-long-arrow-up:before {
|
1245
|
+
content: "\f176";
|
1246
|
+
}
|
1247
|
+
.fa-long-arrow-left:before {
|
1248
|
+
content: "\f177";
|
1249
|
+
}
|
1250
|
+
.fa-long-arrow-right:before {
|
1251
|
+
content: "\f178";
|
1252
|
+
}
|
1253
|
+
.fa-apple:before {
|
1254
|
+
content: "\f179";
|
1255
|
+
}
|
1256
|
+
.fa-windows:before {
|
1257
|
+
content: "\f17a";
|
1258
|
+
}
|
1259
|
+
.fa-android:before {
|
1260
|
+
content: "\f17b";
|
1261
|
+
}
|
1262
|
+
.fa-linux:before {
|
1263
|
+
content: "\f17c";
|
1264
|
+
}
|
1265
|
+
.fa-dribbble:before {
|
1266
|
+
content: "\f17d";
|
1267
|
+
}
|
1268
|
+
.fa-skype:before {
|
1269
|
+
content: "\f17e";
|
1270
|
+
}
|
1271
|
+
.fa-foursquare:before {
|
1272
|
+
content: "\f180";
|
1273
|
+
}
|
1274
|
+
.fa-trello:before {
|
1275
|
+
content: "\f181";
|
1276
|
+
}
|
1277
|
+
.fa-female:before {
|
1278
|
+
content: "\f182";
|
1279
|
+
}
|
1280
|
+
.fa-male:before {
|
1281
|
+
content: "\f183";
|
1282
|
+
}
|
1283
|
+
.fa-gittip:before {
|
1284
|
+
content: "\f184";
|
1285
|
+
}
|
1286
|
+
.fa-sun-o:before {
|
1287
|
+
content: "\f185";
|
1288
|
+
}
|
1289
|
+
.fa-moon-o:before {
|
1290
|
+
content: "\f186";
|
1291
|
+
}
|
1292
|
+
.fa-archive:before {
|
1293
|
+
content: "\f187";
|
1294
|
+
}
|
1295
|
+
.fa-bug:before {
|
1296
|
+
content: "\f188";
|
1297
|
+
}
|
1298
|
+
.fa-vk:before {
|
1299
|
+
content: "\f189";
|
1300
|
+
}
|
1301
|
+
.fa-weibo:before {
|
1302
|
+
content: "\f18a";
|
1303
|
+
}
|
1304
|
+
.fa-renren:before {
|
1305
|
+
content: "\f18b";
|
1306
|
+
}
|
1307
|
+
.fa-pagelines:before {
|
1308
|
+
content: "\f18c";
|
1309
|
+
}
|
1310
|
+
.fa-stack-exchange:before {
|
1311
|
+
content: "\f18d";
|
1312
|
+
}
|
1313
|
+
.fa-arrow-circle-o-right:before {
|
1314
|
+
content: "\f18e";
|
1315
|
+
}
|
1316
|
+
.fa-arrow-circle-o-left:before {
|
1317
|
+
content: "\f190";
|
1318
|
+
}
|
1319
|
+
.fa-toggle-left:before,
|
1320
|
+
.fa-caret-square-o-left:before {
|
1321
|
+
content: "\f191";
|
1322
|
+
}
|
1323
|
+
.fa-dot-circle-o:before {
|
1324
|
+
content: "\f192";
|
1325
|
+
}
|
1326
|
+
.fa-wheelchair:before {
|
1327
|
+
content: "\f193";
|
1328
|
+
}
|
1329
|
+
.fa-vimeo-square:before {
|
1330
|
+
content: "\f194";
|
1331
|
+
}
|
1332
|
+
.fa-turkish-lira:before,
|
1333
|
+
.fa-try:before {
|
1334
|
+
content: "\f195";
|
1335
|
+
}
|
1336
|
+
.fa-plus-square-o:before {
|
1337
|
+
content: "\f196";
|
1338
|
+
}
|