/*________________________________________________________________________________________________________________________

 [ Developer : Vahid Hallaji ]
 [ Web : http://www.openweb.ir ]
 [ MyWeb : http://www.hallaji.com ] 
 [ Copyright (C) SHAFFAF SYSTEM Co 2007, All rights reserved. ]
 ________________________________________________________________________________________________________________________ */

function preLoading() {
	window.onload=function(){
		if(closeLoadingPanel) document.getElementById("loading").style.display="none";
		document.getElementById("loadingCircle").style.display="none";
	}
}

function emailValidate(formName,filedName) {
	mailObj = eval('document.' + formName + '.' + filedName);

	var emailStr=mailObj.value;
	var checkTLD=1;
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=emailStr.match(emailPat);
	if (matchArray==null) {
		return false;
	}
	var user=matchArray[1];
	var domain=matchArray[2];
	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i)>127) {
			return false;
		}
	}
	for (i=0; i<domain.length; i++) {
		if (domain.charCodeAt(i)>127) {
			return false;
		}
	}
	if (user.match(userPat)==null) {
		return false;
	}
	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
				return false;
			}
		}
		return true;
	}
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) {
		if (domArr[i].search(atomPat)==-1) {
			return false;
		}
	}
	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1) {
		return false;
	}
	if (len<2) {
		return false;
	}
return true;
}

function getURL(page) {
	window.location.href=page;
}

function eUI(obj){
	return encodeURIComponent(obj);	
}


function closeLoading(){
	document.getElementById("loading").style.display="none";
}
function showLoading(){
	document.getElementById("loading").style.display="block";
}

function showCart(){
	scroll(0,0);
	document.getElementById("loading").style.display="block";
	document.getElementById("basket").style.display="block";	
}

function closeCart(){
	scroll(0,0);
	window.setTimeout("document.getElementById('loading').style.display='none'",100);
	document.getElementById("basket").style.display="none";	
}

function getCheckedRadio(radioObj) {
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}

function setCheckedRadio(radioObj, newValue) {
	if(!radioObj)
		return;
	var radioLength = radioObj.length;
	if(radioLength == undefined) {
		radioObj.checked = (radioObj.value == newValue.toString());
		return;
	}
	for(var i = 0; i < radioLength; i++) {
		radioObj[i].checked = false;
		if(radioObj[i].value == newValue.toString()) {
			radioObj[i].checked = true;
		}
	}
}

var ajax = new sack(); ajax.root=getRoot();
function sendQ(url,query,loadingLayer,effectiveLayer){
	time=new Date().getTime(); query=query+"&rndval="+time+"&root="+ajax.root; if(!effectiveLayer) effectiveLayer="mainContentDIV"; ajax.loadingLayer=loadingLayer; ajax.effectiveLayer=effectiveLayer; ajax.requestFile = getRoot() + url ; ajax.URLString = query; ajax.method = "POST"; ajax.element = effectiveLayer; ajax.encodeURIString = false; ajax.onLoading = whenLoading; ajax.onLoaded = whenLoaded;  ajax.onInteractive = whenInteractive; ajax.onCompletion = whenCompleted; ajax.runAJAX();
}

var ajax2 = new sack(); ajax2.root=getRoot();
function sendQ2(url,query,loadingLayer,effectiveLayer){
	time=new Date().getTime(); query=query+"&rndval="+time+"&root="+ajax2.root; if(!effectiveLayer) effectiveLayer="mainContentDIV"; ajax2.loadingLayer=loadingLayer; ajax2.effectiveLayer=effectiveLayer; ajax2.requestFile = getRoot() + url ; ajax2.URLString = query;	ajax2.method = "POST"; ajax2.element = effectiveLayer; ajax2.encodeURIString = false; ajax2.onLoading = whenLoading2; ajax2.onLoaded = whenLoaded2; ajax2.onInteractive = whenInteractive2; ajax2.onCompletion = whenCompleted2; ajax2.runAJAX();
}

function whenLoading(){
	switch(ajax.loadingLayer){
		case 1 : document.getElementById(ajax.effectiveLayer).innerHTML = "<img src='" + getRoot() + "images/main/loading.gif' width='16' height='16' alt='' title='در حال بارگذاری' />";
			break;
		case 2 : document.getElementById("loading").style.display="block";
			break;
		case 3 : document.getElementById("loadingCircle").style.display="block";
			break;
		case 4 : document.getElementById(ajax.effectiveLayer).innerHTML = ""; document.getElementById("loadingCircle").style.display="block";
			break;
	}
	document.getElementById('dataTransitionMes').innerHTML = "در حال ارسال داده ها ..."; 
}
function whenLoaded(){ document.getElementById('dataTransitionMes').innerHTML = "در حال بارگذاری ..."; }
function whenInteractive(){ document.getElementById('dataTransitionMes').innerHTML = "در حال بارگذاری ..."; }
function whenCompleted(){
	switch(ajax.loadingLayer){
		case 1 :   
			break;
		case 2 : window.setTimeout("document.getElementById('loading').style.display='none'",100);
			break;
		case 3 : document.getElementById("loadingCircle").style.display="none";
			break;
		case 4 : document.getElementById("loadingCircle").style.display="none";
			break;	
	}	
	document.getElementById('dataTransitionMes').innerHTML = "در حال بارگذاری ...";
}

function whenLoading2(){
	switch(ajax2.loadingLayer){
		case 1 : document.getElementById(ajax2.effectiveLayer).innerHTML = "<img src='" + getRoot() + "images/main/loading.gif' width='16' height='16' alt='' title='در حال بارگذاری' />";
			break;
		case 2 : document.getElementById("loading").style.display="block";
			break;
		case 3 : document.getElementById("loadingCircle").style.display="block";
			break;	
		case 4 : document.getElementById(ajax.effectiveLayer).innerHTML = ""; document.getElementById("loadingCircle").style.display="block";
			break;
	}
	document.getElementById('dataTransitionMes').innerHTML = "در حال ارسال داده ها ..."; 
}

function whenLoaded2(){ document.getElementById('dataTransitionMes').innerHTML = "در حال بارگذاری ..."; }
function whenInteractive2(){ document.getElementById('dataTransitionMes').innerHTML = "در حال بارگذاری ..."; }
function whenCompleted2(){
	switch(ajax2.loadingLayer){
		case 1 :   
			break;
		case 2 : window.setTimeout("document.getElementById('loading').style.display='none'",100);
			break;
		case 3 : document.getElementById("loadingCircle").style.display="none";
			break;	
		case 4 : document.getElementById("loadingCircle").style.display="none";
			break;
	}	
	document.getElementById('dataTransitionMes').innerHTML = "در حال بارگذاری ...";
}

function linkOver(obj) {
	obj.style.background='#113f58';
	obj.style.color='#c4d3de';
}
function linkOut(obj) {
	obj.style.background='none';
	obj.style.color='#c4d3de';
}

function popUp(URL,name,width,height) {
	window.open(URL, name, "toolbar=0,scrollbars=0,location=0,status=1,statusbar=0,menubar=0,resizable=0,width="+width+",height="+height+",left=50,top=50");
}

//_______________________________________________________________________________________________________________________
