String.prototype.replaceAll = function(search, replace) {
	return this.split(search).join(replace);
};

var userNotFull = false;
window.onload = function() {
	if (window['lang'] == undefined)
		jQuery("body")
				.append(
						"<script type='text/javascript' src='http://images.arena-market.ru/js/lang_ru.js'></script>");
	hi.shopcart();
	setInterval(hi.shopcart, 30000);
	checkAddressForDostavka();
	if (userNotFull != null && userNotFull) {
		if (jQuery("#jUImsb3").attr("title") != null) {
			jQuery("#jUImsb3").attr("title", lang.jUImsb3.title).html(
					lang.jUImsb3.html);
			jQuery("#jUImsb3").dialog('open');
		} else {
			jQuery("body").append(
					"<div id=\"jUImsb3\" title=\"" + lang.jUImsb3.title
							+ "\" style=\"display: none;\">"
							+ lang.jUImsb3.html + "</div>");
			jQuery("#jUImsb3").dialog({
				modal : false,
				resizable : false,
				buttons : [ {
					text : lang.buttons.goTo,
					click : function() {
						$(this).dialog("close");
						updateAccount(lang.updateAccount.title);
					}
				} ]
			});
			jQuery("#jUImsb3").dialog("open");
		}
	}
	if (jQuery.browser.opera && parseInt($(".seatDiv").css("font-size")) > 9) {
		alert(lang.info.opera.seatSize);
	}
	if (jQuery("form[action$='registerUser.do']").size() > 0) {
		jQuery("input.datebox").datepicker({
			yearRange : '-100:+0',
			dateFormat : "dd.mm.yy",
			changeYear : true,
			defaultDate : '-20y',
			monthNames : lang.date.monthNames,
			dayNamesMin : lang.date.dayNamesMin,
			minDate : '-100y',
			maxDate : new Date()
		});
	} else
		calendarSetup(jQuery("input.datebox"), "dd.mm.yy");
	$("body")
			.append(
					"<div id='icon-info-box' style='display:none;position:fixed;background:white;box-shadow:0 0 5px 1px gray;width:25%;padding:10px;border-radius:5px;overflow:hidden;'></div>");
	$("body")
			.append(
					"<div id='map-area-info-box' style='display:none;position:absolute;background:white;box-shadow:0 0 5px 1px gray;width:25%;padding:10px;border-radius:5px;overflow:hidden;'></div>");
	$(".icon-info").hover(function() {
		$("div#icon-info-box").text($(this).attr("info")).show();
	}, function() {
		$("div#icon-info-box").text("").hide();
	}).mousemove(function(e) {
		$("div#icon-info-box").css({
			top : e.pageY,
			left : e.pageX
		});
	});
};

jQuery.fn.message = function(message) {
	var oldVal = "";
	var n;
	$(this).focus(
			function() {
				n = $(this).attr("name");
				var o = $(this).parent().find("label[for='" + n + "']");
				if (o.get(0) == undefined)
					o = $(this).parent().append(
							"<label for='" + n + "'></label>").find(
							"label[for='" + n + "']");
				oldVal = o.html();
				o.text(message);
			}).focusout(
			function() {
				$(this).parent().find(
						"label[for='" + $(this).attr("name") + "']").html(
						oldVal);
			});
	return $(this);
};

jQuery.fn.coords = function() {
	var o = this[0];
	var left = 0, top = 0, offsetParent = null;
	offsetParent = o.offsetParent;
	var original = o;
	var el = o;
	while (el.parentNode != null) {
		el = el.parentNode;
		if (el.offsetParent != null) {
			var considerScroll = true;
			if (window.opera)
				if (el == original.parentNode || el.nodeName == "TR")
					considerScroll = false;
			if (considerScroll) {
				if (el.scrollTop && el.scrollTop > 0)
					top -= el.scrollTop;
				if (el.scrollLeft && el.scrollLeft > 0)
					left -= el.scrollLeft;
			}
		}
		if (el == offsetParent) {
			left += o.offsetLeft;
			if (el.clientLeft && el.nodeName != "TABLE")
				left += el.clientLeft;
			top += o.offsetTop;
			if (el.clientTop && el.nodeName != "TABLE")
				top += el.clientTop;
			o = el;
			if (o.offsetParent == null) {
				if (o.offsetLeft)
					left += o.offsetLeft;
				if (o.offsetTop)
					top += o.offsetTop;
			}
			offsetParent = o.offsetParent;
		}
	}
	return {
		left : left - $(window).scrollLeft(),
		top : top - $(window).scrollTop()
	};
};

function showMessage() {
	if (getCookie("showedMessage") != null
			&& getCookie("showedMessage") == "true") {
		jQuery(".messagePanel").show();
	} else {
		setTimeout(function() {
			var height = jQuery(".messagePanel").height() + 16;
			jQuery(".messagePanel").height(0).animate({
				height : '30px'
			}, 300).animate({
				height : height
			}, 1200);
			setCookie("showedMessage", "true", "", "", "", "");
		}, 500);
	}
}

