function TrySend(f) {
  var errMSG = "";
 // цикл ниже перебирает все элементы в объекте f,
 // переданном в качестве параметра
 // функции, в данном случае - наша форма.            
 for (var i = 0; i<f.elements.length; i++)
   // если текущий элемент имеет атрибут required
   // т.е. обязательный для заполнения
   if (null!=f.elements[i].getAttribute("required"))
      // проверяем, заполнен ли он в форме
       if (isEmpty(f.elements[i].value)) // пустой
           errMSG += "  " + f.elements[i].name + "\n"; // формируем сообщение
                                                      // об ошибке, перечисляя
                                                      // незаполненные поля
       // если сообщение об ошибке не пусто,
       // выводим его, и возвращаем false    
       if ("" != errMSG) {
           //alert("Не заполнены обязательные поля:\n" + errMSG);
           alert("Не заполнены обязательные поля:\n");
           return false;
       }
}

function isEmpty(str) {
  for (var i = 0; i < str.length; i++)
     if (" " != str.charAt(i))
         return false;
     return true;
}


var tobasket_arr=new Array();
//******************BASKET****************
function putToBasketChecked(){
	//alert('asd');
	for (MyElement in tobasket_arr){
		//alert(tobasket_arr[MyElement]);
		if(tobasket_arr[MyElement]!=0){
			var today = new Date();
		   var expiry = new Date(today.getTime() + 365 * 24 * 60 * 60 * 1000);
			var cname = "";
			var cval = 0;
			cname = MyElement;
			cval = getCookie(cname)*1;
			cval += tobasket_arr[MyElement]*1;
			setCookie(cname, cval,expiry);
			//alert(i+'='+tobasket_arr[i]);
		}
	}
	document.location.reload();
}

function putToBasketCheckInp(name,id,price,value,obj){
	obj_summ=document.getElementById('check_summ');
	obj_row=document.getElementById('gprice_t_row_'+id);
	if(obj.checked){
		obj_summ.innerHTML=(obj_summ.innerHTML*1)-(tobasket_arr[name]*1*price)+(price*value);
		tobasket_arr[name]=value;
		//alert(tobasket_arr[name]);
		obj_row.style.backgroundColor='#cccccc';
		//puttobasket(id,1)
	}

	//for (var i in tobasket_arr) alert(i+'='+tobasket_arr[i]);
}

function putToBasketCheck(name,id,price,value,obj){
	obj_summ=document.getElementById('check_summ');
	obj_row=document.getElementById('gprice_t_row_'+id);
	if(obj.checked){
		obj_summ.innerHTML=(obj_summ.innerHTML*1)+(price*value);
		tobasket_arr[name]=value;
		obj_row.style.backgroundColor='#cccccc';
		//puttobasket(id,1)
	}else{
		obj_summ.innerHTML=(obj_summ.innerHTML*1)-(price*value);
		tobasket_arr[name]='0';
		obj_row.style.backgroundColor='#f5d2a8';
		//deleteCookie(id);
	}

	//for (var i in tobasket_arr) alert(i+'='+tobasket_arr[i]);
}

function putToBasketCheckInpMain(name,id,price,value,obj){
	obj_summ=document.getElementById('check_summ');
	if(obj.checked){
		obj_summ.innerHTML=(obj_summ.innerHTML*1)-(tobasket_arr[name]*1*price)+(price*value);
		tobasket_arr[name]=value;
	}

	//for (var i in tobasket_arr) alert(i+'='+tobasket_arr[i]);
}

function putToBasketCheckMain(name,id,price,value,obj){
	obj_summ=document.getElementById('check_summ');
	if(obj.checked){
		obj_summ.innerHTML=(obj_summ.innerHTML*1)+(price*value);
		tobasket_arr[name]=value;
		//puttobasket(id,1)
	}else{
		obj_summ.innerHTML=(obj_summ.innerHTML*1)-(price*value);
		tobasket_arr[name]='0';
		//deleteCookie(id);
	}

	//for (var i in tobasket_arr) alert(i+'='+tobasket_arr[i]);
}

