//

function setGroupActive(controlGroup, state, init)
{
	for(var controlIndex in controlGroup)
	{
		var control = findObj(controlGroup[controlIndex]);
		if (control!=null)
			{
			if (control.disabled != state)
			init = true;
		control.disabled = !state;
			
		if (control.type=='text' || control.type=='password' || control.type=='file' || control.type=='select-one' || control.type=='select-multiple')
			control.className = state ? "inputText" : "inputText  formInputDisabled";
			
			if (!init && (control.id.toLowerCase().indexOf('other')>=0))
			{
				if (state)
				{
					control.value='';
					//control.focus();
				}
				else
				{
					control.value='Other';
				}
			}
		}
	}
}

function setGroupVisible(controlGroup, state)
{
	for(var controlIndex in controlGroup)
	{
		var control = findObj(controlGroup[controlIndex]);
		control.style.display = ( state ) ? 'block' : 'none';
	}
}


function _SizeString(_w, _h)
{
	var _x = (screen.availWidth - _w) / 2;
	var _y = (screen.availHeight - _h) / 2;
	if (_x < 0) _x = 0;
	if (_y < 0) _y = 0;
	return "height=" + _h + ",width=" + _w + ",left=" + _x + ",top=" + _y;
}

function _getYesNoParam(paramName, paramValue, startWithSeparator) {
	if (typeof(paramValue) == "undefined")
		return "";

	var param = paramName + "=";
	param += (paramValue) ? "yes" : "no";
	if (startWithSeparator) param = "," + param;
	return param;
}

function openWinEx(url, name, width, height, isResizable, isScrollbars, isLocation) {
	var params = "";
	if (typeof(width) != "undefined" && typeof(height) != "undefined")
		params += _SizeString(width, height);
	params += _getYesNoParam("resizable", isResizable, true);
	params += _getYesNoParam("scrollbars", isScrollbars, true);
	params += _getYesNoParam("location", isLocation, true);
	return openWin(url, name, params);
}

function openWin(url, name, params) {
	var win = window.open(url, name, params);
	//if (win != null) win.focus();
	return win;
}

/// Here comez Modal Dialog Emulation
var dialogWindow;

function DialogExists()
{	
	return (dialogWindow && !dialogWindow.closed);
}
function ModalWindowFocus()
{
	if (DialogExists())
	dialogWindow.focus();
	else 
		StopDialogEvents();
	//Block right mousebutton
//	if(event.button==2)		alert('');		
}

function StopDialogEvents()
{
	if (!dialogWindow) return;
	
	window.onunload = null;
	document.onclick = null;
	window.onfocus = null;
	document.onmousedown=null;	
	window.onclick = null;
}

function StartDialogEvents()
{
	if (!DialogExists()) return;
	window.onunload = CloseChild;
	document.onclick = ModalWindowFocus;
	window.onfocus = ModalWindowFocus;
	document.onmousedown=ModalWindowFocus;
	window.onclick = ModalWindowFocus;
}


function CloseChild(state)
{
	if (DialogExists() && dialogWindow.CloseChild)
		dialogWindow.CloseChild(true);
	CloseModalDialog();
	if (state && opener && opener.StopDialogEvents)
		opener.StopDialogEvents();
}


function CloseModalDialog()
{
	if (!DialogExists()) return;
	StopDialogEvents();
	dialogWindow.close();
	dialogWindow = null;
}

function ShowMyModalDialog(url, name, width, height, isResizable, isScrollbars)
{
	dialogWindow = openWinEx(url, name, width, height, isResizable, isScrollbars);
	StartDialogEvents();
}
/*

	"MODAL WINDOW: MADE EASY"

	How 2 use modal windows correct to avoid errors:
	1. Use function ShowMyModalDialog() to open & function CloseModalDialog() to close modal window.
	2. If OPENER window reloads then any information about modal window become lost. To restore "modality" on
	   OPENER reloading re-open ModalWindow using the same window name.
	3. If document in modal window reloads (postback, etc.) it's easy to restore modality using function StartDialogEvents() on OPENER.
	   For example: window.opener.StartDialogEvents();
	4. Be sure to add ONUNLOAD event handler to opened window, that will disable modality in case ow modal window closin by
	   "X" button. Use it like this: window.onunload = opener.StopDialogEvents;
*/

// Changing active/inactiave element's style
function triggerLabelActive(name, state)
{
	var d = document;
	var cls = (state?'':'formInputPrefix');

	if (d.getElementById)
		d.getElementById(name).className = cls;
	else if (d.layers)
		d.layers[name].className = cls;
	else if (d.all)
		d.all[name].className = cls;
}
// Keeping Session Alive

	var timerID = 0;
	var timer2ID = 0;
	var timeout = 0;

		function sLoadData() {
			var sURL = 'blank.aspx?Val=' + Math.random();
			var sRequest=null;
			if(!sRequest) try { sRequest=new ActiveXObject('Msxml2.XMLHTTP'); } catch (e){}
			if(!sRequest) try { sRequest=new ActiveXObject('Microsoft.XMLHTTP'); } catch (e){}
			if(!sRequest) try { sRequest=new XMLHttpRequest(); } catch (e){}
			if(!sRequest) return '';

			sRequest.open('GET', sURL, false);
			sRequest.send(null);
			timerID = setTimeout('sLoadData()', 60000);
			timeout--;			
			//status = timeout;
			if(timeout==0) location.href = '../Logoff.aspx';
		}

		function Save()
		{
			findObj('ButtonAutoSave').click();
		}

		function body_onload(autosave, timeout)
		{
//			if(timerID == 0) {
//			timeout = timeout;
//			timerID = setTimeout('sLoadData()', 60000);
//			}
			if(autosave)
				timer2ID = setTimeout('Save()', autosave * 60000);
		}

		function body_onload2(minutes)
		{
			timeout = minutes;
			timerID = setTimeout('sLoadData()', 60000);
		}

		function body_onunload()
		{
			if(timerID) {
				clearTimeout(timerID);
				timerID = 0;
			}
			if(timer2ID) {
				clearTimeout(timer2ID);
				timer2ID = 0;
			}
		}