﻿var strNumOnly;
var strWrongmail;
var strNoSpecial;
var strEnter;
var strNotSame;
var strAnd;
var strNoSpaces;

strNumOnly		=	script_string_1	;
strWrongmail	=	script_string_2	;
strNoSpecial	=	script_string_3	;
strEnter		=	script_string_4	;
strNotSame		=	script_string_5	;
strAnd			=	script_string_6	;
strCheckbox		=	script_string_7	;
strCheckbox1	=	script_string_8	;
strCheckbox2	=	script_string_9	;
strMaxlength	=	script_string_10;
strMinlength	=	script_string_43;
strMaxnum		=	script_string_11;
strNoNegative	=	script_string_12;
strNotInteger	=	script_string_13;
strGrtZero		=	script_string_14;
strMinnum		=	script_string_15;
strNoSpaces		=	script_string_41;



function disabletxt()
{
	if(document.all.qti_qanswer_display_feedback.checked)
	{
		document.all.qti_qheader_feedback_true.disabled=false;
		document.all.qti_qheader_feedback_false.disabled=false;
	}
	else
	{
		document.all.qti_qheader_feedback_true.disabled=true;
		document.all.qti_qheader_feedback_false.disabled=true;
	}
}

var strCheckExistanceDelem="C_H_K_E_X_D"
function CheckExsistance(frm,strItem,strSecondary,strFlag,strSecondary2)
{
/*
	frm : name of the input that is desired to be checked
	strItem : name of the system, eg., "forum", "course" , "subject" etc.
	strSecondary : the value by which I need the system to search in the database, eg.: [courseID]
	strFlag :
	1-number of strSecondaries=1 and is passed as a string value
	2-number of strSecondaries=1 and is passed as an object
	3-number of strSecondaries=2 and is passed as a string value
*/


	if (replaceMinusChar(TrimStr(eval(frm +'.value')))=="")
	{
		alert(document.all.EmptyMsg.value)
		eval(frm +'.focus()')
		return;
	}

	else if(strFlag=='1')
	{		
		document.all.checkExistanceFrm.value.value=replaceMinusChar(eval(frm +'.value')) + strCheckExistanceDelem + strSecondary
	}

	else if(strFlag=='2')
	{		
		document.all.checkExistanceFrm.value.value=replaceMinusChar(eval(frm +'.value')) + strCheckExistanceDelem + eval(strSecondary+'.value');
	}

	else if(strFlag=='3')
	{		
		document.all.checkExistanceFrm.value.value=replaceMinusChar(eval(frm +'.value')) + strCheckExistanceDelem + strSecondary + strCheckExistanceDelem + strSecondary2
	}

	else
	{
		document.all.checkExistanceFrm.value.value=replaceMinusChar(eval(frm +'.value'));
	}
	document.all.checkExistanceFrm.name.value=strItem;
	popitfrm();
}

function popitfrm(str)
{
	window.open("examcont?action=ValidationActionFrm&courseID="+strValidationLocalCourseID+"&lang="+strValidationLocalLang,"CheckExistTarget","height=120,width=300");
}

function GetStatus(QID)//Hide and display release icon in matching question
{
	arrimg=document.all.tags("img")
	for(i=0;i<arrimg.length;i++)
	{
		if(arrimg[i].brlink && arrimg[i].brlink==QID)
		{
			arrimg[i].style.display="none";
			if(eval('document.all.BDYAns_'+ QID +'.value.indexOf(arrimg[i].ident+",")!="-1"'))
			{
				arrimg[i].style.display="";
			}
		}
	}
}

function ds()
{
arrI=document.all.tags("img")
for(n10=0;n10<arrI.length;n10++)
{
	if(arrI[n10].Iname=='QAImage')
	{
		if(arrI[n10].width > 170)
		{
			arrI[n10].width='170'
		}
	}
	else if(arrI[n10].Iname=='PImage')
	{
		if(arrI[n10].width > 450)
		{
			arrI[n10].setAttribute("width","450",0)
		}
	}
}

}

function CheckExsistanceCourse(frm,strItem,strSecondary,strSecondary2,strFlag)

