var OK = false;
var remove_func;
document.onkeydown = key;

function key()	{
	 var k=event.keyCode;
	 if(k==13 && document.getElementById('loading-layer').style.display == 'block')  { document.getElementById('loading-layer').style.display = 'none'; if (OK==true) remove_func(); }
	 if(k==27) {
		    if (document.getElementById('loading-layer').style.display == 'block') document.getElementById('loading-layer').style.display = 'none';
		    else if (GB_CURRENT != null) parent.parent.GB_hide();
		   }
}

function show_message(text){
	if (text==undefined) text = 'Обработка данных';
	var top = (document.body.scrollTop>0) ? document.body.scrollTop : document.documentElement.scrollTop;
	document.getElementById('loading-layer').style.width = '200px';
	document.getElementById('loading-layer').style.textAlign = 'center';
	document.getElementById('loading-layer').style.display = 'block';
    	document.getElementById('loading-actions').style.display = 'none';
    	document.getElementById('loading-actions-confirm').style.display = 'none';
	document.getElementById('loading-layer').style.top = (parseInt(top,10)+(document.body.clientHeight/2)-90)+'px';
	document.getElementById('loading-layer').style.left = ((document.body.clientWidth/2)-100)+'px';
	document.getElementById('loading-img').style.display = '';
	document.getElementById('loading-text').innerHTML = text+', пожалуйста подождите...';
}

function close_message(status, text){
    OK = false;
	document.getElementById('loading-layer').style.display = 'block';
	document.getElementById('loading-layer').style.textAlign = 'left';
	document.getElementById('loading-layer').style.width = 'auto';
	document.getElementById('loading-layer').style.height = 'auto';

   	document.getElementById('loading-actions').style.display = 'none';
   	document.getElementById('loading-actions-confirm').style.display = 'none';

	if (status==undefined) {
		document.getElementById('loading-layer').style.display = 'none';
		return false;
		}
	else if (status=='info') {
		document.getElementById('loading-img').style.display = 'none';
		if (text==undefined) text = 'Информация';
		document.getElementById('loading-text').innerHTML = '<br /><img class="image" src="/_admincp/_design/img/icons/warning.png" />&nbsp;'+text+'';
	    document.getElementById('loading-actions').style.display = '';
	} else if (status=='confirm') {
		OK = true;
		document.getElementById('loading-img').style.display = 'none';
		if (text==undefined) text = 'Информация';
		document.getElementById('loading-text').innerHTML = '<br /><img class="image" src="/_admincp/_design/img/icons/warning.png" />&nbsp;'+text+'';
	    document.getElementById('loading-actions').style.display = 'none';
	    document.getElementById('loading-actions-confirm').style.display = '';
	}
	else if (status=='error') {
		document.getElementById('loading-img').style.display = 'none';
		if (text==undefined) text = 'Произошла ошибка';
		document.getElementById('loading-text').innerHTML = '<br /><img class="image" src="/_admincp/_design/img/icons/error.png" />&nbsp;'+text+'';
	    document.getElementById('loading-actions').style.display = '';
	}

	var new_height = document.getElementById('loading-layer').offsetHeight;
	var top = (document.body.scrollTop>0) ? document.body.scrollTop : document.documentElement.scrollTop;
	document.getElementById('loading-layer').style.top = (parseInt(top,10)+(document.body.clientHeight/2)-(new_height/2)-30)+'px';
	var new_width = document.getElementById('loading-layer').offsetWidth;
   	document.getElementById('loading-layer').style.left = ((document.body.clientWidth/2)-(new_width/2))+'px';
}

