// recent ahu list
function refreshRecentAhu()
{
	var div = document.all.RecentAhuPanel_AhuList;
	if(div) {
		RecentAhuList.GetRecentAhuListForLoggedUser(makeRecentAhuList, div);
	}
}

function makeRecentAhuList(res) {
	if(res.error == null && res.value != null && res.context != null) {
		var div = res.context;
		var v = res.value;
		var str = "";
		for(i = 0; i < v.length; ++i) {
			if(v[i][1] == 0) {
				// folder
				str += "<div style=\"text-decoration:none;font-weight:normal;\">" + v[i][2] + "</div>";
			} else if(v[i][1] != 0) {
				// ahu
				var h = "Steps.aspx?load_id=" + v[i][1] + "&proj_id=" + v[i][0];
				str += "<div style=\"text-decoration:none;font-weight:normal;\">&nbsp;&nbsp;<a class=\"normal\" style=\"color:#606060;text-decoration:none;\" href=\"" + h + "\">" + v[i][2] + "</a></div>";
			}
		}
		str += "<div style=\"height:5px\"></div>";
		div.innerHTML = str;
	} else if(res.error != null && res.context != null){
		var div = res.context;
		div.innerHTML = "";
	}		
}

// save to briefcase dialog
function saveToBriefcase() {
	var ahu_id = document.forms[0].SelectedAhuId.value;
	if(ahu_id) {
		var r = window.showModalDialog("SaveToFolder.aspx?ahuID=" + ahu_id,
			null,
			"dialogWidth:600px; dialogHeight:535px; help:no; resizable:yes; scroll:yes; status:no");
		if(r) {
			if(r.ok) {
				// ok
				showInfo(r.message);
				// odswierzaj liste recent AHU
				refreshRecentAhu();
				
			} else {
				// error
				showError(r.message);
			}
		}
	}
}

// navigate frameset from inner frame
function parentRedirect(url) {
	if(window.parent) {
		window.parent.navigate(url);
	} else {
		window.navigate(url);
	}
}

// open help window
function openhelp(topic) {
	scrwidth=screen.width;
	scrheight=screen.height;
	width=800;
	height=600;
	if(scrwidth>800 && scrheight>600) {
		winleft=(scrwidth-width)/2;
		wintop=(scrheight-height)/2;
	} else {
		winleft=0;
		wintop=0;
	}
	
	newwindow = window.open("HelpFrames.aspx?topic="+topic, 'ccolhelp',
		   "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=1,width="+width+",height="+height+",left="+winleft+",top="+wintop);
	newwindow.focus();
}

// bottom message
function showMessage(message, is_error) {
	//alert(message);
	// check parent window
	if(window.parent) {
		// parent frame
		if(window.parent.document.all.bottomText) {
			window.parent.document.all.bottomText.innerText = message;
			window.parent.document.all.bottomText.title = message;
			if(is_error) {
				window.parent.document.all.bottomText.className = "errorMsg";
			} else {
				window.parent.document.all.bottomText.className = "";
			}
		}
		if(window.parent.document.all.bottomIcon) {
			window.parent.document.all.bottomIcon.title = message;
			if(is_error) {
				window.parent.document.all.bottomIcon.src = "images/error_icon.gif";
			} else {
				window.parent.document.all.bottomIcon.src = "images/bottom_icon.gif";
			}
		}
	} else {
		// local
		if(document.all.bottomText) {
			document.all.bottomText.innerText = message;
			document.all.bottomText.title = message;
			if(is_error) {
				document.all.bottomText.className = "errorMsg";
			} else {
				document.all.bottomText.className = "";
			}
		}
		if(document.all.bottomIcon) {
			document.all.bottomIcon.title = message;
			if(is_error) {
				document.all.bottomIcon.src = "images/error_icon.gif";
			} else {
				document.all.bottomIcon.src = "images/bottom_icon.gif";
			}
		}
	}
}

// reset bottom message
function resetMessage() {
	showMessage("ClimaCAD online", false);
}

// show neutral information 
function showInfo(message) {
	showMessage(message, false);
}

// show error 
function showError(message) {
	showMessage(message, true);
}

//-----------------------------------------------
// Kontrolki

var locs = window.location.pathname.split("/");
if(locs.length > 0)
{
	if(locs[locs.length-1].toLowerCase() == "step2.aspx")
	{
		window.onload = _disableAll;
	}
}
else
	window.onload = _disableAll;

function _disableAll()
{
	_disableH("FirstInPair_H1");
	_disableH("FirstInPair_H2");
	_disableH("FirstInPair_H3");
	_disableC("FirstInPair_C1");
}

function _changeH()
{
	var arr= event.srcElement.id.split("_");
	_disableH(arr[0]+"_"+arr[1]);
	// ma wplyw na automatyke
	if(changeAutomatics) {
		changeAutomatics();
	}
}

