/*###############################
[JS](N)
	Main javascript file
	handles all non-administrative
	functionality
###############################*/

/*###############################
[JS](N)1
	set basic variables for
	section, progress, current
	item selections
	preload loading graphic
###############################*/

var current_top_item = 0;
var browserName=navigator.appName;
var section = "";
var subsection = "";
var sort_by = "";
var no_plan = 0;
var no_report = 0;
var box_to_edit = 0;
var no_profile = 0;

preload_image = new Image();
preload_image.src="images/loading.gif";

/*###############################
[JS](N)2
	top menu navigation
###############################*/

function go_top_nav(item, section, sub_section, sort_by, filter, action_id, carbon_id) {
	if ((item != current_top_item || action_id != "") && !no_profile) {
		current_sub_item = 0;
		//switch boxes
		if (section == "action_plan") {
			document.getElementById("cal").src = "images/nav_cal_off.jpg";
			document.getElementById("action").src = "images/nav_action_on.jpg";
			document.getElementById("dashy").src = "images/nav_dashy_off.jpg";
			document.getElementById("top_sub_action").style.display = "block";
			document.getElementById("top_sub_carbon").style.display = "none";
			current_sub = "module";
		} else if (section == "carbon_calculator") {
			document.getElementById("action_bar").style.display = "none";	
			document.getElementById("action").src = "images/nav_action_off.jpg";
			document.getElementById("cal").src = "images/nav_cal_on.jpg";
			document.getElementById("dashy").src = "images/nav_dashy_off.jpg";
			document.getElementById("top_sub_carbon").style.display = "block";
			document.getElementById("top_sub_action").style.display = "none";
			current_sub = "trans";
		} else {
			document.getElementById("action_bar").style.display = "none";
			document.getElementById("action").src = "images/nav_action_off.jpg";
			document.getElementById("dashy").src = "images/nav_dashy_on.jpg";
			document.getElementById("cal").src = "images/nav_cal_off.jpg";
			document.getElementById("top_sub_carbon").style.display = "none";
			document.getElementById("top_sub_action").style.display = "none";		}
		current_top_item = item;
		box_to_edit = 0;
		//loading display
		document.getElementById("subnav").innerHTML = "<div><img src=\"images/subnav_div_btm.jpg\" width=\"184\" height=\"100\" /></div>";
		document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
		//load new content
		grab_bottom_content(section, sub_section, sort_by, filter, action_id, carbon_id);
	}
}

/*###############################
[JS](N)3
	side navigation
###############################*/

var current_bottom_item = 1;
var current_sub = "home";

function go_bottom_nav (item, section, sub_section, sort_by, filter) {
	if (item != current_bottom_item || document.getElementById("nav_button_"+item).className == "open") {
		current_sub_item = 0;
		//switch nav status
		if (section == "action_plan" || section == "dashboard" || section == "admin") {
			if (item != 101 && item != 102 && item != 103 && item != 104) {
				if (current_bottom_item) {
					if (document.getElementById("nav_button_"+current_bottom_item).className == "open") {
						document.getElementById("nav_button_"+current_bottom_item).className = "closed";
						document.getElementById("nav_"+current_bottom_item+"_sub").style.display = "none";
					} else {
						document.getElementById("nav_button_"+current_bottom_item).className = "blank";
					}
				}
				if (document.getElementById("nav_button_"+item).className == "closed") {
					document.getElementById("nav_button_"+item).className = "open";		
					document.getElementById("nav_"+item+"_sub").style.display = "block";
				} else if (document.getElementById("nav_button_"+item).className == "open") {
					document.getElementById("nav_button_"+item).className = "closed";		
					document.getElementById("nav_"+item+"_sub").style.display = "none";
				} else {
					document.getElementById("nav_button_"+item).className = "blank_on";
				}
			}
		}
		if (item != current_bottom_item) {
			box_to_edit = 0;
			if (item != 101 && item != 102 && item != 103 && item != 104) {
				current_bottom_item = item;
			}
			current_sub = sub_section;
			//laoding display
			document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
			//load new content
			grab_right_content(section, sub_section, sort_by, filter);
		}
	}
}

/*###############################
[JS](N)4
	submenu navigation
###############################*/

var current_sub_item = 0;

function go_sub_nav (section, page, item_id, report_1, report_2) {
	if (section == "action") {
		if (item_id != current_sub_item && !no_plan) {
			current_sub_item = item_id;
			if (current_bottom_item) {
				if (document.getElementById("nav_button_"+current_bottom_item).className == "open") {
					document.getElementById("nav_button_"+current_bottom_item).className = "closed";
					document.getElementById("nav_"+current_bottom_item+"_sub").style.display = "none";
				} else {
					document.getElementById("nav_button_"+current_bottom_item).className = "blank";
				}
				current_bottom_item = 0;
			}
			//switch nav status
			if (!report_1) {
				document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
			} else {
				document.getElementById("main").innerHTML = "<br /><div><img src=\"images/title_ap_compare.gif\" alt=\"Transportation\" width=\"557\" height=\"113\" /></div><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
			}
			//load new content
			grab_sub_content(section, page, report_1, report_2);
		}
	} else if (section == "carbon") {
		if (item_id != current_sub_item && !no_report) {
			box_to_edit = 0;
			current_sub_item = item_id;
			if (current_bottom_item) {
				for (j=1;j<=3;j++) {
					document.getElementById("nav_"+j+"_open").style.display = "none";
					document.getElementById("nav_"+j+"_sub").style.display = "none";
					document.getElementById("nav_"+j+"_closed").style.display = "block";
				}
				current_bottom_item = 0;
			}
			//switch nav status
			if (!report_1) {
				document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
			} else {
				document.getElementById("main").innerHTML = "<br /><div><img src=\"images/title_cc_compare.gif\" alt=\"Transportation\" width=\"557\" height=\"113\" /></div><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
			}
			//load new content
			grab_sub_content(section, page, report_1, report_2);
		}
	}
}

/*###############################
[JS](N)5
	report sharing functionality
###############################*/

function share_report () {
	check_list = '';
	sr_email = document.getElementById("email").value;
	sr_first = document.getElementById("first_name").value;
	sr_last = document.getElementById("last_name").value;

	for (i=0;i<document.getElementById("total_checks").value;i++) {
		if (document.getElementById("checkbox_"+i).checked) {
			check_list = check_list+document.getElementById("checkbox_"+i).value+",";
		}
	}
	if (check_list && sr_email) {
		document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
		current_sub_item = 0;
		var curDateTime = new Date();
		right_or_bottom = "sr";	
		xmlHttp=GetXmlHttpObject();
		var params="first_name="+escape(sr_first)+"&last_name="+escape(sr_last)+"&email="+escape(sr_email)+"&report_string="+escape(check_list)+"&time_now="+escape(curDateTime);;
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "carbon_scripts/share_report.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);		
	} else {
		alert("Please make valid selections and enter an email address.");
	}
}

/*###############################
[JS](N)6
	action plan sharing functionality
###############################*/

function share_plan () {
	check_list = '';
	sp_email = document.getElementById("email").value;
	sp_first = document.getElementById("first_name").value;
	sp_last = document.getElementById("last_name").value;

	for (i=0;i<document.getElementById("total_checks").value;i++) {
		if (document.getElementById("checkbox_"+i).checked) {
			check_list = check_list+document.getElementById("checkbox_"+i).value+",";
		}
	}
	if (check_list && sp_email) {
		document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
		current_sub_item = 0;
		var curDateTime = new Date();
		right_or_bottom = "sp";	
		xmlHttp=GetXmlHttpObject();
		var params="first_name="+escape(sp_first)+"&last_name="+escape(sp_last)+"&email="+escape(sp_email)+"&report_string="+escape(check_list)+"&time_now="+escape(curDateTime);;
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "action_scripts/share_plan.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);		
	} else {
		alert("Please make valid selections and enter an email address.");
	}
}

/*###############################
[JS](N)7
	get report from access code
###############################*/

