var home30;
var avg30;
var home7;
var avg7;
var cost_pos = new Array();
cost_pos[0] = '0px -195px';
cost_pos[1] = '0px -195px';
cost_pos[2] = '0px -195px';
cost_pos[3] = '0px -195px';
cost_pos[4] = '0px -195px';
var kw_pos = new Array();
kw_pos[0] = '0px -195px';
kw_pos[1] = '0px -195px';
kw_pos[2] = '0px -195px';
kw_pos[3] = '0px -195px';
kw_pos[4] = '0px -195px';
var carb_pos = new Array();
carb_pos[0] = '0px -195px';
carb_pos[1] = '0px -195px';
carb_pos[2] = '0px -195px';
carb_pos[3] = '0px -195px';
carb_pos[4] = '0px -195px';
var bval = 5200;
var cost = 14.00; // in pence
var ctm = 0;
var wtm = 0;
var carbtm = 0;
var notes = [];
var home24 = [];
var avg24 = [];
var datasets;
var plot;
var ch_zng = '';
var ch_w = '';
var guptime = 0;
var wuptime = 0;
var sunset = 0;
var sunrise = 0;
var gdisp = 24;
$j = jQuery.noConflict();
function pad(number,length) {
var str = '' + number;
while (str.length < length)
str = '0' + str;
return str;
}
function formatPower(v) {
if (v > 1000000)
return (v / 1000000) + "MW";
else if (v >= 1000)
return (v / 1000) + "kW";
else
return v + "W";
}
function createTooltip(event){
if ( $j(this).attr('id') == "ieu_info" ) { positionTooltip(event, "ieu-wrap"); }
else if ( $j(this).attr('id') == "mb_info" ) { positionTooltip(event, "mb-wrap"); }
positionTooltip(event);
};
function positionTooltip(event, wrap){
var tPosX = event.pageX +10;
var tPosY = event.pageY +10;
$j('#'+wrap).css({top: tPosY, left: tPosX});
$j('#'+wrap).show();
};
function showTooltip(x, y, contents) {
$j('
' + contents + '
').css( {
position: 'absolute',
display: 'none',
'z-index': 4000,
top: y + 5,
left: x + 5,
border: '1px solid #fdd',
padding: '2px',
'background-color': '#fee',
opacity: 0.80
}).appendTo("body").fadeIn(200);
}
function get30() {
jQuery.ajax({
url: 'http://status2.energyhive.co.uk/my_30.json',
type: 'GET',
dataType: 'json',
data:$data,
timeout: 3000,
error: function(){ alert('Unable to load month data'); },
success: function(json){
home30 = json.graph.home;
avg30 = json.graph.average;
}
});
}
function get7() {
jQuery.ajax({
url: 'http://status2.energyhive.co.uk/my_7.json',
type: 'GET',
dataType: 'json',
data:$data,
timeout: 3000,
error: function(){ alert('Unable to load week data'); },
success: function(json){
home7 = json.graph.home;
avg7 = json.graph.average;
}
});
}
(function($j) {
$j.fn.vCenter = function(options) {
var pos = {
sTop : function() {
return window.pageYOffset
|| document.documentElement && document.documentElement.scrollTop
|| document.body.scrollTop;
},
sLeft : function() {
return window.pageXOffset
|| document.documentElement && document.documentElement.scrollLeft
|| document.body.scrollLeft;
},
wWidth : function() {
return window.innerWidth
|| document.documentElement && document.documentElement.clientWidth
|| document.body.clientWidth;
},
wHeight : function() {
return window.innerHeight
|| document.documentElement && document.documentElement.clientHeight
|| document.body.clientHeight;
}
};
return this.each(function(index) {
if (index == 0) {
var $this = $j(this);
var elHeight = $this.height();
var elWidth = $this.width();
var elTop = pos.sTop() + (pos.wHeight() / 2) - (elHeight / 2);
var elLeft = pos.sLeft() + (pos.wWidth() / 2) - (elWidth / 2);
$this.css({
position: 'absolute',
marginTop: '0',
top: elTop,
left: elLeft
});
}
});
};
})(jQuery);
/* This function was originally written by the nice folks at http://tweet.seaofclouds.com/
and is under the MIT license - http://www.opensource.org/licenses/mit-license.php */
(function($j) {
$j.fn.tweet = function(o){
var s = {
username: ["energyhive"], // [string] required, unless you want to display our tweets. :) it can be an array, just do ["username1","username2","etc"]
avatar_size: null, // [integer] height and width of avatar if displayed (48px max)
count: 3, // [integer] how many tweets to display?
intro_text: null, // [string] do you want text BEFORE your your tweets?
outro_text: null, // [string] do you want text AFTER your tweets?
join_text: null, // [string] optional text in between date and tweet, try setting to "auto"
auto_join_text_default: "i said,", // [string] auto text for non verb: "i said" bullocks
auto_join_text_ed: "i", // [string] auto text for past tense: "i" surfed
auto_join_text_ing: "i am", // [string] auto tense for present tense: "i was" surfing
auto_join_text_reply: "i replied to", // [string] auto tense for replies: "i replied to" @someone "with"
auto_join_text_url: "i was looking at", // [string] auto tense for urls: "i was looking at" http:...
loading_text: null, // [string] optional loading text, displayed while tweets load
query: null // [string] optional search query
};
$j.fn.extend({
linkUrl: function() {
var returning = [];
var regexp = /((ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?)/gi;
this.each(function() {
returning.push(this.replace(regexp,"$1"))
});
return $j(returning);
},
linkUser: function() {
var returning = [];
var regexp = /[\@]+([A-Za-z0-9-_]+)/gi;
this.each(function() {
returning.push(this.replace(regexp,"@$1"))
});
return $j(returning);
},
linkHash: function() {
var returning = [];
var regexp = / [\#]+([A-Za-z0-9-_]+)/gi;
this.each(function() {
returning.push(this.replace(regexp, ' #$1'))
});
return $j(returning);
}
});
function relative_time(time_value) {
var parsed_date = Date.parse(time_value);
var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
if(delta < 60) {
return 'less than a minute ago';
} else if(delta < 120) {
return 'about a minute ago';
} else if(delta < (45*60)) {
return (parseInt(delta / 60)).toString() + ' minutes ago';
} else if(delta < (90*60)) {
return 'about an hour ago';
} else if(delta < (24*60*60)) {
return 'about ' + (parseInt(delta / 3600)).toString() + ' hours ago';
} else if(delta < (48*60*60)) {
return '1 day ago';
} else {
return (parseInt(delta / 86400)).toString() + ' days ago';
}
}
if(o) $j.extend(s, o);
return this.each(function(){
var list = $j('