// Harbuger menu
$("#hmenu a").click(function() {
	$('.bar').toggleClass('animate');
	if ( $("#oer_sidebar").hasClass("hide") ) {
		$("#oer_sidebar").removeClass("hide");
	} else {
		$("#oer_sidebar").addClass("hide");
	}
});


// Controls Show / Hide
$("#p1_toggle").click(function() {
	if ( $("#p1").hasClass("show") ) {
		$("#p1_toggle i").removeClass("fa-chevron-circle-down");
		$("#p1_toggle i").addClass("fa-chevron-circle-up");
	} else {
		$("#p1_toggle i").removeClass("fa-chevron-circle-up");
		$("#p1_toggle i").addClass("fa-chevron-circle-down");
		$("#p2").removeClass("show");
		$("#p2_toggle i").removeClass("fa-chevron-circle-down");
		$("#p2_toggle i").addClass("fa-chevron-circle-up");
		$("#p3").removeClass("show");
		$("#p3_toggle i").removeClass("fa-chevron-circle-down");
		$("#p3_toggle i").addClass("fa-chevron-circle-up");
	}
});


$("#p2_toggle").click(function() {
	if ( $("#p2").hasClass("show") ) {
		$("#p2_toggle i").removeClass("fa-chevron-circle-down");
		$("#p2_toggle i").addClass("fa-chevron-circle-up");
	} else {
		$("#p2_toggle i").removeClass("fa-chevron-circle-up");
		$("#p2_toggle i").addClass("fa-chevron-circle-down");
		$("#p1").removeClass("show");
		$("#p1_toggle i").removeClass("fa-chevron-circle-down");
		$("#p1_toggle i").addClass("fa-chevron-circle-up");
		$("#p3").removeClass("show");
		$("#p3_toggle i").removeClass("fa-chevron-circle-down");
		$("#p3_toggle i").addClass("fa-chevron-circle-up");
	}
});

$("#p3_toggle").click(function() {
	if ( $("#p3").hasClass("show") ) {
		$("#p3_toggle i").removeClass("fa-chevron-circle-down");
		$("#p3_toggle i").addClass("fa-chevron-circle-up");
	} else {
		$("#p3_toggle i").removeClass("fa-chevron-circle-up");
		$("#p3_toggle i").addClass("fa-chevron-circle-down");
		$("#p1").removeClass("show");
		$("#p1_toggle i").removeClass("fa-chevron-circle-down");
		$("#p1_toggle i").addClass("fa-chevron-circle-up");
		$("#p2").removeClass("show");
		$("#p2_toggle i").removeClass("fa-chevron-circle-down");
		$("#p2_toggle i").addClass("fa-chevron-circle-up");
	}
});







// Theory Button

var oer_boxes_margin_top = 13;

$("#oer_theory").css("margin-top", "-" + String(parseInt($("#oer_theory").height()) + oer_boxes_margin_top) + "px" );
$("#btn_theory").click(function() {
	if ( $("#oer_theory").hasClass("hide") ) {
		$("#oer_theory").removeClass("hide");
		$("#btn_theory").addClass("active");
		$("#oer_application").addClass("hide");
		$("#btn_application").removeClass("active");
		$("#oer_investigation").addClass("hide");
		$("#btn_investigation").removeClass("active");
	} else {
		$("#oer_theory").addClass("hide");
		$("#btn_theory").removeClass("active");
	}
	$("#oer_theory").css("margin-top", "-" + String(parseInt($("#oer_theory").height()) + oer_boxes_margin_top) + "px" );
});


// Application Button
$("#oer_application").css("margin-top", "-" + String(parseInt($("#oer_application").height()) + oer_boxes_margin_top) + "px");
$("#btn_application").click(function() {
	if ( $("#oer_application").hasClass("hide") ) {
		$("#oer_theory").addClass("hide");
		$("#btn_theory").removeClass("active");
		$("#oer_application").removeClass("hide");
		$("#btn_application").addClass("active");
		$("#oer_investigation").addClass("hide");
		$("#btn_investigation").removeClass("active");
	} else {
		$("#oer_application").addClass("hide");
		$("#btn_application").removeClass("active");
	}
	$("#oer_application").css("margin-top", "-" + String(parseInt($("#oer_application").height()) + oer_boxes_margin_top) + "px");
});


