﻿function wait(msecs)
{
    var start = new Date().getTime();
    var cur = start;
    while(cur - start < msecs) cur = new Date().getTime();
} 
//---
function getHTTPObject()
{
    if (window.ActiveXObject) return new ActiveXObject("Microsoft.XMLHTTP");
    else if (window.XMLHttpRequest) return new XMLHttpRequest();
    else 
    {
        alert("Your browser does not support AJAX.");
        return null;
    }
}
//---
var win=null;
function NewWindow(mypage,myname,w,h,scroll)
{
    var LeftPosition=(screen.width)?(screen.width-w)/2:100; 
    var TopPosition=(screen.height)?(screen.height-h)/2:100;
    win=window.open(mypage,myname,'width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',modal=yes, location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no');
    if(win.focus){win.focus();}
}
//---
function WatermarkBlur(txtElem, strWatermark) {
    if (txtElem.value == '') 
    {
        txtElem.value = strWatermark; txtElem.style.color = '#aaaaaa';
    }
}
function WatermarkFocus(txtElem, strWatermark) {
     if (txtElem.value == strWatermark) 
     {
        txtElem.value = ''; txtElem.style.color = '#990000';
     }
}
//--
function Trim(TRIM_VALUE)
{
    if(TRIM_VALUE.length < 1) return"";
    TRIM_VALUE = RTrim(TRIM_VALUE);
    TRIM_VALUE = LTrim(TRIM_VALUE);
    if(TRIM_VALUE=="") return "";
    else return TRIM_VALUE;
}
function RTrim(VALUE)
{
    var w_space = String.fromCharCode(32);
    var v_length = VALUE.length;
    var strTemp = "";
    if(v_length < 0) return"";

    var iTemp = v_length -1;
    while(iTemp > -1)
    {
        if(VALUE.charAt(iTemp) == w_space){}
        else
        {
            strTemp = VALUE.substring(0,iTemp +1);
            break;
        }
        iTemp = iTemp-1;
    }
    return strTemp;
}
function LTrim(VALUE)
{
    var w_space = String.fromCharCode(32);
    if(v_length < 1) return"";

    var v_length = VALUE.length;
    var strTemp = "";

    var iTemp = 0;

    while(iTemp < v_length)
    {
        if(VALUE.charAt(iTemp) == w_space){}
        else
        {
            strTemp = VALUE.substring(iTemp,v_length);
            break;
        }
        iTemp = iTemp + 1;
    }
    return strTemp;
}
//---
function DoConfirm(MsgTxt) {
	var answer = confirm(MsgTxt);
	if (answer) return true;
	else return false;
}
//=== FADE 
function SetOpacity(object,opacityPct)
{
  document.getElementById(object).style.filter = 'alpha(opacity=' + opacityPct + ')';
  document.getElementById(object).style.MozOpacity = opacityPct/100;
  document.getElementById(object).style.opacity = opacityPct/100;
}
function ChangeOpacity(id,msDuration,msStart,fromO,toO)
{
  var element=document.getElementById(id);
  var opacity = element.style.opacity * 100;
  var msNow = (new Date()).getTime();
  opacity = fromO + (toO - fromO) * (msNow - msStart) / msDuration;
  if (opacity<0) 
    SetOpacity(id,0);
  else if (opacity>100)
    SetOpacity(id,100);
  else
  {
    SetOpacity(id,opacity);
    element.timer = window.setTimeout("ChangeOpacity('" + id + "'," + msDuration + "," + msStart + "," + fromO + "," + toO + ")",1);
  }
}
function FadeIn(id)
{
  var element=document.getElementById(id); 
  if (element.timer) window.clearTimeout(element.timer); 
  var startMS = (new Date()).getTime();
  element.timer = window.setTimeout("ChangeOpacity('" + id + "',1000," + startMS + ",0,100)",1);
}
function FadeOut(id)
{
  var element=document.getElementById(id);
  if (element.timer) window.clearTimeout(element.timer); 
  var startMS = (new Date()).getTime();
  element.timer = window.setTimeout("ChangeOpacity('" + id + "',1000," + startMS + ",100,0)",1);
}
//----------------------------------------------
function MaxLength(MsgObject, OutputField, MsgLen)
{
    var anz = document.getElementById(MsgObject).value.length;
    if (anz > MsgLen ) 
    {
        document.getElementById(MsgObject).value = document.getElementById(MsgObject).value.substring(0, MsgLen);
    }    
    
    if(OutputField!="")
    {
        document.getElementById(OutputField).value = (MsgLen - document.getElementById(MsgObject).value.length);
        if( document.getElementById(MsgObject).value.length < 0 ) document.getElementById(OutputField).value = 0;
    }
}
//---
function RequiredFieldValidator(FieldID)
{
    var myTextField = document.getElementById(FieldID);
    if ((myTextField.value==null)||(Trim(myTextField.value)==""))
    {
	    myTextField.style.backgroundColor = "#FFFFCC";
	    myTextField.style.borderColor = "#7F9DB9";
	    myTextField.style.borderWidth = '1px';
	    myTextField.focus();
	    alert('الرجاء التأكد من تعبئة جميع الحقول المطلوبة');
	    return false;
    }
    else
    {
	    myTextField.style.backgroundColor = "";
	    myTextField.style.borderColor = '';
	    myTextField.style.borderWidth = '';
	    return true;
    }
}
//---
function EmailChecker(str) 
{
	var at="@";
	var dot=".";
	var lat=str.indexOf(at);
	var lstr=str.length;
	var ldot=str.indexOf(dot);

	if (str.indexOf(at)==-1) return false;

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) return false;

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) return false;

    if (str.indexOf(at,(lat+1))!=-1) return false;

    if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) return false;

	if (str.indexOf(dot,(lat+2))==-1) return false;

	if (str.indexOf(" ")!=-1) return false;

    return true
}
//---
function RequiredEmailField(FieldID)
{
	var myTextField = document.getElementById(FieldID);
	if ((myTextField.value==null)||(Trim(myTextField.value)=="") || (EmailChecker(myTextField.value)==false))
	{
		myTextField.style.backgroundColor = "#FFFFCC";
	    myTextField.focus();
	    alert('الرجاء كتابة البريد الالكتروني بشكل صحيح ومن ثم اعادة المحاولة!');		
	}
	else
	{
		myTextField.style.backgroundColor = "";
		return true;
	}
}

function clearText(TheStr) 
{
     try
     {
         var i = 0;
         var re = /\$|,|@|#|~|`|\%|\*|\^|\&|\(|\)|\+|\=|\[|\-|\_|\]|\[|\}|\{|\;|\:|\'|\"|\<|\>|\?|\||\\|\!|\$|\./g;
         
         if (Trim(TheStr)!="") return Trim(TheStr.replace(re, ""));
         else return "";
     }
     catch(e){return ""}
}

function IsNumeric(FieldID)

{
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;

   var myTextField = document.getElementById(FieldID);
   
   if ((myTextField.value==null)||(Trim(myTextField.value)=="")) IsNumber=false;
   else
   {
       for (i = 0; i < myTextField.value.length && IsNumber == true; i++) 
       { 
          Char = myTextField.value.charAt(i); 
          if (ValidChars.indexOf(Char) == -1) 
          {
             IsNumber = false;
          }
       }
   }
   
   if(IsNumber==false)
   {
   		myTextField.style.backgroundColor = "#FFFFCC";
	    myTextField.focus();
	    alert('الرجاء التأكد من ادخال الرقم بشكل صحيح');	
   }
   
   return IsNumber;
}



