﻿
//dar in tabei az 3 parametr estefadeh mishavad keh arayeh 3 sotoni mibashad. 1. txtbox form 2. adad moshakhas konandeh noe etelaate daryafti 3.peyghame motenaseb ba field dar sorate khali boodan
//formname.unitname,1,1,'لطفا نام واحد مرغداري را وارد كنيد'],
//FieldName,IsNumber,Require,Message
function checkfield(arrayfield)
{
 for (j=0;j<=arrayfield.length-1;j++)
        {

           if (arrayfield[j][0].value == "" && arrayfield[j][2]==1)
                        {
                                alert(arrayfield[j][3]);
                                arrayfield[j][0].focus();
                                return false;
                         }
		
			switch (arrayfield[j][1])
			{
			case 0 :
				if(!isNaN(arrayfield[j][0].value) && arrayfield[j][0].value!="") 
												  {
												  	alert("لطفا مقدار مورد نظر را بصورت حروف وارد كنيد");
												  	arrayfield[j][0].focus();
												  	arrayfield[j][0].select();
												  	return false;
												  }
			break;
			case 1 :
				if(isNaN(arrayfield[j][0].value) && arrayfield[j][0].value!="") 
												  {
												  	alert("لطفا مقدار مورد نظر را بصورت عدد وارد كنيد");												  	
												  	arrayfield[j][0].focus();												    
												  	arrayfield[j][0].select();												  													  	
												  	return false;
												  } 
			break;	
			case 2 :
					if (!validateEmail(arrayfield[j][0].value,0,0) && arrayfield[j][0].value !="") 
					{
						alert('آدرس ايميل شما صحيح نمي باشد.');
						arrayfield[j][0].focus();
						arrayfield[j][0].select();
						return false;
					} 	
			break;
			case 3 :
					if (arrayfield[j][0].value == 0) 
					{
						alert(arrayfield[j][3]);
						arrayfield[j][0].focus();
						return false;
					} 	
			break;
			case 'M' : 
						if(isNaN(arrayfield[j][0].value) && arrayfield[j][0].value!="") 
						  {
						  	alert("لطفا مقدار مورد نظر را بصورت عدد وارد كنيد");												  	
						  	arrayfield[j][0].focus();												    
						  	arrayfield[j][0].select();												  													  	
						  	return false;
						  } 

						if (!CheckDateField(arrayfield[j][0], 'M')) return false;
			break;
			case 'D' : 
						if(isNaN(arrayfield[j][0].value) && arrayfield[j][0].value!="") 
						  {
						  	alert("لطفا مقدار مورد نظر را بصورت عدد وارد كنيد");												  	
						  	arrayfield[j][0].focus();												    
						  	arrayfield[j][0].select();												  													  	
						  	return false;
						  } 

						if (!CheckDateField(arrayfield[j][0], 'D'))return false;
			break;
			case 'Y' : 
						if(isNaN(arrayfield[j][0].value) && arrayfield[j][0].value!="") 
						  {
						  	alert("لطفا مقدار مورد نظر را بصورت عدد وارد كنيد");												  	
						  	arrayfield[j][0].focus();												    
						  	arrayfield[j][0].select();												  													  	
						  	return false;
						  } 

						if (!CheckDateField(arrayfield[j][0], 'Y')) return false;
			break;
			}
          	
     }
return true;
}


function CheckDateField(Field , FieldType)
{
	switch (FieldType)
			{
			case 'Y' :
				if (Number(Field.value) < 1300 || Number(Field.value) > 1400 )
				{
					alert('لطفا مقدار فيلد سال را صحيح وارد كنيد');
		            Field.focus();
		            Field.select();
		            return false;
				}
			break;
			case 'M' :
				if (Number(Field.value) < 1 || Number(Field.value) > 12)
				{
					alert('لطفا مقدار فيلد مورد نظر را مابين 1 تا 12 وارد كنيد');
		            Field.focus();
		            Field.select();
		            return false;
				}			
			break;
			case 'D' :
				if (Number(Field.value) < 1 || Number(Field.value) > 31 )
				{
					alert('لطفا مقدار فيلد مورد نظر را مابين 1 تا 31 وارد كنيد');
		            Field.focus();
		            Field.select();
		            return false;
				}
			break;
			}
	Field.value = ADDZero(Field.value);
	return true;
}