// Investigation Button
$("#oer_investigation").css("margin-top", "-" + String(parseInt($("#oer_investigation").height()) + oer_boxes_margin_top) + "px");
$("#btn_investigation").click(function() {
	if ( $("#oer_investigation").hasClass("hide") ) {
		$("#oer_theory").addClass("hide");
		$("#btn_theory").removeClass("active");
		$("#oer_application").addClass("hide");
		$("#btn_application").removeClass("active");
		$("#oer_investigation").removeClass("hide");
		$("#btn_investigation").addClass("active");
	} else {
		$("#oer_investigation").addClass("hide");
		$("#btn_investigation").removeClass("active");
	}
	$("#oer_investigation").css("margin-top", "-" + String(parseInt($("#oer_investigation").height()) + oer_boxes_margin_top) + "px");
});




// Navigation to prev/next theory buttons
$("#oer_th_next").click(function() {
	// 1 to 2
	if ( $("#oer_th1").hasClass("active") ) {
		$("#oer_th1").removeClass("active");
		$("#oer_th2").addClass("active");
		$("#oer_th_prev").removeClass("hide");
	} else if ( $("#oer_th2").hasClass("active") ) {
		// 2 to 3
		$("#oer_th2").removeClass("active");
		$("#oer_th3").addClass("active");
	} else if ( $("#oer_th3").hasClass("active") ) {
		// 3 to 4
		$("#oer_th_next").addClass("hide");
		$("#oer_th3").removeClass("active");
		$("#oer_th4").addClass("active");
	}

	$("#oer_theory").css("margin-top", "-" + String(parseInt($("#oer_theory").height()) + oer_boxes_margin_top) + "px");

});


$("#oer_th_prev").click(function() {
	if ( $("#oer_th4").hasClass("active") ) {
		// 4 to 3
		$("#oer_th_next").removeClass("hide");
		$("#oer_th4").removeClass("active");
		$("#oer_th3").addClass("active");
	} else if ( $("#oer_th3").hasClass("active") ) {
		// 3 to 2
		$("#oer_th3").removeClass("active");
		$("#oer_th2").addClass("active");
	} else {
		// 2 to 1
		$("#oer_th2").removeClass("active");
		$("#oer_th1").addClass("active");
		$("#oer_th_prev").addClass("hide");
	}

	$("#oer_theory").css("margin-top", "-" + String(parseInt($("#oer_theory").height()) + oer_boxes_margin_top) + "px");

});




// Navigation to prev/next applications
$("#oer_app_next").click(function() {

	// 1 to 2
	if ( $("#oer_app1").hasClass("active") ) {
		$("#oer_app1").removeClass("active");
		$("#oer_app2").addClass("active");
		$("#oer_app_prev").removeClass("hide");
		$("#oer_app_next").addClass("hide");
	}
	/*
	} else if ($("#oer_app2").hasClass("active")) {
		// 2 to 3
		$("#oer_app2").removeClass("active");
		$("#oer_app3").addClass("active");
	} else if ($("#oer_app3").hasClass("active")) {
		// 3 to 4
		$("#oer_app3").removeClass("active");
		$("#oer_app4").addClass("active");
	} else if ($("#oer_app4").hasClass("active")) {
		// 4 to 5
		$("#oer_app_next").addClass("hide");
		$("#oer_app4").removeClass("active");
		$("#oer_app5").addClass("active");
	}
	*/

	$("#oer_application").css("margin-top", "-" + String(parseInt($("#oer_application").height()) + oer_boxes_margin_top) + "px" );

});


$("#oer_app_prev").click(function() {

	/*
	if ( $("#oer_app5").hasClass("active") ) {
		// 5 to 4
		$("#oer_app_next").removeClass("hide");
		$("#oer_app5").removeClass("active");
		$("#oer_app4").addClass("active");
	} else if ( $("#oer_app4").hasClass("active") ) {
		// 4 to 3
		$("#oer_app4").removeClass("active");
		$("#oer_app3").addClass("active");
	} else if ( $("#oer_app3").hasClass("active") ) {
		// 3 to 2	
		$("#oer_app3").removeClass("active");
		$("#oer_app2").addClass("active");
	} else if ( $("#oer_app2").hasClass("active") ) {
	*/

	if ( $("#oer_app2").hasClass("active") ) {
		// 2 to 1
		$("#oer_app2").removeClass("active");
		$("#oer_app1").addClass("active");
		$("#oer_app_prev").addClass("hide");
		$("#oer_app_next").removeClass("hide");
	}

	$("#oer_application").css("margin-top", "-" + String(parseInt($("#oer_application").height()) + oer_boxes_margin_top) + "px" );

});