function fetch(sel1, sel2, sel3){
  var req = new JsHttpRequest();
	req.open(null, '/js/_ajax/fetch.php', true);

	var select1 = document.getElementById('brend'); var value1 = (select1.value!=0) ? select1.value : 0;
	var select2 = document.getElementById('gender'); var value2 = (select2.value!=0) ? select2.value : 0;
	var select3 = document.getElementById('mech'); var value3 = (select3.value!=0) ? select3.value : 0;

	if (sel1==1 && sel2==0) { value2 = 0; }
	if (sel1==1 && sel2==1) { value3 = 0; }
	if (sel2==0) select2.length = 1;
	if (sel3==0) select3.length = 1;
      	if (sel3==1) document.filter.submit();
//alert(value1+' '+value2+' '+value3);
		if (sel1==1 && sel2==0) var field = 1;
		else field = 2;
//alert(field);
	var data = { 'brend': value1, 'gender': value2, 'mech' : value3, 'field': field};
        req.send(data);

    req.onreadystatechange = function() {
		if (req.readyState == 4) {

  		    var massiv = new Array();
		    var keys = new Array();
  		    massiv = req.responseJS.massiv;
  		    keys = req.responseJS.keys;
//alert(req.responseJS.massiv+'             '+req.responseJS.keys);
		if (sel1==1 && sel2==0) select3.disabled = "disabled";

		if (sel1==1 && sel2==0 && massiv.length>0) { select2.disabled=''; select = select2;}
		if (sel1==1 && sel2==1 && massiv.length>0) { select3.disabled=''; select = select3;}


		if (massiv.length>0) {
			select.length = 1;/// удаляем все элементы кроме первого
			if (sel1==1 && sel2==1 && massiv.length>1) {
			var option = document.createElement('option');
             		 option.value = "1all";
	         	 option.innerHTML = "Все механизмы";
			 select.appendChild(option);
			}
	            for (i = 0; i<massiv.length; i++) {
   		 //    var cnt = (select.getElementsByTagName("option").length)+1;
	 	      var option = document.createElement('option');
	     	 	 option.id = "value_"+i;//value_id;
             		 option.value = keys[i];
	         	 option.innerHTML = massiv[i];
			 select.appendChild(option);
	       		 }
		   }


	}
    }
}

var ie=document.all
var ns6=document.getElementById&&!document.all

function imgFormClick (el,val) {
	if ((ie||ns6) && document.getElementById(el)) {
	rad_value = document.getElementById(el).value;

	if (val > 0) new_value = val;
	else if (val == 'x') new_value = rad_value;
	else new_value = rad_value == 1? '2': '1';

	new_text_value = '';

	var path=document.getElementById(el+'_img').src;
	var regexp =/_.\./g;
	path = path.replace(regexp,'_'+new_value+'.');
	document.getElementById(el+'_img').src=path;
	document.getElementById(el+'_img').alt = new_text_value;
	document.getElementById(el).value = new_value;
	}
}

function add_product(sid, id, price, action) {
  var req = new JsHttpRequest();
	req.open(null, '/js/_ajax/add_to_basket.php', true);
	var data = { 'sid': sid, 'id': id, 'price' : price };
        req.send(data);

	if (action != 'купить') {

		document.getElementById('winveit').style.display = 'block';
		document.getElementById('winveit').style.top = (document.documentElement.scrollTop+(document.body.clientHeight/2)-90)+'px';
		document.getElementById('winveit').style.left = ((document.body.clientWidth/2)-100)+'px';
		document.getElementById('winveit-img').style.display = '';
		document.getElementById('winveit-text').innerHTML = 'Добавление товара в корзину, пожалуйста подождите...';
	        document.getElementById('winveit-actions').style.display = 'none';
		}

//alert(sid+ '' +  id + ' '+ price);
    	req.onreadystatechange = function() {
		if (req.readyState == 4) {
//		alert(req.responseText);

		var quantity = req.responseJS.quantity;
		var total_price = req.responseJS.total_price;
	//	alert('Кол = '+quantity+' сумма = '+total_price);

		var empty_basket = document.getElementById('empty_shopping_cart');
  		var full_basket = document.getElementById('shopping_cart');

	if (total_price>0) {
	empty_basket.style.display = 'none';
	full_basket.style.display = '';
	document.getElementById('quantity').innerHTML = quantity;
	document.getElementById('total_price').innerHTML = total_price;
	document.getElementById('ending').innerHTML = req.responseJS.end;
	}

	if (action == 'купить') window.location.href='/shopping_cart/'
	else {
	      document.getElementById('winveit-text').innerHTML = 'Товар добавлен<br>Приятных, Вам, покупок';
	      document.getElementById('winveit-img').style.display = 'none';
	      document.getElementById('winveit-actions').style.display = '';
	     }

		}

   }


}


