var AgntUsr=navigator.userAgent.toLowerCase();
var AppVer=navigator.appVersion.toLowerCase();
var DomYes=document.getElementById?1:0;
var NavYes=AgntUsr.indexOf("mozilla")!=-1&&AgntUsr.indexOf("compatible")==-1?1:0;
var ExpYes=AgntUsr.indexOf("msie")!=-1?1:0;
var Opr=AgntUsr.indexOf("opera")!=-1?1:0;
var DomNav=DomYes&&NavYes?1:0;
var DomExp=DomYes&&ExpYes?1:0;
var Nav4=NavYes&&!DomYes&&document.layers?1:0;
var Exp4=ExpYes&&!DomYes&&document.all?1:0;
var MacCom=(AppVer.indexOf("mac")!= -1)?1:0;
var MacExp4=(MacCom&&AppVer.indexOf("msie 4")!= -1)?1:0;
var Mac4=(MacCom&&(Nav4||Exp4))?1:0;
var Exp50=AppVer.indexOf("msie 5.0")!= -1?1:0;
var Exp55=AppVer.indexOf("msie 5.5")!= -1?1:0;
var Exp6=(AppVer.indexOf("msie 6")!= -1||AppVer.indexOf("msie 7")!= -1)?1:0;
var MacExp50=(MacCom&&Exp50)?1:0;
var PosStrt=(NavYes||ExpYes)&&!Opr?1:0;
//-------------------------------------------------------------------
//-------------------------------------------------------------------
var PAYMENT_COURIER_MOSCOW = 0;
var PAYMENT_NALOZHENNY_PLATEZH_RUSSIA = 1;
var PAYMENT_SAMOVYVOZ_MOSCOW = 2;
var PAYMENT_POST_MOSCOW = 3;
var PAYMENT_PREDOPLATA_RUSSIA = 4;
var PAYMENT_OUTSIDE_RUSSIA = 5;
//-------------------------------------------------------------------
//-------------------------------------------------------------------
function do_login() 
{ 
	document.login_form.submit() 
}
//-------------------------------------------------------------------
//-------------------------------------------------------------------
function setSelectedIndexByVal(elt, val)
{
	if (val != "")
	{
		for ( i=0;i<elt.options.length;i++ ) 
		{
			if (elt.options[i].value == val)
			{
				elt.options[i].selected = true;
				break;
			}
		}
	}
}
//-------------------------------------------------------------------
//-------------------------------------------------------------------
function SubmitSearchForm()
{
	var aform = document.main;
	if (aform.searchtype.value=="0")
	{
		if (aform.w.value=="")
		{
			alert("Пожалуйста введите фразу для поиска");
			return;
		}
		if (aform.w.value.length<3)
		{
			alert("Фраза для поиска должна содержать более 2-х символов");
			return;
		}
		if (aform.w.value.length>256)
		{
			alert("Фраза для поиска должна содержать не более 256 символов");
			return;
		}
	}
	else
	{
		if (v.w.value=="")
		{
			alert("Пожалуйста введите код UniversityBooks.ru для поиска");
			return;
		}
		re = /[^0-9]/;
		if (aform.w.value.search(re)!=-1)
		{
			alert("В коде должны быть только цифры");
			return;
		}		
	}
	aform.submit();
}
//-------------------------------------------------------------------
//-------------------------------------------------------------------
function AddToBasket()
{
	var aform = document.basket;
	var elts = aform.elements;
	var eltName, eltVal;
	var tmpArray1 = new Array();
	var tmpArray2 = new Array();
	isObjects = false;
	re = /[^0-9]/;
	for ( i=0;i<elts.length;i++ ) 
	{
		eltName = elts[i].name;
		if (eltName.search("obj")!=-1)
		{
			eltVal = elts[i].value;
			if 	(eltVal.search(re)!=-1)
			{
				alert("В количестве отобранных книг должны быть только цифры");
				return;
			}
			if (eltVal!=0)
			{
				tmpArray1[tmpArray1.length] = eltName.replace("obj","");
				tmpArray2[tmpArray2.length] = eltVal;
				isObjects = true;
			}
		}
		
	}
	if (!isObjects)
	{
		alert("Ничего не выбрано");
		return;
	}
	aform.b.value = tmpArray1.join("_");
	aform.v.value = tmpArray2.join("_");
	aform.submit();
}
//-------------------------------------------------------------------
//-------------------------------------------------------------------
function openWindow(url,name) 
{
	popupWin = window.open(url, name, 'width=570,height=600,left=100,top=100,status=no,toolbar=no,menubar=no,location=no,resizable=yes,scrollbars=yes');
}
//-------------------------------------------------------------------
//-------------------------------------------------------------------
function EditUser()
{
	var aform = document.user;
	if (aform.password.value=="")
	{
		alert("Пароль не может быть пустым");
		return;
	}
	if (aform.password.value.length>8)
	{
		alert("Слишком длинный пароль (максимум - 8 символов)");
		return;
	}
	if (aform.payment_f.value=="" || aform.payment_f.value.length>1000 || aform.payment_f.value.length<2)
	{
		alert("Пожалуйста заполните поле \"Фамилия\"");
		return;
	}
	if (aform.payment_i.value=="" || aform.payment_i.value.length>1000 || aform.payment_i.value.length<2)
	{
		alert("Пожалуйста заполните поле \"Имя\"");
		return;
	}
	if (aform.payment_o.value=="" || aform.payment_o.value.length>1000 || aform.payment_o.value.length<2)
	{
		alert("Пожалуйста заполните поле \"Отчество\" или поставьте \"-\", если его нет");
		return;
	}
	if (aform.phone.value=="")
	{
		alert("Пожалуйста укажите Ваш контактный телефон");
		return;
	}
	if (aform.shipment_type[1].checked && aform.shipment_postal_index.value=="")
	{
		alert("Пожалуйста укажите почтовый индекс");
		return;
	}
	if (aform.comments.value.length>3000)
	{
		alert("Пожалуйста уточните данные в поле \"Комментарии\"");
		return;
	}
	
	aform.dowhat.value = "edit";
	aform.submit();
}
//-------------------------------------------------------------------
//-------------------------------------------------------------------
// basket
//-------------------------------------------------------------------
//-------------------------------------------------------------------
function SaveChanges()
{
	var aform = document.basket;
	var elts = aform.elements;
	var eltName;
	var tmpArray = new Array();
	for ( i=0;i<elts.length;i++ ) 
	{
		eltName = elts[i].name;
		if (eltName.search("del")!=-1)
		{
			if (elts[i].checked)
			{
				tmpArray[tmpArray.length] = eltName.replace("del","");
			}
		}
	}
	aform.dowhat.value = "edit";
	aform.del.value = tmpArray.join("_");
	AddToBasket();
}
//-------------------------------------------------------------------
//-------------------------------------------------------------------
function changeShipmentType()
{
	try
	{
		var styleSwitch = "";
		if ( NavYes || Opr )
			styleSwitch = "table-row";
		
		document.getElementById("payment_indexTr").style.display = "none";
		document.getElementById("countryTr").style.display = "none";
		document.getElementById("stationTr").style.display = "none";
		document.getElementById("cityTr").style.display = "none";
		document.getElementById("streetTr").style.display = "none";
		document.getElementById("houseHousingTr").style.display = "none";
		document.getElementById("floorIntercomTr").style.display = "none";
		document.getElementById("addressMoreInfoTr").style.display = "none";
		document.getElementById("townTr").style.display = "none";
		document.getElementById("countyTr").style.display = "none";
		
		document.getElementById("indexFont").style.display = "none";
		document.getElementById("cityFont").style.display = "none";
		document.getElementById("streetFont").style.display = "none";
		document.getElementById("houseFont").style.display = "none";
		document.getElementById("flatFont").style.display = "none";
		document.getElementById("addressMoreInfoFont").style.display = "none";
		
		document.getElementById("addressMoreInfoSpan1").style.display = "";
		document.getElementById("addressMoreInfoSpan2").style.display = "none";
		
		var aform = document.basket;
		var payment_type = parseInt(aform.payment_type.value);
		aform.country.selectedIndex = 116;	// страна = Россия
		switch ( payment_type )
		{
			// Курьером по Москве (0)
			case PAYMENT_COURIER_MOSCOW:
				document.getElementById("streetTr").style.display = styleSwitch;
				document.getElementById("stationTr").style.display = styleSwitch;
				document.getElementById("houseHousingTr").style.display = styleSwitch;
				document.getElementById("floorIntercomTr").style.display = styleSwitch;
				document.getElementById("addressMoreInfoTr").style.display = styleSwitch;
				break;
			// Почтой по России (наложенный платёж) (1)
			case PAYMENT_NALOZHENNY_PLATEZH_RUSSIA:
				document.getElementById("payment_indexTr").style.display = styleSwitch;
				document.getElementById("townTr").style.display = styleSwitch;
				document.getElementById("countyTr").style.display = styleSwitch;
				document.getElementById("streetTr").style.display = styleSwitch;
				document.getElementById("houseHousingTr").style.display = styleSwitch;
				document.getElementById("addressMoreInfoTr").style.display = styleSwitch;
				document.getElementById("indexFont").style.display = "";
				document.getElementById("cityFont").style.display = "";
				document.getElementById("streetFont").style.display = "";
				document.getElementById("houseFont").style.display = "";
				document.getElementById("flatFont").style.display = "";
				break;				
			// Почтой по Москве (3)
			case PAYMENT_POST_MOSCOW:
				document.getElementById("payment_indexTr").style.display = styleSwitch;
				document.getElementById("streetTr").style.display = styleSwitch;
				document.getElementById("houseHousingTr").style.display = styleSwitch;
				document.getElementById("addressMoreInfoTr").style.display = styleSwitch;
				document.getElementById("indexFont").style.display = "";
				document.getElementById("cityFont").style.display = "";
				document.getElementById("streetFont").style.display = "";
				document.getElementById("houseFont").style.display = "";
				document.getElementById("flatFont").style.display = "";
				break;
			// Почтой по России (по предоплате) (4)
			case PAYMENT_PREDOPLATA_RUSSIA:
				document.getElementById("payment_indexTr").style.display = styleSwitch;
				document.getElementById("townTr").style.display = styleSwitch;
				document.getElementById("countyTr").style.display = styleSwitch;
				document.getElementById("streetTr").style.display = styleSwitch;
				document.getElementById("houseHousingTr").style.display = styleSwitch;
				document.getElementById("addressMoreInfoTr").style.display = styleSwitch;
				document.getElementById("indexFont").style.display = "";
				document.getElementById("cityFont").style.display = "";
				document.getElementById("streetFont").style.display = "";
				document.getElementById("houseFont").style.display = "";
				document.getElementById("flatFont").style.display = "";
				break;
			// Почтой за пределы России (только по предоплате) (5)
			case PAYMENT_OUTSIDE_RUSSIA:
				aform.country.selectedIndex = 0;
				document.getElementById("addressMoreInfoTr").style.display = styleSwitch;
				document.getElementById("addressMoreInfoFont").style.display = "";
				document.getElementById("addressMoreInfoSpan1").style.display = "none";
				document.getElementById("addressMoreInfoSpan2").style.display = "";
				break;
		}
	}
	catch(e) {}
}
//-------------------------------------------------------------------
//-------------------------------------------------------------------
function chbRegisterClick() 
{
	var styleSwitch = "";
	if ( NavYes || Opr )
		styleSwitch = "table-row";

	var aform = document.basket;
	var tr = document.getElementById("loginTr");
	if ( aform.chbRegister.checked )
	{
		tr.style.display = styleSwitch;
	}
	else
	{
		tr.style.display = "none";
	}
}
//-------------------------------------------------------------------
//-------------------------------------------------------------------
function SendOrder()
{
	var aform = document.basket;
	var payment_type = parseInt(aform.payment_type.value);
	
	// ----------- все типы доставки ------------
	// фио
	if ( aform.payment_f.value=="" || aform.payment_f.value.length > 1000 || aform.payment_f.value.length < 2 )
	{
		alert("Пожалуйста укажите данные в поле \"Фамилия\"");
		return;
	}
	if ( aform.payment_i.value=="" || aform.payment_i.value.length > 1000 || aform.payment_i.value.length < 2 )
	{
		alert("Пожалуйста укажите данные в поле \"Имя\"");
		return;
	}
	if (aform.payment_o.value=="" || aform.payment_o.value.length>1000 || aform.payment_o.value.length<2)
	{
		alert("Пожалуйста заполните поле \"Отчество\" или поставьте \"-\", если его нет");
		return;
	}
	// телефон
	if ( aform.phone_code.value == "" )
	{
		alert("Пожалуйста укажите данные в поле \"Телефонный код \"");
		return;
	}
	if ( aform.payment_phone.value == "" )
	{
		alert("Пожалуйста укажите данные в поле \"Телефон\"");
		return;
	}
	if ( ( aform.phone_code.value.length + aform.payment_phone.value.length ) > 50 )
	{
		alert("Пожалуйста уточните данные в полях \"Код города\" и \"Телефон\"");
		return;
	}
	//email
	if ( aform.payment_email.value == "" )
	{
		alert("Пожалуйста заполните поле \"E-mail\"");
		return;
	}
	if ( aform.payment_email.value.length<8 || aform.payment_email.value.length>50 || aform.payment_email.value.search("@")==-1 || aform.payment_email.value.search(".")==-1 )
	{
		alert("Пожалуйста уточните данные в поле \"E-mail\".");
		return;
	}
	// ---------- /все типы доставки ------------
	
	// индекс
	if 
	(
		payment_type == PAYMENT_NALOZHENNY_PLATEZH_RUSSIA || 
		payment_type == PAYMENT_POST_MOSCOW || 
		payment_type == PAYMENT_PREDOPLATA_RUSSIA
	)
	{
		if ( aform.payment_postal_index.value == "" )
		{
			alert("Пожалуйста укажите данные в поле \"Почтовый индекс\"");
			return;
		}
	}
	
	// уточнения к адресу
	if ( payment_type == PAYMENT_OUTSIDE_RUSSIA )
	{
		if ( aform.address_moreinfo.value == "" )
		{
			alert("Пожалуйста укажите данные в поле \"Адрес\"");
			return;
		}
	}
	
	// доставка почтой по России (оба)
	if  ( payment_type==PAYMENT_NALOZHENNY_PLATEZH_RUSSIA || payment_type==PAYMENT_PREDOPLATA_RUSSIA )
	{
		if ( aform.county.value == "" )
		{
			alert("Пожалуйста укажите данные в поле \"Край, область, район\"");
			return;
		}
		if ( aform.town.value == "" )
		{
			alert("Пожалуйста укажите данные в поле \"Населенный пункт\"");
			return;
		}
		if ( aform.street.value == "" )
		{
			alert("Пожалуйста укажите данные в поле \"Улица\"");
			return;
		}
		if ( aform.house.value == "" )
		{
			alert("Пожалуйста укажите данные в поле \"Дом\"");
			return;
		}
		if ( aform.flat.value == "" )
		{
			alert("Пожалуйста укажите данные в поле \"Квартира\"");
			return;
		}
	}
	
	// доставка почтой по Москве
	if  ( payment_type==PAYMENT_POST_MOSCOW )
	{
		if ( aform.street.value == "" )
		{
			alert("Пожалуйста укажите данные в поле \"Улица\"");
			return;
		}
		if ( aform.house.value == "" )
		{
			alert("Пожалуйста укажите данные в поле \"Дом\"");
			return;
		}
		if ( aform.flat.value == "" )
		{
			alert("Пожалуйста укажите данные в поле \"Квартира\"");
			return;
		}
	}

	//комментарии
	if ( aform.payment_comments.value.length > 3000 )
	{
		alert("Пожалуйста уточните данные в поле \"Комментарии\"");
		return;
	}
	
	//логин
	if ( aform.chbRegister && aform.chbRegister.checked )
	{
		if ( aform.payment_login.value == "" )
		{
			alert("Пожалуйста введите данные в поле \"Логин\"");
			return;
		}
		if ( aform.payment_email.value == "" )
		{
			alert("Пожалуйста введите данные в поле \"E-mail\"");
			return;
		}
	}
	
	//проверка ошибочного ввода подъезда и квартиры
	if ( aform.entrance.value != "" && aform.flat.value == "" )
	{
		if ( !confirm("Вы заполнили поле \"Подъезд\" и не заполнили поле \"Квартира\". Все верно?") )
		{
			return;
		}
	}
	
	aform.dowhat.value = "send";
	aform.submit();
}
//-------------------------------------------------------------------
//-------------------------------------------------------------------