{
	if (TrimStr(eval(frm +'.value'))=="")
	{
		alert(document.all.EmptyMsg.value)
		eval(frm +'.focus()')
	}
	else

	if(strFlag=='2')
	{
		window.open("examcont?action=ValidationAction&name="+ strItem +"&value="+ eval(frm +'.value') +strCheckExistanceDelem+ strSecondary +"&lang=" + document.all.StrLang.value+"&courseID="+strSecondary2,null,"height=120,width=300")
	}
	else
	{
		window.open("examcont?action=ValidationAction&name="+ strItem +"&value="+ eval(frm +'.value') +"&lang=" + document.all.StrLang.value,null,"height=120,width=300")
	}
}
function CheckExsistanceSession(frm,strItem,strSecondary,strFlag)
{
	if (TrimStr(eval(frm +'.value'))=="")
	{
		alert(document.all.EmptyMsg.value)
		eval(frm +'.focus()')
	}
	else

	if(strFlag=='1')
	{
		window.open("examcont?action=ValidationActionSession&name="+ strItem +"&value="+ eval(frm +'.value') +strCheckExistanceDelem+ strSecondary +"&lang=" + document.all.StrLang.value,null,"height=120,width=300")
	}
	else
	{
		window.open("examcont?action=ValidationActionSession&name="+ strItem +"&value="+ eval(frm +'.value') +"&lang=" + document.all.StrLang.value,null,"height=120,width=300")
	}
}
function CheckExsistanceSessionCourseID(frm,strItem,strSecondary,strSecondary2,strFlag)
{
	if (TrimStr(eval(frm +'.value'))=="")
	{
		alert(document.all.EmptyMsg.value)
		eval(frm +'.focus()')
	}
	else

	if(strFlag=='2')
	{
		window.open("examcont?action=ValidationActionSession&name="+ strItem +"&value="+ eval(frm +'.value') +strCheckExistanceDelem+ strSecondary +"&lang=" + document.all.StrLang.value+"&courseID="+strSecondary2,null,"height=120,width=300")
	}
	else
	{
		window.open("examcont?action=ValidationActionSession&name="+ strItem +"&value="+ eval(frm +'.value') +"&lang=" + document.all.StrLang.value,null,"height=120,width=300")
	}
}

function ValidRandomCount(EnableRandomInputObj,strPartOfCheckBoxesId)
{
	var strErrSelectTwo=script_string_40
	if(EnableRandomInputObj.checked)
	{
		var Ncount=0
		arr=document.all.tags("input")

		for(var i=0; i < arr.length;i++)
		{
			if(arr[i].type=="checkbox" && arr[i].id.indexOf(strPartOfCheckBoxesId)!=-1 && arr[i].checked)
			{
				Ncount++
			}
		}
		if(Ncount > 1)
		{
			return true;
		}
		else if(Ncount==0 || Ncount==1)
		{
			alert(strErrSelectTwo)
			return false;
		}
	}
	else
	{
		return true;
	}
}

function replaceMinusChar(str)
{
	while(str.indexOf("'")!=-1 || str.indexOf("-")!=-1)
	{
		str=str.replace("'","’").replace("-","–")
	}
	return str;
}