/* nagrzewnica */
function _disableH(prefix) {
	//debugger;
	var f= document.forms[0].elements;
	
	if(f[prefix+"_Type"]==null) {
		return;
	}

	var type= f[prefix+"_Type"].selectedIndex==0; // wodna
	var dis;
	if(type==true) {
		dis="";
	} else {
		dis="disabled";
	}
	f[prefix+"_TempBefore_tb"].disabled= dis;
	f[prefix+"_TempAfter_tb"].disabled=	dis;
	f[prefix+"_GlycolKind"].disabled= dis;
	f[prefix+"_Glycol_tb"].disabled= dis;
	
	//Events
	f[prefix+"_Type"].onchange= _changeH;
	f[prefix+"_Algorythm"].onchange= _changeH;
	f[prefix+"_Method"].onchange= _changeH;
	f[prefix+"_VA_Algorythm"].onchange= _changeH;
	f[prefix+"_SeasonCheck1"].onclick= _seasonExclude;
	f[prefix+"_SeasonCheck2"].onclick= _seasonExclude;
	
	var d= (f[prefix+"_Algorythm"].selectedIndex==0 ? true : false); // domyślny
	var p= (f[prefix+"_Algorythm"].selectedIndex==2 ? true : false); // z poprzedniego elementu
	var t= (f[prefix+"_Method"].selectedIndex==0 ? true : false); // temp za
	if(d==true) {
		f[prefix+"_AirTempBefore_tb"].disabled=		"disabled";
		f[prefix+"_AirHumidity_tb"].disabled=		"disabled";
		f[prefix+"_AirAfter_tb"].disabled=			"disabled";
		f[prefix+"_Power_tb"].disabled=				"disabled";
		f[prefix+"_Method"].disabled=				"disabled";
		// schowaj zaawansowany panel
		document.all[prefix+'_AdvancedPanel'].style.display= 'none';
		document.all[prefix+'_AdvancedPanel'].style.height=1;
		// lato / zima
		f[prefix+"_SeasonCheck1"].checked = false;
		f[prefix+"_SeasonCheck2"].checked = false;
	} else {
		if(p == true) {
			f[prefix+"_AirTempBefore_tb"].disabled=	"disabled";
			f[prefix+"_AirHumidity_tb"].disabled=	"disabled";
		} else {
			f[prefix+"_AirTempBefore_tb"].disabled=	"";
			f[prefix+"_AirHumidity_tb"].disabled=	"";
		}		
	
		f[prefix+"_Method"].disabled=	"";
		if(t==true) {
			f[prefix+"_AirAfter_tb"].disabled=	"";
			f[prefix+"_Power_tb"].disabled=		"disabled";
		} else {
			f[prefix+"_AirAfter_tb"].disabled=	"disabled";
			f[prefix+"_Power_tb"].disabled=		"";
		}
		
		// pokaż zaawansowany panel
		document.all[prefix+'_AdvancedPanel'].style.display= 'block';
		// lato / zima
		if((!f[prefix+"_SeasonCheck1"].checked && !f[prefix+"_SeasonCheck2"].checked) ||
		 (f[prefix+"_SeasonCheck1"].checked && f[prefix+"_SeasonCheck2"].checked)) {
			f[prefix+"_SeasonCheck1"].checked = false;
			f[prefix+"_SeasonCheck2"].checked = true;
		}
	}

	// sprawdz, czy jest wybrana automatyka lub control elements
	// - jezeli tak, to daj mozliwosc wyboru zaworow
	// - jezeli nie - wtedy zawsze default i brak mozliwosci zmiany va
	// AP: no i oczywiście zawory tylko dla nagrzewnic wodnych fachowcy ;)
	var is_va = ((f["FullControlsCheck"] != null && f["FullControlsCheck"].checked) ||
				(f["ControlElementsCheck"] != null && f["ControlElementsCheck"].checked)) &&
				type;

	if(is_va) {
		f[prefix+"_VA_Algorythm"].disabled = false;
	} else {
		f[prefix+"_VA_Algorythm"].disabled = true;
		f[prefix+"_VA_Algorythm"].selectedIndex = 0;
	}	

	var va1= f[prefix+"_VA_Algorythm"].selectedIndex==0;
	var va2= f[prefix+"_VA_Algorythm"].selectedIndex==1;
	var va3= f[prefix+"_VA_Algorythm"].selectedIndex==2;
	if(va1==true) {
		f[prefix+"_VA_AddPress_tb"].disabled=	"disabled";
		f[prefix+"_VA_Defined"].disabled=		"disabled";
		document.all[prefix+'_ValvePanel'].style.display= 'none';
	} else if(va2==true) {
		f[prefix+"_VA_AddPress_tb"].disabled="";
		f[prefix+"_VA_Defined"].disabled="disabled";
		document.all[prefix+'_ValvePanel'].style.display='block';
	} else if(va3==true) {
		f[prefix+"_VA_AddPress_tb"].disabled="disabled";
		f[prefix+"_VA_Defined"].disabled="";
		document.all[prefix+'_ValvePanel'].style.display='block';
	}
}

