﻿
        function refershtime()
        {
        
          var lbltimedate=document.getElementById("datetime"); 
          var objtime=new Date()  
          var objdate=calcdate()       
         // lbltimedate.innerHTML = objtime.toLocaleTimeString() + " " + objdate; 
         
          lbltimedate.innerHTML =  objdate; 
          //setTimeout("refershtime()",1000)   
          
        }
        
        
//.................................... 
 
  function calcdate() {
  
       
        week= new Array("یکشنبه","دوشنبه","سه شنبه","چهارشنبه","پنج شنبه","جمعه","شنبه")
        months = new Array("فروردین","اردیبهشت","خرداد","تیر","مرداد","شهریور","مهر" ,"آبان","آذر","دی","بهمن","اسفند ");
        a = new Date();
        d= a.getDay();
        day= a.getDate();
        month = a.getMonth()+1;
        year= a.getYear();

var  bolmiladi 
bolmiladi  = false;

var bolshamsi 
bolshamsi = false ;

var syear 
var smonth
var sday

var b 
b  = year % 4

if ( b == 0)
  bolmiladi = true;
syear = year - 622

b = syear % 4

if (b == 3)  
   bolshamsi = true

if (bolmiladi == true )
{

var i
var n
var y

switch (month) {
 
 case 1 :
 {
  if (day <= 20 )
  {
   i = 10
   n = 9
  }
  else
  {
   i = -20
   n = 10
  }                     
  
  y = 0
  break ;
 }
 //-----
 case 2 :
 {
 if (day <= 19 )
 {
 i = 11
 n = 9
 }
 else
 {
  i = -19
  n = 10
 }
 y = 0
 
 break ;
 }
 //-----
 case 3 :
 {
  if (day <= 19)
  {
   i = 10
   n = 9
   y = 0
  }
  else
  {
   i = -19
   n = -2
   y = 1
  }
 
 break ;
 }
 // ------
 case 4 :
 {
  if ( dDay <= 19 )
  {
    i = 12
    n = -3
  }
  else
  {
   i = -19
   n = -2
  }
  y = 1
 break ;
 }
 // -----
 case 5 :
 {
 if (day <= 20 )
 {
  i = 11
  n = -3
 }
 else
 {
  i = -20
  n = -2
 }
 y = 1
 break ;
 }
 
 // ----
 case 6 :
 {
 
 if (day <= 20 )
 {
  i = 11
   n = -3
 }
 else
 {
  i = -20
  n = -2
 }
 y = 1
 break ;
 }
 //------
 case 7 :
 {
 if (day <= 22 )
 {
   j = 9
   m = -3
 }
 else
 {
  j = -22
  m = -2
 }
  p = 1
 break ;
 }
 // -----
 case 8 :
 {
 if (day <= 22 )
 {
  j = 9
  m = -3
 }
 else
 {
  j = -22
  m = -2
 }
 p = 1
 break ;
 }
 //--------
 case 9 :
 {
  if (day <= 22 )
  {
   j = 9
   m = -3
  }
  else
  {
   j = -22
   m = -2
  }
  p = 1
 break ;
 }
 //----------
 case 10 :
 {
  if( day <= 22)
  {
   j = 8
   m = -3
  }
  else
  {
   j = -22
   m = -2
  }
  p = 1
 
 break ;
 }
 //--------------
 case 11 : 
 {
 if (day <= 21 )
 {
  j = 9
  m = -3
 }
 else
 {
   j = -21
    m = -2
 }
 p = 1
 break ;
 }
 // ----------------
 case 12 :
 {
  if( day <= 21 )
  {
   j = 9
   m = -3
  }
  else
  {
   j = -21
    m = -2
  }
 p = 1
 
 break ;
 }
 
 // End of Case
 }
 
 sday = day + j
 smonth = month + m
 syear += p
 return week[d] + " " + sday + " " + months[smonth - 1] + " " + syear
// End of bolmiladi
}

// Shamsi Kabise Bashad

if ( bolshamsi == true )
{
var j
var m
var p
switch (month) {

case 1 :
{
 if(day <= 19 )
 {
   j = 11
    m = 9
 }
 else
 {
   j = -19
    m = 10
 }
p = 0
break ;
}
// ------
case 2 :
{
 if(day <= 19 )
 {
  j = 12
    m = 9
 }
 else
 {
  j = -18
    m = 10
 }
p = 0
break ;
}
// ------
case 3 :
{
 if (day <= 20 )
 {
  j = 10
    m = 9
      p = 0
 }
 else
 {
  j = -20
    m = -2
     p = 1
 }

break ;
}
// ------
case 4 :
{
if (day <= 20 )
{
 j = 11
   m = -3
}
else
{
   j = -20
     m = -2
}
 p = 1
break ;
}
// ------
case 5 :
{
 if (day <= 21 )
 {
  j = 10
    m = -3
 }
 else
 {
  j = -21
    m = -2
 }
 p = 1
break ;
}
// ------
case 6 :
{
 if (day <= 21 )
 {
  j = 10
   m = -3
 }
 else
 {
  j = -21
    m = -2
 }                    
 p = 1
break ;
}
// ------
case 7 :
{
 if (day <= 22 )
 {
  j = 9
  m = -3
 }
 else
 {
 j = -22
  m = -2
 }
p = 1
break ;
}
// ------
case 8 :
{
 if (day <= 22 )
 {
 j = 9
  m = -3
 }
 else
 {
  j = -22
    m = -2
 }
  p = 1
break ;
}
// ------
case 9 :
{
 if (day <= 22 )
 {
  j = 9
  m = -3
 }
 else
 {
 
  j = -22
    m = -2
 }
 p = 1
break ;
}
// ------
case 10 :
{
 if (day <= 22 )
 {
 j = 8
    m = -3
 }
 else
 {
   j = -22
    m = -2
 }
 p = 1
break ;
}
// ------
case 11 :
{
 if (day <= 21 )
 {
 j = 9
 m = -3
 }
 else
 {
 j = -21
  m = -2
 
 }
 p = 1
break ;
}
// ------
case 12 :
{
if (day <= 21 )
{
 j = 9
  m = -3
}
else
{
 j = -21
   m = -2
}
 p = 1
break ;
}
// ------

// End of swith
}

sday = day + j
smonth = month + m
syear += p
 return week[d] + " " + sday + " " + months[smonth - 1] + " " + syear            
// end of if
}




if (bolmiladi == false && bolshamsi == false )
{

var a
var b
var c
switch (month) {
case 1 :
{
 if (day <= 20 )
 {
  a = 10
  b = 9
 }
 else
 {
   a = -20
   b = 10
 }
 c = 0
break ;
}
// ---------
case 2 :
{
 if (day <= 19 )
 {
  a = 11
  b = 9
 }
 else
 {
    a = -19
    b = 10
 }
 c = 0

break ;
}
// ---------
case 3 :
{
 if (day <= 20 )
 {
  a = 9
  c = 0
  b = 9
 }
 else
 {
  a = -20
  c = 1
  b = -2
 }

break ;
}
// ---------
case 4 :
{
 if (day <= 20 )
 {
   a = 11
   b = -3
 }
 else
 {
  a = -20
  b = -2
 }
 c = 1
break ;
}
// ---------
case 5 :
{
if (day <= 21 )
{
 a = 10
 b = -3
}
else
{
  a = -21
  b = -2
}
c = 1
break ;
}
// ---------
case 6 :
{
 if (day <= 21 )
 {
  a = 10
  b = -3
 }
 else
 {
  a = -21
  b = -2
 }
 c = 1
break ;
}
// ---------
case 7 :
{
 if (day <= 22 )
 {
  a = 9
  b = -3
 }
 else
 {
   a = -22
   b = -2
 }
 c = 1
break ;
}
// ---------
case 8 :
{
 if (day <= 22 )
 {
   a = 9
   b = -3
 }
 else
 {
  a = -22
   b = -2
 }
 c = 1
break ;
}
// ---------
case 9 :
{
 if (day <= 22 )
 {
  a = 9
  b = -3
 }
 else
 {
   a = -22
   b = -2
 }
 c = 1
break ;
}
// ---------
case 10 :
{
  if (day <= 22 )
  {
    a = 8
    b = -3
  }
  else
  {
   a = -22
   b = -2
  }
  c = 1
break ;
}
// ---------
case 11 :
{
 if ( day <= 21 )
 {
  a = 9
  b = -3
 }
 else
 {
   a = -21
   b = -2
 }
 c = 1
break ;
}
// ---------
case 12 :
{
if (day <= 21 )
{
 a = 9
 b = -3
}
else
{
  a = -21
  b = -2
}
c = 1
break ;
}
// ---------

// End of switch
}
 sday = day + a
 smonth = month + b
 syear += c
 return week[d] + " " + sday + " " + months[smonth - 1] + " " + syear

// end of if
}

//        year = (year== 0)?2000:year;
//        (year<1000)? (year += 2000):true;

//        year -= ( (month < 3) || ((month == 3) && (day < 21)) )? 622:621;

//        switch (month) {
//        case 1: (day<21)? (month=10, day+=10):(month=11, day-=20); break;
//        case 2: (day<20)? (month=11, day+=11):(month=12, day-=19); break;
//        case 3: (day<21)? (month=12, day+=9):(month=1, day-=20); break;
//        case 4: (day<21)? (month=1, day+=11):(month=2, day-=20); break;
//        case 5:
//        case 6: (day<22)? (month-=3, day+=10):(month-=2, day-=21); break;
//        case 7:
//        case 8:
//        case 9: (day<23)? (month-=3, day+=9):(month-=2, day-=22); break;
//        case 10:(day<23)? (month=7, day+=8):(month=8, day-=22); break;
//        case 11:
//        case 12:(day<22)? (month-=3, day+=9):(month-=2, day-=21); break;
//        default: break;
//        } 
//        
//        day += 1
    return '';
    
}   
     
  //....................................  
  
    function NumberFilter(str,e) 
     {          /*Grabbing the unicode value of the key that was pressed*/ 
                var unicode; 
            
        try 
        {   /*IE*/ 
            unicode = e.keyCode;
              
        } 
        catch(err) 
        {    
            try 
            { /*Netscape, Mozilla, FireFox...*/ 
                 unicode = event.keyCode; 
            } 
            catch(error) 
            {  /*Other*/ 
                unicode = e.which; 
             } 
         } 
        /*if the value entered is not a unicode value between 48 and 57 return false*/ 
        
        if(unicode < 48 || unicode > 57) 
        { 
          if ((str=="Bday") && (unicode==47)) return true;                                 
          return false; 
        }  
        return true; 
     } 
     
  //.................................... 
    
    function validdate(dtControl) 
           {
                
                if (dtControl.value!="")
                {           
                  
                    var validformat=/^([1-9]|0[1-9]|[12][0-9]|3[01])\/([1-9]|0[1-9]|[1][0-2])\/([0-9][0-9]|[1][2-4][0-9][0-9])$/ 
         
                    var returnval=false
                    if (dtControl.value.search(validformat)==-1)
                        {
                            alert('(تاریخ نامعتبر (شکل صحیح:روز/ماه/سال ')        
                            dtControl.focus() 
                            return false;
                         }
                    else
                         {                          
                           var strdate=new Array()
                           
                           strdate=dtControl.value.split('/')
                           if ((parseInt(strdate[0])<0) || (parseInt(strdate[0])>31))
                               {
                                alert('روز نامعتبر')        
                                dtControl.focus() 
                                return false;
                               } 
                           if ((parseInt(strdate[1])<0) || (parseInt(strdate[1])>12))
                               {
                                alert('ماه نامعتبر')        
                                dtControl.focus() 
                                return false;
                               } 
                            if (strdate[2].length==4)
                            {
                             strdate[2]=strdate[2].substring(2,4)
                            }
                            if ((parseInt(strdate[2])<0) || (parseInt(strdate[2])>99))
                               {
                                alert('سال نامعتبر')        
                                dtControl.focus() 
                                return false;
                               }
                             if ((parseInt(strdate[1])>=7) && (parseInt(strdate[1])<=12))
                               {
                                if (parseInt(strdate[0])==31)
                                {
                                    alert('روز نامعتبر')        
                                    dtControl.focus() 
                                    return false;
                                }
                               } 
                           
                         }
                    
                    return returnval
                 }
           }
           
 //....................................    
        
  function emailcheck(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 0
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){		   
		   return 0
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){		   
		    return 0
		}

		 if (str.indexOf(at,(lat+1))!=-1){		    
		    return 0
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){		    
		    return 0
		 }

		 if (str.indexOf(dot,(lat+2))==-1){		    
		    return 0
		 }
		
		 if (str.indexOf(" ")!=-1){		   
		    return 0
		 }

 		 return 1
  }
  
  //.................................... 
  
    function checkemailfull(str)
    {
        var testresult
        var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
        if (filter.test(str))
        testresult=1
        else                
        testresult=0
        
        return testresult
    }

 
