function SetCookie( name, value ) {

	var argv    = SetCookie.arguments;
	var argc    = SetCookie.arguments.length;
	var expires = (argc > 2) ? argv[2] : null;
	var path    = (argc > 3) ? argv[3] : '/';
	var domain  = (argc > 4) ? argv[4] : null;
	var secure  = (argc > 5) ? argv[5] : false;
	document.cookie =
	name + "=" + escape (value) +
	((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
	((path == null) ? "" : ("; path=" + path)) +
	((domain == null) ? "" : ("; domain=" + domain)) +
	((secure == true) ? "; secure" : "");
}

function save_user() 
{
	var expdate = new Date ();
	expdate.setTime(expdate.getTime() + (24 * 60 * 60 * 1000));
		
	i=0;
	var payment = 0;
 	while((i<document.cart_form.payment.length)&&(document.cart_form.payment[i].checked!=1)) {i++;}
   	if (i!=document.cart_form.payment.length) payment = document.cart_form.payment[i].value; 
		
	SetCookie("payment", payment, expdate);

	var field = new Array("user_name", "user_email", "user_phone", "user_address", "user_zipcode",
	"user_card_number",  "user_comment", "user_org_name", "user_org_inn",
	"user_org_kpp", "user_jur_addr", "user_city_id", 
	"user_org_bankname", "user_org_bik", "user_org_ks", "user_org_rs", "user_send"); 
	
	var line_array = Array();	
	i=0;
	for( key in field ) 
	{
		//if( field[key] === undefined ) continue;

		name = field[key];
		value = eval("document.cart_form." + name + ".value");

		if( name == 'user_send' )
		{
			var user_send = 1;
			if( document.cart_form.user_send.checked == false ) user_send = 0;
			line_array[i] = name + "=" + user_send;
			i++; 
		}
		/*
		if( name == 'user_card_number' )	
		{
			var user_cart = 1;
			if( document.cart_form.user_card_number.checked == false ) user_cart = 0;
			line_array[i] = name + "=" + user_cart;
			i++; 
		}
		*/
		if( name != '' && name != 'user_send' ) {
			line_array[i] = name + "=" + value;
			i++; 
		}
	}

	if( line_array.length > 0 )
	{
		SetCookie("user_data", line_array.join("&"), expdate); 
		//alert(line_array.join("&"));
	}
	
	return true;
}

function save( type, value )
{
	var expdate = new Date (); 
	expdate.setTime(expdate.getTime() + (24 * 60 * 60 * 1000));
	SetCookie(type, value, expdate);
}

function check_email(str) 
{
	var supported = 0;
	if (window.RegExp) {
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}

	if (!supported) 
		return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
		
	//var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r1 = new RegExp("(@.*@)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	return (!r1.test(str) && r2.test(str));
} 

function trim( str ) {
	str = str.replace(/^\s+/g,""); 
	str = str.replace(/\s+$/g,""); 
	return str; 
} 

function check_user() 
{
	var error = '';

	var user_name = document.cart_form.user_name.value;
	if( user_name == "" ) error += "Поле 'Фамилия Имя Отчество' не может быть пустым\n";
	
	var user_email = document.cart_form.user_email.value;
	if( user_email == "" ) { error += "Поле 'Email' не может быть пустым\n"; }
	else {
		if( check_email( user_email ) == false ) error += "'Email' не верен!\n";
	}

	var user_phone = document.cart_form.user_phone.value;
	if( user_phone == "" ) error += "Поле 'Телефон' не может быть пустым\n";
		
	if ( error != '' ) { 
		alert( 'Внимание!\n\n' + error ); 
	} 
	else { 
		window.location = "/cart.php?type=end";
	}
}

function check_user_form() {

	var error = '';
	
	var user_name = document.cart_form.user_name.value;
	if( user_name == "" ) error += "Поле 'Фамилия Имя Отчество' не может быть пустым\n";
	
	var user_email = document.cart_form.user_email.value;
	if( user_email == "" ) { error += "Поле 'Email' не может быть пустым\n"; }
	else {
		if( check_email( user_email ) == false ) error += "'Email' не верен!\n";
	}

	var user_phone = document.cart_form.user_phone.value;
	if( user_phone == "" ) error += "Поле 'Телефон' не может быть пустым\n";
			
	if ( error != '' ) { 
		alert( 'Внимание!\n\n' + error ); 
	} 
	else
	{
		document.cart_form.submit();
	}
}

function to_user_form() 
{
	var del = document.cart_form.delivery.value;

	var error = "Не выбран регион доставки\n";

	if( del == 0 ) {
		alert( 'Внимание!\n\n' + error ); 
	}
	else {
		window.location = "/cart.php?type=user";
	}
	return false;
}

function to_order() {
	save_user(); 
	check_user();
	return false;
}

function check_order_form() {
	save_user_form();
	check_user_form();
	return false;
}

function to_end() 
{
	save_user(); 
	check_user();
	return false;
}

function load_image( id, urlpic )
{
	var p = document.getElementById(id);
	p.src = urlpic;
}

/*  AJAX */
var ajaxAddProductPatch;
var ajaxProductID;
var ajaxProductORDER;

var cart_price = 0;
var cart_count = 0;

function addProductResponse_old(response, cart_price, cart_count)
{
	var d = document.getElementById('addProductDiv').style;
	var d2 = document.getElementById('addProductNoSPBDiv').style;
	d.visibility = "hidden";
	d2.visibility = "hidden";

	//alert("response = " +response );
	if ( response == 1 )
	{
		var cc = document.getElementById('cart_count');
		var cp = document.getElementById('cart_price');
		
		document.getElementById('cart_bold').className = "red";
		cc.className = "red";
		
		cc.innerHTML = cart_count;
		cp.innerHTML = cart_price;
		
		document.body.style.cursor = 'auto';
		
		setTimeout("go_blink2()", 0);
		
		//alert( "Всё отлично!" );
		ajaxAddProductComplete();
		
		d.visibility = "visible";
		
		//alert("ADD");
	}
	else if ( response == 0 )
	{
		document.body.style.cursor = 'auto';
		alert( "Этот товар нельзя добавить в корзину!" );
		//ajaxTaskError();
	}
	else if ( response == 2 )
	{
		document.body.style.cursor = 'auto';
		d2.visibility = "visible";
		//alert( "Данный товар в Санкт-Петербурге отсутствует.\nВы можете заказать его в интернет-магазине\nFOTO.RU/МОСКВА" );
	}
	else
	{
		var url = ajaxAddProductPatch;
		var post = 'id='+ajaxProductID;
		post += '&type=ajax_add';
		
		//myalert( "url", url+post );
		
		loadXMLDoc(url, post);
		document.body.style.cursor = 'wait';

		//ajaxTaskInProgress();
	}
}

function addProductResponse(response, cart_price, cart_count)
{
	var d = document.getElementById('addProductDiv').style;
	var d2 = document.getElementById('addProductNoSPBDiv').style;
	d.visibility = "hidden";
	//if( ajaxProductORDER == 0 ) d2.visibility = "hidden";

	//alert("ajaxProductORDER = " +ajaxProductORDER );
	
	//alert("response = " +response );
	if ( response == 1 )
	{
		var cc = document.getElementById('cart_count');
		var cp = document.getElementById('cart_price');
		
		document.getElementById('cart_bold').className = "red";
		cc.className = "red";
		
		cc.innerHTML = cart_count;
		cp.innerHTML = cart_price;
		
		document.body.style.cursor = 'auto';
		
		setTimeout("go_blink2()", 0);
		
		//alert( "Всё отлично!" );
		ajaxAddProductComplete();
		
		d.visibility = "visible";
		
		//alert("ADD");
	}
	else if ( response == 0 )
	{
		document.body.style.cursor = 'auto';
		alert( "Этот товар нельзя добавить в корзину!" );
		//ajaxTaskError();
	}
	else if ( response == 2 )
	{
		document.body.style.cursor = 'auto';
		d2.visibility = "visible";
		//alert( "Данный товар в Санкт-Петербурге отсутствует.\nВы можете заказать его в интернет-магазине\nFOTO.RU/МОСКВА" );
	}
}

function addProduct( e, id, path )
{
	ajaxProductORDER = 0;

	var d = document.getElementById('addProductDiv').style;
	var d2 = document.getElementById('addProductNoSPBDiv').style;
	//myalert( "e", e );
	
	setPosition(d, e);
	setPosition(d2, e);
	
	ajaxProductID = id;
	ajaxAddProductPatch = path;
	
	var url = ajaxAddProductPatch;
	var post = 'id='+ajaxProductID;
	post += '&type=ajax_add';
	
	//myalert( "url", url+post );
	loadXMLDoc(url, post);
	document.body.style.cursor = 'wait';
}

function addOrderProduct( e, path )
{
	ajaxProductORDER = 1;

	var d = document.getElementById('addProductDiv').style;

	setPosition(d, e);
	
	//ajaxProductID = id;
	ajaxAddProductPatch = path;
	
	var url = ajaxAddProductPatch;
	var post = 'id='+ajaxProductID;
	post += '&type=ajax_add';
	post += '&order=1';
	
	//myalert( "url", url+post );
	loadXMLDoc(url, post);
	document.body.style.cursor = 'wait';
}

function ajaxAddProductComplete()
{
	//alert( "Всё отлично!" );

	var ad = document.getElementById('addProductCompleteDiv').style;
	ad.display = "block";
	//var ad2 = document.getElementById('addProductNoSPBCompleteDiv').style;
	//ad2.display = "block";
	
	//ad.visibility = "visible";
}

function print_obj( o )
{
	for (i in o)
	{
		var s = '';
		s += i;
		s += '<br />';
		document.write(s);
	}
}

function showAlert( e, id )
{
	var d = document.getElementById(id).style;	
	var scrollTop = 0;
		
	if ( document.body.scrollTop )
		scrollTop = document.body.scrollTop;
	else if ( window.scrollY )
		scrollTop = window.scrollY;
	
	var x = 500;
	var y = 500;
	
	x = e.clientX;
	y = e.clientY;

	d.left = (x + 3) + 'px';
	d.top = (scrollTop + y + 0) + 'px';
	
	d.display = "block";
}

function setPosition(d, e)
{
	var scrollTop = 0;
		
	if ( document.body.scrollTop )
		scrollTop = document.body.scrollTop;
	else if ( window.scrollY )
		scrollTop = window.scrollY;
	
	var x = 500;
	var y = 500;
	
	x = e.clientX;
	y = e.clientY;

	d.left = (x - 20) + 'px';
	d.top = (scrollTop + y + 0) + 'px';
	
	//d.visibility = "visible";
	//d.display = "block";
}

function closeAddProductCompleteDiv()
{
	var d = document.getElementById('addProductCompleteDiv').style;
	d.display = "block";
	var d4 = document.getElementById('addProductNoSPBCompleteDiv').style;
	d4.display = "block";
	
	var d2 = document.getElementById('addProductDiv').style;
	d2.visibility = "hidden";
	var d3 = document.getElementById('addProductNoSPBDiv').style;
	d3.visibility = "hidden";
}