function removeElement(parent_name,child_name) {
  var d = document.getElementById(parent_name);
  var olddiv = document.getElementById(child_name);
  d.removeChild(olddiv);
}


function remove_product(sid, id){
  var req = new JsHttpRequest();
	req.open(null, '/js/_ajax/del_from_basket.php', true);
	var data = { 'sid': sid, 'id': id };
        req.send(data);

//	alert(req.responseText);

    	req.onreadystatechange = function() {
	if (req.readyState == 4) {

	removeElement('whole_basket','div_'+id);
	var names = new Array();



	var empty_basket = document.getElementById('empty_shopping_cart');
  	var full_basket = document.getElementById('shopping_cart');


if (req.responseJS.names!=0) {
names = req.responseJS.names;

	var quantity = req.responseJS.quantity;
	var total_price = req.responseJS.total_price;
	if (document.getElementById('delivery_type')!=null) var delivery = document.getElementById('delivery_type').value;
	//alert('Кол = '+quantity+' сумма = '+total_price);

	if (total_price>0) {
	document.getElementById('t_price').innerHTML = total_price+' руб.';
	document.getElementById('price_delivery').innerHTML = total_price+' руб.';
	empty_basket.style.display = 'none';
	full_basket.style.display = '';
	document.getElementById('quantity').innerHTML = quantity;
	document.getElementById('total_price').innerHTML = total_price;
	document.getElementById('ending').innerHTML = req.responseJS.end;
	if (document.getElementById('delivery_type')!=null) choose_delivery_type(delivery);
	}


}
else {
document.getElementById('whole_basket').style.display = 'none';
document.getElementById('empty_basket_text').innerHTML = '<div class="catalog_single">Ваша корзина пуста</div>';
empty_basket.style.display = '';
full_basket.style.display = 'none';
}


		}

   }
}


function choose_delivery_type(name){

   document.getElementById('form_st_1.1').style.display = 'none';
   document.getElementById('form_st_1.2').style.display = 'none';
   document.getElementById('form_st_2.1').style.display = 'none';
   document.getElementById('form_st_2.2').style.display = 'none';
   document.getElementById('form_st_3.1').style.display = 'none';
   document.getElementById('form_st_3.2').style.display = 'none';

   var total_price = document.getElementById('total_price').innerHTML;
   total_price = total_price - 0;
   if (name == '2.2') total_price = Math.ceil((total_price + 500)*1.087);
   if (name == '3.1') total_price = total_price + 1500;
   if (name == '3.2') total_price = total_price + 4000;

   document.getElementById('price_delivery').innerHTML = total_price+' руб.';
   document.getElementById('help').style.display = 'none';
   document.getElementById('order_title').style.display = '';
   document.getElementById('form_st_'+name).style.display = '';
   document.getElementById('delivery_type').value = name;
   document.getElementById('price_value_'+name).value = total_price;
}







