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