function Validate(form)
{

var equalids="";
var equalidsarr;
var i=0;
var n=0;
var checks="0";
var checkNameStr ="";

while(eval('document.'+form+'['+i+']'))
	{

			var strErrorValidatMsg="";
			eval('document.'+ form +'['+i+'].value=TrimStr(document.'+ form +'['+i+'].value)')

			//--------------------------------------- radio button and checkboxes ----------------------------------------------------
			if(form.indexOf("checks")!="-1")
			{
				if(eval('document.'+ form +'['+i+'].type=="checkbox" || document.'+ form +'['+i+'].type=="radio"'))
				{
					if(eval('document.'+ form +'['+i+'].strname'))
					{
						eval('checkNameStr=document.'+ form +'['+i+'].strname')
					}
					if(checks!="1")
					{
						if(eval('document.'+ form +'['+i+'].checked==true'))
						{
							checks="1";
						}
						else
						{
							checks="-1";
						}
					}
				}
			}
			//------------------------------------------------------------------------------------------------------------------------------
			if(eval('document.'+ form +'['+i+'].valstr'))
			{
			/* SPECIAL CHARACTERS*/
			if(eval('document.'+ form +'['+i+'].valstr.search("special")!="-1"'))
			{
				if(eval('document.'+ form +'['+i+'].valstr.search("specialFile")!="-1"')){
					var myStrPath=getActPath(form,i);
					var str=replaceMinusChar(myStrPath)
					if(!TstUsrLttr(str,form ,i))
					{
						strErrorValidatMsg=strNoSpecial;
						document.all.statusr.value=i;
					}
				}else{
					str=eval('document.'+form+'['+i+'].value')

					str=replaceMinusChar(str)

					eval('document.'+form+'['+i+'].value=str')
					if(!TstUsrLttr(eval('document.'+ form +'['+i+'].value'),form ,i))
					{
						strErrorValidatMsg=strNoSpecial;
						document.all.statusr.value=i;
					}
				}
			}
			//------------------------------------------------------------------------------------------------------------------------------
			/*No SPACES*/
			if(eval('document.'+ form +'['+i+'].valstr.search("remspaces")!="-1"'))
			{
				if(eval('document.'+ form +'['+i+'].value.indexOf(" ")!=-1'))
				{
					strErrorValidatMsg=strNoSpaces;
					document.all.statusr.value=i;					
				}
			}
			//------------------------------------------------------------------------------------------------------------------------------
			/* NUMERIC MAX VALUE LIMITATION*/
			if(eval('document.'+ form +'['+i+'].valstr.search("maxnum")!="-1"'))
			{
				if(eval('parseFloat(document.'+ form +'['+i+'].value) > parseFloat(document.'+ form +'['+i+'].maxval)'))
				{
					strErrorValidatMsg=eval('strMaxnum +" "+ document.'+ form +'['+i+'].maxval');
					document.all.statusr.value=i;
				}
			}
			//------------------------------------------------------------------------------------------------------------------------------
			/* NUMERIC MIN VALUE LIMITATION*/
				if(eval('document.'+ form +'['+i+'].valstr.search("minnum")!="-1"'))
				{
					if(eval('parseInt(document.'+ form +'['+i+'].value) < parseInt(document.'+ form +'['+i+'].minval)'))
					{
						strErrorValidatMsg=eval('strMinnum + " " + document.'+ form +'['+i+'].minval');
						document.all.statusr.value=i;
					}
				}
			//------------------------------------------------------------------------------------------------------------------------------
			/* NEGATIVE VALUE RISTRICTION*/
				if(eval('document.'+ form +'['+i+'].valstr.search("nonegative")!="-1"'))
				{
					strNum=eval('document.'+ form +'['+i+'].value')
					if(eval('parseFloat(strNum) < 0'))
					{
						strErrorValidatMsg=strNoNegative;
						document.all.statusr.value=i;
					}
				}
			//------------------------------------------------------------------------------------------------------------------------------
			/* Numbers Greater Than Zero*/
				if(eval('document.'+ form +'['+i+'].valstr.search("grtzero")!="-1"'))
				{
					if(eval('document.'+ form +'['+i+'].value <= 0 &&  document.'+ form +'['+i+'].value!=""'))
					{
						strErrorValidatMsg=strGrtZero;
						document.all.statusr.value=i;
					}
				}
			//------------------------------------------------------------------------------------------------------------------------------
			/* Empty Feilds */
			if(eval('document.'+ form +'['+i+'].valstr.search("empty")!="-1"'))
			{
				if(eval('document.'+ form +'['+i+'].value==""'))
				{
					strErrorValidatMsg=eval('strEnter + " " + document.'+ form +'['+i+'].strname');
					document.all.statusr.value=i;
				}
			}
			//------------------------------------------------------------------------------------------------------------------------------
			/* Integer Values*/
			if(eval('document.'+ form +'['+i+'].valstr.search("Integer")!="-1"'))
			{
				if(eval('!isNaN(document.'+ form +'['+i+'].value) && document.'+ form +'['+i+'].value.indexOf(".")!="-1"'))
				{
					strErrorValidatMsg=strNotInteger;
					document.all.statusr.value=i;
				}
			}
			//------------------------------------------------------------------------------------------------------------------------------
			/* Wrong Emails */
			if(eval('document.'+ form +'['+i+'].valstr.search("mail")!="-1"'))
			{
				if(eval('!mailvalidte(document.'+ form +'['+i+'].value)'))
				{
					strErrorValidatMsg=strWrongmail;
					document.all.statusr.value=i;
				}
			}
			//------------------------------------------------------------------------------------------------------------------------------
			/* Not Numeric */
			if(eval('document.'+ form +'['+i+'].valstr.search("numeric")!="-1"'))
			{
				if(eval('isNaN(document.'+ form +'['+i+'].value)'))
				{
					strErrorValidatMsg=strNumOnly;
					document.all.statusr.value=i;
				}
			}
			//------------------------------------------------------------------------------------------------------------------------------
			/* Equaled Items */
			if(eval('document.'+ form +'['+i+'].valstr.search("equal")!="-1"'))
			{
				eval('equalids=equalids +"---"+ document.'+ form +'['+i+'].name')
			}
			//------------------------------------------------------------------------------------------------------------------------------
			/* Maximum Length */
			if(eval('document.'+ form +'['+i+'].valstr.search("MaxLength")!="-1"'))
			{
				if(eval('document.'+ form +'['+i+'].value.length > document.'+ form +'['+i+'].strlength'))
				{
					strErrorValidatMsg=eval('strMaxlength +" "+ document.'+ form +'['+i+'].strlength');
					document.all.statusr.value=i;
				}
			}
			//------------------------------------------------------------------------------------------------------------------------------
			/* Minimum Length */
			if(eval('document.'+ form +'['+i+'].valstr.search("MinLength")!="-1"'))
			{
				if(eval('document.'+ form +'['+i+'].value.length < document.'+ form +'['+i+'].strlength'))
				{
					strErrorValidatMsg=eval('strMinlength +" "+   document.'+ form +'['+i+'].strname + "  : " +document.'+ form +'['+i+'].strlength');
					document.all.statusr.value=i;
				}
			}
			//------------------------------------------------------------------------------------------------------------------------------
			
		}


		if (document.all.statusr.value!='-1')
		{
			document.all.statusr.value='-1';
			if(eval('document.'+ form +'['+i+'].type!="hidden"'))
			{				
				eval('document.'+ form +'['+i+'].focus();')
			}
			alert(strErrorValidatMsg)
			return false;
			break;
		}
		i++;
	}


	if(equalids!="")
	{
		equalids="21212"+equalids;
		equalids=equalids.replace("21212---","");
		equalidsarr=equalids.split("---");
		for(n in equalidsarr)
		{
			for(m in equalidsarr)
			{
				if(eval('document.'+ form +'.'+ equalidsarr[n]+'.eqval')==eval('document.'+ form +'.'+ equalidsarr[m]+'.eqval'))
				{
					if(eval('document.'+ form +'.'+ equalidsarr[n]+'.value')!=eval('document.'+ form +'.'+ equalidsarr[m]+'.value'))
					{
						alert(eval('document.'+ form +'.'+ equalidsarr[n]+'.strname')+ " " + strAnd + " " + eval('document.'+ form +'.'+ equalidsarr[m]+'.strname')+ strNotSame);
						eval('document.'+ form +'.'+ equalidsarr[n]+'.focus()')
						return false;
					}
				}
			}
		}
	}
	if(checks==-1)
	{
		if(checkNameStr == "")
			alert(strCheckbox);
		else
			alert(strCheckbox1 +checkNameStr + strCheckbox2);
		return false;
	}
	return true;
}
//*****************************************************************************
function getActPath(myForm,id)
{
	var fileVal=eval('document.'+ myForm +'['+id+'].value');
	var pathArr,myRet;
	pathArr=fileVal.split("\\");
	myRet=pathArr[pathArr.length-1];
	return myRet;
}

