// Copyright (c) 2007 by Mediaproduct

// http://mediaproduct.ru



var di_category = [];

var di_rooms_count = [];



function lspace_del(ltrim_str)

{

	var space_id = -1;

	for (var i=0; i<ltrim_str.length; i++)

	{

		space_id = ltrim_str.indexOf(" ");

		if (space_id == 0)

		{

			ltrim_str = ltrim_str.substring(1, ltrim_str.length);

		}

	}

	return ltrim_str;

}



function rspace_del(rtrim_str)

{

	var space_id = -1;

	var last_id = 0;

	for (var i=0; i<rtrim_str.length; i++)

	{

		last_id = rtrim_str.length - 1;

		space_id = rtrim_str.lastIndexOf(" ");

		if (space_id == last_id)

		{

			rtrim_str = rtrim_str.substring(0, last_id);

		}

	}

	return rtrim_str;

}



function space_del(trim_str)

{

	trim_str = lspace_del(trim_str);

	trim_str = rspace_del(trim_str);

	return trim_str;

}



function err_field_mrk(form, item)

{

	form[item].style.borderStyle = "solid";

	form[item].style.borderWidth = "2px";

	form[item].style.borderColor = "#cc0000";

	form[item].focus();

}



function disable_mrk(form)

{

	var item;

	for (var i = 0; i < form.elements.length; i++)

	{

		form.elements[i].style.borderStyle = "";

		form.elements[i].style.borderWidth = "";

		form.elements[i].style.borderColor = "";

	}

}



function check_opl(form)

{

	var max_ln = 8000;

	disable_mrk(form);

	

	for (var i=0; i<items.length; i++)

	{

		var inm = items[i][0];

		var itp = items[i][1];

		var ivl = form[inm].value;



		switch (itp)

		{

			case 0 :

				if (space_del(String(form[inm].value)) == "")

				{

					alert("Данное поле обязательно для заполнения");

					err_field_mrk(form, inm);

					return false;

				}

				if (space_del(String(Number(form[inm].value))) == "NaN")

				{

					alert("Введенное значение не является числом");

					err_field_mrk(form, inm);

					return false;

				}

				break;

			case 1 :

				if (space_del(String(form[inm].value)) == "")

				{

					alert("Данное поле обязательно для заполнения");

					err_field_mrk(form, inm);

					return false;

				}

				break;

			case 2 :

				if (space_del(String(form[inm].value)).length > max_ln)

				{

					alert("Превышено максимальное количество символов - 8000");

					err_field_mrk(form, inm);

					return false;

				}		

				break;

			case 3 :

				if (space_del(String(form[inm].value)) == "")

				{

					alert("Выберите категорию номера");

					err_field_mrk(form, inm);

					return false;

				}

				break;

			case 4 :

				if (space_del(String(form[inm].value)) == "")

				{

					alert("Выберите форму оплаты");

					err_field_mrk(form, inm);

					return false;

				}

				break;

			case 6 :

				if (space_del(String(form[inm].value)) == "")

				{

					alert("Укажите адрес электронной почты");

					err_field_mrk(form, inm);

					return false;

				}

				if (!form[inm].value.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\..{2,2}))$)\b/gi))

				{

					alert("Некорректный адрес электронной почты");

					err_field_mrk(form, inm);

					return false;

				}

				break;

		}

	}

	

	var elem_count = 0;

	var j = 1;

	

	for (var i = 0; i<form.elements.length; i++)

	{

		var elem_name = form.elements[i].name;

		var last_coord = elem_name.length - 1;

		

		var name_pref = elem_name.substring(0, last_coord);

		if (name_pref == "category_")

		{

			var last_symbol = elem_name.charAt(last_coord);

			if ((last_symbol > elem_count)||(last_symbol = elem_count))

				elem_count = last_symbol;

		

			di_category[j] = elem_name;

			di_rooms_count[j] = "rooms_count_"+last_symbol;

			j++;

		}

	}

	if (elem_count == 1)

	{

		if (form["category_1"].value != "")

		{

			if (space_del(String(form["rooms_count_1"].value)) == "")

			{

				alert("Данное поле обязательно для заполнения");

				err_field_mrk(form, "rooms_count_1");

				return false;

			}

			if (space_del(String(Number(form["rooms_count_1"].value))) == "NaN")

			{

				alert("Введенное значение не является числом");

				err_field_mrk(form, "rooms_count_1");

				return false;

			}

		}

		else

			form["rooms_count_1"].value = "";

	}

	else

	{

		for (i = 1; i<=elem_count; i++)

		{

			if (form[di_category[i]].value != "")

			{

				if (space_del(String(form[di_rooms_count[i]].value)) == "")

				{

					alert("Данное поле обязательно для заполнения");

					err_field_mrk(form, di_rooms_count[i]);

					return false;

				}

				if (space_del(String(Number(form[di_rooms_count[i]].value))) == "NaN")

				{

					alert("Введенное значение не является числом");

					err_field_mrk(form, di_rooms_count[i]);

					return false;

				}

			}

			else

				form[di_rooms_count[i]].value = "";

		}

	}



	return true;

}


