ÿþ/ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /              
              
 / /   O r i g i n a l   i d e a   i s   f r o m :              
 / /   h t t p : / / c v s . s o u r c e f o r g e . n e t / c g i - b i n / v i e w c v s . c g i / f a r s i t o o l s / # d i r l i s t   a n d              
 / /   h t t p : / / c v s . s o u r c e f o r g e . n e t / c g i - b i n / v i e w c v s . c g i / f a r s i t o o l s / p h p / d a t e / s c r i p t s /  
 / /   C O D E S   H A V E   B E E N   E X P A N D E D   B Y   P e r s i a n B l o g . c o m  
              
 v a r   l a n g F a r s i   =   t r u e ;  
 v a r   f a r s i k e y   =   [ 	 / /   F a r s i   k e y b o a r d   m a p   b a s e d   o n   I r a n   P o p u l a r   K e y b o a r d   L a y o u t              
 	 0 x 0 0 2 0 ,   0 x 0 0 2 1 ,   0 x 0 6 1 B ,   0 x 0 6 6 B ,   0 x 0 0 A 4 ,   0 x 0 6 6 A ,   0 x 0 6 0 C ,   0 x 0 6 A F ,              
 	 0 x 0 0 2 9 ,   0 x 0 0 2 8 ,   0 x 0 0 2 A ,   0 x 0 0 2 B ,   0 x 0 6 4 8 ,   0 x 0 0 2 D ,   0 x 0 0 2 E ,   0 x 0 0 2 F ,              
 	 0 x 0 6 F 0 ,   0 x 0 6 F 1 ,   0 x 0 6 F 2 ,   0 x 0 6 F 3 ,   0 x 0 6 F 4 ,   0 x 0 6 F 5 ,   0 x 0 6 F 6 ,   0 x 0 6 F 7 ,              
 	 0 x 0 6 F 8 ,   0 x 0 6 F 9 ,   0 x 0 0 3 A ,   0 x 0 6 4 3 ,   0 x 0 0 3 E ,   0 x 0 0 3 D ,   0 x 0 0 3 C ,   0 x 0 6 1 F ,              
 	 0 x 0 6 6 C ,   0 x 0 6 2 4 ,   0 x 2 0 0 C ,   0 x 0 6 9 8 ,   0 x 0 6 4 A ,   0 x 0 6 4 D ,   0 x 0 6 2 5 ,   0 x 0 6 2 3 ,              
 	 0 x 0 6 2 2 ,   0 x 0 6 5 1 ,   0 x 0 6 2 9 ,   0 x 0 0 B B ,   0 x 0 0 A B ,   0 x 0 6 2 1 ,   0 x 0 0 4 E ,   0 x 0 0 5 D ,              
 	 0 x 0 0 5 B ,   0 x 0 6 5 2 ,   0 x 0 6 4 B ,   0 x 0 6 2 6 ,   0 x 0 6 4 F ,   0 x 0 6 4 E ,   0 x 0 0 5 6 ,   0 x 0 6 4 C ,                          
 	 0 x 0 0 5 8 ,   0 x 0 6 5 0 ,   0 x 0 6 4 3 ,   0 x 0 6 2 C ,   0 x 0 6 9 8 ,   0 x 0 6 8 6 ,   0 x 0 0 D 7 ,   0 x 0 6 4 0 ,                          
 	 0 x 0 6 7 E ,   0 x 0 6 3 4 ,   0 x 0 6 3 0 ,   0 x 0 6 3 2 ,   0 x 0 6 4 A ,   0 x 0 6 2 B ,   0 x 0 6 2 8 ,   0 x 0 6 4 4 ,                          
 	 0 x 0 6 2 7 ,   0 x 0 6 4 7 ,   0 x 0 6 2 A ,   0 x 0 6 4 6 ,   0 x 0 6 4 5 ,   0 x 0 6 2 6 ,   0 x 0 6 2 F ,   0 x 0 6 2 E ,                          
 	 0 x 0 6 2 D ,   0 x 0 6 3 6 ,   0 x 0 6 4 2 ,   0 x 0 6 3 3 ,   0 x 0 6 4 1 ,   0 x 0 6 3 9 ,   0 x 0 6 3 1 ,   0 x 0 6 3 5 ,                          
 	 0 x 0 6 3 7 ,   0 x 0 6 3 A ,   0 x 0 6 3 8 ,   0 x 0 0 7 D ,   0 x 0 0 7 C ,   0 x 0 0 7 B ,   0 x 0 0 7 E                          
 ] ;    
  
 v a r   f a r s i k e y O n l y   =   [ 	 / /   F a r s i   k e y b o a r d   m a p   b a s e d   o n   I r a n   P o p u l a r   K e y b o a r d   L a y o u t              
 	 0 x 0 0 2 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 6 A F ,              
 	 0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 6 4 8 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,              
 	 0 x 0 6 F 0 ,   0 x 0 6 F 1 ,   0 x 0 6 F 2 ,   0 x 0 6 F 3 ,   0 x 0 6 F 4 ,   0 x 0 6 F 5 ,   0 x 0 6 F 6 ,   0 x 0 6 F 7 ,              
 	 0 x 0 6 F 8 ,   0 x 0 6 F 9 ,   0 x 0 0 0 0 ,   0 x 0 6 4 3 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,              
 	 0 x 0 0 0 0 ,   0 x 0 6 2 4 ,   0 x 2 0 0 C ,   0 x 0 6 9 8 ,   0 x 0 6 4 A ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 6 2 3 ,              
 	 0 x 0 6 2 2 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 6 2 1 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,              
 	 0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,                          
 	 0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 6 4 3 ,   0 x 0 6 2 C ,   0 x 0 6 9 8 ,   0 x 0 6 8 6 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,                          
 	 0 x 0 6 7 E ,   0 x 0 6 3 4 ,   0 x 0 6 3 0 ,   0 x 0 6 3 2 ,   0 x 0 6 4 A ,   0 x 0 6 2 B ,   0 x 0 6 2 8 ,   0 x 0 6 4 4 ,                          
 	 0 x 0 6 2 7 ,   0 x 0 6 4 7 ,   0 x 0 6 2 A ,   0 x 0 6 4 6 ,   0 x 0 6 4 5 ,   0 x 0 6 2 6 ,   0 x 0 6 2 F ,   0 x 0 6 2 E ,                          
 	 0 x 0 6 2 D ,   0 x 0 6 3 6 ,   0 x 0 6 4 2 ,   0 x 0 6 3 3 ,   0 x 0 6 4 1 ,   0 x 0 6 3 9 ,   0 x 0 6 3 1 ,   0 x 0 6 3 5 ,                          
 	 0 x 0 6 3 7 ,   0 x 0 6 3 A ,   0 x 0 6 3 8 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0 ,   0 x 0 0 0 0                          
 ] ;                          
                          
 f u n c t i o n   F K e y D o w n ( )   {  
 	 i f   ( w i n d o w . e v e n t . s h i f t K e y   & &   w i n d o w . e v e n t . a l t K e y )   {  
 	 	 l a n g F a r s i = ! l a n g F a r s i ;  
 	 	 r e t u r n   f a l s e ;  
 	 }  
 	 r e t u r n   t r u e ;  
 }  
  
 f u n c t i o n   F K e y P r e s s ( n u m , n u m l a n , c h r t )   {  
       v a r   k e y   =   w i n d o w . e v e n t . k e y C o d e ;  
       i f   ( k e y   <   0 x 0 0 2 0   | |   k e y   > =   0 x 0 0 F F )  
             r e t u r n ;  
       i f   ( ! n u m   & &   k e y > 4 7   & &   k e y < 5 8 )   { w i n d o w . e v e n t . k e y C o d e = 0 ;   r e t u r n   t r u e ; }  
       i f   ( n u m   & &   ! n u m l a n   & &   k e y > 4 7   & &   k e y < 5 8 )   { r e t u r n   t r u e ; }  
       i f   ( l a n g F a r s i )   {  
             v a r   e l   =   e v e n t . s r c E l e m e n t ;  
             v a r   o b j R e g E x p   =   n e w   R e g E x p ( " [ A - Z a - z \ x 2 7 \ x 2 C \ x 3 B \ x 5 B \ x 5 C \ x 5 D \ x 7 C ] " ) ;  
             v a r   v a l i d a t e _ k e y   =   o b j R e g E x p . t e s t ( S t r i n g . f r o m C h a r C o d e ( k e y ) ) ;  
             i f   ( ( v a l i d a t e _ k e y   | |   ( k e y = = 9 2 ) )   & &   ( k e y   ! =   0 x 2 0 0 C )   & &   ( e l . v a l u e . l a s t I n d e x O f ( S t r i n g . f r o m C h a r C o d e ( 1 7 4 0 ) )   = =   e l . v a l u e . l e n g t h   -   1 )   & &   e l . v a l u e . l e n g t h   >   0 )   {  
                   e l . v a l u e   =   e l . v a l u e . s l i c e ( 0 ,   - 1 ) ;  
                   e l . v a l u e   + =   S t r i n g . f r o m C h a r C o d e ( 1 6 1 0 ) ;  
             }  
             i f   ( k e y   = =   0 x 0 0 2 0   & &   w i n d o w . e v e n t . s h i f t K e y ) {  
                   w i n d o w . e v e n t . k e y C o d e   =   0 x 2 0 0 C ; }  
             e l s e {  
                 i f   ( c h r t )   { w i n d o w . e v e n t . k e y C o d e   =   f a r s i k e y [ k e y   -   0 x 0 0 2 0 ] ; }  
                 e l s e   { w i n d o w . e v e n t . k e y C o d e   =   f a r s i k e y O n l y [ k e y   -   0 x 0 0 2 0 ] ; } }  
                 / /   a l e r t ( k e y )  
                 / /   a l e r t ( f a r s i k e y [ k e y   -   0 x 0 0 2 0 ] )  
 / /                   a l e r t ( S t r i n g . f r o m C h a r C o d e ( k e y ) )  
 / /                   a l e r t ( w i n d o w . e v e n t . k e y C o d e )  
                 / /   a l e r t ( S t r i n g . f r o m C h a r C o d e ( w i n d o w . e v e n t . k e y C o d e ) )  
       }  
       r e t u r n   t r u e ;  
 }  
  
 f u n c t i o n   v a l i d A l l ( c t r l ) {  
             i f ( e v e n t . k e y C o d e = = 9 ) {  
             v a r   r x   =   n e w   R e g E x p ( c t r l . M a s k ) ;  
             v a r   m a t c h e s   =   r x . e x e c ( c t r l . v a l u e ) ;  
           / /   a l e r t ( e v e n t . k e y C o d e )  
             r e t u r n   ( m a t c h e s   ! =   n u l l   & &   c t r l . v a l u e   = =   m a t c h e s [ 0 ] )    
      
             }  
   }  
  
 f u n c t i o n   I s V a l i d ( c t r l )   {  
             i f   ( e v e n t . k e y C o d e = = 8   | |   e v e n t . k e y C o d e = = 1 8   | |   e v e n t . k e y C o d e = = 2 7   | |   e v e n t . k e y C o d e = = 1 7   | |   e v e n t . k e y C o d e = = 1 6   | |   e v e n t . k e y C o d e = = 1 3   | |   e v e n t . k e y C o d e = = 2 0   | |   e v e n t . k e y C o d e = = 4 6   | |   e v e n t . k e y C o d e = = 3 6   | |   e v e n t . k e y C o d e = = 3 5   | |   e v e n t . k e y C o d e = = 4 5   | |   e v e n t . k e y C o d e = = 3 3   | |   e v e n t . k e y C o d e = = 3 4 )   { r e t u r n   t r u e ; }  
                       v a r   v a l u e   = c t r l . v a l u e   +   S t r i n g . f r o m C h a r C o d e ( e v e n t . k e y C o d e ) ;  
                   / /   a l e r t ( v a l u e )  
                       i f   ( t r i m ( v a l u e ) . l e n g t h   = =   0 ) { r e t u r n   t r u e ; }  
                       v a r   m = c t r l . P M a s k . s p l i t ( "   ,   " )  
                 f o r   ( i = 0 ; i < m . l e n g t h ; i + + ) {      
                                 v a r   r x   =   n e w   R e g E x p ( m [ i ] ) ;  
                                 v a r   m a t c h e s   =   r x . e x e c ( v a l u e ) ;  
                                 i f   ( m a t c h e s   ! =   n u l l   & &   v a l u e   = =   m a t c h e s [ 0 ] )   {   r e t u r n   t r u e ; }  
                         }  
                          
                       r e t u r n   f a l s e ;  
                 }  
                  
 f u n c t i o n   t r i m ( s t r )   {  
         r e t u r n   l t r i m ( r t r i m ( s t r ) ) ;  
 }  
  
 f u n c t i o n   l t r i m ( s t r )   {  
         c h a r s   =   " \ \ s " ;  
         r e t u r n   s t r . r e p l a c e ( n e w   R e g E x p ( " ^ [ "   +   c h a r s   +   " ] + " ,   " g " ) ,   " " ) ;  
 }  
  
 f u n c t i o n   r t r i m ( s t r )   {  
         c h a r s   =     " \ \ s " ;  
         r e t u r n   s t r . r e p l a c e ( n e w   R e g E x p ( " [ "   +   c h a r s   +   " ] + $ " ,   " g " ) ,   " " ) ;  
 }  
                          
 f u n c t i o n   c h e c k ( ) {  
         i f   ( d o c u m e n t . g e t E l e m e n t B y I d ( ' t x t I D ' ) . v a l u e = = ' ' ) { a l e r t ( ' . D7A'K  '(*/'  "Ì*E  EH1/  F81  1'  '2  DÌ3*  'F*.'(  FE'ÌÌ/' ) ;   r e t u r n   f a l s e ; }  
         r e t u r n   t r u e ;  
 }  
  
 