function CheckAdminEdit()
             {
                if (document.FrmEditAdmin.User1.value=='')
                {
                        //alert ('لطفا نام كاربري فعلي را وارد كنيد');
                                        document.FrmEditAdmin.User1.focus();
                                        document.FrmEditAdmin.User1.select();
                        return false;
                }

                if (document.FrmEditAdmin.Pass1.value=='')
                {
                        //alert ('لطفا رمز عبور فعلي را وارد كنيد');
                                        document.FrmEditAdmin.Pass1.focus();
                                        document.FrmEditAdmin.Pass1.select();
                        return false;
                }

                if (document.FrmEditAdmin.User2.value=='')
                {
                        //alert ('لطفا نام كاربري جديد را وارد كنيد');
                                        document.FrmEditAdmin.User2.focus();
                                        document.FrmEditAdmin.User2.select();
                        return false;
                }

                if (document.FrmEditAdmin.Pass2.value=='')
                {
                        //alert ('لطفا نام كاربري جديد را وارد كنيد');
                                        document.FrmEditAdmin.Pass2.focus();
                                        document.FrmEditAdmin.Pass2.select();
                        return false;
                }

                if (document.FrmEditAdmin.Pass3.value=='')
                {
                        //alert ('لطفا دوباره كلمه رمز جديد را وارد كنيد');
                                        document.FrmEditAdmin.Pass3.focus();
                                        document.FrmEditAdmin.Pass3.select();
                        return false;
                }

                                if (document.FrmEditAdmin.Pass2.value != document.FrmEditAdmin.Pass3.value)
                {
                        //alert ('رمز عبور جديد و تكرار آن مطابق با هم نيستند');
                                        document.FrmEditAdmin.Pass2.value = '';
                                        document.FrmEditAdmin.Pass3.value = '';

                                        document.FrmEditAdmin.Pass2.focus();
                                        document.FrmEditAdmin.Pass2.select();
                        return false;
                }

                return true;
             }



function CheckForm()
                    {
                            if (document.FrmInsertQuestion.NameAndFamily.value=="")
                                    {
                                            //alert("لطفا نام و  نام خانوادگي خود را وارد كنيد");
                                        document.FrmInsertQuestion.NameAndFamily.focus();
                                        return false;
                                    }

                            if (document.FrmInsertQuestion.Email.value=="")
                            {
                                   // alert("لطفا ايميل خود را وارد كنيد");
                                    document.FrmInsertQuestion.Email.focus();
                                return false;
                            }


                            if (document.FrmInsertQuestion.Question.value=="")
                            {
                                    //alert("لطفا عنوان ايميل را وارد كنيد");
                                    document.FrmInsertQuestion.Question.focus();
                                return false;
                            }
                         

                    return true;

                    }
                    

                 
                    
                    
                    
// Email Validation Javascript
// copyright 23rd March 2003, by Stephen Chapman, Felgall Pty Ltd

// You have permission to copy and use this javascript provided that
// the content of the script is not changed in any way.