//.................................... 


 function enterfarsi(myfield,e)
        {
        var key;
        if (window.event)
        key = window.event.keyCode;
        else if (e)
        key = e.which;
        if (key>31)
        if (key<128)
        {
        if (window.event)
        {
        window.event.keyCode=' !"#$%،گ)(×+و-./0123456789:ك,=.؟@ِذ}ىُىلآ÷ـ،/’د×؛َءٍف‘{ًْإ~جژچ^_پشذزيثبلاهتنمئدخحضقسفعرصطغظ<|>ّ'.charCodeAt(key-32);
        }
        else if (e)
        e.which=' !"#$%،گ)(×+و-./0123456789:ك,=.؟@ِذ}ىُىلآ÷ـ،/’د×؛َءٍف‘{ًْإ~جژچ^_پشذزيثبلاهتنمئدخحضقسفعرصطغظ<|>ّ'.charCodeAt(key-32);
        }
        return true;
        }
        function enterenglish(myfield,e)
        {
        var key;
        if (window.event)
        key = window.event.keyCode;
        else if (e)
        key = e.which;
        if (key>1000)
        if (key<2000)
        {
        if (window.event)
        {        
        switch(key)
        {
        case 1588:window.event.keyCode=97;break;
        case 1584:window.event.keyCode=98;break;
        case 1586:window.event.keyCode=99;break;
        case 1740:window.event.keyCode=100;break;
        case 1579:window.event.keyCode=101;break;
        case 1576:window.event.keyCode=102;break;
        case 1604:window.event.keyCode=103;break;
        case 1575:window.event.keyCode=104;break;
        case 1607:window.event.keyCode=105;break;
        case 1578:window.event.keyCode=106;break;
        case 1606:window.event.keyCode=107;break;
        case 1605:window.event.keyCode=108;break;
        case 1574:window.event.keyCode=109;break;
        case 1583:window.event.keyCode=110;break;
        case 1582:window.event.keyCode=111;break;
        case 1581:window.event.keyCode=112;break; 
        case 1590:window.event.keyCode=113;break;
        case 1602:window.event.keyCode=114;break;
        case 1587:window.event.keyCode=115;break;
        case 1601:window.event.keyCode=116;break;
        case 1593:window.event.keyCode=117;break;
        case 1585:window.event.keyCode=118;break;
        case 1589:window.event.keyCode=119;break;
        case 1591:window.event.keyCode=120;break;
        case 1594:window.event.keyCode=121;break;
        case 1592:window.event.keyCode=122;break;      
        }
        }
        else if (e)
        {        
        switch(key)
        {
        case 1588:e.which=97;break;
        case 1584:e.which=98;break;
        case 1586:e.which=99;break;
        case 1740:e.which=100;break;
        case 1579:e.which=101;break;
        case 1576:e.which=102;break;
        case 1604:e.which=103;break;
        case 1575:e.which=104;break;
        case 1607:e.which=105;break;
        case 1578:e.which=106;break;
        case 1606:e.which=107;break;
        case 1605:e.which=108;break;
        case 1574:e.which=109;break;
        case 1583:e.which=110;break;
        case 1582:e.which=111;break;
        case 1581:e.which=112;break; 
        case 1590:e.which=113;break;
        case 1602:e.which=114;break;
        case 1587:e.which=115;break;
        case 1601:e.which=116;break;
        case 1593:e.which=117;break;
        case 1585:e.which=118;break;
        case 1589:e.which=119;break;
        case 1591:e.which=120;break;
        case 1594:e.which=121;break;
        case 1592:e.which=122;break;      
        }
        }
        }
        return true;
        }        




