﻿var NS6 = (!document.all && document.getElementById); 
var IE = (document.all);
var NS4 = (document.layers);
//----------------
function getOpacity(obj){
	var val = 100;
	var TheObj = (typeof (obj) == 'object') ? obj : findid(obj);
	if (IE)
		val = TheObj.filters.alpha.opacity;
	else if(TheObj.style.opacity != undefined)
		val = TheObj.style.opacity = val / 100;

	return val;
}
function setOpacity(obj,val){
	var TheObj = (typeof (obj) == 'object') ? obj : findid(obj);
	if (IE)
		try  {TheObj.filters.alpha.opacity = val;} catch (exception) {return false;}
		
	else if(TheObj.style.opacity != undefined)
		TheObj.style.opacity = val / 100;
	else 
		return false;
	
	return true;
}
//--------------
function getTop(elm) {
	elm =(typeof (elm) == 'object') ? elm : findid(elm);
	if (typeof (elm) != 'object') return 0;
	var mOffsetTop = elm.offsetTop;
	var mOffsetParent = elm.offsetParent;
	while(mOffsetParent != null) {
		mOffsetTop += mOffsetParent.offsetTop;
		mOffsetParent = mOffsetParent.offsetParent;
	}
	
	return mOffsetTop;
}
function getLeft(elm) {
	elm =(typeof (elm) == 'object') ? elm : findid(elm);
	var mOffsetLeft = elm.offsetLeft;
	var mOffsetParent = elm.offsetParent;
	while(mOffsetParent != null) {
		mOffsetLeft += mOffsetParent.offsetLeft;
		mOffsetParent = mOffsetParent.offsetParent;
	}
	return mOffsetLeft;
}
function getRight(elm){
	var width = (elm.offsetWidth ) ? parseInt(elm.offsetWidth) : 0;
	return getLeft(elm) + width;
}
//--------------
function findid(id){
	var NS6 = (!document.all && document.getElementById); 
	var IE = (document.all);
	var NS4 = (document.layers);
	if ((typeof (id) == 'object')) return id;
	try {
		psel = (NS6) ? document.getElementById(id) : (NS4) ? document.layers(id) : document.all(id);
	}catch (exception){
		alert(exception.description);
		psel = null;
	}
	return psel;
}
//------------
function setImage(imgS,imgT){ //Sourse Image tag and Target image Tag
	//try  {
		var imgS =(typeof (imgS) == 'object') ? imgS : findid(imgS);
		var imgT =(typeof (imgT) == 'object') ? imgT : findid(imgT);
		imgT.src = imgS.src;
	/*}catch (exception){
		return false;
	}*/
	return true;
}
function moveTo (obj,pX,pY,style){ //style ('absolute','relative')
	if (!style) style="Absolute";
	obj = findid(obj);
	obj.style.position = style;
	obj.style.left = pX + "px";
	obj.style.top = pY + "px";
}
//------------
function ShowRlImage(imgS,imgT){ //Sourse Image tag and Target image Tag
	clearTimeout(timeOutID);
	setImage(imgS,imgT);
	var mX = getLeft(imgS);
	var mY = getTop(imgS);
	moveTo (imgT,mX,mY);
	setOpacity(imgT,100)
	findid(imgT).style.display='';
}
//------------
var timeOutID;
function HidePop(popid){
	if (!popid) popid='frmPopUpTable';
	findid(popid).style.display = 'none';
}
function HideingPop (popid,Val){
	var popFlow =(typeof (popid) == 'object') ? popid : findid(popid);
	if (!setOpacity(popFlow,Val)) Val=0;
	Val-=10;
	vals = Val;
	theobj = popFlow;
	if (Val >= 0) 
		timeOutID = setTimeout("HideingPop(theobj,vals)",15);
	else
		findid(popFlow).style.display = 'none';
	
}
function ShowingPop (popid,Val){
	var popFlow =(typeof (popid) == 'object') ? popid : findid(popid);
	if (!setOpacity(popFlow,Val)) return;
	Val+=10;
	vals = Val;
	theobj = popFlow;
	if (Val <= 100) timeOutID = setTimeout("ShowingPop(theobj,vals)",15);
}
function ShowPop(flowid,txt,popid,popWidth,popHeight,extWidth,extHeight,ShowStyle){
	if (!popid) popid='frmPopUpTable';
	var popTable = findid(popid);
	try{
		if (ShowStyle == 1){
			findid(popid + "TopPointer").style.display='';
			findid(popid + "BottomPointer").style.display='none';
		}else if (ShowStyle == -1){
			findid(popid + "TopPointer").style.display='none';
			findid(popid + "BottomPointer").style.display='none';
		}else{
			findid(popid + "TopPointer").style.display='none';
			findid(popid + "BottomPointer").style.display='';
		}
	}catch(exception){}
	if (txt.substr(0,1) == "-")
		txt = txt.substr(1);
	else
		txt = findid(txt).value;
	findid(popid + 'Body').innerHTML = txt;
	//-------- Width Height
		if (!extWidth) extWidth=0;
		if (!extHeight) extHeight=0;
		if (!popWidth) popWidth=40;
		if (!popHeight) popHeight=80;
		popTable.style.width=popWidth;
		popTable.style.height=popHeight;
	//-------
	popTable.style.position='absolute';
	var popFlow =(typeof (flowid) == 'object') ? flowid : findid(flowid);
	var sTop = getTop(popFlow);
	var sLeft = getLeft(popFlow);
	var FlowHeight = parseInt(popFlow.height);
	var FlowWidth = parseInt(popFlow.width);
	if (FlowHeight < popFlow.offsetHeight || isNaN(FlowHeight)) FlowHeight = popFlow.offsetHeight;
	if (FlowWidth < popFlow.offsetWidth || isNaN(FlowWidth)) FlowWidth = popFlow.offsetWidth;
	//alert ("W:" + FlowWidth +"     H:" +  FlowHeight);
	//popTable.style.top = sTop - FlowHeight + extHeight;
	//alert ("L:" + sLeft +"     T:" +  sTop);
	//popTable.style.left = sLeft - parseInt((popWidth - FlowWidth) / 2) + extWidth;
	moveTo(popTable,sLeft - parseInt((popWidth - FlowWidth) / 2) + extWidth,sTop - FlowHeight + extHeight);
	popTable.style.display = '';
	ShowingPop (popTable,0);
}
//--------
function validEmail(email) {
  var re = /^[^\x00-\x20()<>@,;:\\".[\]\x7f-\xff]+(?:\.[^\x00-\x20()<>@,;:\\".[\]\x7f-\xff]+)*\@[^\x00-\x20()<>@,;:\\".[\]\x7f-\xff]+(?:\.[^\x00-\x20()<>@,;:\\".[\]\x7f-\xff]+)+$/i;

  return re.test(email);
}
function ReqFormChk(frmname){
	var frmMain = document.forms[frmname];
	for (var i=0; i < frmMain.elements.length; i++) {
		obj = frmMain.elements[i];
		if ((obj.type == "text" || obj.type == "password") && obj.value == ""){
			alert ('تمام فیلد های * دار باید تکمیل گردند');
			obj.focus();
			return false;
		}
	}
	return true;	
}
//------------------------------------------------------------------------------------------------------
function showHide(cSh,cSi,DisShowHideable){
	var cShObj = (typeof (cSh) == 'object') ? cSh : findid(cSh);
	var cSiObj = (typeof (cSi) == 'object') ? cSi : findid(cSi);
	iscSi= (cSi != null) ? true : false ;
	  if(cShObj.style.display == 'none'){
			cShObj.style.display = '';
			if (iscSi) cSiObj.style.display = 'none';
		}else if (!DisShowHideable){
			cShObj.style.display = 'none';
			if (iscSi) cSiObj.style.display = '';
		}
}
