﻿var mouse_x, mouse_y;
document.onmousemove =
	function (e) {
		if (document.all) {
			mouse_x = event.clientX;
			mouse_y = event.clientY;
			if ((event.srcElement) && (event.srcElement.tagName) && (event.srcElement.tagName.toLowerCase() == 'select')) mouse_y += 30;
		} else if (document.getElementById){
			mouse_x = e.clientX;
			mouse_y = e.clientY;
		} else if (document.layers) {
			mouse_x = e.x;
			mouse_y = e.y;
		} // end if
		if (window.pageXOffset) {
			mouse_x += window.pageXOffset;
			mouse_y += window.pageYOffset;
		} else {
			var html = document.getElementsByTagName('html')[0];
			mouse_x += html.scrollLeft;
			mouse_y += html.scrollTop;
		} // end if
	} // end event
function ModelList(list, id) {
	var main_menu_container = document.getElementById('model_list_id');
	var main_menu_items = main_menu_container.getElementsByTagName('LI');
	var active = document.getElementById('ModelList' +id);
	for ( k=0; k < main_menu_items.length; k++)
	{
	
		if ( ( active == main_menu_items[k]) && (main_menu_items[k].className == ""))
		{
			main_menu_items[k].className = "active";
		} 	else { main_menu_items[k].className = "" }
	}	
		return false;
}

function ModelMenuActive(list, id)
{
	var main_container = document.getElementById('model_menu_id');
	var menu_items = main_container.getElementsByTagName('LI');
	var menuactive = document.getElementById('MenuActive' +id);
	for ( i=0; i < menu_items.length; i++) {
		if ( (menuactive == menu_items[i]) && (menu_items[i].className == ""))
		{
			menu_items[i].className = "model_menu_active";
		} 	else { menu_items[i].className = "" }		
	}
	return false;
}


function MenuButton(list, id)
{
	var top_menu_container = document.getElementById('top_menu');
	var top_menu_items = top_menu_container.getElementsByTagName('TD');
	var active_button = document.getElementById('button' +id);
	for ( i=0; i < top_menu_items.length; i++) {

	if ( (active_button == top_menu_items[i]) && (top_menu_items[i].className == ""))
		{
			active_button.className = "active";
		} 	else { top_menu_items[i].className = "" }
	}
	return false;
}

function getParentTag(startTag, parentTagName)
{
	do {
		startTag = startTag.parentNode;
	}	while (startTag.tagName != parentTagName);
	return startTag;
}

function FeedbackSend(form) {
	var result = true;
	//result = RequiredFieldCheck(form.Title) && result;
	//result = RequiredFieldCheck(form.Company) && result;
	//result = PhoneCheck(form.Phone) && result;
	//result = EmailCheck(form.EMail) && result;
	
	result = RequiredFieldCheck(form.Title) && result;
	result = RequiredFieldCheck(form.Name) && result;
	result = RequiredFieldCheck(form.Msg) && result;
	result = EmailCheck(form.Email) && result;
	if ( result )
	{
		//return StandardAjaxAction(this, 'SubmitFeedback.aspx','FeedbackForm', document.getElementById('FeedbackFormDiv'), false);	
		return StandardAjaxAction(this, 'feedback.aspx','FeedbackForm', document.getElementById('FeedbackFormDiv'), false);	
	}
	else
	{
		alert("Правильно заполните поля, выделенные красным!"); 
		return false;
	}
}
function ValidateForm(form){
    var formElements = form.elements;
    var result = true;
	for (var i = 0; i < formElements.length; i++) 
		if (formElements[i].onblur) result = formElements[i].onblur() && result;
	return result;
}