/* lato / zima */
function _seasonExclude() {

	var e= event.srcElement.id;
	var arr= event.srcElement.id.split("_");
	var elem= arr[0]+"_"+arr[1];
	
	if(e.indexOf("Check2")!=-1)
		document.forms[0].elements[elem+"_SeasonCheck1"].checked= !document.forms[0].elements[elem+"_SeasonCheck1"].checked;
	else
		document.forms[0].elements[elem+"_SeasonCheck2"].checked= !document.forms[0].elements[elem+"_SeasonCheck2"].checked;
}

/* chłodnica */

function _changeC()
{
	var arr= event.srcElement.id.split("_");
	_disableC(arr[0]+"_"+arr[1]);
}

function _disableC(p) {
	var f= document.forms[0].elements;
	
	if(f[p+"_Type"]==null) {
		return;
	}
	
	//Events
	f[p+"_Type"].onchange= _changeC;
	f[p+"_Algorythm"].onchange= _changeC;
	f[p+"_Method"].onchange= _changeC;
	f[p+"_VA_Algorythm"].onchange= _changeC;
		
	var type= f[p+"_Type"].selectedIndex==0; // wodna
	var dis1,dis2;
	if(type==true) {
		dis1="";
		dis2="disabled";
	} else {
		dis1="disabled";
		dis2="";
	}
	f[p+"_TempBefore_tb"].disabled=dis1;
	f[p+"_TempAfter_tb"].disabled=dis1;
	f[p+"_GlycolKind"].disabled=dis1;
	f[p+"_Glycol_tb"].disabled=dis1;
	
	f[p+"_FreonType"].disabled=dis2;
	f[p+"_FreonTemp_tb"].disabled=dis2;
	if(f[p+"_FreonSections"]) {
		f[p+"_FreonSections"].disabled=dis2;
	}
	
	var d= f[p+"_Algorythm"].selectedIndex==0; // domyślny
	var px= f[p+"_Algorythm"].selectedIndex==2; // z poprzedniego elementu
	var t= f[p+"_Method"].selectedIndex==0; // temp za
	if(d==true) {
		f[p+"_AirTempBefore_tb"].disabled="disabled";
		f[p+"_AirHumidity_tb"].disabled="disabled";
		f[p+"_AirAfter_tb"].disabled="disabled";
		f[p+"_Power_tb"].disabled="disabled";
		f[p+"_Method"].disabled="disabled";
		// schowaj zaawansowany panel
		document.all[p+'_AdvancedPanel'].style.display= 'none';
	} else {
		if(px == true) {
			f[p+"_AirTempBefore_tb"].disabled="disabled";
			f[p+"_AirHumidity_tb"].disabled="disabled";
		} else {
			f[p+"_AirTempBefore_tb"].disabled="";
			f[p+"_AirHumidity_tb"].disabled="";
		}		
		
		f[p+"_Method"].disabled="";
		if(t==true) {
			f[p+"_AirAfter_tb"].disabled="";
			f[p+"_Power_tb"].disabled="disabled";
		} else {
			f[p+"_AirAfter_tb"].disabled="disabled";
			f[p+"_Power_tb"].disabled="";
		}
		// pokaż zaawansowany panel
		document.all[p+'_AdvancedPanel'].style.display= 'block';
	}
	
	// sprawdz, czy jest wybrana automatyka lub control elements
	// - jezeli tak, to daj mozliwosc wyboru zaworow
	// - jezeli nie - wtedy zawsze default i brak mozliwosci zmiany va
	// AP: tu tak samo - zawory mozna wybierac tylko dla wodnych
	var is_va = ((f["FullControlsCheck"] != null && f["FullControlsCheck"].checked) ||
				(f["ControlElementsCheck"] != null && f["ControlElementsCheck"].checked)) &&
				type;

	if(is_va) {
		f[p+"_VA_Algorythm"].disabled = false;
	} else {
		f[p+"_VA_Algorythm"].disabled = true;
		f[p+"_VA_Algorythm"].selectedIndex = 0;
	}	
	
	var va1= f[p+"_VA_Algorythm"].selectedIndex==0;
	var va2= f[p+"_VA_Algorythm"].selectedIndex==1;
	var va3= f[p+"_VA_Algorythm"].selectedIndex==2;
	if(va1==true) {
		f[p+"_VA_AddPress_tb"].disabled="disabled";
		f[p+"_VA_Defined"].disabled="disabled";
		document.all[p+'_ValvePanel'].style.display= 'none';
	} else if(va2==true) {
		f[p+"_VA_AddPress_tb"].disabled="";
		f[p+"_VA_Defined"].disabled="disabled";
		document.all[p+'_ValvePanel'].style.display= 'block';
	} else if(va3==true) {
		f[p+"_VA_AddPress_tb"].disabled="disabled";
		f[p+"_VA_Defined"].disabled="";
		document.all[p+'_ValvePanel'].style.display= 'block';
	}
}