﻿/*--------------------------------------------------------------------------------------------
* Check filds in the form
*-------------------------------------------------------------------------------------------*/
function trim(str) {
   return str.replace(/^\s+|\s+$/g, '');
}

//массив запрещенных знаков
var eSimbol = new Array("`", "~", "!", "#", '"',  "№", "$", ";", "%", "^", ":", "&", "?", "*", "(", ")", "+", "|", " ", "/", "'", "{", "}", "[", "]", ",", "<", ">");

function simbols(simb)  // Проверка на запрещенные символы массива eSimbol
{
	var i , j, stringErrors = '';  
	
	for(i = 0; i<=simb.length - 1; i++)
	{
		for(j= 0; j <= eSimbol.length - 1; j++)
		{
			if(simb.charAt(i) == eSimbol[j] ){
				stringErrors += simb.charAt(i);
			}
		}
	}
	
	if(stringErrors !=''){
		return ($.lang['ERRZNAK'] + stringErrors);
	}else{
		return '';
	}
}

function check_mail_validation (email){//функция возвращает все некорректные знаки в email
	var e='', es = '';
	if(email =='')
		return false;
	
	//Наличие собаки и проверк на отсутствие точек до знака @
	if(email.indexOf('@') ==-1){
		e += $.lang['ERRDOG'];
	}

	//Суммирование всех ошибок
	es += simbols(email);  
	if ((e+es)!=''){
		return(e + es);
	}else{
		return false;
	}
}

/*
	elem_id = id поля ввода
	box_id = див, обрамляющий поля ввода
	str_regexp_par = тип проверки. mail - проверка emaila, text - проверка текста
	mess - сообщение в случае пустого поля
	error_mess - сообщение в случае не проверки валидности
*/
function promo_check_field(elem_id, str_regexp_par, mess, error_mess){ //проверка полей ыормы
	
	if (elem_id == '') return false;
	if (str_regexp_par == '') return false;
	tmp = document.getElementById(elem_id); // поле ввода
	if(!tmp) return false;
	
	
	var error_box = document.getElementById(elem_id + '_error'); // блок для ошибки
	if(!error_box) return false;
	
	var tmp_value = trim(tmp.value); //значение поля ввода
	var tmp_value_length = tmp_value.length; 
	
	var str_regexp = '';

	if(str_regexp_par == 'mail'){
		str_regexp = '^[0-9A-Za-z_\.\-]+@([0-9A-Za-z_\-]+\.)+[0-9A-Za-z]{2,4}$';
	}else if(str_regexp_par == 'text'){
		str_regexp = '.';
	}
	
	if (str_regexp == '') return false;
	
	var pattern = new RegExp(str_regexp,"gim");
	
	if(tmp_value_length <=0){ //если поле ввода пустое
		
		error_box.innerHTML = mess;
		error_box.style.display = 'block';
		
		return false;
		
	}else if (pattern.test(tmp_value)){ // если прошли проверку по регулярке
		
		error_box.innerHTML = '';
		error_box.style.display = 'none';
		return true;
	}else{ 
		
		if(str_regexp_par == 'mail'){ // если не прошли проверку по регулярке, смотрим все неправильные символы
			error_simbols = check_mail_validation(tmp_value);
			error_simbols_str = '';
			if(error_simbols){
				error_simbols_str = error_simbols;
			}
		}
		
		error_box.innerHTML = error_mess + error_simbols_str;
		error_box.style.display = 'block';
		
		return false;
	}	
	
}


/* ------------------------------------------------------------------------
 * OnFocus input type text
 * ------------------------------------------------------------------------ */

function input_focus (id, text)
{
	var qs_input = jQuery("#"+id);
	if(qs_input){
		if (qs_input.val() == text)  {
			qs_input.val('').removeClass('_init');
		}
		qs_input.css('color','#000000');
	}	
}

function input_onblur (id, text)
{
	var qs_input = jQuery("#"+id);
	if(qs_input){
		if (qs_input.val() == ''){
			
			qs_input.css('color','#C6C6C6').addClass('_init');
			qs_input.val(text) ;
		}
	}	
}

function clear_text (id, text)
{
	qs_input = document.getElementById(id);
	if(qs_input){
		if (qs_input.value == text)  {
			qs_input.value = ''; 
			qs_input.style.color = '#000000'; 
		}
	}
}

