configure({"twitter_filter": "#energybill", "addthis_email_template_1": "Energybill_email_general", "addthis_email_template_2": "Energybill_email_general", "campaign_group_id": 1, "target": "20000", "addthis_twitter_template_1": "Tell your MP we need a better #EnergyBill to deliver on climate change, social justice and green jobs! {{url}}", "addthis_twitter_template_2": "Tell the Government they must deliver on climate change, social justice and green jobs! {{url}} #energybill", "twitter_list": "maxwellinever/energy-bill-tweeters", "show_mp_responses": "0"});
var addthis_share,
addthis_config = {
data_ga_tracker: null
},
layerConstituencies,
layerCounties,
layerRegions;
var configure = function(config) {
var django_host = "eahub.wwf.nixmc.com";
var render_latest_tweet = function(list, filter) {
twitterlib.list(list, {filter: filter}, function (tweets, options) {
first = true;
cnt = 0;
$("#tweets li").each(function() {
try {
if( cnt >= tweets.length ) return;
//if( first ) { $(this).addClass("first"); first = false; }
var tweet = tweets[cnt]['text'],
user = tweets[cnt]['user'],
created_at = tweets[cnt]['created_at'];
tweet = twitterlib.ify.clean("@" + user['screen_name'] + ": " + tweet);
tweet = tweet.replace(/See more…');
$content.children().first().addClass("title");
zoomLevel = map.getZoom();
latLng = event.latLng;
// Drill-down to next zoom level, if applicable
if (zoomLevel < 9) {
$content.children().last().append($details);
$details.click(drillDown);
}
infoWindow.close();
infoWindow.setContent($content[0]);
infoWindow.setPosition(event['latLng']);
infoWindow.open(map);
};
})();
// Group by constituency...
layerConstituencies = new google.maps.KmlLayer("http://" + django_host + "/campaigngroup/1/targeted-constituencies.kml?v=2", {
// map: map,
preserveViewport: true,
suppressInfoWindows: true
});
// listen for click events on this layer
google.maps.event.addListener(layerConstituencies, "click", layer_click_handler);
// Group by county...
layerCounties = new google.maps.KmlLayer("http://" + django_host + "/campaigngroup/1/targeted-counties.kml?v=2", {
map: map,
preserveViewport: true,
suppressInfoWindows: true
});
// listen for click events on this layer
google.maps.event.addListener(layerCounties, "click", layer_click_handler);
// Group by region...
layerRegions = new google.maps.KmlLayer("http://" + django_host + "/campaigngroup/1/targeted-regions.kml?v=2", {
// map: map,
preserveViewport: true,
suppressInfoWindows: true
});
// listen for click events on this layer
google.maps.event.addListener(layerRegions, "click", layer_click_handler);
// Handle zooming, to switch relevant layer on/off at each zoom level
var map_zoom_handler = (function() {
var selectedLayer = layerCounties;
var currentZoomLevel = 6;
return function() {
var zoomLevel = map.getZoom();
// Do we need to do anything? Only if a 'boundary' has been crossed where we change the layer shown.
var changeSelectedLayer = (zoomLevel > 5 && currentZoomLevel <= 5)
|| (zoomLevel > 8 && currentZoomLevel <= 8)
|| (zoomLevel < 9 && currentZoomLevel >= 9)
|| (zoomLevel < 6 && currentZoomLevel >= 6);
currentZoomLevel = zoomLevel;
if (!changeSelectedLayer) return;
// Toggle layers depending on the selected zoom level
selectedLayer.setMap(null);
// Which layer to select?
if (zoomLevel < 6) {
selectedLayer = layerRegions;
} else if (zoomLevel < 9) {
selectedLayer = layerCounties;
} else {
selectedLayer = layerConstituencies;
}
// Display the new selected layer
selectedLayer.setMap(map);
};
})();
google.maps.event.addListener(map, 'zoom_changed', map_zoom_handler);
};
var initialize_barometer = function(campaign_id) {
$.ajax({
url: "http://" + django_host + "/campaigngroup/1/js/total.json",
dataType: 'jsonp',
success: function(data){
if ("total" in data && "total_s" in data && "target" in data && "target_s" in data){
var width = $("#make-heard").width();
// the little arrow on the speech bubble
$("#progress-arrow").css("left", Math.max(9, Math.min(180, (width / parseInt(data['target'])) * parseInt(data['total'])) - 10));
// the progress meter
$("#progress-value").css("width", Math.max(19, Math.min(width, (width / parseInt(data['target'])) * parseInt(data['total']))));
$("#make-heard h5").html(data['target_s']);
$("#make-heard h4").html(data['total_s']);
}
}
});
};
var show_hide_errormessages = function() {
$(".eaErrorMessage").each(function() {
if( $.trim($(this).text()) == "" ) {
$(this).hide();
} else {
$(this).show();
}
});
}
$(document).ready(function(){
// Latest tweet
//render_latest_tweet(config['twitter_list'], config['twitter_filter']);
// Addthis configuration
configure_addthis(config['campaign_id'], config['addthis_email_template_1'], config['addthis_twitter_template_1']);
// Google map
//initialize_map(config['campaign_id'], config['show_mp_responses']);
// Barometer
initialize_barometer(config['campaign_id']);
/// Show/hide errorMessages and set trigger to display them
show_hide_errormessages();
$(".eaSubmitButton").click(function() {
setTimeout( show_hide_errormessages, 1000 );
});
$("#Demand_a_Better_Bill_-_Questions_-_NMDiv input").attr('checked', true);
});
};
The Energy Bill isn't good enough. Tell your MP you want a better Bill that keeps the Government's promises on:
Email your MP
Latest news
-
14 September 2011
The Energy Bill has finished its passage through the House of Commons today. It is still inadequate. The. Find out more.
-
14 September 2011
Today is the last chance MPs have to fix the Energy Bill. The Bill, which introduces a new. Find out more.
-
13 September 2011
As we wait for the legislative machine to restart its engines, and the debates to begin again on. Find out more.
Are you with us?
See how many people across the UK are demanding a better energy bill. If you can't find anyone in your area, we need you to join us now!