window.onresize = function(){
    var oContainer = document.getElementById('ContentBox');
    var oLoader = document.getElementById('statusLoader');  
    if(!document.all && oLoader){
        oLoader.style.width = oContainer.clientWidth+'px';
        oLoader.childNodes[0].childNodes[0].childNodes[0].style.width = oContainer.clientWidth+'px';
    }
}

function disableWindow(str){
    var oContainer = document.getElementById('ContentBox');
    var oLoader = document.getElementById('statusLoader');
    var oLoaderCell = document.getElementById('statusLoaderText');
    
    oLoaderCell.innerHTML = str;
    oLoader.style.height = oContainer.clientHeight+'px';
    if(!document.all){
        oLoader.style.width = oContainer.clientWidth+'px';
        oLoaderCell.style.width = oContainer.clientWidth+'px';
        oLoaderCell.style.height = oContainer.clientHeight+'px';
    }
    oLoader.style.display = 'block';    
}

function disableButton(but,str,src){
	var oBut = document.getElementById(but);
	if(oBut.type == 'submit' || oBut.type == 'button'){
		oBut.value = str;
		oBut.disabled = true;
	}else if(oBut.src != ''){
		oBut.src = src;
		oBut.parentNode.href = 'javascript: void(0)';
	}
}
function enableWindow(){
    var oLoader = document.getElementById('statusLoader');
    oLoader.style.display = 'none';
}
function enableButton(but,str,src,href){
	var oBut = document.getElementById(but);
	if(oBut.type == 'submit' || oBut.type == 'button'){
		oBut.value = str;
		oBut.disabled = false;
	}else if(oBut.src != ''){
		oBut.src = src;
		oBut.parentNode.href = href;
	}
}

function showError(text,status){
    if(status == true){
		document.getElementById('errorMsg').innerHTML = text;
        document.getElementById('errorMsg').style.display = 'block';
    }else{
		document.getElementById('errorMsg').innerHTML = '';
        document.getElementById('errorMsg').style.display = 'none';
    }
}

function showFieldsErrors(responce){
    for(formvar in responce){
        if(document.getElementById(formvar)){
			obj = document.getElementById(formvar);
            if(responce[formvar].valid == 'false'){
                obj.className = 'error';
				if(document.all){
						obj.onmouseover = function(){
						showErrorMsg(responce[this.name].msg,event);
					}
				}else{
						obj.onmouseover = function(event){
						showErrorMsg(responce[this.name].msg,event);
					}
				}
				obj.onmouseout = function(){
					hideErrorMsg();
				}
            }else{
                obj.className = '';
				obj.onmouseover = '';
				obj.onmouseout = '';
            }
        }
    }
}

function showErrorMsg(str,e){
    var posx = 0;
    var posy = 0;    
    if (document.all){
        posx = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
        posy = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
    }else{
        posx = e.pageX;
        posy = e.pageY;
    }
    var oDiv = document.createElement('DIV');
    oDiv.id='errorAlt';
    oDiv.style.top = posy+20+'px';
    oDiv.style.left = posx+10+'px';
	oDiv.innerHTML = str;
    document.body.appendChild(oDiv);
}
function hideErrorMsg(){
    var oDiv = document.getElementById('errorAlt');
    document.body.removeChild(oDiv);
}

function makeParams(form){
    var oForm = document.getElementById(form);
    var params = '';
    for(i=0;element = oForm.elements[i];i++){
        if(element.type == 'text' || element.type == 'textarea' || element.type == 'hidden' || element.type == 'file' || element.type == 'password'){
            params += element.name+'='+element.value+'&';
        }
        if(element.type == 'radio' || element.type == 'checkbox'){
                if(element.checked == true){
                    params += element.name+'='+element.value+'&';
                }
        }
        if(element.type == 'select-multiple'){
            for(j=0;element.options[j];j++){
                if(element.options[j].selected == true){
                    params += element.name+'='+element.options[j].value+'&';
                }
            }           
        }
        if(element.type == 'select-one'){
            params += element.name+'='+element.options[element.selectedIndex].value+'&';
        }
    }
    return params;
}

function validateForm(form,button,src,formAction){
	if(button){
		var href = document.getElementById(button).parentNode.href;
		var oldSrc = document.getElementById(button).src;
		disableButton(button,'Loading...',src);
	}else{
	    disableWindow('Loading...');
	}

    var oForm = document.getElementById(form);
	
    params = makeParams(form);
	extraParams = new Object();
	extraParams.button = button;
	extraParams.href = href;
	extraParams.src = oldSrc;
	extraParams.form = form;
    var loader = new net.ContentLoader(formAction,validateFormCallBack,null,'POST',params,null,null,null,'TEXT',true,extraParams);
}

function validateFormCallBack(){
	if(this.data){
		eval(this.data);
		if(responce.valid == 'false'){
			showError('Invalid information submited. Please check highlighted information.',true);
			showFieldsErrors(responce);
			location.href = '#top';
			enableButton(this.extraParams.button,'Submit',this.extraParams.src,this.extraParams.href);
		}else{
			document.getElementById(this.extraParams.form).submit();
		}
/*		
		responce.valid = true;
		for(i=1;responce.formvars[i];i++){
			if (responce.formvars[i].valid == 'false'){
				responce.valid = false;
			}
		}
		
		if(!responce.valid){
	//        showError(true);
			if(button){
				enableButton(button,'Submit');
			}else{
				setTimeout("enableWindow()",500);
			}
		}else{
	//        showError(false);
	//        oForm.submit();
		}*/
		
	}
}
function checkAll(objName){
    objs = document.getElementsByName(objName);
    var checked = false;
    for (i=0; obj = objs[i]; i++){
        if(obj.checked == true){
            checked = true;
            break;
        }
    }
    for (i=0; obj = objs[i]; i++){
        if (checked == true){
            obj.checked = false;
        }else{
            obj.checked = true;
        }
    }   
}