//****************************************************************************
var formatChecker;
formatChecker=0;
function CheckFormat(txt,Formats)
{		
	var txt,word,MyFormat;
	word=txt.split(".");
	MyFormat=word[word.length-1];
	formatChecker=compareAll(MyFormat,Formats);
	return formatChecker;

}

function compareAll(target,arr)
{
	var found;
	found=0;
	for(i=0;i<arr.length;i++)
	{
			if (target.toLowerCase()==arr[i])
			found=1;
	}
	return found;
}


//****************************************************************************
function mailvalidte(UEmail)
{
	var strMail;
	strMail=UEmail
	var emailFilter=/^.+@.+\..{2,4}$/;	
        var illegalChars= /[\(\)\<\>\,\&\’\~\^\{\}\|\*\!\#\$\=\+\%\;\:\\\/\"\[\]]/

	if (strMail=="")
	{
	 return true;
	}
	else if (!emailFilter.test(strMail))
	{
	   return false;
	}
	else if (strMail.match(illegalChars))
	{
  	return false;
	}

	 return true;
}

function TrimStrLeft(str)
{
	var strt=new String(str);//strt=strt.substr(i+1,strt.length-(i+1));
	var count=0;
	for(i=0;i<strt.length;i++)
	{
	  if(strt.charAt(i)==" " )
	  count++;
	  else
	  {
	    if(count==strt.length)
	      strt="";
	      else if(count>0)
	       strt=strt.substr(count,strt.length-count);
	      if(str==null ||str=="null")
	        strt="";
	      return strt;
	    }
	}

 }
////////////////////////
function TrimStrRight(str)
{
	var strt=new String(str);//strt=strt.substr(i+1,strt.length-(i+1));
	var count=0;
	for(i=strt.length-1;i>=0;i--)
	{
	  if(strt.charAt(i)==" " )
	  count++;
	  else
	  {
	    if(count==strt.length)
	      strt="";
	      else if(count>0)
	       strt=strt.substr(0,strt.length-count);
	    if(str== null ||str=="null")
	        strt="";
	       return strt;
	    }
	}

 }
////////////////////
function TrimStr(str)
{
str=TrimStrRight(str);
str=TrimStrLeft(str);
if(str==null ||str=="null")
   str="";
return str;
}























function TstUsrLttr(feild,form,i){
	var arrSpecialChar = new Array();
	if(eval('document.'+ form +'['+i+'].valstr.search("specialNorm")!="-1"'))
	{
		/*************************Name Feilds*********************/
		//arrSpecialChar[0] = "!";
		//arrSpecialChar[1] = "@";
		//arrSpecialChar[2] = "#";
		//arrSpecialChar[17] = ".";
		//arrSpecialChar[18] = ".";
		//arrSpecialChar[19] = ",";
		//arrSpecialChar[7] = "*";
		//arrSpecialChar[28] = "_";
		//arrSpecialChar[29] = "-";
		//arrSpecialChar[34] = "،";
		//arrSpecialChar[35] = "’";
		//arrSpecialChar[36] = "؟";
		//arrSpecialChar[23] = "`";
		//arrSpecialChar[25] = ":";
		//arrSpecialChar[31] = "?";

		arrSpecialChar[3] = "$";
		arrSpecialChar[4] = "%";
		arrSpecialChar[5] = "^";
		arrSpecialChar[6] = "&";
		arrSpecialChar[8] = "\"";
		arrSpecialChar[8] = "(";
		arrSpecialChar[9] = ")";
		arrSpecialChar[10] = "+";
		arrSpecialChar[11] = "+";
		arrSpecialChar[12] = "=";
		arrSpecialChar[13] = "/";
		arrSpecialChar[14] = "\\";
		arrSpecialChar[15] = "|";
		arrSpecialChar[16] = "'";
		arrSpecialChar[20] = ">";
		arrSpecialChar[21] = "<";
		arrSpecialChar[22] = "~";
		arrSpecialChar[24] = ";";
		arrSpecialChar[26] = "]";
		arrSpecialChar[27] = "[";
		arrSpecialChar[30] = "\"";
		arrSpecialChar[32] = "}";
		arrSpecialChar[33] = "{";
		arrSpecialChar[37] = "”";
	}
		else if(eval('document.'+ form +'['+i+'].valstr.search("specialEquation")!="-1"')){
		//arrSpecialChar[0] = "!";
		//arrSpecialChar[1] = "@";
		//arrSpecialChar[2] = "#";
		//arrSpecialChar[3] = "$";
		//arrSpecialChar[4] = "%";
		//arrSpecialChar[5] = "^";
		//arrSpecialChar[6] = "&";
		//arrSpecialChar[7] = "*";
		//arrSpecialChar[8] = "\"";
		//arrSpecialChar[8] = "(";
		//arrSpecialChar[9] = ")";
//		arrSpecialChar[10] = "+";
//		arrSpecialChar[11] = "+";
//		arrSpecialChar[12] = "=";
//		arrSpecialChar[13] = "/";
//		arrSpecialChar[14] = "\\";
//		arrSpecialChar[15] = "|";
		arrSpecialChar[16] = "'";
//		arrSpecialChar[17] = ".";
//		arrSpecialChar[18] = ".";
		arrSpecialChar[19] = ",";
//		arrSpecialChar[20] = ">";
//		arrSpecialChar[21] = "<";
//		arrSpecialChar[22] = "~";
//		arrSpecialChar[23] = "`";
		arrSpecialChar[24] = ";";
//		arrSpecialChar[25] = ":";
//		arrSpecialChar[26] = "]";
//		arrSpecialChar[27] = "[";
//		arrSpecialChar[29] = "-";
		arrSpecialChar[30] = "\"";

//		arrSpecialChar[31] = "?";
//		arrSpecialChar[32] = "}";
//		arrSpecialChar[33] = "{";
//		arrSpecialChar[34] = "،";
//		arrSpecialChar[35] = "’";
//		arrSpecialChar[36] = "؟";
//		arrSpecialChar[37] = "”";
//		arrSpecialChar[38] = "ـ";
//		arrSpecialChar[39] = "–";
//		arrSpecialChar[40] = "×";
//		arrSpecialChar[41] = "÷";
//		arrSpecialChar[42] = "؛";
//		arrSpecialChar[43] = "ّ";
	}
	else if(eval('document.'+ form +'['+i+'].valstr.search("specialFolder")!="-1"')){
		arrSpecialChar[0] = "!";
		arrSpecialChar[1] = "@";
		arrSpecialChar[2] = "#";
		arrSpecialChar[3] = "$";
		arrSpecialChar[4] = "%";
		arrSpecialChar[5] = "^";
		arrSpecialChar[6] = "&";
		arrSpecialChar[7] = "*";
		arrSpecialChar[8] = "\"";
		arrSpecialChar[8] = "(";
		arrSpecialChar[9] = ")";
		arrSpecialChar[10] = "+";
		arrSpecialChar[11] = "+";
		arrSpecialChar[12] = "=";
		arrSpecialChar[13] = "/";
		arrSpecialChar[14] = "\\";
		arrSpecialChar[15] = "|";
		arrSpecialChar[16] = "'";
		arrSpecialChar[17] = ".";
		arrSpecialChar[18] = ".";
		arrSpecialChar[19] = ",";
		arrSpecialChar[20] = ">";
		arrSpecialChar[21] = "<";
		arrSpecialChar[22] = "~";
		arrSpecialChar[23] = "`";
		arrSpecialChar[24] = ";";
		arrSpecialChar[25] = ":";
		arrSpecialChar[26] = "]";
		arrSpecialChar[27] = "[";
		arrSpecialChar[29] = "-";
		arrSpecialChar[30] = "\"";
		arrSpecialChar[31] = "?";
		arrSpecialChar[32] = "}";
		arrSpecialChar[33] = "{";
		arrSpecialChar[34] = "،";
		arrSpecialChar[35] = "’";
		arrSpecialChar[36] = "؟";
		arrSpecialChar[37] = "”";
		arrSpecialChar[38] = "ـ";
		arrSpecialChar[39] = "–";
		arrSpecialChar[40] = "×";
		arrSpecialChar[41] = "÷";
		arrSpecialChar[42] = "؛";
		arrSpecialChar[43] = "ّ";
	}
	else if(eval('document.'+ form +'['+i+'].valstr.search("specialFile")!="-1"'))
	{
		//arrSpecialChar[25] = ":";
		//arrSpecialChar[14] = "\\";
		//arrSpecialChar[17] = ".";
		//arrSpecialChar[18] = ".";
		//arrSpecialChar[28] = "_";
		//arrSpecialChar[0] = "!";
		//arrSpecialChar[1] = "@";
		//arrSpecialChar[3] = "$";
		//arrSpecialChar[5] = "^";
		//arrSpecialChar[7] = "*";
		//arrSpecialChar[8] = "(";
		//arrSpecialChar[9] = ")";
		//arrSpecialChar[10] = "+";
		//arrSpecialChar[11] = "+";
		//arrSpecialChar[12] = "=";
		//arrSpecialChar[13] = "/";
		//arrSpecialChar[15] = "|";
		//arrSpecialChar[19] = ",";
		//arrSpecialChar[22] = "~";
		//arrSpecialChar[24] = ";";
		//arrSpecialChar[26] = "]";
		//arrSpecialChar[27] = "[";
		//arrSpecialChar[29] = "-";
		//arrSpecialChar[30] = "\"";
		//arrSpecialChar[31] = "?";
		//arrSpecialChar[32] = "}";
		//arrSpecialChar[33] = "{";
		//arrSpecialChar[34] = "،";
		//arrSpecialChar[36] = "؟";
		//arrSpecialChar[37] = "”";
		//arrSpecialChar[38] = "ـ";
		//arrSpecialChar[39] = "–";
		//arrSpecialChar[40] = "×";
		//arrSpecialChar[41] = "÷";
		//arrSpecialChar[42] = "؛";
		//arrSpecialChar[43] = "ّ";
		arrSpecialChar[14] = "\\";

		arrSpecialChar[35] = "’";
		arrSpecialChar[4] = "%";
		arrSpecialChar[16] = "'";
		arrSpecialChar[23] = "`";
		arrSpecialChar[8] = "\"";
		arrSpecialChar[6] = "&";
		arrSpecialChar[20] = ">";
		arrSpecialChar[21] = "<";
		arrSpecialChar[2] = "#";
                //added by MAI on 26 Dec 2005 to prevent using these german and turkish letters in file name to solve R 81 in Tadarus 1.1 SRS Bug 26549
                arrSpecialChar[44] = "\u00E4";
                arrSpecialChar[45] = "\u00F6";
                arrSpecialChar[46] = "\u00C4";
                arrSpecialChar[47] = "\u00D6";
                arrSpecialChar[48] = "\u00DF";

                arrSpecialChar[50] = "\u00DC";
                arrSpecialChar[51] = "\u00C7";
                arrSpecialChar[52] = "\u011E";
                arrSpecialChar[53] = "\u015E";
                arrSpecialChar[54] = "\u011F";

                arrSpecialChar[55] = "\u0131";
                arrSpecialChar[56] = "\u0130";
                arrSpecialChar[57] = "\u015F";
                //End Adding by MAI
                arrSpecialChar[58] = "\u0152";
                arrSpecialChar[59] = "\u0153";


	}
	else if(eval('document.'+ form +'['+i+'].valstr.search("specialRFile")!="-1"')){
		//arrSpecialChar[17] = ".";
		//arrSpecialChar[18] = ".";
		//arrSpecialChar[28] = "_";

		arrSpecialChar[0] = "!";
		arrSpecialChar[1] = "@";
		arrSpecialChar[2] = "#";
		arrSpecialChar[3] = "$";
		arrSpecialChar[4] = "%";
		arrSpecialChar[5] = "^";
		arrSpecialChar[6] = "&";
		arrSpecialChar[7] = "*";
		arrSpecialChar[8] = "\"";
		arrSpecialChar[8] = "(";
		arrSpecialChar[9] = ")";
		arrSpecialChar[10] = "+";
		arrSpecialChar[11] = "+";
		arrSpecialChar[12] = "=";
		arrSpecialChar[13] = "/";
		arrSpecialChar[14] = "\\";
		arrSpecialChar[15] = "|";
		arrSpecialChar[16] = "'";
		arrSpecialChar[19] = ",";
		arrSpecialChar[20] = ">";
		arrSpecialChar[21] = "<";
		arrSpecialChar[22] = "~";
		arrSpecialChar[23] = "`";
		arrSpecialChar[24] = ";";
		arrSpecialChar[25] = ":";
		arrSpecialChar[26] = "]";
		arrSpecialChar[27] = "[";
		arrSpecialChar[29] = "-";
		arrSpecialChar[30] = "\"";
		arrSpecialChar[31] = "?";
		arrSpecialChar[32] = "}";
		arrSpecialChar[33] = "{";
		arrSpecialChar[34] = "،";
		arrSpecialChar[35] = "’";
		arrSpecialChar[36] = "؟";
		arrSpecialChar[37] = "”";
		//arrSpecialChar[38] = "ـ";
		arrSpecialChar[39] = "–";
		arrSpecialChar[40] = "×";
		arrSpecialChar[41] = "÷";
		arrSpecialChar[42] = "؛";
		arrSpecialChar[43] = "ّ";
	}
	else/**************Description feilds*********************/
	{
		//arrSpecialChar[0] = "!";
		//arrSpecialChar[1] = "@";
		//arrSpecialChar[2] = "#";
		//arrSpecialChar[3] = "$";
		//arrSpecialChar[4] = "%";
		//arrSpecialChar[5] = "^";
		//arrSpecialChar[7] = "*";
		//arrSpecialChar[8] = "\"";
		//arrSpecialChar[8] = "(";
		//arrSpecialChar[9] = ")";
		//arrSpecialChar[10] = "+";
		//arrSpecialChar[11] = "+";
		//arrSpecialChar[12] = "=";
		//arrSpecialChar[15] = "|";
		//arrSpecialChar[16] = "'";
		//arrSpecialChar[17] = ".";
		//arrSpecialChar[18] = ".";
		//arrSpecialChar[19] = ",";
        //arrSpecialChar[22] = "'";
		//arrSpecialChar[22] = "~";
		//arrSpecialChar[23] = "`";
		//arrSpecialChar[24] = ";";
		//arrSpecialChar[25] = ":";
		//arrSpecialChar[26] = "]";
		//arrSpecialChar[27] = "[";
		//arrSpecialChar[28] = "_";
		//arrSpecialChar[29] = "-";
		//arrSpecialChar[30] = "\"";
		//arrSpecialChar[31] = "?";
		//arrSpecialChar[32] = "}";
		//arrSpecialChar[33] = "{";
		//arrSpecialChar[34] = "،";
		//arrSpecialChar[35] = "’";
		//arrSpecialChar[36] = "؟";

		arrSpecialChar[6] = "&";
		arrSpecialChar[13] = "/";
		arrSpecialChar[14] = "\\";
		arrSpecialChar[20] = ">";
		arrSpecialChar[21] = "<";
	}

	for(i=0;i<arrSpecialChar.length;i++)
	{
		if (arrSpecialChar[i]!=null && feild.indexOf(arrSpecialChar[i])>=0)
		{
			return false
		}
	}

	return true
}
function beforeTargetP(strID,id)
			{
				targetPt=GetCoords(strID)

				TsingCoord=targetPt.split(",")
				targetP(strID,TsingCoord[0],TsingCoord[1],id)

			}


			function targetP(strID,Xval,Yval,id)//id : Question id
			{
//alert(strID+'\n'+Xval+'\n'+Yval+'\n'+id)
			
				nIndex=0
				nTop=0
				nLeft=0
				endX=Xval
				endY=Yval

				if(id!=null && id!="" && id!=undefined)
				{
					if(activePair.indexOf(id)=="-1")
					{
						return false;
					}
					var var1=eval('document.all.BDYAns_'+ id +'.value')+ "-"
					var var2=strID.replace(id,"-").replace("AB","")					
					eval('document.all.'+ activePair +'.AVal= strID.replace("QB","").replace("AB","").replace(id,"")')
					eval('document.all.'+ activePair +'.value=document.all.'+ activePair +'.QVal+","+document.all.'+ activePair +'.AVal')
					activePair=""
				}
				else
				{
					document.all.QANames.value=document.all.QANames.value + "," + strDivName + "," + strID.replace("QB","").replace("AB","")
				}
				DrawP(strtX,strtY,endX,endY)
				strDivName="";
				clearBorders()
				GetStatus()
			}

			function DrawP(SX,SY,EX,EY)
			{
				DelAreaDiv="DrawingDiv_QB"+strDivName;
				ObjDelAreaDiv=eval('document.all.'+DelAreaDiv)
				if(ObjDelAreaDiv!=undefined && ObjDelAreaDiv!=null && ObjDelAreaDiv!="")
				{
				var strHorizontalOffsetAR=-12;
				var strVerticalOffsetAR=2;
				slopeP=(parseInt(EY)-parseInt(SY))/(parseInt(EX)-parseInt(SX));
				stN=1/((Math.abs((parseInt(EY)-parseInt(SY))/400)*2)+1)
				SX=parseFloat(SX);
				EX=parseFloat(EX);
				SY=parseFloat(SY);
				EY=parseFloat(EY);
				SY+=parseFloat(strVerticalOffsetAR);
				EY+=parseFloat(strVerticalOffsetAR);
				if(document.all.StrLang.value=="ar")
				{
					SX+=parseFloat(strHorizontalOffsetAR);
					EX+=parseFloat(strHorizontalOffsetAR);

					for (X=parseInt(EX) ; X < parseInt(SX) ; X++)
					{
						var Y=slopeP*X+(SY-SX*slopeP)-16
						ObjDelAreaDiv.insertAdjacentHTML("beforeEnd","<div style='position:absolute;color:44000C;FONT-SIZE: 14pt; top:"+ Y +"; left:"+ X + "'>.</div>")						
					}


				}
				else
				{
					for (X=parseInt(SX) ; X < parseInt(EX) ; X=X+parseFloat(stN) )
					{
						Y=slopeP*X+(SY-SX*slopeP)-16
						ObjDelAreaDiv.insertAdjacentHTML("beforeEnd","<div style='position:absolute;color:44000C;FONT-SIZE: 14pt; top:"+ Y +"; left:"+ X + "'>.</div>")						
					}
				}
				ObjDelAreaDiv.style.display="";
				}
			}
