var snap;
var timer = 0;
var ajax;
var monitor;
var t;
var mode;
var memory;

function loadXMLDoc(url,mode,pnum) {
    if (window.XMLHttpRequest) 
	{
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange;
        req.open("POST", url, true);
		req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
        req.send("mode="+mode+"&id="+pnum);
    } 
	else if (window.ActiveXObject) 
	{
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) 
		{
            req.onreadystatechange = processReqChange;
            req.open("POST", url, true);
			req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
            req.send("id="+pnum);
        }
    }
}

function processReqChange() 
{   
    if (req.readyState == 4 && req.status == 200) 
	{
		document.getElementById('post_'+memory).innerHTML = req.responseText;
		SetBorders();
    }  
}

function f_edit(pnum) {
memory = pnum;	
loadXMLDoc('/scripts/fajax.php','edit',memory);
}

function f_delete(pnum) {
memory = pnum;	
loadXMLDoc('/scripts/fajax.php','delete',memory);
}

function isValidEmail(email, strict)
{
 	if (!strict) email = email.replace(/^\s+|\s+$/g, '');
 	return (/^([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}$/i).test(email);
}

function isValidPassword(pass)
{
	return (/[a-zA-Z0-9@\.]/).test(pass);
}

function AJAX_create(url) {
    if (window.XMLHttpRequest) {
       	ajax = new XMLHttpRequest();
        ajax.onreadystatechange = AJAX_read;
        ajax.open("GET", url, true);
        ajax.send(null);
    } else if (window.ActiveXObject) {
        ajax = new ActiveXObject("Microsoft.XMLHTTP");
        if (ajax) {
            ajax.onreadystatechange = AJAX_read;
            ajax.open("GET", url, true);
            ajax.send();
        }
    }
}

function AJAX_read() {   
    if (ajax.readyState == 4)
	{
        if (ajax.status == 200) {
		if (monitor) 	 document.getElementById("cart_monitor").innerHTML = ajax.responseText;	
		if (mode==1)     document.getElementById("comments").innerHTML    = ajax.responseText;			
        } 
		else {
        alert("Не удалось получить данные:\n" + ajax.statusText);
        }
    }  
}

function AJAX_getpage(id,page)
{
	mode = 1;
	AJAX_create('/scripts/ajax.php?id='+id+'&mode='+mode+'&page='+page);
}

function BasketExe(params)
{
AJAX_create('/scripts/goods_managment.php'+params);
}

function BasketAdd(id)
{
	monitor = 0;	
	BasketExe("?id="+id+"&count=1&action=add");
	alert('Товар успешно добавлен в корзину!');
	//setTimeout("BasketUpdate()", 500);	
}

function BasketRemove(id)
{
	BasketExe("?id="+id+"&count=1&action=rem");
	setTimeout("BasketReload()", 1000);		
}

function BasketReload()
{
	window.location.replace("/shopping-cart/");
}

function BasketUpdate()
{
	monitor = 1;		
	AJAX_create('/scripts/cart_managment.php');
}


function js_showform() {
document.getElementById("rate_link").style.display    = 'none';	
document.getElementById("rate_form").style.visibility = 'visible';				 
}

function js_showrate(r){
document.getElementById("r_rate").value   = r;
document.getElementById("rate").className = 'r'+r;	
}

function js_sendform() {
mode = 2;
id   = document.getElementById("r_id").value;
rate = document.getElementById("r_rate").value;
document.getElementById("rate_form").style.display    = 'none';	
AJAX_create('/scripts/ajax.php?id='+id+'&mode='+mode+'&rate='+rate);
document.getElementById("rate_link").style.display    = 'block';
document.getElementById("rate_vote").style.display    = 'none';
}

function frmNew(form) {
	if (form.elements[0].value == "") {
	alert("Пожалуйста, укажите ваш логин.");
	return false;
 	}		
	else if (isValidPassword(form.elements[0].value)) {
	}
	else {
	alert("Пароль и логин могут состоять только из символов английского алфавита и цифр.");
	return false;
	}	
	
	if (form.elements[1].value == "") {
	alert("Пожалуйста, укажите ваш пароль.");
	return false;
 	} 
	else if (form.elements[1].value.length<5) {
	alert("Минимальная длина пароля — 5 символов.");	
	return false;
	}	
	else if (form.elements[0].value==form.elements[1].value) {
	alert("Пароль не может совпадать с логином.");		
	return false;
	}		
	else if (isValidPassword(form.elements[1].value)) {
	}
	else {
	alert("Пароль и логин могут состоять только из символов английского алфавита и цифр.");
	return false;
	}
	
	if (form.elements[2].value == "") {
	alert("Пожалуйста, укажите ваше имя.");
	return false;
 	}		
	if (form.elements[3].value == "") {
	alert("Пожалуйста, укажите ваш город.");
	return false;
 	}		
	if (form.elements[4].value == "") {
	alert("Пожалуйста, укажите ваш e-mail.");
	return false;
 	}	
	else if (isValidEmail(form.elements[4].value,true)) {
	}
	else {
	alert("Адрес e-mail указан с ошибками.");
	return false;
	}		
	return true;
}

function frmEdit(form) {
	if (form.elements[0].value == "") {
	alert("Пожалуйста, укажите ваше имя.");
	return false;
 	}		
	if (form.elements[1].value == "") {
	alert("Пожалуйста, укажите ваш город.");
	return false;
 	}		
	if (form.elements[2].value == "") {
	alert("Пожалуйста, укажите ваш e-mail.");
	return false;
 	}	
	else if (isValidEmail(form.elements[2].value,true)) {
	}
	else {
	alert("Адрес e-mail указан с ошибками.");
	return false;
	}		
	return true;
}