function loadUsers(gdlrid){
    var loader = new net.ContentLoader('inc_users.cfm?GDLRID='+gdlrid,getResponse,null,'GET',null,null,'usersLoc','localLoader','TEXT',true);
}

function runReport(){
    var oForm = document.getElementById('form1');
    var error = false;
    if(oForm.scenarios.options[oForm.scenarios.selectedIndex].value == ''){
        alert('Please select the scenario');
        error = true;
    }

    for(i=0; obj = oForm.elements[i];i++){
        if(obj.name == 'users' && obj.checked == true){
            noUser = false;
            break;
        }else{
            noUser = true;
        }
    }
    if(noUser){
        alert('Please check users');
        error = true;
    }
    
    if(!error){
        disableWindow('Loading...');
        params = makeParams('form1');
        var loader = new net.ContentLoader('inc_report_users.cfm',getResponse,null,'POST',params,null,null,'statusLoaderText','TEXT',false);
        var loader1 = new net.ContentLoader('actions.cfm',getResponse,null,'POST','action=makeUserList&'+params,null,'usersList',null,'TEXT',true);

        var oDiv = document.getElementById('listTable');
        if(loader.data){
            oDiv.innerHTML = loader.data;
            setTimeout("enableWindow()",500);
            document.location.href = '#anhor';
        }
    }
}

function makePopup(url,w,h){
	myWindow = window.open(url,'Popup','width='+w+', height='+h+', scrollbars=yes,resize=no');
}
function redirect(url){
	location.href = url;
}
function disableAddress(what){
	var oState = document.getElementById('state');
	var oZip1 = document.getElementById('zip1');
	var oZip2 = document.getElementById('zip2');
	var oPhone1 = document.getElementById('phone1');
	var oPhone2 = document.getElementById('phone2');
	var oPhone3 = document.getElementById('phone3');
	var oExt = document.getElementById('ext');
	var oState_int = document.getElementById('state_int');
	var oZip_int = document.getElementById('zip_int');
//	var oPhone1_int = document.getElementById('phone1_int');
	var oPhone2_int = document.getElementById('phone2_int');	
	
	if(what == 'US'){
		if(oState_int.value!='' || oZip_int.value!='' || oPhone2_int.value!=''){
			oState.disabled = true;
			oZip1.disabled = true;
			oZip2.disabled = true;
			oPhone1.disabled = true;
			oPhone2.disabled = true;
			oPhone3.disabled = true;
			oExt.disabled = true;
		}else{
			oState.disabled = false;
			oZip1.disabled = false;
			oZip2.disabled = false;
			oPhone1.disabled = false;
			oPhone2.disabled = false;
			oPhone3.disabled = false;
			oExt.disabled = false;
		}
	}else{
		if(oState.options[oState.selectedIndex].value!='' || oZip1.value!='' || oZip2.value!='' || oPhone1.value!='' || oPhone2.value!='' || oPhone3.value!='' || oExt.value!=''){
			oState_int.disabled = true;
			oZip_int.disabled = true;
//			oPhone1_int.disabled = true;
			oPhone2_int.disabled = true;
		}else{
			oState_int.disabled = false;
			oZip_int.disabled = false;
//			oPhone1_int.disabled = false;
			oPhone2_int.disabled = false;
		}
	}
}
function closeStats(id){
	var loader = new net.ContentLoader('actions.cfm?action=loadGame&id='+id,getResponse,null,'GET',null,null,'game'+id,'game'+id,'TEXT',true);
}
function showStats(id){
	var loader = new net.ContentLoader('actions.cfm?action=loadStats&id='+id,getResponseStats,null,'GET',null,null,'game'+id,'game'+id,'TEXT',true);
}
function getResponseStats(){
    var oDiv = document.getElementById(this.container);
    var oDivS = document.getElementById(this.statusContainer);
    if(oDivS){
        oDivS.innerHTML = this.status;
    }
    if (oDiv && this.data){
        oDiv.innerHTML = this.data;
		initScroll();
    }
}
function initScroll(){
	var scroller  = null;
	var scrollbar = null;
	
	scroller  = new jsScroller("scrolledBox", "scrollArea", 600, 192, true, "ScrollbarContainer", "ScrollbarTrack", "ScrollbarTrackBg");
	scrollbar = new jsScrollbar ("ScrollbarContainer", scroller, false);
}
function disableState(what){
	var oState = document.getElementById('state');
	var oState_int = document.getElementById('state_int');
	if(what == 'US'){
		if(oState_int.value!=''){
			oState.disabled = true;
		}else{
			oState.disabled = false;
		}
	}else{
		if(oState.options[oState.selectedIndex].value!=''){
			oState_int.disabled = true;
		}else{
			oState_int.disabled = false;
		}
	}
}