// Navigation to prev/next investigation
$("#oer_inv_next").click(function() {
	// 1 to 2
	if ( $("#oer_inv1").hasClass("active") ) {
		$("#oer_inv1").removeClass("active");
		$("#oer_inv2").addClass("active");
		$("#oer_inv_prev").removeClass("hide");
	} else if ( $("#oer_inv2").hasClass("active") ) {
		// 2 to 3
		$("#oer_inv_next").addClass("hide");
		$("#oer_inv2").removeClass("active");
		$("#oer_inv3").addClass("active");
	}

	$("#oer_investigation").css("margin-top", "-" + String(parseInt($("#oer_investigation").height()) + oer_boxes_margin_top) + "px");

});


$("#oer_inv_prev").click(function() {
	if ( $("#oer_inv3").hasClass("active") ) {
		// 3 to 2
		$("#oer_inv_next").removeClass("hide");
		$("#oer_inv3").removeClass("active");
		$("#oer_inv2").addClass("active");
	} else {
		// 2 to 1
		$("#oer_inv2").removeClass("active");
		$("#oer_inv1").addClass("active");
		$("#oer_inv_prev").addClass("hide");
	}

	$("#oer_investigation").css("margin-top", "-" + String(parseInt($("#oer_investigation").height()) + oer_boxes_margin_top) + "px");

});



// Change Place
var ed_table_col = 0;
var ed_table_row = 0;

$("input[name='place']").on("change", function() {
	
	if (this.value == "pylos") {
		sun.visible = true;
		clouds.visible = false;
		ed_table_col = 2;
	} else if (this.value == "thassos") {
		sun.visible = true;
		clouds_img.src = 'images/clouds-thassos.png';
		clouds.visible = true;
		ed_table_col = 3;
	} else if (this.value == "paris") {
		sun.visible = true;
		clouds_img.src = 'images/clouds-paris.png';
		clouds.visible = true;
		ed_table_col = 4;
	} else if (this.value == "stockholm") {
		sun.visible = true;
		clouds_img.src = 'images/clouds-stockholm.png';
		clouds.visible = true;
		ed_table_col = 5;
	} else {
		sun.visible = false;
		ed_table_row = 0;
	}

	// Highlight cell in the Sun Table
	ed_table_row = parseInt($("#month").val()) + 1;
	if (ed_table_row >0 && ed_table_col > 0) {
		$("#ed-table td").css("background-color", "inherit");
		$("#ed-table tr:nth-child(" + ed_table_row + ") td:nth-child(" + ed_table_col + ")").css("background", "#800000");
	} else {
		$("#ed-table td").css("background-color", "inherit");
	}

	// console.log("place: " + ed_table_col);

	update_status();

});

// Change Month

$("#month").on("change", function() {
	ed_table_row = parseInt($("#month").val()) + 1;

	// Highlight cell in the Sun Table
	if (ed_table_row >0 && ed_table_col > 0) {
		$("#ed-table td").css("background-color", "inherit");
		$("#ed-table tr:nth-child(" + ed_table_row + ") td:nth-child(" + ed_table_col + ")").css("background-color", "#800000");
	} else {
		$("#ed-table td").css("background-color", "inherit");
	}

	// Make sun brighter or darker
	// sun.alpha = 1;

	// console.log("month: " + ed_table_row);

	update_status();

});




// Change Devices Category
$("#consuming_category").on("change", function() {
   $("#lights").hide();
   $("#white_devices").hide();
   $("#cooling_heating").hide();
   $("#electronics").hide();
   $("#other_devices").hide();

   if (this.value == "lights") {
	   $("#lights").show();
   } else if (this.value == "white_devices") {
	   $("#white_devices").show();
   } else if (this.value == "cooling_heating") {
	   $("#cooling_heating").show();
   } else if (this.value == "electronics") {
	   $("#electronics").show();
   } else if (this.value == "other_devices") {
	   $("#other_devices").show();
   }

});

// Lights Category
$("input[name='lights_type']").on("change", function() {
	update_status();
});

// Lights
$("#light1").on("change", function() {
	update_status();
});

$("#light2").on("change", function() {
	update_status();
});

// white_devices
$("#kitchen").on("change", function() {
	update_status();
});
$("#refrigerator").on("change", function() {
	update_status();
});
$("#washing_machine").on("change", function() {
	update_status();
});
$("#dishwasher").on("change", function() {
	update_status();
});

// cooling_heating
$("#air_condition").on("change", function() {
	update_status();
});
$("#fan").on("change", function() {
	update_status();
});
$("#heater").on("change", function() {
	update_status();
});
$("#fireplace").on("change", function() {
	update_status();
});
$("#water_heater").on("change", function() {
	update_status();
});
$("#solar_heater").on("change", function() {
	update_status();
});

