//document ready
$(function() {
	
	//созжаем переменные-флаги статуса
	var inputEmailStatus = false;
	var inputNameStatus  = false;
	
	//объявляем переменную которая будет отвечать за поле ввода емайла
	var inputEmail  = $('#email');
	var inputName   = $('#from');
	var inputFile   = $('#sendfile');
	var inputSubmit = $('input.button')
	var inputAllElements = $('#email, #from, #message, #phone, sendfile');
	
	
	inputAllElements.click(function(){
		inputAllElements.keyup(function(){
			validEmail();
			validInput();
		});
	});
	
	
	
	

	
	
//########################################################
	function validEmail() {
		//проверяем если введенное значение меньше 1  
		if (inputEmail.val().length < 1 ) {
			//то ставим статус флага false и подкрашиваем LABEL красным
			inputEmailStatus = false;
			$('#r_email label').css('color','#ff0000');
		//если введено что то больше 1 	
		} else {	
			//то объявляем переменную с регуляркой для проверки введенного емайла
			var regexp = /^[a-z0-9_][-a-z0-9\._]*@[a-z0-9][-a-z0-9_]*(\.[a-z0-9][-a-z0-9_]*)*\.([a-z]{2}|aero|arpa|biz|com|coop|edu|gov|info|int|mil|museum|name|net|org|pro|travel)$/;
			//объявляем переменную в которую заносим текст введенный в поле формы для проверки на регулярку
			var stringVar = inputEmail.val();
			//если все корректо  
			if ( regexp.test(stringVar) ){
				//то присваиваем переменной статуса true
				inputEmailStatus = true;
				//и подкрашиваем LABAL черным
				$('#r_email label').css('color','#000');
			//если не корректно
			} else {
				//то присваиваем флагу False 
				inputEmailStatus = false;
				//и подкрашиваем LABAL красным
				$('#r_email label').css('color','#ff0000');
			}
		}
		
		//если мы выводим курсо из фокуса этого поля то смотрим
		inputEmail.blur(function(){
			//если ничего не введено 
			if (inputEmail.val().length < 1 ) {
				//то просто ставим нормальный цвет
				//$('#r_email label').css('color','#000');
			//если в поле что то введено 
			} else {
				//то запускаем заново всю функцию првоерки
				validEmail();
			}	
		});
		//если мы фокусируемся на форме с емейлом то запускаем проверку 
		inputEmail.keyup(validEmail);
		
		inputEmail.focus(validEmail);
		
	}
//########################################################
	function validInput(){
		if(inputName.val().length > 0) {
			inputName.parent().parent().find('label').css('color','#000');
			inputNameStatus = true;
		} else {
			inputName.parent().parent().find('label').css('color','#ff0000');
			inputNameStatus = false;
		}
		
		
		inputName.blur(function(){
			//если ничего не введено 
			if (inputName.val().length < 1 ) {
				//то просто ставим нормальный цвет
				inputName.parent().parent().find('label').css('color','#ff0000');
				inputNameStatus = false;
			//если в поле что то введено 
			} else {
				//то запускаем заново всю функцию првоерки
				validInput();
			}	
		});
		
		inputName.keyup(validInput);
		
		inputName.focus(validInput);
	}
//########################################################	
	var flagSet = true;
	
	inputFile.change(function() {		
		var f = $(this).val();
		if(f.match(/\.(doc|docx|txt|rtf|pdf)$/)){
			$('#sendfile').parent().parent().find('label').css('color','#000');		
			$('#err_mark').hide();
			flagSet = true;
		} else {
			//$('#sendfile').parent().parent().find('label').css('color','#ff0000');
			$('#sendfile').val('');
			if(flagSet) {
				$('#sendfile').after('<p id="err_mark" style="color: #ff0000; font-size: 90%; padding-top: 3px;"><i>Доступные форматы: doc, docx, txt, rtf, pdf</i></p>');
				flagSet = false;
			}
		}
	});
//########################################################	
	inputSubmit.bind('click', function(){
		return inputEmailStatus && inputNameStatus;
	});
//########################################################	
});