function recount(sid, products){
  var req = new JsHttpRequest();
  var values = new Array();
  var products_id = new Array();
  var new_prices = new Array();
  var j = 0, k = 0;
  var empty_basket = document.getElementById('empty_shopping_cart');
  var full_basket = document.getElementById('shopping_cart');

 //////////////////// пожалуйста подождите, идет перерасчет ////////////////////

if (products.length>0)
for (i = 0; i<products.length; i++) if (document.getElementById('quantity_'+products[i])!=null) {
	values[j] = document.getElementById('quantity_'+products[i]).value;
	products_id[j] = products[i];
	j++;
	}

	req.open(null, '/js/_ajax/recount_basket.php', true);
	var data = { 'sid': sid, 'products_id': products_id, 'values': values };
        req.send(data);

	req.onreadystatechange = function() {
		if (req.readyState == 4) {

// alert(req.responseText);

	var quantity = req.responseJS.quantity;
	var total_price = req.responseJS.total_price;
	var new_prices = req.responseJS.new_prices;
	if (document.getElementById('delivery_type')!=null) var delivery = document.getElementById('delivery_type').value;
	//alert('Кол = '+quantity+' сумма = '+total_price);

	if (total_price>0) {
	document.getElementById('t_price').innerHTML = total_price+' руб.';
	document.getElementById('price_delivery').innerHTML = total_price+' руб.';
	empty_basket.style.display = 'none';
	full_basket.style.display = '';
	document.getElementById('quantity').innerHTML = quantity;
	document.getElementById('total_price').innerHTML = total_price;
	document.getElementById('ending').innerHTML = req.responseJS.end;
	if (delivery>0) choose_delivery_type(delivery);


	if (products.length>0)
		for (i = 0; i<products.length; i++) if (document.getElementById('price_'+products[i])!=null && new_prices[k]>0) {
		document.getElementById('price_'+products[i]).innerHTML = new_prices[k];
		k++;
		}

	}

		}
	}

}


function checkFields(name){
var errors = new Array();
var text_er = '';

if (document.getElementById('fio_'+name)!=null) if (document.getElementById('fio_'+name).value=='') errors[0] = 'Не введена Ф.И.О.';
if (document.getElementById('country_'+name)!=null) if (document.getElementById('country_'+name).value=='') errors[1] = 'Не введена страна';
if (document.getElementById('city_'+name)!=null) if (document.getElementById('city_'+name).value=='') errors[2] = 'Не введен город';
if (document.getElementById('post_code_'+name)!=null) if (document.getElementById('post_code_'+name).value=='') errors[3] = 'Не введен индекс города';
if (document.getElementById('address_'+name)!=null) if (document.getElementById('address_'+name).value=='') errors[4] = 'Не введен адрес';
if (document.getElementById('phone_'+name)!=null) if (document.getElementById('phone_'+name).value=='') errors[5] = 'Не введен телефон';
if (name=='2.1' && document.getElementById('confrim1')!=null && document.getElementById('confrim2')!=null) if (document.getElementById('confrim1').checked==false && document.getElementById('confrim2').checked==false) errors[6] = 'Не указано подтверждение Вашего заказа по телефону';

if (errors.length>0) for (i = 0; i<errors.length; i++) if (errors[i]) text_er += errors[i]+'\n';

if (text_er!=''){
   alert(text_er);
   return 0;
   }
   else return 1;
}


function CheckQuantity(id, value){
   var quantity = document.getElementById('quantity_'+id);
   if (quantity.value >= 0 && quantity.value!='') {
		return 1;
		quantity.className = 'inp_price';
		} else {
			quantity.value = value;
//			quantity.className = 'inp_text_err';
			quantity.focus();
			alert('Кол-во часов должно быть больше нуля!');
			}
	};




//####################################################
// Работа с формами
//####################################################
var errs = new Array();
function FormCheckInt (el,id,showerr,elfocus,errmsg) {
	if ((ie||ns6) && el && document.getElementById('f'+id)) {
	value = el.value;
	if (!(/^(\d{1,3})$/.test(value))) {
		el.className = 'inp_text_err';
		errs[id] = 1;
		if (showerr == 1) {
			document.getElementById('f'+id).innerHTML = errmsg;
		}
		if (elfocus == 1) {
			el.focus();
		}
	}
	else if ((errs[id] == 1 && errmsg.toLowerCase() == document.getElementById('f'+id).innerHTML.toLowerCase()) || !errs[id]) {

		document.getElementById('f'+id).innerHTML = '';
		el.className = 'inp_text_hover';
		errs[id] = 0;
		if (elfocus == 1) {
			el.focus();
		}
	}
	}
}