// electronics
$("#tv").on("change", function() {
	update_status();
});
$("#pc").on("change", function() {
	update_status();
});
$("#laptop").on("change", function() {
	update_status();
});


// other_devices
$("#vacuum_cleaner").on("change", function() {
	update_status();
});
$("#iron").on("change", function() {
	update_status();
});


// PV System
$("input[name='panel_type']").on("change", function() {
	update_status();
});

$("#panels").on("change", function() {
	// keep slider and numbers in sync
	var v = $(this).val();
	$("#num_panels").val(v); // show 0 decimal
	// console.log('pv: ' + v);
	update_status();
});

$("#num_panels").on("change", function() {
	// keep slider and numbers in sync
	var v = $(this).val();
	$("#panels").val(v);	// show 0 decimal
	update_status();
});


$("input[name='batteries_type']").on("change", function() {
	update_status();
});

$("#batteries").on("change", function() {
	// keep slider and numbers in sync
	var v = $(this).val();
	$("#num_batteries").val(v); // show 0 decimal
	update_status();
});

$("#num_batteries").on("change", function() {
	// keep slider and numbers in sync
	var v = $(this).val();
	$("#batteries").val(v);	// show 0 decimal
	update_status();
});




// Minus and Plus buttons
function panels_minus_click() {
	var step = 1;
	var panels = parseInt( $("#num_panels").val() );
	if (panels-step >= config.panels_min) {
		panels -= step;
		$("#num_panels").val(panels);
		$("#panels").val(panels);
	}
	update_status();
}

function panels_plus_click() {
	var step = 1;
	var panels = parseInt( $("#num_panels").val() );
	if (panels+step <= config.panels_max) {
		panels += step;
		$("#num_panels").val(panels);
		$("#panels").val(panels);
	}
	update_status();
}

$("#panels_minus").on("click", panels_minus_click);
$("#panels_plus").on("click", panels_plus_click);


function batteries_minus_click() {
	var step = 1;
	var batteries = parseInt( $("#num_batteries").val() );
	if (batteries-step >= config.batteries_min) {
		batteries -= step;
		$("#num_batteries").val(batteries);
		$("#batteries").val(batteries);
	}
	update_status();
}

function batteries_plus_click() {
	var step = 1;
	var batteries = parseInt( $("#num_batteries").val() );
	if (batteries+step <= config.batteries_max) {
		batteries += step;
		$("#num_batteries").val(batteries);
		$("#batteries").val(batteries);
	}
	update_status();
}

$("#batteries_minus").on("click", batteries_minus_click);
$("#batteries_plus").on("click", batteries_plus_click);




// Change CO2 meter from day to month or year
co2_area_day.addEventListener("click", function(){
	co2_duration_line.graphics.clear().beginStroke("#222222").setStrokeStyle(2).moveTo(0, 0).lineTo(46, 0);
	co2_duration_line.x = config.center_x + 26;
	co2_duration = 'day';
	calc_co2(co2_duration);
});

co2_area_month.addEventListener("click", function(){
	co2_duration_line.graphics.clear().beginStroke("#222222").setStrokeStyle(2).moveTo(0, 0).lineTo(40, 0);
	co2_duration_line.x = config.center_x + 78;
	co2_duration = 'month';
	calc_co2(co2_duration);
});

co2_area_year.addEventListener("click", function(){
	co2_duration_line.graphics.clear().beginStroke("#222222").setStrokeStyle(2).moveTo(0, 0).lineTo(36, 0);
	co2_duration_line.x = config.center_x + 124;
	co2_duration = 'year';
	calc_co2(co2_duration);
});


// Show/Hide Electrical Diagram
zoom_area.addEventListener("click", function(){
	magnifier.visible = false;
	zoom_area.visible = false;

	diagram.visible = true;
	diagram_area_close.visible = true;
	panels_box.visible = true;
	panels_txt.visible = true;

	batteries_box.x = config.center_x + 55;
	batteries_box.y = config.center_y + 300;

	batteries_txt.x = config.center_x + 55;
	batteries_txt.y = config.center_y + 290;

	stage.update();
});


diagram_area_close.addEventListener("click", function(){
	diagram.visible = false;
	diagram_area_close.visible = false;
	panels_box.visible = false;
	panels_txt.visible = false;
	magnifier.visible = true;
	zoom_area.visible = true;

	batteries_box.x = config.center_x + 170;
	batteries_box.y = config.center_y + 160;

	batteries_txt.x = config.center_x + 170;
	batteries_txt.y = config.center_y + 150;

	stage.update();
});