function validateEmail(addr,man,db) 
{
		if (addr == '' && man) {
		   if (db) alert('email address is mandatory');
		   return false;
		}
		//if (addr == '') return true;
		var invalidChars = '\/\'\\ ";:?!()[]\{\}^|';
		for (i=0; i<invalidChars.length; i++) {
		   if (addr.indexOf(invalidChars.charAt(i),0) > -1) {
		      if (db) alert('email address contains invalid characters');
		      return false;
		   }
		}
		for (i=0; i<addr.length; i++) {
		   if (addr.charCodeAt(i)>127) {
		      if (db) alert("email address contains non ascii characters.");
		      return false;
		   }
		}
		
		var atPos = addr.indexOf('@',0);
		if (atPos == -1) {
		   if (db) alert('email address must contain an @');
		   return false;
		}
		if (atPos == 0) {
		   if (db) alert('email address must not start with @');
		   return false;
		}
		if (addr.indexOf('@', atPos + 1) > - 1) {
		   if (db) alert('email address must contain only one @');
		   return false;
		}
		if (addr.indexOf('.', atPos) == -1) {
		   if (db) alert('email address must contain a period in the domain name');
		   return false;
		}
		if (addr.indexOf('@.',0) != -1) {
		   if (db) alert('period must not immediately follow @ in email address');
		   return false;
		}
		if (addr.indexOf('.@',0) != -1){
		   if (db) alert('period must not immediately precede @ in email address');
		   return false;
		}
		if (addr.indexOf('..',0) != -1) {
		   if (db) alert('two periods must not be adjacent in email address');
		   return false;
		}
		var suffix = addr.substring(addr.lastIndexOf('.')+1);
			if (suffix.length != 2 && suffix != 'com' && suffix != 'net' && suffix != 'org' && suffix != 'ac.ir' && suffix != 'ir' && suffix != 'edu' && suffix != 'int' && suffix != 'mil' && suffix != 'gov' & suffix != 'arpa' && suffix != 'biz' && suffix != 'aero' && suffix != 'name' && suffix != 'coop' && suffix != 'info' && suffix != 'pro' && suffix != 'museum') {
		   if (db) alert('invalid primary domain in email address');
		   return false;
		}	
return true;		
}



var xmlHttp = null;
var IDDIVGlobal , VarDIVGlobal  , UrlGlobal , InputElementIDGlobal ;

