//ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ
//бегунки время доставки в корзине
var sliderPos0 = 14;
var sliderPos1 = 19;
var sliderPos0Cat = 200;
var sliderPos1Cat = 1200;

// правильность мыла
function isValidEmail(email) {
	return (/^([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}$/i)
			.test(email);
}
function trimLeft(str) {
	return str.replace(/^\s+/, '');
}

function trimRight(str) {
	return str.replace(/\s+$/, '');
}

function trim(str) {
	return trimRight(trimLeft(str));
}

function trimSpaces(str) {
	return str.replace(/\s{2,}/g, ' ');
}

// Номер клиента
function ClientNum() {
	var usernum = $("#usernum").html();
	
	if (usernum == undefined) {
    	usernum = 3404;
    }
	
	alert("Ваш личный идентификатор в магазине: " +usernum);
	
}

// усыпить поток
function sleep(milliseconds) {
	var start = new Date().getTime();
	for ( var i = 0; i < 1e7; i++) {
		if ((new Date().getTime() - start) > milliseconds) {
			break;
		}
	}
}

/* ============================================================ */
function joinirc() {
	file = "http://irc.allcables.ru/cgi-bin/irc/irc.cgi";
	window
			.open(
					file,
					"_blank",
					"width=700,height=400,titlebar=no,toolbar=no,directories=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no");
}
function flashGetHref() {
	return location.href;
}
function flashPutHref(href) {
	location.href = href;
}
function flashGetTitle() {
	return document.title;
}
function flashPutTitle(title) {
	document.title = title;
}

/* =========================================================== */

$(document).ready(function() {
                //Фотогалерея
	            $("#pikame").PikaChoose();
	            $("input[name='tel1']").mask("(999) 999-99-99");
	            $("input[name='tel2']").mask("(999) 999-99-99");
				//узнать сохраненный тип доставки и выбрать его
				getUserTypeDeliv();
				// раскраска строк
				$(".price tr:nth-child(even) td").css("background", "#F4F6FB");
				$(".price tr:nth-child(odd) td").css("background", "#E6EBF6");

				// слайдер - время доставки
				slider('div[name=slider]', 'td[name=sliderInfo]');
				//slider('div[id=sliderCat]','td[name=sliderInfo]');
				var min_price = $("#min_price").val();
				var max_price = $("#max_price").val();
				//alert(min_price+" - "+max_price);
				//sliderPos0Cat = 2000;//min_price + max_price /10;
				//sliderPos1Cat = 15000;//min_price + 3*max_price / 10;
				sliderCat('#sliderCat','input[name=price_start]', 'input[name=price_end]', min_price, max_price);
				
				//runDiscoNordost();
			});

function runDiscoNordost(){
    var START_DISCO_NORDOST = 30;
    var START_DATE_DISCO_NORDOST = new Date(2011, 2, 2, 24, 0, 0, 0);

    var curDate = new Date()
    var diff = Math.ceil((curDate.getTime() - START_DATE_DISCO_NORDOST.getTime()) / (1000*60*60*24));
    var disco = document.getElementById("super_disco_nordost");
    disco.innerHTML = (START_DISCO_NORDOST - diff)+'% ';
    $('#super_disco_nordost').fadeOut(5000);
    window.setInterval("$('#super_disco_nordost').show(); $('#super_disco_nordost').fadeOut(5000);", 6000);
}

// слайдер - цена в каталоге
function sliderCat(slider, min_info, max_info, min_price, max_price){
	var start=$("input[name=price_start]").val()*1;
	var end=$("input[name=price_end]").val()*1;
	if($("input[name=price_start]").val()=="0"){
			$(min_info).val(min_price);
			$(max_info).val(max_price);		
			start=min_price;
			end=max_price;	
	}

	$(slider)
			.slider(
					{
						range : true,
						min : min_price*1,
						max : max_price*1,
						step : 1,
						values : [start, end],
						slide : function(event, ui) {	
							$(min_info).val(ui.values[0]);
							$(max_info).val(ui.values[1]);							
						}
					});
	
}

function slider(slider, sliderInfo){
	// слайдер - время доставки
	$(sliderInfo).html(
			sliderPos0 + '<sup>00</sup> - ' + sliderPos1
					+ '<sup>00</sup>');
	$(slider)
			.slider(
					{
						range : true,
						min : 12,
						max : 22,
						step : 1,
						values : [ 14, 18 ],
						slide : function(event, ui) {

							if (ui.values[0] > sliderPos0) {
								if (ui.values[1] - ui.values[0] <= 2) {
									$(slider)
											.slider(
													"option",
													"values",
													[
															ui.values[0],
															ui.values[0] + 2 ]);
									sliderPos1 = ui.values[0] + 2;
									sliderPos0 = ui.values[0];
									if (ui.values[1] == 22) {
										sliderPos1 = 22;
										sliderPos0 = 20;
										$(slider)
												.slider(
														"option",
														"values",
														[
																sliderPos0,
																sliderPos1 ]);
										$(sliderInfo)
												.html(
														sliderPos0
																+ '<sup>00</sup> - '
																+ sliderPos1
																+ '<sup>00</sup>');
										return false;
									}
									$(sliderInfo)
											.html(
													sliderPos0
															+ '<sup>00</sup> - '
															+ sliderPos1
															+ '<sup>00</sup>');
									return false;
								}
							}
							if (ui.values[1] < sliderPos1) {
								if (ui.values[1] - ui.values[0] <= 2) {
									sliderPos1 = ui.values[1];
									sliderPos0 = ui.values[1] - 2;
									$(slider).slider(
											"option",
											"values",
											[ sliderPos0,
													sliderPos1 ]);
									if (ui.values[0] == 12) {
										sliderPos1 = 14;
										sliderPos0 = 12;
										$(slider)
												.slider(
														"option",
														"values",
														[
																sliderPos0,
																sliderPos1 ]);
										$(sliderInfo)
												.html(
														sliderPos0
																+ '<sup>00</sup> - '
																+ sliderPos1
																+ '<sup>00</sup>');
										return false;
									}
									$(sliderInfo)
											.html(
													sliderPos0
															+ '<sup>00</sup> - '
															+ sliderPos1
															+ '<sup>00</sup>');
									return false;
								}

							}
							sliderPos1 = ui.values[1];
							sliderPos0 = ui.values[0];
							$(sliderInfo).html(
									ui.values[0]
											+ '<sup>00</sup> - '
											+ ui.values[1]
											+ '<sup>00</sup>');
						}
					});
	
}
// -------------EMS----------------------------
function isInteger(s) {
	return !isNaN(parseInt(s));
}
// для EMS
function parse_str(s) {
	var a = s.split(/&|=/);
	var b = s.split(/&|=/);
	switch (arguments.length) {
	case 1:
		for ( var i = 0; i < a.length; i++) {
			eval(a[i] + "=\"" + unescape(a[++i]) + "\"");
		}
		break;
	case 2:
		for ( var i = 0; i < a.length; i++)
			arguments[1][a[i]] = unescape(a[++i]);
	}
}
function ems_calc() {
	var hostname = 'emspost.ru';
	var URL = 'http://' + hostname + '/api/calc?callback=jsonp';

	var value_to = document.getElementById('value_to').value;
	var weight = 500;// document.getElementById('weight').value;
	var sum = 5000;

	var to = new Array();

	parse_str(value_to, to);

	if (to['city'] !== undefined) {
		$("#emsSity").hide();
	} else {
		$("#emsSity").show();
	}

	$.getJSON("ems_calc.php", {
		centr : to['centr'],
		to_city : to['city'],
		to_region : to['region'],
		to_zone : to['zone'],
		weight : weight,
		sum : sum
	}, function(data) {
		alert('Стоимость: ' + data.price + '\nСрок доставки: ' + data.terms);
	});

	// $.getJSON(URL, {
	// calc_type : 'russia',
	// from_city : from['city'],
	// from_region : from['region'],
	// from_zone : from['zone'],
	// to_city : to['city'],
	// to_region : to['region'],
	// to_zone : to['zone'],
	// weight : weight
	// });

	// window.jsonp = function(data) {
	//
	// // if (jQuery('#offer_check').is(':checked')) {
	// //
	// // var ocost2 = jQuery('#offer_value').val();
	// // var ocost = ocost2.replace(' ', '');
	// // if (isInteger(ocost) && (ocost <= 50000)) {
	// //
	// // data.price = parseInt(data.price) + parseInt(ocost) * 0.01;
	// //
	// // } else {
	// //
	// // alert('Сумма обьявленной ценности не должна превышать 50 000 руб.')
	// // }
	// // }
	// alert('Стоимость: ' + data.price + '\nСрок доставки: ' + data.terms);
	// // document.getElementById('res_price').innerHTML = '<strong>' +
	// // data.price + '</strong>';
	// // document.getElementById('res_terms').innerHTML = data.terms;
	// };

}

// -------------EMS конец----------------------
function callbackSlidePanel() {
	setTimeout(function() {
		$(".slidePanel").removeAttr('style').hide().fadeOut();
	}, 1000);
};

function getUserTypeDeliv() {
	if(document.location.pathname != '/basket.html') return;
	showLoading(1);
	$.getJSON("/content/cart.php", {ajax: 1, getTypeDeliv: 1}, 
			function(json) {
				$('input[value='+json.typeDeliv+']:radio').attr('checked', true);
				changeTypeOrder();
				showLoading(0);
			});	
}

function clickToCart(id, idStock) {

	$.getJSON("/index.php", {
		bay : id,
		id_stock : idStock
	}, function(json) {
		$("#btBay" + id).effect("transfer", {
			to : "#cart",
			className : 'ui-effects-transfer'
		}, 700);
		$("#cart2").html(json.cart);
		$(".slidePanel").html(json.panel);

		var showOn = $(".slidePanel").css('display');
		if (showOn == 'none') // показать если не видно!
			{
				$(".slidePanel").slideToggle("slow");
				setTimeout(function() {
					$(".slidePanel").slideToggle("slow");
				}, 6000);

			}
			// alert(json.errors);

		});
}

var timerId;
function filterChange(type) {
	if (type == 'search') {
		clearTimeout(timerId);
		timerId = setTimeout(function(){filterProcess('search')}, 500);
	}
}

function filterProcess(type){
	if(type == 'search'){
		
		newStrSearch = $("#searchquery").val();
		
		$.getJSON("filter_search.php", {
			type : 'search',
			str : newStrSearch
		}, function(res) {
			$("#selectBrands").html(res.brand);
			});		
	}
	if(type == 'brand'){
	
	}
}

// удаление товара из корзины
function deleteRowFromCart(id) {

	// лоадер
	showLoading(1);

	var data = {};
	data.deleteIdFromCart = id;
	data = genDataAjax(data);
	// "dela-"+id+".html"
	$.getJSON("/content/cart.php", data, function(json) {
		$("#tableCart").html(json.tableCart);
		$("#cart2").html(json.cart);
		if (json.countTov == '0') {
			$("#ordering").hide();
		}
		// раскраска строк
			$(".price tr:nth-child(even) td").css("background", "#F4F6FB");
			$(".price tr:nth-child(odd) td").css("background", "#E6EBF6");

			$("#itogoCart").html(json.itogo);
			showLoading(0);
		});
}

function genDataAjax(data) {
	var typeDeliv = $(":radio[name=method]").filter(":checked").val();
	data.ajax = 1;
	data.typeDeliv = typeDeliv;

	if (typeDeliv == 'delivEms') {
		var value_to = document.getElementById('value_to').value;
		var to = new Array();
		parse_str(value_to, to);

		// если выбрана облать, то отобразить город
		if (to['city'] !== undefined) {
			$("#emsSity").hide();
			//$('select[@name=loadFileName] option:selected').text()			
			data.town = $('select[name=value_to] option:selected').text();
		} else {
			$("#emsSity").show();
			data.state = $('select[name=value_to] option:selected').text();
		}

		// centr: to['centr'], to_city: to['city'], to_region : to['region'],
		// to_zone : to['zone'], weight : weight, sum: sum},
		data.city = to['city'];
		data.centr = to['centr'];
		data.region = to['region'];
		data.zone = to['zone'];
	}

	return data;
}
//показать/скрыть индикатор загрузки
function showLoading(show) {
	if (show) {
		$("#itogoCart").hide();
		$("#loading").show();
	} else {
		$("#loading").hide();
		$("#itogoCart").show();
	}
}

// обновление количества в корзине
function updateKolInCart() {
	var cartTable = $(".num");
	var arrObjects = new Array();

	for ( var i = 0; i < cartTable.length; i++) {
		// alert(cartTable[i].id +' '+cartTable[i].value);
		arrObjects.push( {
			id : cartTable[i].id,
			kol : cartTable[i].value
		});
	}
	//для ОСЛА подключаю в индекс.пхп json_init.js
	var quant = JSON.stringify(arrObjects);

	var data = {};
	data.refresh = 1;
	data.quant = quant;

	// добавляю параметры исходя из типа доставки
	data = genDataAjax(data);

	showLoading(1);

	$.getJSON("/content/cart.php", data, function(json) {
		// alert('Всё ок!');
			$("#tableCart").html(json.tableCart);
			$("#cart2").html(json.cart);
			// alert(json.errors);
			// раскраска строк
			$(".price tr:nth-child(even) td").css("background", "#F4F6FB");
			$(".price tr:nth-child(odd) td").css("background", "#E6EBF6");

			$("#itogoCart").html(json.itogo);
			// sleep(1000);
			showLoading(0);
		});

}

// выбор типа доставки
function changeTypeOrder() {
	var typeDeliv = $(":radio[name=method]").filter(":checked").val();	
	
	// инициализация
	$("#delivNal").hide();
	$("#delivCart").hide();
	$("#delivSam").hide();
	$("#delivEms").hide();
	$("#delivBeznal").hide();
	
	$("#"+typeDeliv).show();

	// getItogo(type); //сделать для оптимизации
	updateKolInCart();
}

// получить итоговую инф
//ПОКА НЕ РАБОТАЕТ... И ВООБЩЕ НЕ НУЖНА
function getItogo(typeDeliv) {
	$.getJSON("/content/cart.php", {
		ajax : 1,
		itogo : 1,
		typeDeliv : typeDeliv
	}, function(json) {

	});
}

function makeFlashPlayer2(flashURL, width, height){

	objectHTML = '<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ';
	objectHTML += 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" ';
	objectHTML += 'width="' + width + '" height="' + height +'"> ';
	objectHTML += '<param name="movie" value="' + flashURL + '"> ';
	objectHTML += '<param name="quality" value="high"> ';
	objectHTML += '<param name="allowScriptAccess" value="never"> ';
	objectHTML += '<param name="allowNetworking" value="internal"> ';
	objectHTML += ' <param name="bgcolor" value="#FFFFFF"> ';
	objectHTML += '<param name="loop" value="false"> ';
	objectHTML += '<EMBED allowScriptAccess="never" allowNetworking="internal" src="' + flashURL + '" quality="high" bgcolor="#FFFFFF" width="' + width + '" ';
	objectHTML += 'height="' + height +'" loop="false" type="application/x-shockwave-flash" ';
	objectHTML += 'pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"> ';
	objectHTML += '</EMBED> </OBJECT>';
	       
	$("#thankyou").append('<center>'+objectHTML+'</center');
}

function stateOrderBtn(process){
	if(!process){
		$("#btnOrder").html('<input type="image" onclick="onClickOrder(); return false" alt="Оформить заказ" src="img/btn/btn-order.gif">');
	}else{
		$("#btnOrder").html('<input type="image" alt="Оформить заказ" src="img/btn/btn_order_process.png">');
	}
}

function onClickOrder() {
	var typeDeliv = $(":radio[name=method]").filter(":checked").val();

	var test='1';	
	
	var name_1 = $("#"+typeDeliv+" input[name=name_1]").val();
	var name_2 = $("#"+typeDeliv+" input[name=name_2]").val();
	var name_3 = $("#"+typeDeliv+" input[name=name_3]").val();
	var tel1 = $("#"+typeDeliv+" input[name=tel1]").val();
	var tel2 = $("#"+typeDeliv+" input[name=tel2]").val();
	var email = $("#"+typeDeliv+" input[name=email]").val();
	var state = $("#"+typeDeliv+" select[name=value_to]").val();
	var town = $("#"+typeDeliv+" input[name=town]").val();
	var metro = $("#"+typeDeliv+" select[name=metro]").val();
	var street = $("#"+typeDeliv+" input[name=street]").val();
	var adr_house = $("#"+typeDeliv+" input[name=adr_house]").val();
	var adr_korp = $("#"+typeDeliv+" input[name=adr_korp]").val();
	var adr_pod = $("#"+typeDeliv+" input[name=adr_pod]").val();
	var adr_kod = $("#"+typeDeliv+" input[name=adr_kod]").val();
	var adr_floor = $("#"+typeDeliv+" input[name=adr_floor]").val();
	var adr_app = $("#"+typeDeliv+" input[name=adr_app]").val();
	var date_deliv = $("#"+typeDeliv+" select[name=selectDateDeliv]").val() + ' ' + sliderPos0
			+ '-' + sliderPos1;
	var adds = $("#"+typeDeliv+" textarea[name=adds]").val();
	var adr_postcode = $("#"+typeDeliv+" input[name=postcode]").val();
	
	if(state=='Выберите город или регион'){
		alert('Пожалуйста, выберите свой город или регион!\nНе верно указаный регион влечет ошибки расчета суммы доставки в Ваш город!');
		$("#value_to").focus();
		return;
	}

	/*
	 * alert(name_1+' '+name_2+' '+name_3+'\nТел1: '+tel1+' Тел2:
	 * '+tel2+'\nmail: '+ email+'\ntown: '+town+'\nМетро: '+metro+'\nУлица:
	 * '+street+'\nДом: '+ adr_house+'\nКорп: '+adr_korp+'\nПодъезд:
	 * '+adr_pod+'\nКод: '+adr_kod+'\nЭтаж: '+adr_floor+'\nКвартира: '+adr_app+
	 * '\nДата доставки: '+date_deliv+'\nДополнительно: '+adds+'\nИндекс:
	 * '+adr_postcode);
	 */
	// adr_floor: adr_floor, adr_app: adr_app, adr_postcode: adr_postcode,
	// date_deliv: date_deliv, adds: adds
	var data = {};
	data.order = 1;
	data.name_1 = name_1;
	data.name_2 = name_2;
	data.name_3 = name_3;
	data.tel1 = tel1;
	data.tel2 = tel2;
	data.email = email;
	data.town = town;
	data.metro = metro;
	data.street = street;
	data.adr_house = adr_house;
	data.adr_korp = adr_korp;
	data.adr_pod = adr_pod;
	data.adr_kod = adr_kod;
	data.adr_floor = adr_floor;
	data.adr_app = adr_app;
	data.adr_postcode = adr_postcode;
	data.date_deliv = date_deliv;
	data.adds = adds;

	// добавляю параметры исходя из типа доставки
	data = genDataAjax(data);
	stateOrderBtn(true);
	
	$.post("/content/process_order.php", data, function(json) {
		if(json.error == 'ok'){			
			$("#tableCart").html(json.complete);
			$("#cart2").html(json.cart);
			//$("#ordering").hide();
			$("#ordering").html('<img src="http://mixmarket.biz/tr.plx?e=3779408&r='+escape(document.referrer)+'&t='+(new Date()).getTime()+'" width="1" height="1"/>');
			makeFlashPlayer2('/thankyou.swf?indicatedCategory=PROMO&message=Spasibo+bolshoe+za+zakaz%21+%0AZhdem+Vas+snova%21+%0A+%0A-----+%0Awww.AllCables.ru', 600, 343);
		}else {
			stateOrderBtn(false);
			alert(json.error);
		}
	}, "json");
	
}

function onClickPostWeight(id_tovar) {
	var weight = $("#weightTovar").val();

	$("#btnPostWeight").attr("disabled", true);
	$.post("/weight_process.php", {
		id_tovar : id_tovar,
		weight : weight
	}, function(json) {
		$("#btnPostWeight").removeAttr("disabled");
		if (json.error != 'ok') {
			alert(json.error);
		}
	}, "json");

}


function showreply() {
	var hidez = $("#replyform").css("display");
  $("#reply1").show();
 $("#reply2").hide();
 if (hidez!='none') {
 $("#replyform").slideUp("slow");
 } else {
 $("#replyform").slideDown("slow");
 $("#reply2").show();
 $("#reply1").hide();
 }
 

	
}


function barpages() {
	
$("#maincontent").hide();	
}


function catSelect2(idcat, obj) {
	window.location.hash="catalog-"+idcat+".html";

var hidez = $("#cat"+idcat).css("display");

if (hidez!='none') {
	$("#cat"+idcat).slideUp("normal");		
	$("#cat"+idcat).removeClass("curOpened");
	$(".curCatalog").removeClass("curCatalog");
} else {
	
	var hernya = $(this);
	
	$(".curOpened").slideUp("fast");
	$(".curOpened").removeClass("curOpened");
	$(".curCatalog").removeClass("curCatalog");
	$(obj).parent().addClass("curCatalog");
	
	$("#cat"+idcat).addClass("curOpened");	
	$("#cat"+idcat).slideDown("fast");		
}
	
	
	/*$.post("process/catalog_process.php", {
		idcat : idcat
	}, function(html) {
		$("#maincontent").fadeOut();			
		$("#maincontent").html(html);
		$("#maincontent").fadeIn();
	});*/

	
}


function catSelect(idcat) {


$.post("process/catalog_process.php", {
		idcat : idcat
	}, function(json) {
		
			
$("#maincontent").html(json.idcat);
	}, "json");

	
}


 function showPrice(){
	var w = 1024, h = 768;
	if (document.all || document.layers) {
	   w = screen.availWidth;
	   h = screen.availHeight;
	}	
	var popW = 1024, popH = 768;	
	var leftPos = (w-popW)/2, topPos = (h-popH)/2;
	
	var params = "menubar=no,location=no,resizable=yes,scrollbars=yes,status=no";

	window.open('/price_kubala.html', 'popup', params);
 }
function showBanner() {
	$(".bannerPanel").html("<img onClick=\"showBanner()\" src=\"july_cart.png\">");
	var showOn = $(".bannerPanel").css('display');
	if (showOn == 'none') // показать если не видно!
		{
			$(".bannerPanel").slideToggle("slow");
		//	setTimeout(function() {
		//		$(".bannerPanel").slideToggle("slow");
		//	}, 6000);

		} else {
			$(".bannerPanel").slideToggle("slow");
		}
			
}
