$(document).ready(function()
{ 
    function Switch()
    {
	    this.value = false;
    }
    Switch.prototype.SetFalse = function()
    {
	    this.value = false;
    }
    Switch.prototype.SetTrue = function()
    {
	    this.value = true;
    }


    var oTxVorname = new Switch();
    var oTxplz = new Switch();
    var oTxOrt = new Switch();
    var oTxStr = new Switch();
    var oTxName = new Switch();
    var oTxFirma = new Switch();
    var oTxLand = new Switch();
    var oTxTel = new Switch();
    var oTxEMail = new Switch();
    var oCCMail = new Switch();

   initValidation('ctl00_m_cpPopUp_TxVorname', 'wrapVorname','ctl00_m_cpPopUp_LabelVorname',oTxVorname);
   initValidationOnlyNumbers('ctl00_m_cpPopUp_Txplz', 'wrapPlz','ctl00_m_cpPopUp_LabelPlz',oTxplz);   
   initValidation('ctl00_m_cpPopUp_TxOrt', 'wrapOrt','ctl00_m_cpPopUp_LabelOrt',oTxOrt);   
   initValidation('ctl00_m_cpPopUp_TxStr', 'wrapStreet','ctl00_m_cpPopUp_LabelStr',oTxStr);        
   initValidation('ctl00_m_cpPopUp_TxName', 'wrapName','ctl00_m_cpPopUp_LabelName',oTxName);            
   initValidation('ctl00_m_cpPopUp_TxFirma', 'wrapFirma','ctl00_m_cpPopUp_LabelFirma',oTxFirma);                
   initValidationLand('ctl00_m_cpPopUp_TxLand', 'wrapLand','ctl00_m_cpPopUp_LabelLand',oTxLand);                
   initValidationTel('ctl00_m_cpPopUp_TxTel', 'wrapTel','ctl00_m_cpPopUp_LabelTel',oTxTel);                    
   CareSubmit();       
   
   
   $("#ctl00_m_cpPopUp_IdCC").click(function()
   {  
        $("#wrapMail").addClass("error");
        if ($('#ctl00_m_cpPopUp_IdCC:checked').length)
        {
            initValidationMail('ctl00_m_cpPopUp_TxEMail', 'wrapMail', 'ctl00_m_cpPopUp_LabelEMail',oTxEMail)        
            oCCMail.SetTrue();
            CareSubmit();
        }
        else
        {
            $("#wrapMail").removeClass("error");
            $("#wrapMail").removeClass("valid");
            oCCMail.SetFalse();
            CareSubmit();            
        }
   });      
        
        
    if ($('#ctl00_m_cpPopUp_IdCC:checked').length)
    {
         initValidationMail('ctl00_m_cpPopUp_TxEMail', 'wrapMail', 'ctl00_m_cpPopUp_LabelEMail',oTxEMail)            
         oCCMail.SetTrue();
         CareSubmit();
    }
    else
    {
        $("#wrapMail").removeClass("error");
        $("#wrapMail").removeClass("valid");    
        oCCMail.SetFalse();     
        CareSubmit();
    }    
    
    
   
    function CheckRequirements()
    {
            if(oCCMail.value) 
            {
                if (    oTxVorname.value && 
                        oTxplz.value && 
                        oTxOrt.value && 
                        oTxStr.value && 
                        oTxName.value && 
                        oTxFirma.value && 
                        oTxLand.value &&                         
                        oTxTel.value && 
                        oTxEMail.value )
                {
                    return true;
                }
                else
                {
                    return false;                
                }
            }
            else
            {
                if ( oTxVorname.value && 
                     oTxplz.value && 
                     oTxOrt.value && 
                     oTxStr.value && 
                     oTxName.value && 
                     oTxFirma.value && 
                     oTxLand.value &&                      
                     oTxTel.value )
                {
                    return true;
                }
                else
                {
                    return false;                
                }
            }    
            return false;
    }    

    function CareSubmit()
    {
            if(CheckRequirements())
            {
                 //$("input[id$='btnInqGo']").removeAttr("disabled"); 
                 $("#ctl00_m_cpPopUp_btnInqGo").removeAttr("disabled"); 
            }
            else
            {
                //$("input[id$='btnInqGo']").attr("disabled", "disabled");            
                $("#ctl00_m_cpPopUp_btnInqGo").attr("disabled", "disabled");            
            }    
    }
    
    function initValidation(idTXT, idDivWrap, idLabel,oswitch)
    {   
        var idTXTn = '#'+idTXT;
        var idDivWrapn = '#'+idDivWrap;
        var idLabeln = '#' + idLabel;
        $(idTXTn).valid8({
            regularExpressions: [
                { expression: /.[a-zA-Z0-9.-δόφΔάΦ]+$/,  errormessage: 'Sonderzeichen gefunden'}
            ],
                      onError: function (messages, el, event)
                      {
                        $(idDivWrapn).removeClass("valid");
                        $(idDivWrapn).addClass("error");
                        oswitch.SetFalse();
                        CareSubmit();
                      },
                      
                      onValid: function (messages, el, event)
                      {
                        $(idDivWrapn).removeClass("error");              
                        $(idDivWrapn).addClass("valid");              
                        $(idLabeln).show();                              
                        oswitch.SetTrue();                
                        CareSubmit();
                      }
              });     
    }
    
    function initValidationLand(idTXT, idDivWrap, idLabel,oswitch)
    {   
        var idTXTn = '#'+idTXT;
        var idDivWrapn = '#'+idDivWrap;
        var idLabeln = '#' + idLabel;
        $(idTXTn).valid8({
            regularExpressions: [
                { expression: /^[a-zA-Z0-9.-δόφΔάΦ]+$/,  errormessage: 'Sonderzeichen gefunden'}
            ],
                      onError: function (messages, el, event)
                      {
                        $(idDivWrapn).removeClass("valid");
                        $(idDivWrapn).addClass("error");
                        oswitch.SetFalse();
                        CareSubmit();
                      },
                      
                      onValid: function (messages, el, event)
                      {
                        $(idDivWrapn).removeClass("error");              
                        $(idDivWrapn).addClass("valid");              
                        $(idLabeln).show();                              
                        oswitch.SetTrue();                
                        CareSubmit();
                      }
              });     
    }    
    
    function initValidationTel(idTXT, idDivWrap, idLabel,oSwitch)
    {   
        var idTXTn = '#'+idTXT;
        var idDivWrapn = '#'+idDivWrap;
        var idLabeln = '#' + idLabel;
        $(idTXTn).valid8({
            regularExpressions: [
                { expression: /^[+a-zA-Z0-9/-]+$/,  errormessage: 'Sonderzeichen gefunden'}
            ],
                      onError: function (messages, el, event)
                      {
                        $(idDivWrapn).removeClass("valid");
                        $(idDivWrapn).addClass("error");
                        oSwitch.SetFalse();
                        CareSubmit();
                      },
                      
                      onValid: function (messages, el, event)
                      {
                        $(idDivWrapn).removeClass("error");              
                        $(idDivWrapn).addClass("valid");              
                        $(idLabeln).show();                              
                        oSwitch.SetTrue();                
                        CareSubmit();
                      }
              });     
    }    
    
    function initValidationOnlyNumbers(idTXT, idDivWrap, idLabel,oSwitch)
    {   
        var idTXTn = '#'+idTXT;
        var idDivWrapn = '#'+idDivWrap;
        var idLabeln = '#' + idLabel;
        $(idTXTn).valid8({
            regularExpressions: [
                { expression: /^[+0-9/-]+$/,  errormessage: 'Nur Zahlen erlaubt'}
            ],
                      onError: function (messages, el, event)
                      {
                        $(idDivWrapn).removeClass("valid");
                        $(idDivWrapn).addClass("error");
                        oSwitch.SetFalse();
                        CareSubmit();
                      },
                      
                      onValid: function (messages, el, event)
                      {
                        $(idDivWrapn).removeClass("error");              
                        $(idDivWrapn).addClass("valid");              
                        $(idLabeln).show();                              
                        oSwitch.SetTrue();                
                        CareSubmit();
                      }
              });     
    }        

    function initValidationMail(idTXT, idDivWrap, idLabel,oSwitch)
    {   
        var idTXTn = '#'+idTXT;
        var idDivWrapn = '#'+idDivWrap;
        var idLabeln = '#' + idLabel;
        $(idTXTn).valid8({
        regularExpressions: [
            {expression: /^[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z]{2,5}\b$/, errormessage: 'Email is not valid'}
            ],
            onError: function (messages, el, event)
              {
                $(idDivWrapn).removeClass("valid");
                $(idDivWrapn).addClass("error");
                oSwitch.SetFalse();
                CareSubmit();
              },
             onValid: function (messages, el, event)
             {
                $(idDivWrapn).removeClass("error");              
                $(idDivWrapn).addClass("valid");              
                $(idLabeln).show();                              
                oSwitch.SetTrue();                    
                CareSubmit();
              }            
        }); 
    }       
    
    $(document).keypress(function(e)
    {  
        if(e.keyCode==8)
        {  
           CareSubmit();               
        }  
    });     

    $('.TXTInq').bind("keyup keydown blur change", function()
        {
            CareSubmit();
        });
});