//-------------------------------------------------------------------------------------------------------------------------
function createXmlHttpRequestObject()
{
	if(window.ActiveXObject)
	{
		try        {xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");}
		catch (e){        
		xmlHttp = false;}
	}
	else
	{
		try        {
			xmlHttp = new XMLHttpRequest();
		}
		catch (e){xmlHttp = false;}
	}
	return xmlHttp;
}




function handleServerResponse()
{

	IDDIVGlobal.innerHTML = '<p align="center" class="pblue">&#1604;&#1591;&#1601;&#1575; &#1670;&#1606;&#1583; &#1604;&#1581;&#1592;&#1607; &#1589;&#1576;&#1585; &#1606;&#1605;&#1575;&#1610;&#1610;&#1583;';

	if (xmlHttp.readyState == 4)
	{
		if (xmlHttp.status == 200)
		{
			IDDIVGlobal.innerHTML = xmlHttp.responseText;
		}
		else
		{
			alert("There was a problem accessing the server: " + xmlHttp.statusText);
			//GetSigleField(UrlGlobal , InputElementIDGlobal , IDDIVGlobal );
		}
	}
}




function GetSigleField(Url , InputElementID, IDDIV)
{
	if (typeof(IDDIV) == 'string') IDDIVGlobal = document.getElementById(IDDIV); else IDDIVGlobal = IDDIV;

	UrlGlobal   = Url;
	InputElementIDGlobal = InputElementID;

	createXmlHttpRequestObject();
	if(xmlHttp != null)
	{
		InputValue ='';
		if (InputElementID != '')
		{
			if (document.getElementById(InputElementID).value=='')
			{
				IDDIVGlobal.innerHTML = '';
				return;
			}

			InputValue = encodeURIComponent(document.getElementById(InputElementID).value);
		}
		xmlHttp.open("GET", Url + InputValue , true);
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.send(null);
	}
	return false;
}




//##########################################################################################
function HttpPost(Url , FormElement , IDDIV)
{
	if (typeof(IDDIV) == 'string') IDDIVGlobal = document.getElementById(IDDIV); else IDDIVGlobal = IDDIV;

	createXmlHttpRequestObject();
	if(xmlHttp != null)
	{
		InputValue ='';
		
		for (i=0;i<=FormElement.elements.length-1;i++)
		{
			InputValue += FormElement.elements[i].name +'='+ encodeURIComponent(FormElement.elements[i].value) +'&';
		}
		xmlHttp.open('POST', Url , true);
		
		xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		xmlHttp.setRequestHeader("Content-length", InputValue.length);
		xmlHttp.setRequestHeader("Connection", "close");
		
		IDDIVGlobal.innerHTML = '';
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.send(InputValue);
	}
	return false;
}



function ADDZero(V_Number)
		{
	        switch (V_Number)
	        {
		        case '1':
		        	return "01";
		        break;
		        
		        case '2':
		        	return "02";
		        break;
		        
		        case '3':
		        	return "03";
		        break;
		        
		        case '4':
		        	return "04";
		        break;
		        
		        case '5':
		        	return "05";
		        break;
		        
		        case '6':
		        	return "06";
		        break;
		        
		        case '7':
		        	return "07";
		        break;
		        
		        case '8':
		        	return "08";
		        break;
		        
		        case '9':
		        	return "09";
		        break;
		        default:
		        	return V_Number;
		        break;
	        }
		}





function ChangeTDColor(obj,TypeEvent,TableName)
{

	switch (TypeEvent)
	{
		case 'over':
		if (obj.bgColor!='#d6dff7') obj.bgColor='#f0f0f0';
		break;

		case 'out':
		if (obj.bgColor!='#d6dff7')	obj.bgColor='#ffffff';
		break;

		case 'click':

		for (i=0; i < document.getElementById(TableName).rows.length; i++)
		{

			document.getElementById(TableName).rows(i).bgColor='#ffffff';
			//				for (j=0; j < document.getElementById(TableName).rows(i).cells.length; j++)
			//		        {
			//		            document.getElementById(TableName).rows(i).cells(j).bgColor='#ffffff';
			//		        }
		}

		obj.bgColor='#d6dff7';
		break;
	}


}

//---------------------------------------- Language --------------------------------------------

function storeCaret(textEl) {
	if (textEl.createTextRange) textEl.caretPos = document.selection.createRange().duplicate();

}
var lang = 1;	// 1: Farsi, 0: English

// Farsi keyboard map based on ISIRI-2901
var farsikey = [
0x0020, 0x0021, 0x061B, 0x066B, 0x00A4, 0x066A, 0x060C, 0x06AF,
0x0029, 0x0028, 0x002A, 0x002B, 0x0648, 0x002D, 0x002E, 0x002F,
0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
0x0038, 0x0039, 0x003A, 0x0643, 0x003E, 0x003D, 0x003C, 0x061F,
0x066C, 0x0624, 0x200C, 0x0698, 0x0649, 0x064D, 0x0625, 0x0623,
0x0622, 0x0651, 0x0629, 0x00BB, 0x00AB, 0x0621, 0x004E, 0x005D,
0x005B, 0x0652, 0x064B, 0x0626, 0x064F, 0x064E, 0x0056, 0x064C,
0x0058, 0x0650, 0x0643, 0x062C, 0x005C, 0x0686, 0x00D7, 0x0640,
0x200D, 0x0634, 0x0630, 0x0632, 0x06CC, 0x062B, 0x0628, 0x0644,
0x0627, 0x0647, 0x062A, 0x0646, 0x0645, 0x067E, 0x062F, 0x062E,
0x062D, 0x0636, 0x0642, 0x0633, 0x0641, 0x0639, 0x0631, 0x0635,
0x0637, 0x063A, 0x0638, 0x007D, 0x007C, 0x007B, 0x007E ];


function changeLang() {
	if (lang == 0) {
		lang = 1;
		return true;
	}
	else {
		lang = 0;
		return true;
	}
}

function FKeyDown (txtFrm){
	var key = window.event.keyCode;
	if (key == 145){
		if (lang == 0) {
			lang = 1;
			return true;
		}
		else {
			lang = 0;
			return true;
		}

	}

}
function FKeyPress(txtFrm) {
	var key = window.event.keyCode;
	//window.event.keyCode = 0x064A;
	//  window.event.keyCode = 1740 = 6CC;

	// alert (window.event.keyCode);
	if (key == 13) { window.event.keyCode = 13; return true; }

	if (lang == 1) { // If Farsi
		if (key == 0x0020 && window.event.shiftKey) // Shift-space -> ZWNJ
		window.event.keyCode = 0x200C;
		else
		window.event.keyCode = farsikey[key - 0x0020];
		if (farsikey[key - 0x0020] == 92) {
			window.event.keyCode = 0x0698;
		}
		if (farsikey[key - 0x0020] == 8205) {
			window.event.keyCode = 0x067E;
		}
	}
	return true;
}

function change(obj){
	if (lang==0)
	lang=1
	else
	lang=0;
	obj.focus();
}