//******************BASKET****************
function setCookie(name, value, expires, path, domain, secure) {
        document.cookie = name + "=" + escape (value) +
                ((expires == null) ? "" : ("; expires=" +
expires.toGMTString())) +
                ((path == null) ? "" : ("; path=" + path)) +
                ((domain == null) ? "" : ("; domain=" + domain)) +
                ((secure == true) ? "; secure" : "");
}

function getCookie(name) {
	var cookie = " " + document.cookie;
	var search = " " + name + "=";
	var setStr = null;
	var offset = 0;
	var end = 0;
	if (cookie.length > 0) {
		offset = cookie.indexOf(search);
		if (offset != -1) {
			offset += search.length;
			end = cookie.indexOf(";", offset)
			if (end == -1) {
				end = cookie.length;
			}
			setStr = unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);
}


function puttobasket(id, count)
{
  var today = new Date();
  var expiry = new Date(today.getTime() + 365 * 24 * 60 * 60 * 1000);
	var cname = "";
	var cval = 0;
	cname = 'GOODS_'+id;
	cval = getCookie(cname)*1;
	cval += count*1;
	setCookie(cname, cval,expiry);
	document.location.reload();
}

function puttobasketCount(id,count)
{
  var today = new Date();
  var expiry = new Date(today.getTime() + 365 * 24 * 60 * 60 * 1000);
	var cval = count;
	cname = 'GOODS_'+id;
	//alert(count);
	if(cval==0){
		deleteCookie(cname);
	}else{
		cval = count*1;
		setCookie(cname, cval,expiry);	
	}
	//cval = getCookie(name)*1;
	//cval += count*1;
	document.location.reload();
}

function puttobasketGmoreCount(id,count)
{
  var today = new Date();
  var expiry = new Date(today.getTime() + 365 * 24 * 60 * 60 * 1000);
	var cval = count;
	cname = 'GOODS_MORE_'+id;
	if(cval==0){
		deleteCookie(name);
	}else{
		cval = count*1;
		setCookie(cname, cval,expiry);	
	}
	document.location.reload();
}

function puttobasketGMore(id, count)
{
  var today = new Date();
  var expiry = new Date(today.getTime() + 365 * 24 * 60 * 60 * 1000);
	var cname = "";
	var cval = 0;
	cname = 'GOODS_MORE_'+id;
	cval = getCookie(cname)*1;
	cval += count*1;
	setCookie(cname, cval,expiry);
	document.location.reload();
}

function deleteCookie(id) {
  var today = new Date();
  var expiry = new Date(today.getTime() - 365 * 24 * 60 * 60 * 1000);
	var cname = "";
	var cval = 0;
	cname = 'GOODS_'+id;
	setCookie(cname, cval, expiry);
	document.location.reload();
}


function deleteGmoreCookie(id) {
  var today = new Date();
  var expiry = new Date(today.getTime() - 365 * 24 * 60 * 60 * 1000);
	var cname = "";
	var cval = 0;
	cname = 'GOODS_MORE_'+id;
	setCookie(cname, cval, expiry);
	document.location.reload();
}


// Функция, осуществляющая AJAX запрос.
function loadXMLDoc(method,url){
    if(window.XMLHttpRequest){
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange;
        req.open(method, url, true);
        req.send(null);
    }else if(window.ActiveXObject){
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if(req){
            req.onreadystatechange = processReqChange;
            req.open(method, url, true);
            req.send(null);
        }
    }
}
// Функция, выполняемая при изменении статуса
// запроса, если статус  равен 200, данные получены.
function processReqChange(){
    if(req.readyState == 4){
        if(req.status == 200){
			getSelects(req.responseText);
        }else{
            alert("There was a problem retrieving the XML data:\\n" + req.statusText);
        }
    }
}
function onChange(_this){
		var url = "select_firm.php?id="+_this.value;
		loadXMLDoc("get",url);
}



function getSelects(cont){
	document.getElementById('firm_options').innerHTML=cont;
}

/*
function addDeliveryKmSumm(e,obj,base_price){
	if (!e) e = window.event;
	keyCode = e.keyCode ? e.keyCode :  e.charCode ? e.charCode :  e.which ? e.which : void 0;  
	//alert(keyCode);
	if ((keyCode < 48 || keyCode > 57) && (keyCode < 96 || keyCode >105) && keyCode!=190 && keyCode!=8 && keyCode!=46){
 		 //obj.value=obj.value.replace(obj.value,'');
 		 sum_obj=document.getElementById('all_order_price');
 		 delivery_obj=document.getElementById('delivery_price');
 		 delivery_km_obj=document.getElementById('delivery_km_price');
 		 
 		 
		 //sum_obj.innerHTML=(sum_obj.innerHTML*1)+obj.value;
		 //if((sum_obj.innerHTML*1)+obj.value==0) sum_obj.innerHTML='';
		 obj.value=0;
		 delivery_km_obj.value=0;
		 sum_obj.value=base_price;
	}else{
		 sum_obj=document.getElementById('all_order_price');
 		 delivery_obj=document.getElementById('delivery_price');
 		 delivery_km_obj=document.getElementById('delivery_km_price');
 		 
		 delivery_km_obj.value=obj.value*30;
		 sum_obj.value=(delivery_km_obj.value*1)+(delivery_obj.value*1)+
		 //if(base_price+(obj.value*30)!=0) sum_obj.value=base_price+(obj.value*1);
		 //if(base_price+(obj.value*30)==0) sum_obj.value=base_price;
	}
	
}
*/

function addDeliverySumm(e,obj,base_price){
	if (!e) e = window.event;
	keyCode = e.keyCode ? e.keyCode :  e.charCode ? e.charCode :  e.which ? e.which : void 0;  
	//alert(keyCode);
	if ((keyCode < 48 || keyCode > 57) && (keyCode < 96 || keyCode >105) && keyCode!=190 && keyCode!=8 && keyCode!=46 && keyCode!=13){
 		 //obj.value=obj.value.replace(obj.value,'');
 		 sum_obj=document.getElementById('all_order_price');
		 //sum_obj.innerHTML=(sum_obj.innerHTML*1)+obj.value;
		 //if((sum_obj.innerHTML*1)+obj.value==0) sum_obj.innerHTML='';
		 obj.value=0;
		 sum_obj.value=base_price;
	}else{
		 sum_obj=document.getElementById('all_order_price');
		 prepayment_obj=document.getElementById('prepayment');
		 remainder_obj=document.getElementById('remainder_summ');
		 
		 if(base_price+(obj.value*1)!=0) sum_obj.value=base_price+(obj.value*1);
		 if(base_price+(obj.value*1)==0) sum_obj.value=base_price;
		 
		 if(prepayment_obj.value!='' && prepayment_obj.value!=''!=0){
		 	remainder_obj.value=(sum_obj.value*1)-(prepayment_obj.value*1);
		 }
	}
	
}

function remainderCalc(e,obj){
	if (!e) e = window.event;
	keyCode = e.keyCode ? e.keyCode :  e.charCode ? e.charCode :  e.which ? e.which : void 0;  
	//alert(keyCode);
	if ((keyCode < 48 || keyCode > 57) && (keyCode < 96 || keyCode >105) && keyCode!=190 && keyCode!=8 && keyCode!=46 && keyCode!=13){
 		 remainder_obj=document.getElementById('remainder_summ');
		 obj.value=0;
		 remainder_obj.value='';
	}else{
		 sum_obj=document.getElementById('all_order_price');
		 remainder_obj=document.getElementById('remainder_summ');
		 //alert((sum_obj.innerHTML*1)-(obj.value*1));
		 if((sum_obj.value*1)-(obj.value*1)!=0) remainder_obj.value=(sum_obj.value*1)-(obj.value*1);
		 if((sum_obj.value*1)-(obj.value*1)==0) remainder_obj.value='';
	}
	
}