function SubmitRegistration(form) {
	var result = true;
	result = LoginCheck(form.Login) && result;
	result = RequiredFieldCheck(form.Title) && result;
	result = RequiredFieldCheck(form.Company) && result;
	result = PhoneCheck(form.Phone) && result;
	result = EmailCheck(form.Email) && result;
	result = RequiredFieldCheck(form.Password) && result;
	result = PasswordCheck(form.Password) && result;
	result = ConfirmationCheck(form.Confirmation, 'password') && result;
	if ( result )
	{
		return StandardAjaxAction(form, 'SubmitRegistration.aspx','SubmitRegistration', document.getElementById('RegistrationFormDiv'), false);
	}
	else
	{
		alert("Правильно заполните поля, выделенные красным!"); 
		return false;
	}
}
function SubmitRegistrationShturmanClient(form, process_page, formid, divformid) {
	var result = true;

//Name
//Login
//Email
//Password
//PasswordConfirmation
//
//EquipmentID
//
//PointName
//SellerCode

	result = RequiredFieldCheck(form.Name) && result;
	result = LoginCheck(form.Login) && result;
	result = EmailCheck(form.Email) && result;
	result = RequiredFieldCheck(form.Password) && result;
	result = PasswordCheck(form.Password) && result;
	result = ConfirmationCheck(form.PasswordConfirmation, 'Password') && result;
	try {result = RequiredFieldCheck(form.EquipmentID) && result;} catch (e) {}
	try {result = RequiredFieldCheck(form.PointName) && result;} catch (e) {}
	try {result = RequiredFieldCheck(form.SellerCode) && result;} catch (e) {}
	if ( result )
	{
		return StandardAjaxAction(form, process_page, formid, document.getElementById(divformid), false);
	}
	else
	{
		alert("Правильно заполните поля, выделенные красным!"); 
		return false;
	}
}
function SubmitProfile(form) {
	var result = true;
	result = RequiredFieldCheck(form.Title) && result;
	result = RequiredFieldCheck(form.Company) && result;
	result = PhoneCheck(form.Phone) && result;
	result = EmailCheck(form.Email) && result;
	result = PasswordCheck(form.Password) && result;
	result = ConfirmationCheck(form.Confirmation, 'password') && result;
	if ( result )
	{
		return StandardAjaxAction(form, 'SubmitUserProfile.aspx','SubmitProfile', null, false);
	}
	else
	{
		alert("Правильно заполните поля, выделенные красным!"); 
		return false;
	}
}
function PhoneNumberCheck(input) {
	phone = input.value;
	if (phone.length > 0) { PhoneCheck(input);
	} else {
		input.parentNode.className = "";
	}
}
function PhoneCheck(input) {
	var phone = input.value;
	var mask = new RegExp(PhoneRegEx, 'i');
//	var mask = /^[0-9]{3}-[0-9]{3}-[0-9]{2}-[0-9]{2}$/;
	var result = mask.test(phone);
	input.parentNode.className = result ? "" : "wrong";
	return result;
}
function EmailCheck(input) {
	var email = input.value;
	var re = /^[a-z0-9._-]+@([a-z0-9-]+\.)+[a-z0-9-]+$/i;
	var result = re.test(email);
	input.parentNode.className = result ? "" : "wrong";
	return result;
}
function SubscriberEmail(container) {
	var input = document.getElementById(container);
	var email = input.value;
	var result = false;
	if (email.length > 0) {
		var re = /^[a-z0-9._-]+@([a-z0-9-]+\.)+[a-z0-9-]+$/i;
		var result = re.test(email) ? "correct" : "wrong";
		input.parentNode.className = result;
		if (result=="wrong") return false;
	} else {
		input.parentNode.className="";
		return false;
	}
}
function RequiredFieldCheck(input, resultOnly) {
	var result = (input.value != "");
/*	if (!resultOnly) {
		var div = getParentTag(input, 'DIV');
		var inputs = div.getElementsByTagName('INPUT');
		for (var i = 0; i < inputs.length; i++) {
			if (inputs[i].onblur) result = inputs[i].onblur() && result;
		}
	} */
	getParentTag(input, 'DIV').className = result ? "" : "wrong";
	return result; 	
}
function LoginCheck(input) {
	var result = (input.value.length >= 4);
	input.parentNode.className = result ? "" : "wrong";
	return result; 
}
function PasswordCheck(input) {
	var result = ((input.value == "") || (input.value.length >= 6));
	input.parentNode.className = result ? "" : "wrong";
	return result; 
}
function ConfirmationCheck(input, passwordId) {
	var password = document.getElementById(passwordId);
	var result = (input.value  == password.value);
	input.parentNode.className = result ? "" : "wrong";
	return result;
}
function NumberCheck(input) {
	var re = /^\d+$/;
	var result = re.test(input.value);
	getParentTag(input, 'DIV').className = result ? "" : "wrong";
	return result; 	
}

