
$(document).ready( function() {

     $input = $('#sf_email');
     $input_name = $('#sf_name');
     $input_phone = $('#sf_phone');

     var emptyText = '* אימייל';
     var txtField2 = '* שם';
     var txtField3 = 'טלפון (אופציונלי)';

     function setEmptyText(input, txt) {
         input.val(txt);
         input.addClass('empty');
     }

     function unsetEmptyText(input) {
         input.val('');
         input.removeClass('empty');
     }

     setEmptyText($input,emptyText);
     $input.bind('focus', function() { if ($(this).val() == emptyText) unsetEmptyText($(this)); });
     $input.bind('blur', function() { if ($(this).val() == '') setEmptyText($(this), emptyText); });

     setEmptyText($input_name,txtField2);
     $input_name.bind('focus', function() { if ($(this).val() == txtField2) unsetEmptyText($(this)); });
     $input_name.bind('blur', function() { if ($(this).val() == '') setEmptyText($(this), txtField2); });

     setEmptyText($input_phone,txtField3);
     $input_phone.bind('focus', function() { if ($(this).val() == txtField3) unsetEmptyText($(this)); });
     $input_phone.bind('blur', function() { if ($(this).val() == '') setEmptyText($(this), txtField3); });

     
     
     function validateEmail(elementValue){  
         var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;  
         return emailPattern.test(elementValue);  
     } 

     function submit_form() {

         var email = $input.val();
         var name = $input_name.val();
         var phone = $input_phone.val();
         
         if (phone && phone == txtField3)
         {
             phone = "";
         }

         if (!email || email==emptyText || !name || name == txtField2)
         {
            alert('נא למלא שדות חובה'); 
            return false;     
         }
         
         if (email && email!=emptyText) {

             if (!validateEmail(email))
                 alert('Sorry, but e-mail address "'+email+'" is invalid');
             else {
                /* 
                 $('.subscribe-form .form').hide();
                 $('.subscribe-form .success').show();
                 
                 return;
                  */
                 $mask = $('.subscribe-form .mask');
                 $('.subscribe-form .form').hide();
                 $mask.show('fast');
                 

                 $.ajax({
                     url: "/app/tools/subscribe/",
                     dataType: "json",
                     data: { 'email': $input.val() , 'name' : name, 'phone' : phone },
                     type: 'post',
                     success: function( data ) {  

                         $mask.hide();

                         if (data.success == true) {
                             $('.subscribe-form .mask').hide();  
                             $('.subscribe-form .form').hide();
                             $('.subscribe-form .success').show();
                             //$('.subscribe-form .success').fadeOut(3000, function() { $('.subscribe-form .form').show(); });
                         }
                         else 
                         {
                             $('.subscribe-form .mask').hide();
                             $('.subscribe-form .server_error').show();
                             
                         }
                     }
                 });
             }

         }
     }

     $('.subscribe-form input.submit').bind('click', submit_form);

});