function setCookie(name, value, expires, path, domain, secure) {
	document.cookie = name + "=" + escape(value)
			+ ((expires) ? "; expires=" + expires : "")
			+ ((path) ? "; path=" + path : "")
			+ ((domain) ? "; domain=" + domain : "")
			+ ((secure) ? "; 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 loadForm(div, form) {
	jQuery(div).load("GetForm", {
		form : form
	});
}

function loadFormKey(div, form, key) {
	jQuery(div).load("GetForm", {
		form : form,
		key : key
	});
}

function messageBox(title, message) {
	if (jQuery("#jUImsb1").attr("title") != null) {
		jQuery("#jUImsb1").attr("title", title).html(message);
		jQuery("#jUImsb1").dialog('open');
	} else {
		jQuery("body").append(
				"<div id=\"jUImsb1\" title=\"" + title
						+ "\" style=\"display: none;\">" + message + "</div>");
		jQuery("#jUImsb1").dialog({
			modal : true,
			resizable : false,
			buttons : {
				"Ok" : function() {
					jQuery(this).parent().remove();
				}
			},
			close : function() {
				jQuery(this).parent().remove();
			}
		});
		jQuery("#jUImsb1").dialog("open");
	}
	return true;
}

function messageBox(title, message, reload) {
	if (jQuery("#jUImsb1").attr("title") != null) {
		jQuery("#jUImsb1").attr("title", title).html(message);
		jQuery("#jUImsb1").dialog('open');
	} else {
		jQuery("body").append(
				"<div id=\"jUImsb1\" title=\"" + title
						+ "\" style=\"display: none;\">" + message + "</div>");
		jQuery("#jUImsb1").dialog({
			modal : true,
			resizable : false,
			close : function(event, ui) {
				if (reload)
					location.reload();
			},
			buttons : {
				"Ok" : function() {
					jQuery(this).parent().remove();
				}
			},
			close : function() {
				jQuery(this).parent().remove();
			}
		});
		jQuery("#jUImsb1").dialog("open");
	}
	return true;
}

function messageBox(title, message, reload, width) {
	if (jQuery("#jUImsb1").attr("title") != null) {
		jQuery("#jUImsb1").attr("title", title).html(message);
		jQuery("#jUImsb1").dialog('open');
	} else {
		jQuery("body").append(
				"<div id=\"jUImsb1\" title=\"" + title
						+ "\" style=\"display: none;\">" + message + "</div>");
		jQuery("#jUImsb1").dialog({
			width : width,
			modal : true,
			resizable : false,
			close : function(event, ui) {
				if (reload)
					location.reload();
			},
			buttons : {
				"Ok" : function() {
					jQuery(this).remove();
				}
			},
			close : function() {
				jQuery(this).remove();
			}
		});
		jQuery("#jUImsb1").dialog("open");
	}
	return true;
}

function messageBoxClear(title, message) {
	if (jQuery("#jUImsb2").attr("title") != null) {
		jQuery("#jUImsb2").attr("title", title).html(message);
		jQuery("#jUImsb2").dialog('open');
	} else {
		jQuery("body").append(
				"<div id=\"jUImsb2\" title=\"" + title
						+ "\" style=\"display: none;\">" + message + "</div>");
		jQuery("#jUImsb2").dialog({
			modal : true,
			resizable : false
		});
		jQuery("#jUImsb2").dialog("open");
	}
}

function loginForm(title, ofsite, showMessage, clubCard) {
	ofsite = ofsite == undefined ? lang.offSite : ofsite;
	var message = lang.form.login.message(ofsite);
	var cc = lang.form.login.cc(ofsite);
	var lForm = "<form name='LoginForm' id='modalLoginForm' class='login-form fanat-form' onsubmit='checkLogin();return false;'>"
			+ (showMessage == undefined ? "" : message)
			+ (clubCard == undefined ? "" : cc)
			+ "<div><table><tr><td><span>"
			+ lang.form.login.login
			+ ":</span></td></tr>"
			+ "<tr><td><input type='text' name='uname' value='' id='uname' class='text ui-widget-content ui-corner-all'><br/>"
			+ "<label for='uname'></label></td></tr>"
			+ "<tr><td><span>"
			+ lang.form.login.passw
			+ ":</span></td></tr>"
			+ "<tr><td><input type='password' name='passwd' value='' id='passwd' class='text ui-widget-content ui-corner-all'><br/>"
			+ "<label for='passwd'></label></td></tr>"
			+ "<tr><td><input type='checkbox' name='keepAlive' value='checked' id='keepAlive' class='text ui-widget-content ui-corner-all'>"
			+ "<label for='keepAlive' title='"
			+ lang.form.login.remember.tooltip
			+ "'>"+lang.form.login.remember.tip+"</label></td></tr>"
			+ (clubCard == undefined ? ""
					: "<tr><td><input type='checkbox' "
							+ (clubCard == true ? "checked='checked'" : "")
							+ " name='cc' id='clubCard' class='text ui-widget-content ui-corner-all'>&nbsp;"
							+ lang.form.login.wantFanCard
							+ "<label for='cc'></label></td></tr>")
			+ "</table><div>"
			+ "<input type='hidden' value='LoginAccount' name='func'>"
			+ "<div style='display: none;'><input type='submit' value='submit'></div>"
			+ "<center style='margin-top:8px;'><br><a href='javascript:' id='passw-reminder'>"
			+ lang.form.login.forgotPassw + "</a></center>";
	+"</form>";
	if (jQuery("#jUImsbLogin").attr("title") != null) {
		jQuery("#jUImsbLogin").attr("title", title).html(lForm);
		jQuery("#jUImsbLogin").dialog("open");
	} else {
		jQuery("body").append(
				"<div id='jUImsbLogin' title='" + title
						+ "' style='display: none;'>" + lForm + "</div>");
		jQuery("#jUImsbLogin").dialog({
			width : 400,
			modal : true,
			resizable : false,
			buttons : [ {
				text : lang.buttons.cancel,
				click : function() {
					jQuery(this).dialog("close");
				}
			}, {
				text : lang.buttons.enter,
				click : function() {
					checkLogin();
				}
			}, {
				text : lang.buttons.registr,
				click : function() {
					jQuery(this).dialog("close");
					anketka(lang.form.anketka.title);
				}
			} ]
		});
		jQuery("#jUImsbLogin").dialog("open");
		jQuery("#uname").focus();
		jQuery("#passw-reminder").click(function() {
			passwordReminder(lang.form.passwRemind.title);
		});
	}
}

function updateAccount(title, normal) {
	normal = normal == undefined ? false : normal;
	if (jQuery("#jUImsbUpdateUser").attr("title") != null) {
		jQuery("#jUImsbUpdateUser").attr("title", title);
		loadForm("#jUImsbUpdateUser", "updateAccount");
		if (!normal)
			setTimeout("jQuery('#modalUpdateAccountForm').jNice();", 1000);
		setTimeout("calendarSetup(jQuery('input.datebox'), 'dd.mm.yy')", 1000);
		jQuery("#jUImsbUpdateUser").dialog("open");
	} else {
		jQuery("body").append(
				"<div id='jUImsbUpdateUser' title='" + title
						+ "' style='display: none;'></div>");
		loadForm("#jUImsbUpdateUser", "updateAccount");
		if (!normal)
			setTimeout("jQuery('#modalUpdateAccountForm').jNice();", 1000);
		setTimeout("calendarSetup(jQuery('input.datebox'), 'dd.mm.yy')", 1000);
		jQuery("#jUImsbUpdateUser").dialog({
			width : 462,
			modal : true,
			resizable : false,
			buttons : [ {
				text : lang.buttons.update,
				click : function() {
					checkUpdateAccount(normal);
				}
			}, {
				text : lang.buttons.cancel,
				click : function() {
					jQuery(this).dialog("close");
				}
			} ]
		});
		jQuery("#jUImsbUpdateUser").dialog("open");
	}
}

function checkUpdateAccount(normal) {
	var error = false;
	var form = jQuery("#modalUpdateAccountForm");
	jQuery("#modalUpdateAccountForm label[for]").empty();
	if (!isNumeric(form.find("input[name='mobileCountryCode']").attr("value"))
			|| !isNumeric(form.find("input[name='mobileCode']").attr("value"))
			|| form.find("input[name='mobileCode']").attr("value").lenght == 3
			|| !isNumeric(form.find("input[name='mobileNomer']").attr("value"))
			|| form.find("input[name='mobileNomer']").attr("value").lenght == 7) {
		form.find("label[for='mobile']").text(lang.form.errors.mobileFormat)
				.css({
					"color" : "red",
					"display" : "block",
					"float" : "right"
				}).show();
		error = true;
	} else {
		form.find("label[for='mobile']").text("");
	}
	fCheck = form.find("input[name='email']");
	if (!isValidEmailAddress(fCheck.attr("value"))) {
		if (!normal)
			fCheck.parent().addClass("jNiceInputInnerError").parent().addClass(
					"jNiceInputWrapperError");
		form.find("label[for='email']").text(lang.form.errors.email).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		if (!normal)
			fCheck.parent().removeClass("jNiceInputInnerError").parent()
					.removeClass("jNiceInputWrapperError");
		form.find("label[for='email']").text("");
	}
	fCheck = form.find("input[name='lname']");
	if (fCheck.attr("value").length == 0) {
		if (!normal)
			fCheck.parent().addClass("jNiceInputInnerError").parent().addClass(
					"jNiceInputWrapperError");
		form.find("label[for='lname']").text(lang.form.errors.required).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		if (!normal)
			fCheck.parent().removeClass("jNiceInputInnerError").parent()
					.removeClass("jNiceInputWrapperError");
		form.find("label[for='lname']").text("");
	}
	fCheck = form.find("input[name='fname']");
	if (fCheck.attr("value").length == 0) {
		if (!normal)
			fCheck.parent().addClass("jNiceInputInnerError").parent().addClass(
					"jNiceInputWrapperError");
		form.find("label[for='fname']").text(lang.form.errors.required).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		if (!normal)
			fCheck.parent().removeClass("jNiceInputInnerError").parent()
					.removeClass("jNiceInputWrapperError");
		form.find("label[for='fname']").text("");
	}
	fCheck = form.find("select[name='sportclub']");
	if (fCheck != "") {
		if (fCheck.attr("value") == "-1") {
			if (!normal)
				fCheck.parent().addClass("jNiceInputInnerError").parent()
						.addClass("jNiceInputWrapperError");
			form.find("label[for='sportclub']").text(lang.form.errors.required)
					.css({
						"color" : "red",
						"display" : "block"
					}).show();
			error = true;
		} else {
			if (!normal)
				fCheck.parent().removeClass("jNiceInputInnerError").parent()
						.removeClass("jNiceInputWrapperError");
			form.find("label[for='sportclub']").text("");
		}
	}
	fCheck = form.find("input[name='birthdate']");
	if (fCheck != "") {
		if (fCheck.attr("value").length == 0) {
			if (!normal)
				fCheck.parent().addClass("jNiceInputInnerError").parent()
						.addClass("jNiceInputWrapperError");
			form.find("label[for='birthdate']").text(lang.form.errors.required)
					.css({
						"color" : "red",
						"display" : "block"
					}).show();
			error = true;
		} else {
			if (!normal)
				fCheck.parent().removeClass("jNiceInputInnerError").parent()
						.removeClass("jNiceInputWrapperError");
			form.find("label[for='birthdate']").text("");
		}
	}
	fCheck = form.find("input[name='telephone']");
	if (fCheck.attr("value").length == 0) {
		if (!normal)
			fCheck.parent().addClass("jNiceInputInnerError").parent().addClass(
					"jNiceInputWrapperError");
		form.find("label[for='telephone']").text(lang.form.errors.required)
				.css({
					"color" : "red",
					"display" : "block"
				}).show();
		error = true;
	} else {
		if (!normal)
			fCheck.parent().removeClass("jNiceInputInnerError").parent()
					.removeClass("jNiceInputWrapperError");
		form.find("label[for='telephone']").text("");
	}
	if (!error) {
		jQuery("#jUImsbUpdateUser").dialog("close");
		messageBoxClear(lang.form.anketka.update.title,
				"<h3 class=\"webMessage\">" + lang.form.anketka.update.process
						+ "</h3>");
		jQuery
				.post(
						"hi.ajax",
						form.serialize(),
						function(data) {
							var alerts = data.split(" ");
							if (alerts[0] != "ok") {
								jQuery("#jUImsb2").dialog('close');
								switch (alerts[i]) {
								case "notLogin":
									messageBoxClear(lang.form.login.title,
											"<h3 class=\"webMessage\">"
													+ lang.form.login.notAuth
													+ "</h3>");// ,true);
									setTimeout("location.reload()", 2000);
									break;
								case "sqlError":
									messageBoxClear(
											lang.form.anketka.update.title,
											" <h3 class=\"webMessage\">"
													+ lang.form.anketka.update.error
													+ "</h3>");// ,true);
									break;
								default:
									updateAccount(lang.form.anketka.update.title);
								}
							} else {
								jQuery("#jUImsb2").dialog('close');
								messageBoxClear(
										lang.form.anketka.update.title,
										"<h3 class=\"webMessage\">"
												+ lang.form.anketka.update.success
												+ "</h3>");// ,true);
								setTimeout("location.reload()", 1500);
							}
						}, "text");
	}
}

function checkLogin() {
	var error = false;
	var lForm = jQuery("#modalLoginForm");
	jQuery("#modalLoginForm label[for] #modalLoginForm label[for!='keepAlive']")
			.empty();
	fCheck = jQuery("#modalLoginForm input[name='uname']");
	if (fCheck.attr("value").length == 0) {
		fCheck.css("border", "1px solid red");
		jQuery("#modalLoginForm label[for='uname']")
				.text("Некорректный логин.").css({
					"color" : "red",
					"display" : "block"
				}).show();
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	fCheck = jQuery("#modalLoginForm input[name='passwd']");
	if (fCheck.attr("value").length == 0) {
		fCheck.css("border", "1px solid red");
		jQuery("#modalLoginForm label[for='passwd']").text(
				lang.form.errors.passw).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	if (!error) {
		jQuery("#jUImsbLogin").dialog("close");
		messageBoxClear(lang.form.login.title, "<h3 class=\"webMessage\">"
				+ lang.form.login.wait + "</h3>");
		jQuery.post("hi.ajax", lForm.serialize(), function(data) {
			var alerts = data.split(' ');
			if (alerts[0] != "ok") {
				jQuery("#jUImsb2").dialog('close');
				for ( var i = 0; i < alerts.length; i++)
					switch (alerts[i]) {
					case "notActiv":
						emailActivate(lang.form.errors.emailNotActive);
						break;
					case "notFull":
						updateAccount(lang.form.anketka.update.title);
						break;
					case "notFound":
						passwordReminder(lang.form.errors.userNotFound);
						break;
					}
			} else {
				jQuery("#jUImsb2").dialog('close');
				messageBoxClear(lang.form.login.title,
						"<h3 class=\"webMessage\">" + lang.form.login.success
								+ "</h3>");// ,true);
				if (jQuery("#modalLoginForm input[name='cc']").attr("checked"))
					location.href = 'ooo.do?acn=cstsl';
				else
					setTimeout("location.reload()", 1500);
			}
		}, "text");
	}
}

function passwordReminder(title) {
	var rForm = "<form name=\"PasswordReminder\" id=\"modalPasswordReminder\" class=\"login-form fanat-form\" onsubmit=\"checkPasswordRecovery();return false;\">"
			+ "<h3 class=\"webMessage\" style=\"margin-bottom:0\">"
			+ lang.form.passwRemind.title
			+ "</h3><h4 id=\"infoBox\"></h4><div><table></tr>"
			+ "<tr><td colspan=\"2\"></td></tr><tr><td><span>"
			+ lang.form.login.login
			+ ":</span></td></tr>"
			+ "<tr><td><input type=\"text\" name=\"uname\" value=\"\" id=\"uname\" class=\"text ui-widget-content ui-corner-all\"><br/>"
			+ "<label for=\"uname\"></label></td></tr></table><div>"
			+ "<input type=\"hidden\" value=\"PasswordReminder\" name=\"func\"></form>";
	if (jQuery("#jUImsbPasswordReminder").attr("title") != null) {
		jQuery("#jUImsbPasswordReminder").html(rForm);
		jQuery("#jUImsbPasswordReminder").dialog("open");
	} else {
		jQuery("body").append(
				"<div id=\"jUImsbPasswordReminder\" title=\"" + title
						+ "\" style=\"display: none;\">" + rForm + "</div>");
		jQuery("#jUImsbPasswordReminder").dialog({
			width : 400,
			modal : true,
			resizable : false,
			buttons : [ {
				text : lang.buttons.cancel,
				click : function() {
					jQuery(this).dialog("close");
				}
			}, {
				text : lang.buttons.send,
				click : function() {
					checkPasswordRecovery();
				}
			} ]
		});
		jQuery("#jUImsbPasswordReminder").dialog("open");
	}
}

function checkPasswordRecovery() {
	var form = jQuery("#modalPasswordReminder");
	var errorLogin = false;
	jQuery("#modalPasswordReminder label[for]").empty();
	var fCheck = jQuery("#modalPasswordReminder input[name='uname']");
	if (fCheck.val().length == 0 && !isValidEmailAddress(fCheck.val())) {
		fCheck.css("border", "1px solid red");
		jQuery("#modalPasswordReminder label[for='uname']").text(
				lang.form.errors.login).css({
			"color" : "red",
			"display" : "block"
		}).show();
		errorLogin = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	if (!errorLogin) {
		messageBoxClear(lang.form.passwRemind.title,
				"<h3 class=\"webMessage\">" + lang.form.passwRemind.process
						+ "</h3>");
		if (form.find("input[name='uname']").val().length > 0
				|| form.find("input[name='email']").val().length > 0) {
			jQuery
					.post(
							"hi.ajax",
							form.serialize(),
							function(data) {
								var alerts = data.split(" ");
								if (alerts[0] != "ok") {
									jQuery("#jUImsb2").dialog('close');
									jQuery("#jUImsbPasswordReminder").dialog(
											"open");
									jQuery("#infoBox").html(" ");
									for ( var i = 0; i < alerts.length; i++)
										switch (alerts[i]) {
										case "notEquals":
											jQuery("#infoBox")
													.append(
															lang.form.passwRemind.errors.notEquals);
											break;
										case "unameNotFound":
											jQuery("#infoBox")
													.append(
															lang.form.passwRemind.errors.unameNotFound);
											break;
										case "emailNotFound":
											jQuery("#infoBox")
													.append(
															lang.form.errors.emailNotFound);
											break;
										case "sendMailError":
											jQuery("#infoBox")
													.append(
															lang.form.passwRemind.errors.sendMailError);
											break;
										}
								} else {
									jQuery("#jUImsb2").dialog('close');
									messageBoxClear(
											lang.form.passwRemind.title,
											"<h3 class=\"webMessage\">"
													+ lang.form.passwRemind.success
													+ "</h3>");
								}
							}, "text");
		}
	}
}

function emailActivate(title) {
	if (jQuery("#jUImsbActivateEmail").attr("title") != null) {
		loadForm("#jUImsbActivateEmail", "activateEmailFR");
		jQuery("#jUImsbActivateEmail").dialog("open");
	} else {
		jQuery("body").append(
				"<div id=\"jUImsbActivateEmail\" title=\"" + title
						+ "\" style=\"display: none;\"></div>");
		loadForm("#jUImsbActivateEmail", "activateEmailFR");
		jQuery("#jUImsbActivateEmail").dialog({
			height : 600,
			width : 550,
			modal : true,
			resizable : false,
			buttons : [ {
				text : lang.buttons.cancel,
				click : function() {
					jQuery(this).dialog("close");
				}
			} ]
		});
		jQuery("#jUImsbActivateEmail").dialog("open");
	}
}

function checkActivateForm() {
	var error = false;
	var form = jQuery("#modalActivateEmailForm");
	jQuery("#modalActivateEmailForm label[for]").empty();
	fCheck = jQuery("#modalActivateEmailForm input[name='oldEmail']");
	if (!isValidEmailAddress(fCheck.attr("value"))) {
		fCheck.css("border", "1px solid red");
		jQuery("#modalActivateEmailForm label[for='oldEmail']").text(
				lang.form.errors.email).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	fCheck = jQuery("#modalActivateEmailForm input[name='activateionCode']");
	if (fCheck.attr("value").length != 32) {
		fCheck.css("border", "1px solid red");
		jQuery("#modalActivateEmailForm label[for='activateionCode']").text(
				lang.form.errors.codeNotCorrect).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	if (!error) {
		jQuery.post("hi.ajax", form.serialize(), function(data) {
			var alerts = data.split(" ");
			if (alerts[0] != "ok") {
				jQuery("#jUImsb2").dialog('close');
				jQuery("#infoBox").html(" ");
				for ( var i = 0; i < alerts.length; i++)
					switch (alerts[i]) {
					case "emailNotFound":
						messageBox(lang.form.emailActivate.error,
								lang.form.errors.emailNotFound, false);
						break;
					case "allredyActivated":
						messageBox(lang.form.emailActivate.error,
								lang.form.errors.emailAllredyActivated, false);
						break;
					case "incorrectKey":
						messageBox(lang.form.emailActivate.error,
								lang.form.errors.codeNotCorrect, false);
						break;
					}
			} else {
				jQuery("#jUImsb2").dialog('close');
				messageBoxClear(lang.form.emailActivate.title,
						"<h3 class=\"webMessage\">"
								+ lang.form.emailActivate.success + "</h3>");
				setTimeout("location.reload()", 3000);
			}
		}, "text");
	}
}

function checkReplayActivate() {
	var error = false;
	var form = jQuery("#modalReplayActivate");
	jQuery("#modalReplayActivate label[for]").empty();
	fCheck = jQuery("#modalReplayActivate input[name='oldEmail']");
	if (!isValidEmailAddress(fCheck.attr("value"))) {
		fCheck.css("border", "1px solid red");
		jQuery("#modalReplayActivate label[for='oldEmail']").text(
				lang.form.errors.email).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	if (!error) {
		jQuery.post("hi.ajax", form.serialize(),
				function(data) {
					var alerts = data.split(" ");
					if (alerts[0] != "ok") {
						jQuery("#jUImsb2").dialog('close');
						jQuery("#infoBox").html(" ");
						for ( var i = 0; i < alerts.length; i++)
							switch (alerts[i]) {
							case "emailNotFound":
								messageBox(lang.form.emailActivate.sendError,
										lang.form.errors.emailNotFound, false);
								break;
							}
					} else {
						jQuery("#jUImsb2").dialog('close');
						messageBoxClear(lang.form.emailActivate.sendTitle,
								"<h3 class=\"webMessage\">"
										+ lang.form.emailActivate.sendSuccess
										+ "</h3>");
						setTimeout("location.reload()", 3000);
					}
				}, "text");
	}
}

function anketka(title) {
	var lForm = "<form style=\"width: 100%;\" id=\"modalAnketkaForm\" name=\"NewUserForm\" onsubmit=\"checkAnketka();return false;\">"
			+ "<div id=\"jUImsbError\" style=\"display: none;\"></div>"
			+ "<table width=\"100%\">"
			+ "<tr><td colspan=\"4\" class=\"textInfo\">"
			+ lang.form.anketka.attention
			+ "</td></tr>"
			+ "<tr><td width=\"\" class=\"Requered\">*</td>"
			+ "<td width=\"200px\">"
			+ lang.form.anketka.lname
			+ ":</td>"
			+ "<td width=\"255px\" style=\"text-align: right\"><input type=\"text\" style=\"width: 243px;\" value=\"\" name=\"lname\" class=\"text ui-widget-content ui-corner-all\"><label for=\"lname\"></label></td>"
			+ "<td><span style=\"color: white;\"></span></td></tr>"
			+ "<tr><td class=Requered>*</td>"
			+ "<td>"
			+ lang.form.anketka.fname
			+ ":</td>"
			+ "<td style=\"text-align: right; width: 255px;\">"
			+ "<input type=\"text\" style=\"width: 243px;\" value=\"\" name=\"fname\" class=\"text ui-widget-content ui-corner-all\"><label for=\"fname\"></label></td>"
			+ "<td><span style=\"color: white;\"></span></td></tr>"
			+ "<tr><td class=Requered>*</td>"
			+ "<td width=\"200px\">"
			+ lang.form.anketka.gender
			+ ":</td>"
			+ "<td width=\"255px\" style=\"text-align: right\">"
			+ "<select style=\"width: 243px;\" name=\"gender\" class=\"select ui-widget-content ui-corner-all\">"
			+ "<option value=1>"
			+ lang.form.anketka.genderm
			+ "</option>"
			+ "<option value=0>"
			+ lang.form.anketka.genderw
			+ "</option>"
			+ "</select><label for=\"gender\"></label></td>"
			+ "<td><span style=\"color: white;\"></span></td></tr>"
			+ "<tr><td class=Requered>*</td>"
			+ "<td width=\"200px\">"
			+ lang.form.anketka.edu
			+ ":</td>"
			+ "<td width=\"255px\" style=\"text-align: right\">"
			+ "<select style=\"width: 243px;\" value=6 name=\"education\" class=\"select ui-widget-content ui-corner-all\">"
			+ "<option value=6>"
			+ lang.form.anketka.edu6
			+ "</option>"
			+ "<option value=7>"
			+ lang.form.anketka.edu7
			+ "</option>"
			+ "<option value=8>"
			+ lang.form.anketka.edu8
			+ "</option>"
			+ "<option value=9>"
			+ lang.form.anketka.edu9
			+ "</option>"
			+ "</select><label for=\"gender\"></label></td>"
			+ "<td><span style=\"color: white;\"></span></td></tr></table>"
			+ "<table width=\"100%\">"
			+ "<tr><td colspan=\"4\" class=\"textInfo\">"
			+ lang.form.anketka.mustCorrectEmail
			+ "</td></tr>"
			+ "<tr><td class=\"Requered\" style=\"vertical-align: top;\">*</td><td style=\"vertical-align: top;\">"
			+ lang.form.anketka.email
			+ ":</td>"
			+ "<td style=\"text-align: right; width: 255px;\"><input type=\"text\" style=\"width: 243px;\" value=\"\" name=\"email\" class=\"text ui-widget-content ui-corner-all\"><br/>"
			+ "<label for=\"email\"></label></td><td></td></tr>"
			+ "<tr><td class=\"Requered\" style=\"vertical-align: top;\">*</td><td width=\"200px\">"
			+ lang.form.anketka.mobTel
			+ ":</td>"
			+ "<td width=\"255px\"><div class=\"anketkaMobileDiv\" style=\"float: right; *float: left; *width: 255px;\"><span class=\"inlineBlockSimbol\">+</span><input type=\"text\" title='"
			+ lang.form.anketka.motTelExample
			+ "' style=\"width: 26px; text-align: right;\" value=\"7\" maxlength=\"3\" name=\"mobileCountryCode\" class=\"text ui-widget-content ui-corner-all\">"
			+ " <input type=\"text\" title='"
			+ lang.form.anketka.motTelExample
			+ "' style=\"width: 26px;\" value=\"\" maxlength=\"3\" name=\"mobileCode\" class=\"text ui-widget-content ui-corner-all\">"
			+ " <input type=\"text\" title='"
			+ lang.form.anketka.motTelExample
			+ "' style=\"width: 175px;\" id=\"jRegistrationMobile3\" value=\"\" maxlength=\"7\" name=\"mobileNomer\" class=\"text ui-widget-content ui-corner-all\"></div><label for=\"mobileNomer\"></label></td>"
			+ "<td id=\"mobCC\"></td></tr>"
			+ "</table>"
			+ "<table><tr><td width=\"300px\">"
			+ lang.form.anketka.accept
			+ " <a class=\"regOffer\" target=\"OFERTA\" href=\"OfferContract.do\">"
			+ lang.form.anketka.offer
			+ "</a><br/><label for=\"offerCheck\"></label></td>"
			+ "<td><input type=\"checkbox\" value=\"on\" name=\"acceptOferta\" class=\"checkbox ui-widget-content ui-corner-all\" id=\"offerCheck\" style=\"border: none;\"></td><td></td></tr></table>"
			+ "<input type=\"hidden\" value=\"********\" name=\"uname\">"
			+ "<input type=\"hidden\" value=\"RegisterAccount\" name=\"func\"></form>";
	if (jQuery("#jUImsbAnketa").attr("title") != null) {
		jQuery("#jUImsbAnketa").attr("title", title).html(lForm);
		jQuery("#jUImsbAnketa").dialog("open");
	} else {
		jQuery("body").append(
				"<div id=\"jUImsbAnketa\" title=\"" + title
						+ "\" style=\"display: none;\">" + lForm + "</div>");
		jQuery("#jUImsbAnketa").dialog({
			width : 500,
			modal : true,
			resizable : false,
			draggable : false,
			buttons : [ {
				text : lang.buttons.registr,
				click : function() {
					checkAnketka();
				}
			}, {
				text : lang.buttons.cancel,
				click : function() {
					jQuery(this).dialog("close");
				}
			} ]
		});
		jQuery("#jUImsbAnketa").dialog("open");
	}
}

function checkAnketka() {
	var form = jQuery("#modalAnketkaForm");
	form.find("label").empty();
	var error = false;
	if (!isNumeric(form.find("input[name='mobileCountryCode']").attr("value"))
			|| !isNumeric(form.find("input[name='mobileCode']").attr("value"))
			|| !isNumeric(form.find("input[name='mobileNomer']").attr("value"))) {
		form.find("label[for='mobileNomer']").text(
				lang.form.errors.mobileFormat).css({
			"color" : "red",
			"display" : "block",
			"float" : "right"
		}).show();
		error = true;
	}
	/*
	 * fCheck = form.find("input[name='passwd']"); var fCheck2 =
	 * form.find("input[name='passwd2']"); if (fCheck.attr("value") !=
	 * fCheck2.attr("value")) { fCheck.css("border", "1px solid red");
	 * fCheck2.css("border", "1px solid red");
	 * form.find("label[for='passwd2']").text(lang.form.errors.passwNotMatch)
	 * .css({ "color" : "red", "display" : "block" }).show(); error = true; }
	 * else { fCheck.css("border", "1px solid #404040"); } fCheck =
	 * form.find("input[name='uname']"); if (fCheck.attr("value").length < 4) {
	 * fCheck.css("border", "1px solid red");
	 * form.find("label[for='uname']").text(lang.form.errors.login).css({
	 * "color" : "red", "display" : "block" }).show(); error = true; } else {
	 * fCheck.css("border", "1px solid #404040"); } fCheck =
	 * form.find("input[name='passwd']"); if (fCheck.attr("value").length < 5) {
	 * fCheck.css("border", "1px solid red");
	 * form.find("label[for='passwd']").text(lang.form.errors.passw).css({
	 * "color" : "red", "display" : "block" }).show(); error = true; } else {
	 * fCheck.css("border", "1px solid #404040"); } fCheck =
	 * form.find("input[name='passwd2']"); if (fCheck.attr("value").length < 5) {
	 * fCheck.css("border", "1px solid red");
	 * form.find("label[for='passwd2']").text(lang.form.errors.passw).css({
	 * "color" : "red", "display" : "block" }).show(); error = true; } else {
	 * fCheck.css("border", "1px solid #404040"); }
	 */
	fCheck = form.find("input[name='mobileCountryCode']");
	if (!isNumeric(fCheck.attr("value"))) {
		fCheck.css("border", "1px solid red");
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	fCheck = form.find("input[name='mobileCode']");
	if (!isNumeric(fCheck.attr("value"))) {
		fCheck.css("border", "1px solid red");
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	fCheck = form.find("input[name='mobileNomer']");
	if (!isNumeric(fCheck.attr("value"))) {
		fCheck.css("border", "1px solid red");
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	fCheck = form.find("input[name='email']");
	if (!isValidEmailAddress(fCheck.attr("value"))) {
		fCheck.css("border", "1px solid red");
		form.find("label[for='email']").text(lang.form.errors.email).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	fCheck = form.find("input[name='lname']");
	if (fCheck.attr("value").length == 0) {
		fCheck.css("border", "1px solid red");
		form.find("label[for='lname']").text(lang.form.errors.required).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	fCheck = form.find("input[name='fname']");
	if (fCheck.attr("value").length == 0) {
		fCheck.css("border", "1px solid red");
		form.find("label[for='fname']").text(lang.form.errors.required).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.css("border", "1px solid #404040");
	}
	if (!form.find("input[name='acceptOferta']").attr("checked")) {
		form.find("label[for='offerCheck']").text(lang.form.errors.mustOffer)
				.css({
					"color" : "red",
					"display" : "block!important"
				}).show();
		error = true;
	}
	if (!error) {
		jQuery("#jUImsbAnketa").dialog("close");
		messageBoxClear(lang.form.anketka.titlesm, "<h3 class=\"webMessage\">"
				+ lang.form.anketka.process + "</h3>", false);
		jQuery
				.post(
						"hi.ajax",
						form.serialize(),
						function(data) {
							var alerts = data.split(" ");
							if (alerts[0] != "ok") {
								jQuery("#jUImsb2").dialog('close');
								jQuery("#jUImsbAnketa").dialog("open");
								for ( var i = 0; i < alerts.length; i++)
									switch (alerts[i]) {
									case "emailExist":
										form.find("input[name='email']").css(
												"border", "1px solid red");
										form
												.find("label[for='email']")
												.text(
														lang.form.errors.userEmailAllreadyRegistered)
												.css({
													"color" : "red",
													"display" : "block"
												}).show();
										break;
									case "emailNotCorrect":
										form.find("input[name='email']").css(
												"border", "1px solid red");
										form.find("label[for='email']").text(
												lang.form.errors.email).css({
											"color" : "red",
											"display" : "block"
										}).show();
										break;
									case "unameExist":
										form.find("input[name='uname']").css(
												"border", "1px solid red");
										form
												.find("label[for='uname']")
												.text(
														lang.form.errors.userLoginAllreadyRegistered)
												.css({
													"color" : "red",
													"display" : "block"
												}).show();
										break;
									case "unameTooLong":
										form.find("input[name='uname']").css(
												"border", "1px solid red");
										form
												.find("label[for='uname']")
												.text(
														lang.form.errors.userLoginTooLong)
												.css({
													"color" : "red",
													"display" : "block"
												}).show();
										break;
									case "unameNotMatch":
										form.find("input[name='uname']").css(
												"border", "1px solid red");
										form
												.find("label[for='uname']")
												.text(
														lang.form.errors.userLoginNotMatch)
												.css({
													"color" : "red",
													"display" : "block"
												}).show();
										break;
									case "mobileFiled":
										form
												.find(
														"input[name='mobileCountryCode'],input[name='mobileCode'],input[name='mobileNomer']")
												.css("border", "1px solid red");
										form.find("label[for='uname']").text(
												lang.form.errors.mobileFormat)
												.css({
													"color" : "red",
													"display" : "block"
												}).show();
									}
							} else {
								jQuery("#jUImsb2").dialog('close');
								messageBoxClear(lang.form.anketka.titlesm,
										"<h3 class=\"webMessage\">"
												+ lang.form.anketka.success
												+ "</h3>");
								setTimeout("location.reload()", 3000);
							}
						}, "text");
	}
}

function addUserAddress(title) {
	if (jQuery("#jUImsbAddUserAddress").attr("title") != null) {
		jQuery("#jUImsbAddUserAddress").attr("title", title);
		loadForm("#jUImsbAddUserAddress", "addressNew");
		jQuery("#jUImsbAddUserAddress").dialog("open");
		setTimeout(autoCompleteAddress, 1000);
	} else {
		jQuery("body").append(
				"<div id=\"jUImsbAddUserAddress\" title=\"" + title
						+ "\" style=\"display: none;\"></div>");
		loadForm("#jUImsbAddUserAddress", "addressNew");
		jQuery("#jUImsbAddUserAddress").dialog({
			height : 620,
			width : 500,
			modal : true,
			resizable : false,
			buttons : [ {
				text : lang.buttons.addAdres,
				click : function() {
					checkAddressForm("new");
				}
			}, {
				text : lang.buttons.cancel,
				click : function() {
					jQuery(this).dialog("close");
				}
			} ]
		});
		jQuery("#jUImsbAddUserAddress").dialog("open");
		setTimeout(autoCompleteAddress, 1000);
	}
}

function changeAddress(key) {
	editUserAddress(lang.form.adress.editTitle, key);
}

function editUserAddress(title, id) {
	if (jQuery("#jUImsbAddUserAddress").attr("title") != null) {
		jQuery("#jUImsbAddUserAddress").attr("title", title);
		loadFormKey("#jUImsbAddUserAddress", "addressEdit", id);
		jQuery("#jUImsbAddUserAddress").dialog("open");
	} else {
		jQuery("body").append(
				"<div id=\"jUImsbAddUserAddress\" title=\"" + title
						+ "\" style=\"display: none;\"></div>");
		loadFormKey("#jUImsbAddUserAddress", "addressEdit", id);
		jQuery("#jUImsbAddUserAddress").dialog({
			height : 620,
			width : 500,
			modal : true,
			resizable : false,
			buttons : [ {
				text : lang.buttons.editAdres,
				click : function() {
					checkAddressForm("edit");
				}
			}, {
				text : lang.buttons.cancel,
				click : function() {
					jQuery(this).dialog("close");
				}
			} ]
		});
		jQuery("#jUImsbAddUserAddress").dialog("open");
	}
	setTimeout(autoCompleteAddress, 1000);
}

function checkAddressForm(addOrEdit) {
	var mess1, mess2;
	if (addOrEdit == "new") {
		mess1 = lang.form.adress.addTitle;
		mess2 = lang.form.adress.successAdd;
	} else {
		mess1 = lang.form.adress.editTitle;
		mess2 = lang.form.adress.successEdit;
	}
	var error = false;
	var form = jQuery("#modalAddressForm");
	fCheck = form.find("input[name='country']");
	if (fCheck.attr("value").length == 0) {
		fCheck.parent().addClass("jNiceInputInnerError").parent().addClass(
				"jNiceInputWrapperError");
		jQuery("#modalAddressForm label[for='country']").text(
				lang.form.errors.required).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.parent().removeClass("jNiceInputInnerError").parent()
				.removeClass("jNiceInputWrapperError");
	}
	fCheck = form.find("input[name='cityVisibleName']");
	if (fCheck.attr("value").length == 0) {
		fCheck.parent().addClass("jNiceInputInnerError").parent().addClass(
				"jNiceInputWrapperError");
		jQuery("#modalAddressForm label[for='cityVisibleName']").text(
				lang.form.errors.required).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.parent().removeClass("jNiceInputInnerError").parent()
				.removeClass("jNiceInputWrapperError");
	}
	fCheck = form.find("input[name='streetName']");
	if (fCheck.attr("value").length == 0) {
		fCheck.parent().addClass("jNiceInputInnerError").parent().addClass(
				"jNiceInputWrapperError");
		jQuery("#modalAddressForm label[for='streetName']").text(
				lang.form.errors.required).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.parent().removeClass("jNiceInputInnerError").parent()
				.removeClass("jNiceInputWrapperError");
	}
	fCheck = form.find("input[name='metroVisibleName']");
	if (fCheck.attr("value").length == 0) {
		fCheck.parent().addClass("jNiceInputInnerError").parent().addClass(
				"jNiceInputWrapperError");
		jQuery("#modalddressForm label[for='metroVisibleName']").text(
				lang.form.errors.required).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.parent().removeClass("jNiceInputInnerError").parent()
				.removeClass("jNiceInputWrapperError");
	}
	fCheck = form.find("input[name='house']");
	if (fCheck.attr("value").length == 0) {
		fCheck.parent().addClass("jNiceInputInnerError").parent().addClass(
				"jNiceInputWrapperError");
		jQuery("#modalAddressForm label[for='house']").text(
				lang.form.errors.required).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.parent().removeClass("jNiceInputInnerError").parent()
				.removeClass("jNiceInputWrapperError");
	}
	fCheck = jQuery("#modalAddressForm input[name='flat']");
	if (fCheck.attr("value").length == 0) {
		fCheck.parent().addClass("jNiceInputInnerError").parent().addClass(
				"jNiceInputWrapperError");
		jQuery("#modalAddressForm label[for='flat']").text(
				lang.form.errors.required).css({
			"color" : "red",
			"display" : "block"
		}).show();
		error = true;
	} else {
		fCheck.parent().removeClass("jNiceInputInnerError").parent()
				.removeClass("jNiceInputWrapperError");
	}
	if (!error) {
		jQuery("#jUImsbAddUserAddress").dialog("close");
		messageBoxClear(lang.form.adress.addProcess,
				"<h3 class=\"webMessage\">" + mess1 + "</h3>", false);
		jQuery.post("hi.ajax", form.serialize(), function(data) {
			var alerts = data.split(" ");
			if (alerts[0] != "ok") {
				jQuery("#jUImsb2").dialog('close');
				jQuery("#jUImsbAddUserAddress").dialog("open");
				for ( var i = 0; i < alerts.length; i++)
					alert(alerts[i]);
				// switch(alerts[i]){
				// break;
				// }
			} else {
				jQuery("#jUImsb2").dialog('close');
				messageBoxClear(lang.form.adress.addProcess,
						"<h3 class=\"webMessage\">" + mess2 + "</h3><br/>"
								+ lang.waitUpdate);
				setTimeout("location.reload()", 3000);
			}
		}, "text");
	}
}

function autoCompleteAddress() {
	jQuery(function() {
		var form = jQuery("#modalAddressForm");
		if (form.find("input[name='country']").val().length == 0) {
			form
					.find(
							"input[name='cityVisibleName'], input[name='streetName'], input[name='metroVisibleName']")
					.attr("disabled", true);
			autoCompleteCountry();
		} else if (form.find("input[name='cityVisibleName']").val().length == 0) {
			form.find(
					"input[name='streetName'], input[name='metroVisibleName']")
					.attr("disabled", true);
			autoCompleteCountry();
			autoCompleteCity();
		} else {
			form.find(
					"input[name='streetName'], input[name='metroVisibleName']")
					.removeAttr("disabled");
			autoCompleteCountry();
			autoCompleteCity();
			autoCompleteStreet();
			autoCompleteMetro();
		}
	});
}

function autoCompleteCountry() {
	jQuery("#modalAddressForm input[name='country']").removeAttr("disabled").change(function(){
		if($(this).val().length==0)
			jQuery("#modalAddressForm input[name='cityVisibleName']").attr("disabled","disabled");
		else
			autoCompleteCity();
	}).autocomplete({
		source : "AddressAutoComplete?to=country",
		minLength : 2,
		select : function() {
			autoCompleteCity();
		}
	});
}

function autoCompleteCity() {
	var country = encodeUtf8(jQuery("#modalAddressForm input[name='country']")
			.val());
	jQuery("#modalAddressForm input[name='cityVisibleName']").removeAttr(
			"disabled")/*.result(function() {
		if($(this).val().length==0){
			jQuery("#modalAddressForm input[name='streetName']").attr("disabled","disabled");
			jQuery("#modalAddressForm input[name='metroVisibleName']").attr("disabled","disabled");
		}else{
			autoCompleteStreet();
			autoCompleteMetro();
		}
		return true;
	})*/.autocomplete({
		source : "AddressAutoComplete?to=city&country=" + country,
		minLength : 2,
		select : function() {
			autoCompleteStreet();
			autoCompleteMetro();
		}
	});
}

function autoCompleteStreet() {
	var city = encodeUtf8(jQuery(
			"#modalAddressForm input[name='cityVisibleName']").val());
	jQuery("#modalAddressForm input[name='streetName']").removeAttr("disabled");
	jQuery("#modalAddressForm input[name='streetName']").autocomplete({
		source : "AddressAutoComplete?to=street&city=" + city,
		minLength : 2
	}).focus(function() {
		if (city.lenght > 2)
			jQuery(this).attr("disabled", true);
	});
}

function autoCompleteMetro() {
	var city = encodeUtf8(jQuery(
			"#modalAddressForm input[name='cityVisibleName']").val());
	jQuery("#modalAddressForm input[name='metroVisibleName']").removeAttr(
			"disabled");
	jQuery("#modalAddressForm input[name='metroVisibleName']").autocomplete({
		source : "AddressAutoComplete?to=metro&city=" + city,
		minLength : 2
	}).focus(function() {
		if (city.lenght > 2)
			jQuery(this).attr("disabled", true);
	});
}

function isNumeric(value) {
	if (value.match(/^\d+$/) == null)
		return false;
	else
		return true;
}

function isValidEmailAddress(emailAddress) {
	var pattern = new RegExp(
			/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
	return pattern.test(emailAddress);
}

function checkAddressForDostavka() {
	var selected = jQuery(
			"form[name='AddressSelectDynamicForm'] input[name='defaultAddress']:radio:checked")
			.val();
	if (selected == null || selected.lenght == 0) {
		jQuery(
				"form[name='AddressSelectDynamicForm'] input[name='defaultAddress']:first")
				.attr("checked", "checked");
	}
}

function dostavkaAlert() {
	// var form = jQuery("form[name='AddressSelectDynamicForm']");
	return true;
}

function selectPointOfDostavka(value) {
	var element = jQuery("#AddressSelectDynamicForm input[name='defaultPointOfDostavka'][value='"
			+ value + "']");
	element.attr("checked", "checked");
}

function showPoints(pointClass) {
	jQuery("tr[class*='Point']").hide();
	jQuery("td[class*='ImagePoint']").attr("rowspan", 2);
	jQuery("." + pointClass).css("display", "table-row");
	jQuery(".Image" + pointClass).attr("rowspan",
			jQuery("." + pointClass).size() + 2);
}

function showPointsDiv(pointClass) {
	jQuery("div[class*='Point']").hide();
	jQuery("." + pointClass).show();
	jQuery("[name='payType']").removeAttr('checked');
}

function encodeUtf8(s) {
	return encodeURIComponent(s);
}
function decodeUtf8(s) {
	return decodeURIComponent(s);
}
function calendarSetup(field, format) {
	format = format == undefined ? 'dd-mm-yy' : format;
	if (field.get(0) != undefined)
		field.datepicker({
			dateFormat : format,
			yearRange : '-100:+0',
			changeYear : true,
			monthNames : lang.date.monthNames,
			dayNamesMin : lang.date.dayNamesMin
		});
}

/**
 * Установить язык отображения страницы
 * 
 * @param lang
 * @return
 */
function setLang(language) {
	jQuery.post("hi.ajax", {
		language : language,
		func : "changeLocate"
	}, function(data) {
		var alerts = data.split(" ");
		if (alerts[0] != "ok") {
			jQuery("#jUImsb2").dialog('close');
			jQuery("#jUImsbAddUserAddress").dialog("open");
			for ( var i = 0; i < alerts.length; i++)
				alert(alerts[i]);
		} else {
			jQuery("#jUImsb2").dialog('close');
			messageBoxClear("Reloading", "<h3 class=\"webMessage\"></h3><br/>"
					+ lang.waitUpdate);
			location.href='lang.do?l='+language;
			//setTimeout("location.reload()", 1000);
		}
	}, "text");
}

function group(it, by) {
	var vidId = "";
	var playerId = "";
	var objectId = "";
	dateFrom = "";
	dateTo = "";
	$("#actions-groups")
			.slideUp(
					1000,
					function() {
						if (it != undefined) {
							if ($(it).attr("class") == 'filter-header') {
								$(".filter-header-selected").attr("class",
										"filter-header");
								$(it).attr("class", "filter-header-selected");
								$("[name='groupBy']").val(by);
							}
							if ($(it).find("[name='vidId']").val() != undefined) {
								vidId = "&vidId="
										+ $(it).find("[name='vidId']").val();
								by = $(it).find("[name='groupBy']").val();
							}
							if ($(it).find("[name='playerId']").val() != undefined) {
								vidId = "&playerId="
										+ $(it).find("[name='playerId']").val();
								by = $(it).find("[name='groupBy']").val();
							}
							if ($(it).find("[name='objectId']").val() != undefined) {
								vidId = "&objectId="
										+ $(it).find("[name='objectId']").val();
								by = $(it).find("[name='groupBy']").val();
							}
						} else {
							by = $("[name='groupBy']").val();
						}
						if ($("[name='dateFrom']").val().length > 0)
							dateFrom = "&dateFrom="
									+ $("[name='dateFrom']").val();
						if ($("[name='dateTo']").val().length > 0)
							dateTo = "&dateTo=" + $("[name='dateTo']").val();
						$(this)
								.load(
										"actions.do?groupBy=" + by + dateFrom
												+ dateTo + vidId + playerId
												+ objectId + " #actions-groups",
										function() {
											$(this)
													.slideDown(
															1000,
															function() {
																if ($(
																		"#actions-groups div.actions-group")
																		.size() == 1) {
																	var count = $(
																			"#actions-groups div.actions-group div.action-info")
																			.size();
																	var coef = count / 3;
																	count = (count - (count % 3)) / 3;
																	if (coef > 1)
																		for ( var i = 0; i < count; i++)
																			$(
																					"#actions-groups div.actions-group")
																					.animate(
																							{
																								height : 'toggle',
																								height : '+=' + 180
																							},
																							1000);
																}
															});
										});
					});
}

function getDate() {
	var m = lang.date.monthNames;
	var w = lang.date.dayNamesMax;
	var d = new Date();
	return (d.getDate() + " " + m[d.getMonth()] + " " + d.getFullYear() + ", "
			+ w[d.getDay() - 1] + ", " + d.getHours())
			+ (d.getMinutes() < 10 ? ":0" : ":") + d.getMinutes();
}

function createClubCard(
		reload /* 0/1/ХЗ-целиком страницу (по умолчанию), 2-только див, */,
		divId/* по умолчанию club-cards */) {
	messageBoxClear(lang.form.clubCard.title, lang.form.clubCard.process);
	jQuery.post("hi.ajax", {
		func : "createClubCard"
	}, function(data) {
		var alerts = data.split(" ");
		if (alerts[0] != "ok") {
			jQuery("#jUImsb2").dialog('close');
			for ( var i = 0; i < alerts.length; i++) {
				switch (alerts[i]) {
				case "errorAnketa":
					updateAccount(lang.form.clubCard.accUpdate, true);
					break;
				default:
					alert(alerts[i]);
					break;
				}
			}
		} else {
			jQuery("#jUImsb2").dialog('close');
			location.href = "ooo.do?acn=cinform";
		}
	}, "text");
}

function applyDiscount(actionId, seatBlocId, plaseRow, plaseNumber, discountId) {
	messageBoxClear(lang.form.clubCard.title, lang.form.clubCard.discount);
	jQuery.post("hi.ajax", {
		func : "applyDiscount",
		actionId : actionId,
		seatBlocId : seatBlocId,
		plaseRow : plaseRow,
		plaseNumber : plaseNumber,
		discountId : discountId
	}, function(data) {
		location.reload(true);
	}, "text");
}

function ccActivate(val, ccId) {
	var val = jQuery("[name='bcode']").val();
	var ccId = jQuery(" [name='ccId']").val();
	if (val == undefined || val.length == 0 || val == undefined
			|| val.length == 0) {
		messageBox(lang.form.errors.error, lang.form.clubCard.activateCode);
	}
	messageBoxClear(lang.form.clubCard.title,
			lang.form.clubCard.activateProcess);
	jQuery.post("hi.ajax", {
		func : "ccActivate",
		bcode : val,
		ccId : ccId
	}, function(data) {
		jQuery("#jUImsb2").dialog('close');
		var alerts = data.split(" ");
		if (alerts[0] == "ok") {
			messageBoxClear(lang.form.clubCard.title,
					lang.form.clubCard.activateSuccess);
			location.reload(true);
		} else
			showError(alerts);
	}, "text");
}

function showError(alerts) {
	for ( var i = 0; i < alerts.length; i++)
		switch (alerts[i]) {
		case "errorCCBCode":
			messageBox(lang.form.clubCard.title,
					lang.form.clubCard.activateError);
			break;
		case "errorSql":
			messageBox(lang.form.errors.error,
					lang.form.clubCard.activateProcessError);
			break;
		case "":
			break;
		default:
			alert(alerts[i]);
			break;
		}
}

var hi = {
	loader:{
		wrap:undefined,
		reload:function(is){
			if(hi.loader.wrap&&!is)
				$("#"+hi.loader.wrap).load(location.href+" #"+hi.loader.wrap);
			else
				location.reload();
		},
		load:function(url,is){
			if(hi.loader.wrap&&!is)
				$("#"+hi.loader.wrap).load(url+" #"+hi.loader.wrap);
			else
				location.href=url;
		}
	},
	loadAR : function(data) {
		return eval(data);
	},
	seats : {
		wait : false,
		actionId : 0,
		sectorId : 0,
		sid : '',
		init : function(actionId, sectorId, sid) {
			this.actionId = actionId;
			this.sectorId = sectorId;
			this.sid = sid;
			var maxY = 0;
			$("#ShowSeatBlock div").each(function() {
				var tmp = $(this).position().left + 30 + 5;
				maxY = tmp > maxY ? tmp : maxY;
			});
			$('#wait-hover').css({
				width : $('#ShowSeatBlock').width()
						+ parseInt($('#ShowSeatBlock').css(
								'border-left-width')) * 2,
				height : $('#ShowSeatBlock').height()
						+ parseInt($('#ShowSeatBlock').css(
								'border-left-width')) * 2
			});
			this.load();
		},
		initv2 : function(actionId, sectorId, sid) {
			this.actionId = actionId;
			this.sectorId = sectorId;
			this.sid = sid;
			var maxY = 0;
			$("#ShowSeatBlock div").each(function() {
				var tmp = $(this).position().left + 30 + 5;
				maxY = tmp > maxY ? tmp : maxY;
			});
			$('#wait-hover').css({
				width : $('#ShowSeatBlock').width()
						+ parseInt($('#ShowSeatBlock').css(
								'border-left-width')) * 2,
				height : $('#ShowSeatBlock').height()
						+ parseInt($('#ShowSeatBlock').css(
								'border-left-width')) * 2
			});
			this.load();
		},
		load : function() {
			this.wait = true;
			hi.ui.hover.show();
			$.post("hi.ajax", {
				func : 'sload',
				actionId : this.actionId,
				sectorId : this.sectorId,
				SID : this.sid
			}, function(data) {
				data = hi.loadAR(data);
				if (data.code_ == data.HTTP_OK)
					for (i in data.value_)
						try{
							var val = data.value_[i];
							if (val.name_.substring(0, 2) == 's_')
								$("#" + val.name_).css({
									backgroundColor : val.color_
								}).attr("class", "avalibleSeatDiv");
							else
								$("#" + val.name_.substring(1, val.name_.length))
										.css({
											backgroundColor : val.color_
										}).attr("class", "selectedSeatDiv");
					}catch(ex){
						
					}
				else
					alert(data.message_);
				hi.seats.inZakaz.get();
			}, 'text');
		},
		select : function(seat) {
			if (!this.wait) {
				this.wait = true;
				hi.ui.hover.show();
				if (seat.className == 'avalibleSeatDiv') {
					operType = 1;
				} else if (seat.className == 'selectedSeatDiv') {
					operType = 2;
				} else {
					$('#wait-hover').css({
						display : 'none'
					});
					return;
				}
				$.post("hi.ajax", {
					func : 'sselect',
					actionId : this.actionId,
					sectorId : this.sectorId,
					SID : this.sid,
					seatId : seat.id,
					operType : operType
				}, function(data) {
					data = hi.loadAR(data);
					if (data.code_ == data.HTTP_OK)
						if (operType == 1)
							$(seat).attr('class', 'selectedSeatDiv');
						else
							$(seat).attr('class', 'avalibleSeatDiv');
					else if (data.code_ == data.HTTP_TIMEOUT)
						loginForm(lang.form.errors.sessionExpired);
					else if (data.code_ == data.HTTP_FORBIDDEN)
						switch (data.errorCode_) {
						case 13:
							loginForm(lang.form.errors.loginForBooking);
							break;
						case 14:
							updateAccount(lang.updateAccount.title);
							break;
						case 15:
							updateAccount(lang.updateAccount.title);
							break;
						case 5000:
							messageBox("Ошибка", data.message_ + " "
									+ data.value_);
							break;
						}
					else if (data.code_ == data.HTTP_EXCEPTION) {
						if(data.errorCode_!=5001)
							$(seat).attr('class', 'seatDiv').css("backgroundColor","");
						messageBox("Ошибка",data.message_ + " " + data.value_);
					}
					hi.seats.inZakaz.get();
				}, 'text');
			}
		},
		fselect : function(count) {
			if (!this.wait) {
				this.wait = true;
				hi.ui.hover.show();
				$.post("hi.ajax", {
					func : 'fsselect',
					actionId : this.actionId,
					sectorId : this.sectorId,
					SID : this.sid,
					seatId : count
				}, function(data) {
					data = hi.loadAR(data);
					if (data.code_ != data.HTTP_OK)
						if (data.code_ == data.HTTP_TIMEOUT)
							loginForm(lang.form.errors.sessionExpired);
						else if (data.code_ == data.HTTP_FORBIDDEN)
							switch (data.errorCode_) {
							case 13:
								loginForm(lang.form.errors.loginForBooking);
								break;
							case 14:
								updateAccount(lang.updateAccount.title);
								break;
							}
						else
							alert(data.message_ + " " + data.value_);
					hi.seats.inZakaz.get();
				}, 'text');
			}
		},
		inZakaz : {
			wrapper:function(data){
				var html='<table class="showSeatTableSeatList">';
				var price=0,fee=0,seat=0,odd='OddRow';
				if(data.code_=data.HTTP_OK)
						for(var i=0;i<data.value_.seatCount_;i++){
							var seat=data.value_.seatList_[i];
							var odd=i%2==0?'OddRow':'EvenRow';
							if(seat.actionId_==hi.seats.actionId&&seat.seatBlocId_==hi.seats.sectorId){
								html+='<tr class="'+odd
									+' showSeatListRown"><td class="'+odd+' showSeatListTdRown">'+lang.tickets.row+': '+seat.plaseRow_
									+'</td><td class="'+odd+' showSeatListTdPlace">'+lang.tickets.place+': '+seat.plaseNumber_
									+'</td><td class="'+odd+' showSeatListTdPrice">'+lang.tickets.price+': '+seat.placePrice_
									+' '+lang.currency+'.</td><td class="'+odd+' showSeatListTdDelete"><form action="DeleteSeatFromZakaz.do" method="post" name="DeleteSeatFromZakazForm"><input type="hidden" value="'+seat.actionId_
									+'" name="actionId"><input type="hidden" value="'+seat.seatBlocId_+'" name="seatBlocId"><input type="hidden" value="'+seat.plaseRow_
									+'" name="rowN"><input type="hidden" value="'+seat.plaseNumber_+'" name="seatN"><input type="image" title="'+lang.tickets.delseat+'" class="inputImageButton" src="http://images.arena-market.ru/misc/del_smal.png" name=""></form></td></tr>';
								price+=seat.placePrice_;
								fee+=seat.placePrice_*seat.bronPriceChange_/100;
							}else 
								data.value_.seatCount_-=1;
						}
				html+='<tr><td colspan="4" class="InfoArea"><span class="label-tickets-count">'+lang.tickets.selectedTickets+'</span> '+data.value_.seatCount_
					+' <span class="label-tickets-price">'+lang.cart.summ+':</span> '+price+' '+lang.currency+'.</td></tr><tr class="showSeatListTrFee"><td colspan="4" class="InfoArea ">'+lang.tickets.feeSumm+' '+fee
					+' '+lang.currency+'.</td></tr></table>';
				$("#ZakazSeatList").html(html);
				$("#orderButton").removeClass("blackButton")
						.removeClass("true").removeClass("false").removeClass(
								"blackButtonDis");
				if (data.value_.seatCount_ > 0) {
					$("#orderButton").removeAttr("disabled");
					$("#orderButton").addClass("blackButton").addClass("true");
				} else {
					$("#orderButton").attr("disabled", "true");
					$("#orderButton").addClass("blackButtonDis").addClass(
							"false");
				}
				hi.ui.hover.hide();
				hi.seats.wait = false;
				hi.shopcart();
			},
			wrapperV1:function(data){
				var html='',price=0,fee=0,seat,seats=new Array(),count=0,isFreeSeat=false;;
				if (data.code_ = data.HTTP_OK)
					for ( var i = 0; i < data.value_.seatCount_; i++) {
						seat = data.value_.seatList_[i];
						if (seat.actionId_ == hi.seats.actionId
								&& seat.seatBlocId_ == hi.seats.sectorId) {
							if (!seats[seat.plaseRow_])
								seats[seat.plaseRow_] = new Array();
							isFreeSeat=seat.freeSeat_;
							seats[seat.plaseRow_][seats[seat.plaseRow_].length] = seat;
							price += seat.placePrice_;
							fee += seat.placePrice_ * seat.bronPriceChange_ / 100;
						}
					}
				for ( var i in seats) {
					html = (html.length > 0 ? html.substr(0, html.length - 2) + "; " : "")
						+ "<br/>ряд: " + i + ", "
						+ (seats[i].length > 1 ? "места" : "место") + ": ";
					for ( var j in seats[i]){
						html += seats[i][j].plaseNumber_ + ", ";
						count++;
					}
				}
				html=html.length>2&&!isFreeSeat?
					html.substr(0,html.length-2):
						isFreeSeat&&count>0?(count+" "+(count<2?"билет":count<5?"билета":"билетов")):"нет";
				$("#sector-seats").html(html);
				$("#sector-price").html(price + fee + "руб.")
				$("#sector-priceandfee").html(fee + "руб.");

				$("#orderButton").removeClass("blackButton").removeClass("true")
						.removeClass("false").removeClass("blackButtonDis");
				if (data.value_.seatCount_ > 0) {
					$("#orderButton").removeAttr("disabled");
					$("#orderButton").addClass("blackButton").addClass("true");
				} else {
					$("#orderButton").attr("disabled", "true");
					$("#orderButton").addClass("blackButtonDis").addClass("false");
				}
				hi.ui.hover.hide();
				hi.seats.wait = false;
				hi.shopcart();
			},
			get:function() {
				$.post("hi.ajax", {
					func : "seatinzakaz"
				}, function(transport) {
					var data=eval(transport);
					hi.seats.inZakaz.wrapper(data);
				}, "text");
			}
		},
		remove:function(actionId,sectorId,placeRN,placeSN){
			if(actionId)
				$.post("hi.ajax", {
					func : 'placeRemove',
					actionId:actionId,
					sectorId:sectorId,
					rowN:placeRN,
					seatN:placeSN
				}, function(data) {
					data = hi.loadAR(data);
					if (data.code_ != data.HTTP_OK)
						if (data.code_ == data.HTTP_TIMEOUT)
							loginForm(lang.form.errors.sessionExpired);
						else if (data.code_ == data.HTTP_FORBIDDEN)
							switch (data.errorCode_) {
							case 13:
								loginForm(lang.form.errors.loginForBooking);
								break;
							case 14:
								updateAccount(lang.updateAccount.title);
								break;
							}
						else
							alert(data.message_ + " " + data.value_);
					if(data.value_=="reload")
						hi.loader.reload(true);
					hi.loader.reload();
				}, 'text');
			return(false);
		}
	},
	f : {
		login : function(ofsite, showMessage, clubCard) {
			loginForm(lang.form.login.title, ofsite, showMessage, clubCard);
		},
		reg : function() {
			anketka(lang.form.anketka.title);
		},
		adra : function() {
			addUserAddress(lang.form.adress.addTitle);
		},
		adre : function(id) {
			editUserAddress(lang.form.adress.editTitle, id);
		}
	},
	editor : function(selector) {
		$(selector)
				.tinymce(
						{
							script_url : 'http://images.arena-market.ru/js/tiny_mce/tiny_mce.js',
							mode : "textareas",
							theme : "advanced",
							plugins : "codeprotect,autolink,lists,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
							theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizeselect",
							theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
							theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
							theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,spellchecker,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,blockquote,pagebreak,|,insertfile,insertimage",
							theme_advanced_toolbar_location : "top",
							theme_advanced_toolbar_align : "left",
							theme_advanced_statusbar_location : "bottom",
							theme_advanced_resizing : true,
							skin : "o2k7",
							skin_variant : "silver",
							template_external_list_url : "js/template_list.js",
							external_link_list_url : "js/link_list.js",
							external_image_list_url : "js/image_list.js",
							media_external_list_url : "js/media_list.js"
						});
	},
	ui:{
		autoscroll:function(o){
			$(o).mousemove(function(e){
				this.scrollLeft=(this.scrollWidth-$(this).width())*((e.pageX-$(this).offset().left)/$(this).width());
				this.scrollTop=(this.scrollHeight-$(this).height())*((e.pageY-$(this).offset().top)/$(this).height());
			});
		},hover:{
			init:function(selector){
				$("#wait-hover").css({
					width : $(selector).width()
							+ parseInt($(selector).css(
									'border-left-width'))+parseInt($(selector).css(
									'border-right-width'))+parseInt($(selector).css(
									'padding-left'))+parseInt($(selector).css(
									'padding-right')),
					height : $(selector).height()
							+ parseInt($(selector).css(
							'border-top-width'))+parseInt($(selector).css(
							'border-bottom-width'))+parseInt($(selector).css(
							'padding-top'))+parseInt($(selector).css(
							'padding-bottom'))
				});
			},
			show:function(){$("#wait-hover").show();},
			hide:function(){$("#wait-hover").hide();}
		}
	},shopcart:function(){
		$.get("hi.ajax",{func:"s-cart"},function(data){
			data=eval(data);
			if(data.value_.seatCount_>0)
				$("#s-cart").html("<span><a href='showZakaz.do'>"+lang.cart.inCart+"</a> "+data.value_.seatCount_+" "+(data.value_.seatCount_==1?lang.cart.ticket:data.value_.seatCount_>4?lang.cart.tickets:lang.cart.ticketa)+" <span>"+lang.cart.summ+"</span> "+data.value_.seatPrice_+" руб.</span>");
			else
				$("#s-cart").html("<span>"+lang.cart.empty+"</span>");},"text");
	}
};

var registration = {
	form : "",
	input : function(inpName) {
		return registration.form + "input[name='" + inpName + "']";
	},
	autocountry : function() {
		// var cache = {};
		jQuery(registration.input("countryName")).autocomplete({
			source : "hi.ajax?func=autocomplete&to=country",
			minLength : 2,
			select : function() {
				registration.autocity();
			},
			change : function() {
				registration.autocity();
			}
		});
		if (jQuery(registration.input("countryName")).val() != "")
			registration.autocity();
	},
	autocity : function() {
		// var cache = {};
		var country = encodeUtf8(jQuery(registration.input("countryName"))
				.val());
		jQuery(registration.input("cityName")).removeAttr("disabled");
		jQuery(registration.input("cityName")).autocomplete({
			source : "hi.ajax?func=autocomplete&to=city&country=" + country,
			minLength : 2,
			select : function() {
				registration.autoregion();
			},
			change : function() {
				registration.autoregion();
			}
		});
		if (jQuery(registration.input("cityName")).val() != "")
			registration.autoregion();
	},
	autoregion : function() {
		$.get("hi.ajax", {
			func : "autocomplete",
			to : "region",
			term : "",
			country : jQuery(registration.input("countryName")).val(),
			city : jQuery(registration.input("cityName")).val()
		}, function(data) {
			var regs = eval(data);
			if (regs.length > 0)
				jQuery(registration.input("regionName")).val(regs[0]);
		}, "text");
		jQuery(registration.input("regionName")).removeAttr("disabled");
		jQuery(registration.input("regionName")).autocomplete({
			source : "hi.ajax?func=autocomplete&to=region",
			minLength : 2,
			select : function() {
			},
			change : function() {
			}
		});
	}
};
