function addClass(target, classValue) {
	if (!hasClass(target, classValue))
		if (target.className == "")
			target.className = classValue;
		else
			target.className += " " + classValue;
	return true;
};

function removeClass(target, classValue) {
	var removedClass = target.className;
	var pattern = new RegExp("(^| )" + classValue + "( |$)");
	removedClass = removedClass.replace(pattern, "$1");
	removedClass = removedClass.replace(/ $/, "");
	target.className = removedClass;
	return true;
};

function hasClass(target, classValue) {
	var pattern = new RegExp("(^| )" + classValue + "( |$)");    
	if (target.className.match(pattern))
		return true;
	return false;
};

function load_page(page) {
	location.href = page;
}

function sendAjaxMail() {
	var frm = document.getElementById("question");

	if(frm.cname.value == '') {
		alert('Поле "Имя" не заполнено!');
	} else if (frm.cemail.value == '') {
		alert('Поле "Email" не заполнено!');
	} else if (!frm.cemail.value.match(/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9_-]+\.[a-zA-Z0-9_.-]+$/)) {
		alert("Поле \"Email\" заполнено некорректно!");
	} else {
		var xmlreq;

		if(window.XMLHttpRequest){
			xmlreq = new XMLHttpRequest();
			if(xmlreq.overrideMimeType){
				xmlreq.overrideMimeType('text/xml');
			}
		} else if(window.ActiveXObject){
			try{
				xmlreq = new ActiveXObject("Msxml2.XMLHTTP");
			} catch(e) {
				try{
					xmlreq=new ActiveXObject("Microsoft.XMLHTTP");
				} catch(e){
					
				}
			}
		}

		xmlreq.onreadystatechange = 
		function() {
			if(xmlreq.readyState == 4) {
				if(xmlreq.status == 200) {
					xmlreq.responseText.match(/<ok \/>/);
					var status = document.getElementById("mail_status");
					status.innerHTML = "Письмо отправлено";
				} else {
					alert("Ошибка");
				}
			}
		}

		var date = new Date();
		var timestamp = date.getTime();

		var query = "cname=" + encodeURIComponent(frm.cname.value);
		query += "&cemail=" + encodeURIComponent(frm.cemail.value);
		query += "&ctel=" + encodeURIComponent(frm.ctel.value);
		query += "&cpost=" + encodeURIComponent(frm.cpost.value);
		query += "&timestamp=" + encodeURIComponent(timestamp);

		xmlreq.open("POST", "/send_message/", true);
		xmlreq.setRequestHeader("Content-Type", "text/html; charset=utf-8");
		xmlreq.setRequestHeader("Content-length", query.length);
		xmlreq.setRequestHeader("Connection", "close");
		xmlreq.send(query);
		var status = document.getElementById("mail_status");
		status.innerHTML = "<img src='/site_media/img/ajax_loader.gif' alt='Письмо отправляется'/>"
	}
}

function map() {
	var map = document.getElementById('map_big');
	if (hasClass(map, "display")) {
		removeClass(map, "display");
	} else {
		addClass(map, "display");
	}
}