function SimpleSubscriptionSend(form) {
	if (EmailCheck(form.EMail))
	{
		return StandardAjaxAction(form, 'SubmitSubscription.aspx','SubmitRegistration', document.getElementById('SimpleSubscribeFormDiv'), false);
	} else {
		alert("Задан неправильный E-Mail!"); 		
	}
	return false;
}
function ExtendedSubscribeSend(form) {
	submit_form = true;
	if (!RequiredCheckboxCheck(form.types))
	{
		submit_form = false;
	}
	if (!RequiredFieldCheck(form.Title))
	{
		submit_form = false;
	}
	if (!EmailCheck(form.EMail))
	{
		submit_form = false;
	}
	if (submit_form == true)
	{
			return StandardAjaxAction(form, 'SubmitSubsriptionExtended.aspx','SubmitRegistration', document.getElementById('ExtendedSubscribeFormDiv'), false);
		return false;
	}
	else
	{
		alert("Правильно заполните поля, выделенные красным!"); 
		return false;
	}
}
function SimpleUnSubscriptionSend(form) {
	if (EmailCheck(form.EMail))
	{
		return StandardAjaxAction(form, 'SubmitUnSubscription.aspx','SubmitUnRegistration', document.getElementById('SimpleUnSubscribeFormDiv'), false);
	} else {
		alert("Задан не правильный E-Mail!"); 		
	}
	return false;
}
function ExtendedSubscribeSend(form) {
	submit_form = true;
	if (!RequiredCheckboxCheck(form.types))
	{
		submit_form = false;
	}
	if (!RequiredFieldCheck(form.Title))
	{
		submit_form = false;
	}
	if (!EmailCheck(form.EMail))
	{
		submit_form = false;
	}
	if (submit_form == true)
	{
			return StandardAjaxAction(form, 'SubmitSubsriptionExtended.aspx','SubmitRegistration', document.getElementById('ExtendedSubscribeFormDiv'), false);
		return false;
	}
	else
	{
		alert("Правильно заполните поля, выделенные красным!"); 
		return false;
	}
}
function RequiredCheckboxCheck(types) {
	var result = true;
	var div = types[0].parentNode.parentNode.parentNode.parentNode.parentNode;
	var checked=false;
	if (types.name) { 
		if (!types.checked) {
			div.className="wrong";
			result = false;
		} else { div.className=""; }
	} else {
		for (i = 0; i < types.length; i++ ) {
			if (types[i].checked) { checked = true; }
		}
		if (!checked) {	
			div.className="wrong";
			result = false;
		} else { div.className=""; }
	}
	return result;
}
var ProductAddedNoteDiv;
function ProductAdded() {
	if (!ProductAddedNoteDiv)
	{
		ProductAddedNodeDiv = document.createElement('ProductAddedNodeDiv');
		ProductAddedNodeDiv.style.position = 'absolute';
		ProductAddedNodeDiv.style.padding = '10px';
		ProductAddedNodeDiv.style.background = '#C8C8C8';
		ProductAddedNodeDiv.style.border = '1px solid gray';
		ProductAddedNodeDiv.innerHTML = "<b>Товар добавлен<br /> в корзину</b>";
		ProductAddedNodeDiv.onmouseout =
			function () {
				ProductAddedNodeDiv.style.display = "none";
			}
		document.body.appendChild(ProductAddedNodeDiv);
	}
	ProductAddedNodeDiv.style.left = mouse_x - 15  + 'px';
	ProductAddedNodeDiv.style.top = mouse_y - 20  + 'px';
	ProductAddedNodeDiv.style.display = "block";
}