function access_report () {
	sr_access = document.getElementById("code").value;

	if (sr_access) {
		document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
		current_sub_item = 0;
		var curDateTime = new Date();
		right_or_bottom = "ar";	
		xmlHttp=GetXmlHttpObject();
		var params="code="+escape(sr_access)+"&time_now="+escape(curDateTime);;
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "carbon_scripts/access_report.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);		
	} else {
		alert("You have not entered an access code.");
	}
}

/*###############################
[JS](N)8
	get plan from access code
###############################*/

function access_plan () {
	sp_access = document.getElementById("code").value;

	if (sp_access) {
		document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
		current_sub_item = 0;
		var curDateTime = new Date();
		right_or_bottom = "ar";	
		xmlHttp=GetXmlHttpObject();
		var params="code="+escape(sp_access)+"&time_now="+escape(curDateTime);;
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "action_scripts/access_plan.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);		
	} else {
		alert("You have not entered an access code.");
	}
}

/*###############################
[JS](N)9
	AJAX functions
###############################*/

function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}

var right_or_bottom = "";

/*###############################
[JS](N)10
	AJAX state change functionality
	loads all AJAX content from
	server response
###############################*/

function stateChanged() {
	if (xmlHttp.readyState==4) {
		if (xmlHttp.responseText) {
			if (xmlHttp.responseText == "Hacking attempt logged.") {
				window.location = "index.php";
			} else {
				if (right_or_bottom == "right") {
					document.getElementById("main").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "bottom") {
					current_bottom_item = 1;
					document.getElementById("bottom").innerHTML = xmlHttp.responseText;
					if (current_top_item == 3) {
						get_action_bar();
					}
				} else if (right_or_bottom == "comm") {
					document.getElementById("action_item_"+ajax_box).innerHTML = "<center>"+xmlHttp.responseText+"</center>";
					document.getElementById(curr_box+"_count").innerHTML = curr_down;
					if (comma_box == "add") {
						document.getElementById("my_action_plan_count").innerHTML = curr_up;
					} else if (comma_box == "check") {
						document.getElementById("completed_actions_count").innerHTML = curr_up;;
					} else if (comma_box == "remove") {
						document.getElementById("deleted_actions_count").innerHTML = curr_up;
					}
					get_action_bar();
				} else if (right_or_bottom == "pro") {
					document.getElementById("bottom").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "sub") {
					document.getElementById("main").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "plan") {
					no_plan = 0;
					current_top_item = 0;
					document.getElementById("report_name").value = "";
					go_top_nav(3, 'action_plan', 'module', 'none', 'none');
				} else if (right_or_bottom == "report") {
					no_report = 0;
					current_top_item = 0;
					document.getElementById("report_name2").value = "";
					go_top_nav(2, 'carbon_calculator', '', 'none', 'none');
				} else if (right_or_bottom == "del") {
					if (xmlHttp.responseText == "no plan") {
						no_plan = 1;
						current_top_item = 0;
						go_top_nav(3, 'action_plan', 'module', 'none', 'none');
					} else if (xmlHttp.responseText == "plan") {
						current_sub_item = 0;
						go_top_nav(3, 'action_plan', 'module', 'none', 'none');
					}
				} else if (right_or_bottom == "del_r") {
					if (xmlHttp.responseText == "no report") {
						no_report = 1;
						current_top_item = 0;
						go_top_nav(2, 'carbon_calculator', '', 'none', 'none');
					} else if (xmlHttp.responseText == "report") {
						current_sub_item = 0;
						go_top_nav(2, 'carbon_calculator', '', 'none', 'none');
					}
				} else if (right_or_bottom == "edit") {
					document.getElementById("saved_box_"+box_to_edit).innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "update") {
					document.getElementById("saved_box_"+box_to_edit).innerHTML = xmlHttp.responseText;
					box_to_edit = 0;
					if (current_top_item == 3) {
						get_action_bar();
					}					
				} else if (right_or_bottom == "del_saved") {
					document.getElementById("saved_box_"+box_to_edit).innerHTML = xmlHttp.responseText;
					box_to_edit = 0;
					if (current_top_item == 3) {
						get_action_bar();
					}					
				} else if (right_or_bottom == "add_new") {
					if (document.getElementById("no_data_"+current_cat)) {
						document.getElementById("no_data_"+current_cat).style.display = "none";
					}
					document.getElementById(current_sub+"_"+current_cat+"_display").innerHTML = existing_content+xmlHttp.responseText;
					document.getElementById(current_cat+"_count").innerHTML = eval(document.getElementById(current_cat+"_count").innerHTML)+1;
					current_cat = "";
					document.getElementById("total_item_tally").value = eval(document.getElementById("total_item_tally").value)+1;
					if (current_top_item == 3) {
						get_action_bar();
					}				
				}  else if (right_or_bottom == "your_comp") {
					document.getElementById("dash_comp_your").innerHTML = xmlHttp.responseText;
				}  else if (right_or_bottom == "your_acts") {
					document.getElementById("dash_comp_acts").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "del_user") {
					document.getElementById(curr_admin_box+"_"+usr_del_id).innerHTML = xmlHttp.responseText;
					usr_del_id = 0;
				} else if (right_or_bottom == "block_user") {
					document.getElementById(curr_admin_box+"_"+usr_block_id).innerHTML = xmlHttp.responseText;
					usr_block_id = 0;
				} else if (right_or_bottom == "admin_user") {
					document.getElementById(curr_admin_box+"_"+usr_admin_id).innerHTML = xmlHttp.responseText;
					usr_admin_id = 0;
				} else if (right_or_bottom == "user_user") {
					document.getElementById(curr_admin_box+"_"+usr_user_id).innerHTML = xmlHttp.responseText;
					usr_user_id = 0;
				} else if (right_or_bottom == "user_search") {
					document.getElementById("search_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "user_search") {
					document.getElementById("search_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "donation_query") {
					document.getElementById("donation_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "launch_comp") {
					document.getElementById("comp_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "region_comp") {
					document.getElementById("region_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "select_page") {
					document.getElementById("section_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "edit_page") {
					document.getElementById("section_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "select_action") {
					document.getElementById("action_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "edit_action") {
					document.getElementById("action_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "del_action") {
					document.getElementById("action_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "add_action") {
					document.getElementById("add_box").innerHTML = xmlHttp.responseText;
					document.getElementById("label2").value = "";
					document.getElementById("co22").value = "";
					document.getElementById("description2").value = "";
					document.getElementById("edit_act_source2").value = "";
					document.getElementById("add_form").style.display = "block";
				} else if (right_or_bottom == "select_conversion") {
					document.getElementById("conversion_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "select_assumption") {
					document.getElementById("assumption_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "edit_conversion") {
					document.getElementById("conversion_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "edit_assumption") {
					document.getElementById("assumption_box").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "suggestion") {
					document.getElementById("suggestion_box").innerHTML = xmlHttp.responseText;
					document.getElementById("suggestion").value = "";
					document.getElementById("suggestion_form").style.display = "block";
				} else if (right_or_bottom == "suggest_action") {
					document.getElementById("add_box").innerHTML = xmlHttp.responseText;
					document.getElementById("label").value = "";
					document.getElementById("co2").value = "";
					document.getElementById("description").value = "";
					document.getElementById("act_source").value = "";
					document.getElementById("add_form").style.display = "block";
				} else if (right_or_bottom == "forgot") {
					document.getElementById("pass_box").innerHTML = "<br><center>"+xmlHttp.responseText+"</center><br>";
				} else if (right_or_bottom == "auto_shift_year") {
					document.getElementById("make_box"+current_auto_id).innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "auto_shift_make") {
					document.getElementById("model_box"+current_auto_id).innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "auto_shift_model") {
					document.getElementById("mpg_box"+current_auto_id).innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "sr") {
					document.getElementById("main").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "ar") {
					document.getElementById("main").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "sp") {
					document.getElementById("main").innerHTML = xmlHttp.responseText;
				} else if (right_or_bottom == "action_bar") {
					var responses = xmlHttp.responseText;
					var break_up = responses.split("~");
					
					var w_o_total = eval(break_up[0])+eval(break_up[2]);
					document.getElementById("w_o_total").innerHTML = w_o_total.toFixed(2);
					document.getElementById("w_o_home_num").innerHTML = eval(break_up[0]);
					document.getElementById("w_o_trans_num").innerHTML = eval(break_up[2]);
					var w_o_home_percent = ((Math.abs(eval(break_up[0])))/(Math.abs(eval(break_up[0]))+Math.abs(eval(break_up[2]))))*75;
					document.getElementById("w_o_home_bar").style.height = eval(w_o_home_percent)+"px";
					var w_o_trans_percent = ((Math.abs(eval(break_up[2])))/(Math.abs(eval(break_up[0]))+Math.abs(eval(break_up[2]))))*75;
					document.getElementById("w_o_trans_bar").style.height = eval(w_o_trans_percent)+"px";					
					if (eval(break_up[2])<0 && eval(break_up[0])>0) {
						document.getElementById("w_o_trans_bar").style.margin = Math.round(eval(w_o_home_percent))+"px 0px 0px 0px";	
						document.getElementById("w_o_home_bar").style.margin = "0px 0px "+Math.round(eval(w_o_trans_percent))+"px 0px";	
					} else if (eval(break_up[0])<0 && eval(break_up[2])>0) {
						document.getElementById("w_o_trans_bar").style.margin = Math.round(eval(w_o_home_percent))+"px 0px 0px 0px";	
						document.getElementById("w_o_home_bar").style.margin = "0px 0px "+Math.round(eval(w_o_trans_percent))+"px 0px";	
					} else {
						document.getElementById("w_o_trans_bar").style.margin = "0px 0px 0px 0px";	
						document.getElementById("w_o_home_bar").style.margin = "0px 0px 0px 0px";	
					}				
				
					var w_total = eval(break_up[1])+eval(break_up[3]);
					document.getElementById("w_total").innerHTML = w_total.toFixed(2);
					document.getElementById("w_home_num").innerHTML = eval(break_up[1]);
					document.getElementById("w_trans_num").innerHTML = eval(break_up[3]);
					var w_home_percent = ((Math.abs(eval(break_up[1])))/(Math.abs(eval(break_up[1]))+Math.abs(eval(break_up[3]))))*75;
					document.getElementById("w_home_bar").style.height = eval(w_home_percent)+"px";
					var w_trans_percent = ((Math.abs(eval(break_up[3])))/(Math.abs(eval(break_up[1]))+Math.abs(eval(break_up[3]))))*75;
					document.getElementById("w_trans_bar").style.height = eval(w_trans_percent)+"px";					
					if (eval(break_up[3])<0 && eval(break_up[1])>0) {
						document.getElementById("w_trans_bar").style.margin = Math.round(eval(w_home_percent))+"px 0px 0px 0px";	
						document.getElementById("w_home_bar").style.margin = "0px 0px "+Math.round(eval(w_trans_percent))+"px 0px";	
					} else if (eval(break_up[1])<0 && eval(break_up[3])>0) {
						document.getElementById("w_trans_bar").style.margin = Math.round(eval(w_home_percent))+"px 0px 0px 0px";	
						document.getElementById("w_trans_bar").style.margin = Math.round(eval(w_home_percent))+"px 0px 0px 0px";	
					} else {
						document.getElementById("w_trans_bar").style.margin = "0px 0px 0px 0px";	
						document.getElementById("w_home_bar").style.margin = "0px 0px 0px 0px";	
					}
					
					document.getElementById("action_bar").style.display = "block";
				} else if (right_or_bottom == "save_note") {
					document.getElementById("action_extra_"+save_item).innerHTML = xmlHttp.responseText;
					save_item = 0;
				} else if (right_or_bottom == "update_led") {
					var responses = xmlHttp.responseText;
					var break_up = responses.split("~");
					document.getElementById("ledtotal").innerHTML = break_up[0];
					document.getElementById("ledenergysavings").innerHTML = break_up[1];
					document.getElementById("ledannualsavings").innerHTML = break_up[2];
					document.getElementById("ledpayback").innerHTML = break_up[3];
					document.getElementById("ledreductionpotential").innerHTML = break_up[4];
					document.getElementById("ledgraph").src = break_up[5];
					document.getElementById("ledchart").innerHTML = break_up[6];
					document.getElementById("energy_total").innerHTML = (eval(document.getElementById("ledreductionpotential").innerHTML)+eval(document.getElementById("t8reductionpotential").innerHTML)).toPrecision(2);
					document.getElementById("energy_percentage").innerHTML = (100*eval(document.getElementById("energy_total").innerHTML)/eval(document.getElementById("total_footprint").value)).toPrecision(2);
					document.getElementById("ledloading").style.display = "none";
				} else if (right_or_bottom == "update_t8") {
					var responses = xmlHttp.responseText;
					var break_up = responses.split("~");
					document.getElementById("t8total").innerHTML = break_up[0];
					document.getElementById("t8energysavings").innerHTML = break_up[1];
					document.getElementById("t8annualsavings").innerHTML = break_up[2];
					document.getElementById("t8payback").innerHTML = break_up[3];
					document.getElementById("t8reductionpotential").innerHTML = break_up[4];
					document.getElementById("t8graph").src = break_up[5];
					document.getElementById("t8chart").innerHTML = break_up[6];
					document.getElementById("energy_total").innerHTML = (eval(document.getElementById("ledreductionpotential").innerHTML)+eval(document.getElementById("t8reductionpotential").innerHTML)).toFixed(2);
					document.getElementById("energy_percentage").innerHTML = (100*eval(document.getElementById("energy_total").innerHTML)/eval(document.getElementById("total_footprint").value)).toFixed(2);
					document.getElementById("t8loading").style.display = "none";
				} else if (right_or_bottom == "update_trans") {
					var responses = xmlHttp.responseText;
					var break_up = responses.split("~");
					document.getElementById("lowfueluse").innerHTML = break_up[0];
					document.getElementById("stdfueluse").innerHTML = break_up[1];
					document.getElementById("lowcarbon").innerHTML = break_up[2];
					document.getElementById("stdcarbon").innerHTML = break_up[3];
					document.getElementById("lowcost").innerHTML = break_up[4];
					document.getElementById("stdcost").innerHTML = break_up[5];
					document.getElementById("lowfuelsavings").innerHTML = break_up[6];
					document.getElementById("lowdollarsavings").innerHTML = break_up[7];
					document.getElementById("lowcost").innerHTML = break_up[8];
					document.getElementById("lowpayback").innerHTML = break_up[9];
					document.getElementById("lowpotential").innerHTML = break_up[10];
					document.getElementById("transgraph").src = break_up[11];
					document.getElementById("transchart").innerHTML = break_up[12];
					document.getElementById("trans_total").innerHTML = (eval(document.getElementById("lowpotential").innerHTML)+eval(document.getElementById("redreduction").innerHTML)).toFixed(2);
					document.getElementById("trans_percentage").innerHTML = (100*eval(document.getElementById("trans_total").innerHTML)/eval(document.getElementById("total_footprint").value)).toFixed(2);
					document.getElementById("transloading").style.display = "none";			
				} else if (right_or_bottom == "update_toilet") {
					var responses = xmlHttp.responseText;
					var break_up = responses.split("~");
					document.getElementById("toiletoldcost").innerHTML = break_up[0];
					document.getElementById("toiletnewcost").innerHTML = break_up[1];
					document.getElementById("toiletsavings").innerHTML = break_up[2];
					document.getElementById("toiletwaterreduction").innerHTML = break_up[3];
					document.getElementById("toiletco2reduction").innerHTML = break_up[4];
					document.getElementById("toiletpayback").innerHTML = break_up[5];
					document.getElementById("toiletgraph").src = break_up[6];
					document.getElementById("toiletchart").innerHTML = break_up[7]					
					document.getElementById("water_total").innerHTML = (eval(document.getElementById("toiletco2reduction").innerHTML)+eval(document.getElementById("showerco2reduction").innerHTML)).toFixed(2);
					document.getElementById("water_percentage").innerHTML = (100*eval(document.getElementById("water_total").innerHTML)/eval(document.getElementById("total_footprint").value)).toFixed(2);
					document.getElementById("toiletloading").style.display = "none";			
				} else if (right_or_bottom == "update_shower") {
					var responses = xmlHttp.responseText;
					var break_up = responses.split("~");
					document.getElementById("showeroldcost").innerHTML = break_up[0];
					document.getElementById("showernewcost").innerHTML = break_up[1];
					document.getElementById("showersavings").innerHTML = break_up[2];
					document.getElementById("showerwaterreduction").innerHTML = break_up[3];
					document.getElementById("showerco2reduction").innerHTML = break_up[4];
					document.getElementById("showerpayback").innerHTML = break_up[5];
					document.getElementById("showergraph").src = break_up[6];
					document.getElementById("showerchart").innerHTML = break_up[7]					
					document.getElementById("water_total").innerHTML = (eval(document.getElementById("toiletco2reduction").innerHTML)+eval(document.getElementById("showerco2reduction").innerHTML)).toFixed(2);
					document.getElementById("water_percentage").innerHTML = (100*eval(document.getElementById("water_total").innerHTML)/eval(document.getElementById("total_footprint").value)).toFixed(2);
					document.getElementById("showerloading").style.display = "none";			
				} else if (right_or_bottom == "update_red") {
					var responses = xmlHttp.responseText;
					var break_up = responses.split("~");
					document.getElementById("redsavings").innerHTML = break_up[0];
					document.getElementById("redreduction").innerHTML = break_up[1];
					document.getElementById("redgraph").src = break_up[2];
					document.getElementById("redchart").innerHTML = break_up[3]					
					document.getElementById("trans_total").innerHTML = (eval(document.getElementById("lowpotential").innerHTML)+eval(document.getElementById("redreduction").innerHTML)).toFixed(2);
					document.getElementById("trans_percentage").innerHTML = (100*eval(document.getElementById("trans_total").innerHTML)/eval(document.getElementById("total_footprint").value)).toFixed(2);
					document.getElementById("redloading").style.display = "none";			
				} else if (right_or_bottom == "donate") {
					var orgo = xmlHttp.responseText;
					document.getElementById("donate_box").innerHTML = "<center>Thank you for making a donation to "+orgo+".</center>";
				} else if (right_or_bottom == "change_pass") {
					if (xmlHttp.responseText == "good") {
						alert("Your password has been changed.");
						document.getElementById("change_pop").style.display = "none";
						document.getElementById("blanket").style.display = "none";
					} else {
						document.getElementById("old_text").style.color = "red";
						alert("The password you entered was incorrect.");
					}
					document.getElementById("change_load").style.display = "none";
					document.getElementById("change_box").style.display = "block";					
				}
			}
		}
	}
}

/*###############################
[JS](N)11
	adjust action bar
###############################*/

function adjust_height() {
	new_height = parseInt(document.getElementById("my_action_plan_count").innerHTML)*100;
	document.getElementById("vertical_navigation_box").style.height = new_height+"px";
}

/*###############################
[JS](N)12
	load right content from
	side menu
###############################*/

function grab_right_content (section, sub_section, sort_by, filter) {
 	var curDateTime = new Date();
    	right_or_bottom = "right";
	xmlHttp=GetXmlHttpObject();
	if (section == "action_plan") {
		var url="action_scripts/grab_right_content.php?section="+escape(section)+"&sub_section="+escape(sub_section)+"&sort_by="+escape(sort_by)+"&filter="+escape(filter)+"&time_now="+escape(curDateTime);
	} else if (section == "carbon_calculator") {
		var url="carbon_scripts/grab_right_content.php?section="+escape(section)+"&sub_section="+escape(sub_section)+"&sort_by="+escape(sort_by)+"&filter="+escape(filter)+"&time_now="+escape(curDateTime);
	} else if (section == "admin") {
		var url="admin_scripts/grab_right_content.php?section="+escape(section)+"&sub_section="+escape(sub_section)+"&sort_by="+escape(sort_by)+"&filter="+escape(filter)+"&time_now="+escape(curDateTime);
	} else {
		var url="dashboard_scripts/grab_right_content.php?section="+escape(section)+"&sub_section="+escape(sub_section)+"&sort_by="+escape(sort_by)+"&filter="+escape(filter)+"&time_now="+escape(curDateTime);
	}
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

/*###############################
[JS](N)13
	load bottom content from
	top menu
###############################*/

function grab_bottom_content (section, sub_section, sort_by, filter, action_id, carbon_id) {
	var curDateTime = new Date();
 	right_or_bottom = "bottom";
	xmlHttp=GetXmlHttpObject();
	if (section == "carbon_calculator") {
		var url="carbon_scripts/grab_bottom_content.php?section="+escape(section)+"&sub_section="+escape(sub_section)+"&sort_by="+escape(sort_by)+"&filter="+escape(filter)+"&time_now="+escape(curDateTime)+"&carbon_id="+carbon_id;
	} else if (section == "action_plan") {
		var url="action_scripts/grab_bottom_content.php?section="+escape(section)+"&sub_section="+escape(sub_section)+"&sort_by="+escape(sort_by)+"&filter="+escape(filter)+"&time_now="+escape(curDateTime)+"&action_id="+action_id;
	
	} else {
		var url="dashboard_scripts/grab_bottom_content.php?section="+escape(section)+"&sub_section="+escape(sub_section)+"&sort_by="+escape(sort_by)+"&filter="+escape(filter)+"&time_now="+escape(curDateTime)+"&action_id="+action_id+"&carbon_id="+carbon_id;
	}
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

/*###############################
[JS](N)14
	load submenu content
###############################*/

function grab_sub_content (section, page, report_1, report_2) {
	var curDateTime = new Date();
 	right_or_bottom = "sub";
	xmlHttp=GetXmlHttpObject();
	if (section == "carbon") {
		if (!report_1) {
			var url="carbon_scripts/grab_sub_content.php?section="+escape(section)+"&page="+escape(page)+"&time_now="+escape(curDateTime);
		} else {
			var url="carbon_scripts/grab_sub_content.php?section="+escape(section)+"&page="+escape(page)+"&report_1="+escape(report_1)+"&report_2="+escape(report_2)+"&time_now="+escape(curDateTime);
		}
	} else {
		if (!report_1) {
			var url="action_scripts/grab_sub_content.php?section="+escape(section)+"&page="+escape(page)+"&time_now="+escape(curDateTime);
		} else {
			var url="action_scripts/grab_sub_content.php?section="+escape(section)+"&page="+escape(page)+"&report_1="+escape(report_1)+"&report_2="+escape(report_2)+"&time_now="+escape(curDateTime);
		}
	}
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

/*###############################
[JS](N)15
	issue action cart command
###############################*/

function issue_command (box, comma, curr, action_id, fap) {
	ajax_box = box;
	curr_box = curr;
	comma_box = comma;
	curr_down = parseInt(document.getElementById(curr+"_count").innerHTML)-1;
	if (comma == "add") {
		curr_up = parseInt(document.getElementById("my_action_plan_count").innerHTML)+1;
	} else if (comma_box == "check") {
		curr_up = parseInt(document.getElementById("completed_actions_count").innerHTML)+1;
	} else if (comma_box == "remove") {
		curr_up = parseInt(document.getElementById("deleted_actions_count").innerHTML)+1;
	}
	document.getElementById("action_item_"+box).innerHTML = "<br><center><img src=\"images/loading_small.gif\" /></center><br>";
	var curDateTime = new Date();
 	right_or_bottom = "comm";
	xmlHttp=GetXmlHttpObject();
	var params="action_id="+escape(action_id)+"&fap="+escape(fap)+"&command="+escape(comma)+"&cmd_tkn="+escape(get_cookie('cmd_token'))+"&time_now="+escape(curDateTime);
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("POST", "action_scripts/issue_command.php", true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.send(params);
}

/*###############################
[JS](N)16
	toggle crabon calculator
	side menu
###############################*/

var stop_val = 5;

function toggle_carbon (which_box, if_all, category) {
	if (document.getElementById("carbon_5_open")) {
		stop_val = 5;
	} else {
		stop_val = 2;
	}
	if (if_all == "all") {
		if (document.getElementById("add_box_"+category)) {
			if (document.getElementById("add_box_"+category).style.display != "none") {
				add_new(category);
			}
		}
		document.getElementById("carbon_"+which_box+"_open").style.display = "block";
		document.getElementById("carbon_"+which_box+"_closed").style.display = "none";
		for (i=1;i<=stop_val;i++) {
			if (i != which_box) {
				document.getElementById("carbon_"+i+"_open").style.display = "none";
				document.getElementById("carbon_"+i+"_closed").style.display = "block";
			}
		}
	} else {
		if (document.getElementById("carbon_"+which_box+"_open").style.display != "none") {
			document.getElementById("carbon_"+which_box+"_open").style.display = "none";
			document.getElementById("carbon_"+which_box+"_closed").style.display = "block";
		} else {
			document.getElementById("carbon_"+which_box+"_open").style.display = "block";
			document.getElementById("carbon_"+which_box+"_closed").style.display = "none";	
		}
	}
}

/*###############################
[JS](N)17
	toggle action planner
	side menu
###############################*/

function toggle_action (which_box, if_all, category) {
	if (document.getElementById("action_5_open")) {
		stop_val = 5;
	} else {
		stop_val = 4;
	}
	if (if_all == "all") {
		if (document.getElementById("add_box_"+category)) {
			if (document.getElementById("add_box_"+category).style.display != "none") {
				add_new(category,"action");
			}
		}
		document.getElementById("action_"+which_box+"_open").style.display = "block";
		document.getElementById("action_"+which_box+"_closed").style.display = "none";
		for (i=1;i<=stop_val;i++) {
			if (i != which_box) {
				document.getElementById("action_"+i+"_open").style.display = "none";
				document.getElementById("action_"+i+"_closed").style.display = "block";
			}
		}
	} else {
		if (document.getElementById("action_"+which_box+"_open").style.display != "none") {
			document.getElementById("action_"+which_box+"_open").style.display = "none";
			document.getElementById("action_"+which_box+"_closed").style.display = "block";
		} else {
			document.getElementById("action_"+which_box+"_open").style.display = "block";
			document.getElementById("action_"+which_box+"_closed").style.display = "none";	
		}
	}
}

/*###############################
[JS](N)18
	toggle carbon calculator
	sub menus
###############################*/

function toggle_carbon_nav (which_box, sub_section) {
	if (which_box == 3) {
		for (j=1;j<=2;j++) {
			document.getElementById("nav_"+j+"_open").style.display = "none";
			document.getElementById("nav_"+j+"_sub").style.display = "none";
			document.getElementById("nav_"+j+"_closed").style.display = "block";
		}
		if (document.getElementById("nav_"+which_box+"_open").style.display == "block") {
			document.getElementById("nav_"+which_box+"_open").style.display = "none";
			document.getElementById("nav_"+which_box+"_closed").style.display = "block";
			document.getElementById("nav_"+which_box+"_sub").style.display = "none";
		} else {
			document.getElementById("nav_"+which_box+"_open").style.display = "block";
			document.getElementById("nav_"+which_box+"_sub").style.display = "block";
			document.getElementById("nav_"+which_box+"_closed").style.display = "none";
			go_bottom_nav(which_box, 'carbon_calculator', sub_section, '', '');
		}
	} else {
		if (document.getElementById("nav_"+which_box+"_open").style.display == "block") {
			document.getElementById("nav_"+which_box+"_open").style.display = "none";
			document.getElementById("nav_"+which_box+"_sub").style.display = "none";
			document.getElementById("nav_"+which_box+"_closed").style.display = "block";
		} else {
			for (k=1;k<=3;k++) {
				if (document.getElementById("nav_"+k+"_open").style.display == "block") {
					document.getElementById("nav_"+k+"_open").style.display = "none";
					document.getElementById("nav_"+k+"_sub").style.display = "none";
					document.getElementById("nav_"+k+"_closed").style.display = "block";
				}
			}
			document.getElementById("nav_"+which_box+"_open").style.display = "block";
			document.getElementById("nav_"+which_box+"_sub").style.display = "block";
			document.getElementById("nav_"+which_box+"_closed").style.display = "none";
			go_bottom_nav(which_box, 'carbon_calculator', sub_section, '', '');
		}
	}
}

/*###############################
[JS](N)19
	load profile
###############################*/

last_item = "";

function go_pro (to_id) {
	document.getElementById("action_bar").style.display = "none";	
	last_item = current_top_item;
	current_sub_item = 0;
	current_bottom_item = 0;
	navs = new Array();
	navs[1] = "dashy";
	navs[2] = "cal";
	navs[3] = "action";
	for (id=1;id<=3;id++) {
		off_already = "http://seattle.co2challenge.com/images/nav_"+navs[id]+"_off.jpg";
		if (document.getElementById(navs[id]).src != off_already) {
			document.getElementById(navs[id]).src = "http://seattle.co2challenge.com/images/nav_"+navs[id]+"_off.jpg";
		}
	}
	document.getElementById("top_sub_action").style.display = "none";
	document.getElementById("top_sub_carbon").style.display = "none";
	document.getElementById("subnav").innerHTML = "<div><img src=\"images/subnav_div_btm.jpg\" width=\"184\" height=\"100\" /></div>";
	document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
	current_top_item = 0;
	var curDateTime = new Date();
 	right_or_bottom = "pro";	
	xmlHttp=GetXmlHttpObject();
	var params="to_id="+escape(to_id)+"&time_now="+escape(curDateTime);;
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("POST", "extra_scripts/grab_profile_content.php", true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.send(params);	
}

/*###############################
[JS](N)20
	get window dimensions
###############################*/

function getPageSizeWithScroll() {
	if (window.innerHeight && window.scrollMaxY) {// Firefox
		yWithScroll = window.innerHeight + window.scrollMaxY;
		xWithScroll = window.innerWidth + window.scrollMaxX;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		yWithScroll = document.body.scrollHeight;
		xWithScroll = document.body.scrollWidth;
	} else { // works in Explorer 6 Strict, Mozilla (not FF) and Safari
		yWithScroll = document.body.offsetHeight;
		xWithScroll = document.body.offsetWidth;
  	}
	arrayPageSizeWithScroll = new Array(xWithScroll,yWithScroll);
	return yWithScroll;
}

/*###############################
[JS](N)21
	start new action plan
###############################*/

var kind_of_new = 0;

function start_new_plan (level) {
	document.getElementById("blanket").style.height = getPageSizeWithScroll()+"px";
	document.getElementById("blanket").style.display = "block";
	
	var currentTime = new Date()
	var hours = currentTime.getHours()
	var minutes = currentTime.getMinutes()
	var day = currentTime.getDate()
	var month = currentTime.getMonth()
	var year = currentTime.getFullYear()

	var suffix = "AM";
	if (hours >= 12) {
	     suffix = "PM";
	     hours = hours - 12;
	}
	if (hours == 0) {
	     hours = 12;
	}
	if (minutes < 10) {
	     minutes = "0" + minutes;
	}
	if (level == 1) {
	     level_name = "novice";
	} else if (level == 2) {
	     level_name = "intermediate";
	} else {
	     level_name = "advanced";
	}

	document.getElementById("report_name").value = day + "/" + month + "/" + year + " " + hours + ":" + minutes + " " + suffix;
	document.getElementById("plan_pop").style.display = "block";
	kind_of_new = level;
}

/*###############################
[JS](N)22
	start new carbon report
###############################*/

function start_new_report () {
	document.getElementById("blanket").style.height = getPageSizeWithScroll()+"px";
	document.getElementById("blanket").style.display = "block";

	var currentTime = new Date()
	var hours = currentTime.getHours()
	var minutes = currentTime.getMinutes()
	var day = currentTime.getDate()
	var month = currentTime.getMonth()
	var year = currentTime.getFullYear()

	var suffix = "AM";
	if (hours >= 12) {
	suffix = "PM";
	hours = hours - 12;
	}
	if (hours == 0) {
	hours = 12;
	}
	if (minutes < 10) {
	minutes = "0" + minutes;
	}

	document.getElementById("report_name2").value = day + "/" + month + "/" + year + " " + hours + ":" + minutes + " " + suffix;
	document.getElementById("report_pop").style.display = "block";
}

/*###############################
[JS](N)23
	action plan one-ton popup
###############################*/

function action_pop () {
	document.getElementById("blanket").style.height = getPageSizeWithScroll()+"px";
	document.getElementById("blanket").style.display = "block";
	document.getElementById("one_ton").style.display = "block";
}

/*###############################
[JS](N)24
	hide one-ton popup
###############################*/

function hide_one_ton () {	
	document.getElementById("blanket").style.display = "none";
	document.getElementById("one_ton").style.display = "none";
}

/*###############################
[JS](N)25
	request new plan
###############################*/

function cont_new_plan () {
	if (document.getElementById("report_name").value != "" && kind_of_new != 0) {
		document.getElementById("report_text").style.color = "#808080";
		document.getElementById("plan_pop").style.display = "none";
		document.getElementById("blanket").style.display = "none";
		document.getElementById("subnav").innerHTML = "<div><img src=\"images/subnav_div_btm.jpg\" width=\"184\" height=\"100\" /></div>";
		document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
		var curDateTime = new Date();
		right_or_bottom = "plan";
		xmlHttp=GetXmlHttpObject();
		var params="level="+escape(kind_of_new)+"&name="+escape(document.getElementById("report_name").value)+"&new_tkn="+escape(get_cookie('new_token'))+"&time_now="+escape(curDateTime);
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "action_scripts/start_new_plan.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	} else {
		document.getElementById("report_text").style.color = "red";
	}
}

/*###############################
[JS](N)26
	request new report
###############################*/

function cont_new_report () {
	if (document.getElementById("report_name2").value != "") {
		document.getElementById("report_text2").style.color = "#808080";
		document.getElementById("report_pop").style.display = "none";
		document.getElementById("blanket").style.display = "none";
		document.getElementById("subnav").innerHTML = "<div><img src=\"images/subnav_div_btm.jpg\" width=\"184\" height=\"100\" /></div>";
		document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
		var curDateTime = new Date();
		right_or_bottom = "report";
		xmlHttp=GetXmlHttpObject();
		var params="name="+escape(document.getElementById("report_name2").value)+"&new_tkn="+escape(get_cookie('new_token'))+"&time_now="+escape(curDateTime);
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "carbon_scripts/start_new_report.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	} else {
		document.getElementById("report_text2").style.color = "red";
	}
}

/*###############################
[JS](N)27
	delete plan
###############################*/

function delete_plan (plan_id, plan_name) {
	var return_value = confirm("Are you sure you want to delete: "+plan_name+"?\nThis action can not be undone.");
	if ( return_value === true ) {
		document.getElementById("subnav").innerHTML = "<div><img src=\"images/subnav_div_btm.jpg\" width=\"184\" height=\"100\" /></div>";
		document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
		var curDateTime = new Date();
		right_or_bottom = "del";
		xmlHttp=GetXmlHttpObject();
		var params="plan_id="+plan_id+"&del_tkn="+escape(get_cookie('new_token'))+"&time_now="+escape(curDateTime);
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "action_scripts/delete_plan.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	}
}

/*###############################
[JS](N)28
	delete report
###############################*/

function delete_report (report_id, report_name) {
	var return_value = confirm("Are you sure you want to delete: "+report_name+"?\nThis action can not be undone.");
	if ( return_value === true ) {
		document.getElementById("subnav").innerHTML = "<div><img src=\"images/subnav_div_btm.jpg\" width=\"184\" height=\"100\" /></div>";
		document.getElementById("main").innerHTML = "<br><br><br><br><br><br><br><br><br><center><img src=\"images/loading.gif\" /></center>";
		var curDateTime = new Date();
		right_or_bottom = "del_r";
		xmlHttp=GetXmlHttpObject();
		var params="report_id="+report_id+"&del_tkn="+escape(get_cookie('new_token'))+"&time_now="+escape(curDateTime);
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "carbon_scripts/delete_report.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	}
}

/*###############################
[JS](N)29
	compare reports
###############################*/

function compare_reports (type) {
	report_1 = document.getElementById("select").value;
	report_2 = document.getElementById("select2").value;
	current_sub_item = 0;
	go_sub_nav(type, 'compare', 4, report_1, report_2);
}

/*###############################
[JS](N)30
	edit saved report or plan
###############################*/

var old_news = "";

function edit_saved (saved_box_id, category, db_id, action, page) {
	if (box_to_edit == 0) {
		old_news = document.getElementById("saved_box_"+saved_box_id).innerHTML;
		document.getElementById("saved_box_"+saved_box_id).innerHTML = "<br><center><img src=\"images/loading_small.gif\" /></center><br>";
		var curDateTime = new Date();
		right_or_bottom = "edit";
		box_to_edit = saved_box_id;
		xmlHttp=GetXmlHttpObject();
		var params="category="+escape(category)+"&db_id="+escape(db_id)+"&action="+escape(action)+"&edit_tkn="+escape(get_cookie('edit_token'));
		xmlHttp.onreadystatechange=stateChanged;
		if (page == "action") {
			xmlHttp.open("POST", "action_scripts/edit_module.php", true);
		} else {
			xmlHttp.open("POST", "carbon_scripts/edit_report.php", true);
		}
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	} else {
		go_old();
		edit_saved(saved_box_id, category, db_id, action, page);
	}
}

/*###############################
[JS](N)31
	update saved report or plan
###############################*/

function update_saved (category, db_id, action, page) {
	if (box_to_edit != 0) {
		var form_string = "";
		var curDateTime = new Date();
		right_or_bottom = "update";
		xmlHttp=GetXmlHttpObject();
		var params="category="+escape(category)+"&box_id="+box_to_edit+"&db_id="+escape(db_id)+"&action="+escape(action)+"&edit_tkn="+escape(get_cookie('edit_token'));
		for(i=0;i<document.getElementById("edit_form_"+category).elements.length; i++) {
			if (document.getElementById("edit_form_"+category).elements[i].type == "radio") {
				if (document.getElementById("edit_form_"+category).elements[i].checked) {
					form_string = form_string+"&"+document.getElementById("edit_form_"+category).elements[i].name+"="+escape(document.getElementById("edit_form_"+category).elements[i].value);
				}
			} else {
				form_string = form_string+"&"+document.getElementById("edit_form_"+category).elements[i].name+"="+escape(document.getElementById("edit_form_"+category).elements[i].value);
			}
		}
		params = params+form_string;
		document.getElementById("saved_box_"+box_to_edit).innerHTML = "<br><center><img src=\"images/loading_small.gif\" /></center><br>";
		xmlHttp.onreadystatechange=stateChanged;
		if (page == "action") {
			xmlHttp.open("POST", "action_scripts/edit_module.php", true);
		} else {
			xmlHttp.open("POST", "carbon_scripts/edit_report.php", true);
		}
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	}
}

/*###############################
[JS](N)32
	show/hide edit boxes
	get edit box content
###############################*/

function show_edit_box (category) {
	document.getElementById("add_box_"+category).style.display = "block";
}
function hide_edit_box (category) {
	document.getElementById("add_box_"+category).style.display = "none";
}
function go_old () {
	old_news = document.getElementById("saved_box_"+box_to_edit).innerHTML = old_news;
	box_to_edit = 0;
}

/*###############################
[JS](N)33
	add new report/plan data
###############################*/

var existing_content = "";
var current_cat = "";

function add_new (category, page) {
	if (current_cat == "") {
		var form_string = "";
		existing_content = document.getElementById(current_sub+"_"+category+"_display").innerHTML;
		hide_edit_box(category);
		document.getElementById(current_sub+"_"+category+"_display").innerHTML = "<br><center><img src=\"images/loading.gif\" /></center><br>";
		var curDateTime = new Date();
		right_or_bottom = "add_new";
		current_cat = category;
		xmlHttp=GetXmlHttpObject();
		var params="category="+escape(category)+"&action=new&add_new_tkn="+escape(get_cookie('add_new_token'))+"&new_id="+escape(eval(document.getElementById("total_item_tally").value))+"&"+category+"_count="+escape(eval(document.getElementById(category+"_count").innerHTML));
		for(i=0;i<document.getElementById("add_form_"+category).elements.length; i++) {
			if (document.getElementById("add_form_"+category).elements[i].type == "radio") {
				if (document.getElementById("add_form_"+category).elements[i].checked) {
					form_string = form_string+"&"+document.getElementById("add_form_"+category).elements[i].name+"="+escape(document.getElementById("add_form_"+category).elements[i].value);
				}
			} else {
				form_string = form_string+"&"+document.getElementById("add_form_"+category).elements[i].name+"="+escape(document.getElementById("add_form_"+category).elements[i].value);
			}
		}
		params = params+form_string;
		xmlHttp.onreadystatechange=stateChanged;
		if (page == "action") {
			xmlHttp.open("POST", "action_scripts/edit_module.php", true);
		} else {
			xmlHttp.open("POST", "carbon_scripts/edit_report.php", true);
		}
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	}
}

/*###############################
[JS](N)34
	delete saved entry
###############################*/

function delete_saved (db_id, item_name, category, page) {
	if (box_to_edit != 0) {
		if (document.getElementById(category+"_add_it").style.display == "none") {
			document.getElementById(category+"_add_it").style.display = "block";
		}
		var return_value = confirm("Are you sure you want to delete: "+item_name+"?\nThis action can not be undone.");
		if ( return_value === true ) {
			document.getElementById("saved_box_"+box_to_edit).innerHTML = "<br><center><img src=\"images/loading_small.gif\" /></center><br>";
			var curDateTime = new Date();
			right_or_bottom = "del_saved";
			xmlHttp=GetXmlHttpObject();
			var params="action=delete&category="+category+"&db_id="+db_id+"&del_tkn="+escape(get_cookie('del_token'));
			xmlHttp.onreadystatechange=stateChanged;
		if (page == "action") {
			xmlHttp.open("POST", "action_scripts/edit_module.php", true);
		} else {
			xmlHttp.open("POST", "carbon_scripts/edit_report.php", true);
		}
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			xmlHttp.send(params);
		}
	}
}

/*###############################
[JS](N)35
	old dashboard retreival
###############################*/

function get_dash_comp (section) {
	if (section == "your") {
		var url="dashboard_scripts/your_comp.php?dash_report_1="+escape(document.getElementById("dash_report_1").value)+"&dash_report_2="+escape(document.getElementById("dash_report_2").value)+"&dash_report_3="+escape(document.getElementById("dash_report_3").value);
		document.getElementById("dash_comp_your").innerHTML = "<br><center><img src=\"images/loading.gif\" /></center><br>";
		right_or_bottom = "your_comp";
		xmlHttp=GetXmlHttpObject();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	} else if (section == "acts") {
		var url="dashboard_scripts/your_acts.php?dash_plan_1="+escape(document.getElementById("dash_plan_1").value)+"&dash_plan_2="+escape(document.getElementById("dash_plan_2").value)+"&dash_plan_3="+escape(document.getElementById("dash_plan_3").value);
		document.getElementById("dash_comp_acts").innerHTML = "<br><center><img src=\"images/loading.gif\" /></center><br>";
		right_or_bottom = "your_acts";
		xmlHttp=GetXmlHttpObject();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	}
}

/*###############################
[JS](N)36
	make suggestion
###############################*/

function make_suggestion () {
	var suggestion = document.getElementById("suggestion").value;
	if (suggestion) {
		document.getElementById("suggestion_box").innerHTML = "<center><img src=\"images/loading_small.gif\" /></center>";
		document.getElementById("suggestion_form").style.display = "none";
		var curDateTime = new Date();
		right_or_bottom = "suggestion";
		xmlHttp=GetXmlHttpObject();
		var params="command=make&suggestion="+escape(suggestion)+"&cmd_tkn="+escape(get_cookie('cmd_token'))+"&time_now="+escape(curDateTime);
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "dashboard_scripts/issue_command.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	} else {
		alert("Please enter a suggestion before submitting the form.");
	}
}

/*###############################
[JS](N)37
	suggest action item
###############################*/

function suggest_action () {
	typeact = document.getElementById("type").value;
	effortact = document.getElementById("effort").value;
	costact = document.getElementById("cost").value;
	co2act = document.getElementById("co2").value;
	descriptionact = document.getElementById("description").value;
	labelact = document.getElementById("label").value;
	editsourceact = document.getElementById("act_source").value;
	if (!typeact || !effortact || !costact || !co2act || !descriptionact || !labelact) {
		alert("Please fill out every field.");
	} else {
		document.getElementById("add_form").style.display = "none";
		document.getElementById("add_box").innerHTML = "<br><center><img src=\"images/loading_small.gif\" /></center><br>";
		var curDateTime = new Date();
		var params="command=suggest_action&action="+labelact+"&source="+editsourceact+"&co2="+co2act+"&cost="+costact+"&effort="+effortact+"&type="+typeact+"&description="+escape(descriptionact)+"&cmd_tkn="+escape(get_cookie('cmd_token'))+"&time_now="+escape(curDateTime);
		right_or_bottom = "suggest_action";
		xmlHttp=GetXmlHttpObject();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "dashboard_scripts/issue_command.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	}
}

/*###############################
[JS](N)38
	lost password
###############################*/

function get_pass () {
	premail = document.getElementById("fpinp").value;
	document.getElementById("pass_box").innerHTML = "<br><center><img src=\"images/loading_small.gif\" /></center><br>";
	var curDateTime = new Date();
 	right_or_bottom = "forgot";
	xmlHttp=GetXmlHttpObject();
	var params="address="+escape(premail)+"&login_tkn="+escape(get_cookie('login_token'))+"&time_now="+escape(curDateTime);
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("POST", "extra_scripts/get_password.php", true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.send(params);
}

/*###############################
[JS](N)39
	load auto data
###############################*/

var current_auto_id = "";
function auto_shift (box,id) {
	current_auto_id = id;
	a_year = document.getElementById("year"+id).value;
	a_make = document.getElementById("make"+id).value;
	if (document.getElementById("model"+id)) {
		a_model = document.getElementById("model"+id).value;
	}
	if (box == "year") {
		var url="carbon_scripts/auto_ajax.php?which=year&mode="+id+"&year="+escape(a_year)+"&make="+escape(a_make);
		document.getElementById("make_box"+id).innerHTML = "<img src=\"images/loading_small.gif\" />";
		document.getElementById("model_box"+id).innerHTML = "<select name=\"model\" id=\"model\"><option value=\"\">---</option></select>";
		right_or_bottom = "auto_shift_year";
		xmlHttp=GetXmlHttpObject();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	} else if (box == "make") {
		var url="carbon_scripts/auto_ajax.php?which=make&mode="+id+"&year="+escape(a_year)+"&make="+escape(a_make);
		document.getElementById("model_box"+id).innerHTML = "<img src=\"images/loading_small.gif\" />";
		right_or_bottom = "auto_shift_make";
		xmlHttp=GetXmlHttpObject();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	} else if (box == "model") {
		var url="carbon_scripts/auto_ajax.php?which=model&mode="+id+"&year="+escape(a_year)+"&make="+escape(a_make)+"&model="+escape(a_model);
		document.getElementById("mpg_box"+id).innerHTML = "<img src=\"images/loading_small.gif\" />";
		right_or_bottom = "auto_shift_model";
		xmlHttp=GetXmlHttpObject();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	}
}

/*###############################
[JS](N)39
	load auto data
###############################*/

var current_auto_id = "";
function auto_shift2 (box,id) {
	current_auto_id = id;
	a_year = document.getElementById("year"+id).value;
	a_make = document.getElementById("make"+id).value;
	if (document.getElementById("model"+id)) {
		a_model = document.getElementById("model"+id).value;
	}
	if (box == "year") {
		var url="action_scripts/auto_ajax.php?which=year&mode="+id+"&year="+escape(a_year)+"&make="+escape(a_make);
		document.getElementById("make_box"+id).innerHTML = "<img src=\"images/loading_small.gif\" />";
		document.getElementById("model_box"+id).innerHTML = "<select name=\"model\" id=\"model\"><option value=\"\">---</option></select>";
		right_or_bottom = "auto_shift_year";
		xmlHttp=GetXmlHttpObject();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	} else if (box == "make") {
		var url="action_scripts/auto_ajax.php?which=make&mode="+id+"&year="+escape(a_year)+"&make="+escape(a_make);
		document.getElementById("model_box"+id).innerHTML = "<img src=\"images/loading_small.gif\" />";
		right_or_bottom = "auto_shift_make";
		xmlHttp=GetXmlHttpObject();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	} else if (box == "model") {
		var url="action_scripts/auto_ajax.php?which=model&mode="+id+"&year="+escape(a_year)+"&make="+escape(a_make)+"&model="+escape(a_model);
		document.getElementById("mpg_box"+id).innerHTML = "<img src=\"images/loading_small.gif\" />";
		right_or_bottom = "auto_shift_model";
		xmlHttp=GetXmlHttpObject();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	}
}


/*###############################
[JS](N)40
	show extra dropdown on
	action cart items
###############################*/

function show_extra (id) {
	if (document.getElementById("action_extra_"+id)) {
		if (document.getElementById("action_extra_"+id).style.display == "none") {
			document.getElementById("action_extra_"+id).style.display = "block";
		} else {
			document.getElementById("action_extra_"+id).style.display = "none";
		}
	}
}

/*###############################
[JS](N)41
	get action bar
###############################*/

function get_action_bar () {
	var url="extra_scripts/action_bar.php";
	right_or_bottom = "action_bar";
	xmlHttp=GetXmlHttpObject();
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

/*###############################
[JS](N)42
	old note saver
###############################*/

var save_item = 0;

function save_note (id, item_id) {
	note = document.getElementById("note_"+item_id).value;
	document.getElementById("action_extra_"+item_id).innerHTML = "<br><center><img src=\"images/loading_small.gif\" /></center><br>";
	var curDateTime = new Date();
 	right_or_bottom = "save_note";
 	save_item = item_id;
	xmlHttp=GetXmlHttpObject();
	var params="note="+escape(note)+"&id="+id+"&item="+item_id+"&cmd_tkn="+escape(get_cookie('cmd_token'))+"&time_now="+escape(curDateTime);
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("POST", "action_scripts/notes.php", true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.send(params);
}

/*###############################
[JS](N)43
	update action values
###############################*/

function update_vals (section, new_val) {
	document.getElementById(section+"loading").style.display = "block";
	var url="action_scripts/make_update.php?section="+section+"&new_val="+new_val;
	right_or_bottom = "update_"+section;
	xmlHttp=GetXmlHttpObject();
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

/*###############################
[JS](N)44
	old donation function
###############################*/

function go_donate (id) {
	organization = document.getElementById("donate").value;
	var curDateTime = new Date();
 	right_or_bottom = "donate";
	xmlHttp=GetXmlHttpObject();
	var params="organization="+escape(organization)+"&id="+id+"&cmd_tkn="+escape(get_cookie('cmd_token'))+"&time_now="+escape(curDateTime);
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("POST", "action_scripts/donate.php", true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.send(params);
}

/*###############################
[JS](N)45
	minimize and maximize
	action bar
###############################*/

function plus_minus() {
	if (document.getElementById("wrapper_pop2").style.height != "190px") {
		document.getElementById("wrapper_pop2").style.height = "190px";
		document.getElementById("wrapper_pop2").style.width = "40px";
		document.getElementById("minus_button").style.display = "none";
		document.getElementById("api_1").style.display = "none";
		document.getElementById("plus_button").style.display = "block";				
		document.getElementById("api_2").style.display = "block";
	} else {
		document.getElementById("wrapper_pop2").style.height = "390px";
		document.getElementById("wrapper_pop2").style.width = "185px";
		document.getElementById("plus_button").style.display = "none";
		document.getElementById("api_2").style.display = "none";
		document.getElementById("minus_button").style.display = "block";	
		document.getElementById("api_1").style.display = "block";
	}
}

/*###############################
[JS](N)46
	add extra family member
	names in profile
###############################*/

function add_names (mem_val) {
	for (m=1;m<16;m++) {
		if (document.getElementById("name_box_"+m).style.display == "none" && m<mem_val) {
			document.getElementById("name_box_"+m).style.display = "block";
		} else if (document.getElementById("name_box_"+m).style.display == "block" && m>=mem_val) {
			document.getElementById("add_name_"+m).value = "";
			document.getElementById("name_box_"+m).style.display = "none";
		}
	}
}

/*###############################
[JS](N)47
	change password
###############################*/

function change_pass () {
	document.getElementById("blanket").style.height = getPageSizeWithScroll()+"px";
	document.getElementById("blanket").style.display = "block";
	document.getElementById("old_pass").value = "";
	document.getElementById("change_1").value = "";
	document.getElementById("change_2").value = "";
	document.getElementById("change_text_1").style.color = "#808080";
	document.getElementById("change_text_2").style.color = "#808080";
	document.getElementById("old_text").style.color = "#808080";
	document.getElementById("change_pop").style.display = "block";
}

function hide_change () {
	document.getElementById("blanket").style.display = "none";
	document.getElementById("change_pop").style.display = "none";
}

function cont_change_pass () {
	if (document.getElementById("old_pass").value != "" && document.getElementById("change_1").value != "" && (document.getElementById("change_1").value == document.getElementById("change_2").value)) {
		document.getElementById("change_text_1").style.color = "#808080";
		document.getElementById("change_text_2").style.color = "#808080";
		document.getElementById("old_text").style.color = "#808080";
		document.getElementById("change_box").style.display = "none";
		document.getElementById("change_load").style.display = "block";
		var curDateTime = new Date();
		right_or_bottom = "change_pass";
		xmlHttp=GetXmlHttpObject();
		var params="old_pass="+escape(document.getElementById("old_pass").value)+"&change_1="+escape(document.getElementById("change_1").value)+"&change_2="+escape(document.getElementById("change_2").value)+"&new_tkn="+escape(get_cookie('new_token'))+"&time_now="+escape(curDateTime);
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("POST", "extra_scripts/change_pass.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	} else {
		if (document.getElementById("old_pass").value == "") {
			document.getElementById("old_text").style.color = "red";
		} else {
			document.getElementById("old_text").style.color = "#808080";
		}
		if (document.getElementById("change_1").value != document.getElementById("change_2").value) {
			document.getElementById("change_text_1").style.color = "red";
			document.getElementById("change_text_2").style.color = "red";
		} else if (document.getElementById("change_1").value == "") {
			document.getElementById("change_text_1").style.color = "red";
			document.getElementById("change_text_2").style.color = "red";
		} else {
			document.getElementById("change_text_1").style.color = "#808080";
			document.getElementById("change_text_2").style.color = "#808080";
		}
	}
}

/*###############################
[JS](N)48
	toggle gas entry components
###############################*/

function toggle_gas () {
	if (document.getElementById('gas_block').style.display == 'none') { 
		document.getElementById('gas_block').style.display = 'block';
	} else {
		document.getElementById('gas_block').style.display = 'none';
	}
}

/*###############################
[JS](N)49
	toggle energy entry
	components
###############################*/

function toggle_energy(e_id) {
	for (i=1;i<=3;i++) {
		if (e_id == i) {
			document.getElementById("energy_opt_"+i).style.display = "block";
		} else {
			document.getElementById("energy_opt_"+i).style.display = "none";
		}
	}
}
