var errCounter = 0;

function validateEmpty(inputSelector, inputName, errorOwnPosition, maxLenght){
	
		if(maxLenght)
		{
			maxLenght = maxLenght;
		}
		else
		{
			maxLenght = 0;
		}
	
		
	
            if(inputSelector.val() == ''){
            	
            	errCounter = errCounter + 1;
            	
            	
                itsNotValid(inputSelector);
                inputSelector.focus();
                if(errorOwnPosition){
                    inputSelector.parent().find('span.error-msg').html('Vypňte '+inputName+'.');
                } else {
                    inputSelector.css('color', 'red');
                    inputSelector.css('font-size', '11px');
                    inputSelector.val('Vypňte '+inputName+'.');
                }
            }
            else
            {
           	
            	if(inputSelector.val().length < maxLenght)
            	{
            		errCounter = errCounter + 1;
            		
            		minLen = maxLenght;
            		
            		itsNotValid(inputSelector);
                    inputSelector.focus();
                    
                    if(errorOwnPosition){
                        inputSelector.parent().find('span.error-msg').html('Pole '+inputName+' musí obsahovat minimálně '+minLen+' znaků.');
                    } else {
                        inputSelector.css('color', 'red');
                        inputSelector.css('font-size', '11px');
                        inputSelector.val('Pole '+inputName+' musí obsahovat minimálně '+minLen+' znaků.');
                    }
            	}
            }
        }
	
function validateEmptyPass(inputSelector, inputName){
    
            if(inputSelector.val() == ''){
                itsNotValid(inputSelector);
                $(inputSelector).parent().find('span.error-msg').html('Vyplňte '+inputName+'.');
            }
        }
	
function validateCompareSamePass(inputPass1Selector, inputPass2Selector){
    
    if(inputPass1Selector.val() != inputPass2Selector.val()){
	
	itsNotValid(inputPass1Selector);
	itsNotValid(inputPass2Selector);
	
	$(inputPass1Selector).parent().find('span.error-msg').html('Hesla se neshodují');
	$(inputPass2Selector).parent().find('span.error-msg').html('Hesla se neshodují');
    }    

}
	
function validateEmptyTextArea(inputSelector, inputName){

            if(inputSelector.val() == ''){
                itsNotValid(inputSelector);
                inputSelector.css('color', 'red');
                inputSelector.css('font-size', '11px');
                inputSelector.css('font-weight', 'bold');
                inputSelector.html('Vyplňte '+inputName+'.');
            }
        }
        
function validateCheckbox(checkboxSelector, errorMessage){
    
    if(!checkboxSelector.is(':checked')){
        itsNotValid(checkboxSelector);        
        $(checkboxSelector).parent().find('span.error-msg').html(errorMessage);
    }
}
        

function validateMail(inputSelector, errorOwnPosition){
    if(inputSelector.val() != ''){
        var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
        if(reg.test(inputSelector.val()) == false) {
            
            itsNotValid(inputSelector);
            
            if(errorOwnPosition){
                
                $(inputSelector).parent().find('span.error-msg').html('Vyplňte správně e-mail.');
                
            } else {
                
                inputSelector.css('color', 'red');
                inputSelector.css('font-size', '11px');
                inputSelector.val('Vyplňte správně e-mail.');
            }            
        }
    }
}


function validateInputString(inputSelector, errorMessage, errorOwnPosition){
    if(inputSelector.val() != ''){
        var reg = /[,.\/;:"'!ˇ\]\[´=~`<>?!#%&*()]/;
        if(reg.test(inputSelector.val()) == true) {
            
            itsNotValid(inputSelector);
            
            if(errorOwnPosition){
                
                $(inputSelector).parent().find('span.error-msg').html(errorMessage);
                
            } else {
                
                inputSelector.css('color', 'red');
                inputSelector.css('font-size', '11px');
                inputSelector.val(errorMessage);
            }            
        }
    }
}

function itsNotValid(inputSelector){
    
    inputSelector.addClass('notValid');
}

function refillCheckbox(inputSelector){
    $(inputSelector).focus(function(){        
    
        if($(this).hasClass('notValid')){

            $(this).addClass('refilled');
            $(this).removeClass('notValid');
	    $(this).parent().find('span.error-msg').html('');
        }

    })
}

function refillInputs(inputSelector, button){

    if(button){
	$(button).click(function(){
    
		if($(inputSelector).hasClass('notValid')){
		    
                    $(this).addClass('refilled');
		    $(inputSelector).val('');
		    $(inputSelector).removeClass('notValid');
		}

	})
    }
    
    $(inputSelector).focus(function(){        
    
        if($(this).hasClass('notValid')){

            $(this).addClass('refilled');
            $(this).val('');
            $(this).removeClass('notValid');
	    $(this).css('color', '#000');
	    $(this).parent().find('span.error-msg').html('');
        }

    })    
    
}

function refillTextarea(){
    
    $('textarea').focus(function(){        
    
        if($(this).hasClass('notValid')){
    
            $(this).html('');
            $(this).css('color', '#000');
            $(this).css('font-weight', 'normal');
            $(this).removeClass('notValid');
        }
    
    })
}

function refillAll(){
    
    $("input[type='text'],input[type='password']").each(function(){
	
	$(this).addClass('refilled');
	$(this).val('');
	$(this).removeClass('notValid');
	
	$('form').find('span.error-msg').html('');
    })

}