function FormCheckName (el,id,showerr,elfocus,errmsg) {
	if ((ie||ns6) && el && document.getElementById('f'+id)) {
	value = el.value;
	if (/[\||\'|\<|\>|\"|\!|\$|\@|\&\~\*\+]/.test(value)) {
		el.className = 'inp_text_err';
		errs[id] = 1;
		if (showerr == 1) {
			document.getElementById('f'+id).innerHTML = errmsg;
		}
		if (elfocus == 1) {
			el.focus();
		}
	}
	else if ((errs[id] == 1 && errmsg.toLowerCase() == document.getElementById('f'+id).innerHTML.toLowerCase()) || !errs[id]) {

		document.getElementById('f'+id).innerHTML = '';
		el.className = 'inp_text_hover';
		errs[id] = 0;
		if (elfocus == 1) {
			el.focus();
		}
	}
	}
}

function FormCheckEmpty (el,id,len,showerr,elfocus,errmsg) {
	if ((ie||ns6) && el && document.getElementById('f'+id)) {
	value = el.value;
	if (el.value.replace(/ /gi,"").length < len) {
		el.className = 'inp_text_err';
		errs[id] = 1;
		if (showerr == 1) {
			document.getElementById('f'+id).innerHTML = errmsg;
		}
		if (elfocus == 1) {
			el.focus();
		}
	}
	else if ((errs[id] == 1 && errmsg.toLowerCase() == document.getElementById('f'+id).innerHTML.toLowerCase()) || !errs[id]) {
		document.getElementById('f'+id).innerHTML = '';
		el.className = 'inp_text_hover';
		errs[id] = 0;
		if (elfocus == 1) {
			el.focus();
		}
	}
	}
}

function FormCheckEmail (el,id,showerr,elfocus,errmsg) {
	if ((ie||ns6) && el && document.getElementById('f'+id)) {
	value = el.value;
	if (!(/^[a-zA-Z0-9\_\-]{2,32}[\@][a-zA-Z0-9\-]{2,32}[\.][a-zA-Z0-9]{2,4}$/.test(value))) {
		el.className = 'inp_text_err';
		errs[id] = 1;
		if (showerr == 1) {
			document.getElementById('f'+id).innerHTML = errmsg;
		}
		if (elfocus == 1) {
			el.focus();
		}
	}
	else if ((errs[id] == 1 && errmsg.toLowerCase() == document.getElementById('f'+id).innerHTML.toLowerCase()) || !errs[id]) {

		document.getElementById('f'+id).innerHTML = '';
		el.className = 'inp_text_hover';
		errs[id] = 0;
		if (elfocus == 1) {
			el.focus();
		}
	}
	}
}


function CheckAllow (el, name, table, id, errmsg) {
  var req = new JsHttpRequest();
	value = el.value;
	req.open(null, '/_admincp/_ajax/check_regname.php', true);
	var data = { 'Name': name, 'Value': value, 'Table': table };
    	req.send(data);

    	req.onreadystatechange = function() {
		if (req.readyState == 4) {

//		document.getElementById('debug').innerHTML = req.responseText;

		if (req.responseJS.status>0&&errmsg!=document.getElementById('f'+id).innerHTML) {
			document.getElementById('f'+id).innerHTML=errmsg;
			el.className = 'inp_text_err';
			errs[id] = 1;
			el.focus();
		}
		else if ((errs[id] == 1 && errmsg.toLowerCase() == document.getElementById('f'+id).innerHTML.toLowerCase()) || !errs[id]) {
			document.getElementById('f'+id).innerHTML = '';
			errs[id] = 0;
			el.className = 'inp_text_hover';
		}

	}
    }
}



function CheckForm ( type, el, id, showerr, elfocus, errmsg )
{	if (type==undefined||type==null) type = 'empty';
    alert(type[0]);
	if ((ie||ns6)&&el)
	{		var value=el.value.trim();
		var regexp=null;

		switch (type)
		{			case 'int':
			 regexp = /^(\d{1,3})$/;
			 break;
		}
	}
}