$(function() {
$('.png').ifixpng();

(document.body.scrollWidth<=1078)?document.body.style.padding='0':document.body.style.padding='0 3%';

checkHeight(); // проверка высоты для уникального каталога
scrollInfoShow(); // настройка попапов для горизонтальной прокрутки

//Добавление товара в корзину со страниц
if (
/\/catalog/.test(window.location.href) ||
/\/new/.test(window.location.href) ||
/\/sale/.test(window.location.href) ||
/\/popular/.test(window.location.href) ||
/\/search/.test(window.location.href) 
) {

$("input.button-buy, input.button-buy-item").click(function (e) { addToBasket($(this),e) });
//$("input.button-buy-solo, input.button-buy-s").click(function () { setAjaxPopup($(this),'solo') });
$("input.button-buy-solo, input.button-buy-s").click(function () { buyFromShop($(this)) });

}

$(".normhref").click(function () { setAjaxPopup($(this),'modal'); });
$("a.videolnk").click(function () { setAjaxPopup($(this),'video'); });


});

if (document.getElementById) { document.onkeydown = escapekey };
$(window).resize(function(){ checkHeight() });

var ctarget = '';
var enableEurope = false;

//Картинка для ajax загрузки
var loading = new Image();
loading.id = "loading";
loading.src = "/i/loading.gif";
loading.style.top="35px";
loading.style.left="35px";

//Обработка событий нажатия клавиш
function escapekey(e) {
  var code;
  if (!e) e = window.event;
  if (e.keyCode) code = e.keyCode;
  else if (e.which) code = e.which;

  if (e.ctrlKey && code == 77)  {
      addToBasket( $("#button-buy-page") ,e)
  }

  if (e.altKey && code == 77)
  {
    window.location.href = '/basket';
  }
}

//Функция электрного адреса
function email(string) {
 href = string.replace(/([^\/]+)\/([^\/]+)\//, "$1@$2.");
 document.write("<a href=\"mailto:"+href+"\">"+href+"</a>");
}/*email*/


//Функция для показа попапа "Легенды"
function synopsisShow() {
	$("#list p.popupsynopsis").each(function(index) {
		if($(this).parent().parent().parent().parent().attr("spec")=="YES") {
			$(this).css("display","inline-block");
			$(this).click(function(e) { setAjaxPopup($(this),"synopsis",e); });
		}
	});
}

//Функция показа попапа превью фото в списке товаров
function imgShow() { 
	$("#list img.thumb, #sfield img, img.imgpop").each(function(index) { setPopup($(this),"img"); });
}

//Функция показа попапа инфы в скроллерах
function scrollInfoShow() {
	$("#scroller img, #scroller-p img").each(function() {setPopup($(this),"scroll-img");});
}
 
//Функция настройки окна попапа
function setPopup(el,type,content,e) {
   if(type=="scroll-img" || type=="img" || type=="buh") {
	$(el).mouseover(function(e){
		if(type=="img") {
			var url = /(\/i.*)/.exec($(el).attr("src"))[1];
			var content = "<img src='/300x300xffffff"+url+"' width=300 height=300>";
			createPopup($(el), content, e);
		}
		if(type=="buh") {
			var url = /(\/i.*)/.exec($(el).attr("lnk"))[1];
			var content = "<img src='/300x300xffffff"+url+"' width=300 height=300>";
			createPopup($(el), content, e);
		}
		if(type=="scroll-img") {
			var price = el.attr('price'); if (price == '0.00') { price = 'По запросу' }
			var balance = el.attr('balance'); if (balance == '0') { balance = 'По запросу' }

			var content = "<div class='info'><h2>"+el.attr('name')+"</h2>";
			content += "<span class='article'>Артикул: <b>"+el.attr('article')+"</b></span><br>";
			content += "<span class='balance'><span>Склад: "+balance+"</span></span><br>";
			content += "<span class='price'>Цена: <b>"+price+" руб.</b></span></div>";

			createPopup($(el), content, e);
		}

	}); 
	$(el).mouseleave(function(e){
		$('#help-popup').fadeOut(400);
		$('#help-popup').remove();
	});
   }
   if(type=="buy") {
      content = '<p class="bsk-stat">' + content + '</p>';
      createPopup($(el), content, e, 'true');
   }
   if(type=="ajax-window") {
      createPopup($(el), content, e, 'false', '1');
   }
   if(type=="synopsis") {
      createPopup($(el), content, e,'false','1');
   }
   if(type=="video") {
      createPopup($(el), content, e,'false','1');
   }
   if(type=="manager") {
      createPopup($(el), content, e,'false','1');
      postSetupPopup($(el),'manager');
   }

}

//Функция создания окна попапа
function createPopup(el,content,e,fadeoOut, ind) {
	if(e && !ind) { 
		var setX = 10; var setY = 10;
		$('<div class="popup-tip" id="help-popup"></div>').appendTo('body');
		if(parseInt(e.pageX+300) > $('body').width()-10) {setX = -300;}
		if(parseInt(e.pageY+$('#help-popup').height()+20) > $(window).height()+$(window).scrollTop()-10) {setY = -$('#help-popup').height()-10;}
		$('#help-popup').css({'top':parseInt(e.pageY+setY),'left':parseInt(e.pageX+setX)});
		$("#help-popup").html(content);
		$('#help-popup').fadeIn(400);
		if ( fadeoOut=='true' ) { $('#help-popup').delay(800).fadeOut(200); }
	}
	else if (ind=='1' && e==undefined) {
		$('<div class="popup-tip window-popup" id="window-popup"></div>').appendTo('body');
		$("#window-popup").html('<div id="popup-window-inner" class="inner">'+content+'</div>');
		$('#window-popup').prepend( $('<div id="gen-help-close" class="gen-help-close" onclick="closePopupWindow(this)">x</div>') );
        	$('#window-popup').css({'top':$(window).height()/2+$(window).scrollTop()-200,'left':$('body').width()/2-200});
		$('#window-popup').fadeIn(400);
	}
	else if (ind=='1' && e) { 
		var setX = 10; var setY = 10;
		$('<div class="popup-tip window-popup" id="window-popup"></div>').appendTo('body');
		$("#window-popup").html('<div id="popup-window-inner" class="synopsis">'+content+'</div>');
		$('#window-popup').prepend( $('<div id="gen-help-close" class="gen-help-close" onclick="closePopupWindow(this)">x</div>') );
		if(parseInt(e.pageX+500) > $('body').width()-10) {setX = -500;}
		if(parseInt(e.pageY+$('#window-popup').height()+20) > $(window).height()+$(window).scrollTop()-10) {setY = -$('#window-popup').height()-10;}
		$('#window-popup').css({'top':parseInt(e.pageY+setY),'left':parseInt(e.pageX+setX)});
		$('#window-popup').fadeIn(400);
	}
	else {
		$('<div class="popup-tip" id="help-popup"></div>').appendTo('body');
		$('#help-popup').css({'top':($(window).height()/2)-150,'left':($(window).height()/2)-150});
		$("#help-popup").html(content);
		$('#help-popup').fadeIn(400);
		if ( fadeoOut=='true' ) { $('#help-popup').delay(800).fadeOut(200); }
	}
}

//Функция постнастройки ajax попапа
function postSetupPopup(el,type) {
    $('#window-popup').draggable({handle:'h4'});
    if(type=='solo') {
	var hld = $("#item-" + $(el).attr('member') );
	var article = hld.find('.article').attr('art');
	var name = hld.find('.tit').attr('alter');
	var price = parseInt( hld.find('.price1').html() ); var newPrice = price+price*0.3;

	$('#window-popup h4').html( $('#window-popup h4').html()+" <em>"+ name +"</em> в розницу" );
	$('<p>Артикул: '+ article  +'</p>').insertAfter($('#window-popup h4'));
	$('<p class="priceMain">По цене '+ newPrice +' руб.</p>').insertAfter($('#window-popup h4'));
	$('<input name="soloGoodName" type="hidden" value="'+ name +'" title="Имя">').appendTo( $('#form-supply form') );
	$('<input name="soloArticle" type="hidden" value="'+ article +'" title="Артикул">').appendTo( $('#form-supply form') );
	$('<input name="soloPrice" type="hidden" value="'+newPrice+'" title="Цена">').appendTo( $('#form-supply form') );
    }
    else if(type=='synopsis') {
	var data = $('#window-popup .synopsis').html();
	if(/^<br>/.test(data)) {data.replace(/^<br>/,'')}
    }
    else if(type=='manager') {
	$('#window-popup h4').html( $('#window-popup h4').html()+" <em>"+ $(el).attr('src') +"</em>" );
	$('#window-popup #draw-form input[type=button]').attr('src',$(el).attr('src') ); 
    }
    else if(type=='video') {
	$('#window-popup').removeClass('window-popup').width('660');
	$('#video').parent().width('660');
    }
    else if(type=='modal') {
	if ( $(el).attr('art') != null ) {
		$('#popup-window-inner h4').html( $('#popup-window-inner h4').html() + '<span class="art">Артикул: <em> '+$(el).attr('art')+'</em></span>' );
		$('input[name="article"]').attr('readonly','true').val($(el).attr('art'));
	}
    }
}

//Функция закрытия попапа по кнопке
function closePopupWindow(el) {
	if(!el) $('#help-popup, #window-popup').remove();
	else $(el).parent('#help-popup, #window-popup').remove();
}

//Функция настройки ajax попапа
function setAjaxPopup(el,type,e) {
  closePopupWindow();
  var button = $(el); var url; var wintype = "ajax-window";
  if (type=='solo') { url = '/ordersolo.txt?show=74500'; }
  else if (type=='synopsis') { url = $(el).attr("href").replace(/\.html/, '.txt?show=22972&goods_=txt_text'); wintype = "synopsis"; } 
  else if (type=='modal') { url = '/' + $(el).attr('src') +'.txt?show='+getSCode($(el),'code'); }
  else if (type=='video') { url = $(el).attr('src').replace(/\.html/, '.txt?show=78678'); wintype = "video"; }
  $.ajax({
    url: url,
    dataType: 'html',
       success: function(data) { 
         setPopup(button, wintype, data, e);
         postSetupPopup(button,type);
       }
  });
}

function getSCode(el,type) {
  var code;
  switch( $(el).attr('src') ) {
	case "custom_design" : code = '46770';
		break;
	case "alternate" : code = '46779';
		break;
	case "tiredtofind" : code = '46782';
		break;
	case "whats_more" : code = '74563';
		break;
	case "mailing" : code = '46786';
		break;
	case "order" : code = '18396';
		break;
	case "custom_video" : code = '80227';
		break;
  }
  return code;
}



//Функция ресайза картинок
function changeSize(x) {
  $("#list img.thumb").each(function() {
    $(this).attr({height:x, width:x, src:'/tn'+x+'x'+x +/(\/i.*)/.exec($(this).attr('src'))[0]});
  });
  var newx= parseInt(parseInt(240)+parseInt(x));
  $("#list .list-item-goods").each(function() {$(this).css('width',newx)});

//  bannerPlace();
  blockDots();
  $("#size-stat").html(x+"px");

SetCookie("size",x,"/");
}


//Функция создания разметки сеткой
function blockDots() {
  $("div.list-item-goods").removeClass('last-in-row');
  var a = parseInt( $("#td-inn, .list-items").width() / $("div.list-item-goods:first").width()); 
  $("div.list-item-goods").each(function(i) {
    if((i+1)%a == '0') {$(this).addClass('last-in-row'); }
  });
}


//Функции ajax отправки формы
function sendFormAjax(f) {
	var hld = $("#popup-window-inner");
//	alert($(f).serialize());
	$.ajax({
		url: $(f).attr('action'),
		data: $(f).serialize(),
		dataType:'html',
		beforeSend: function() {
			$(f).html('<img src="/i/loading35x35.gif" class="ajax-loading"><h1 class="load-stat">Отправляем запрос</h1>')
		},
		error: function(data) {
			hld.html('<h1>Произошла ошибка в отправке запроса :_(</h1>')
		},
		success: function(data) {
			hld.html('<h1>Запрос успешно отправлен</h1>')
		}
	});
}

//Функция ajax добавления товара в корзину
function addToBasket(el,e) {
 var index = $(el).attr("module");
 var button = $(el);
 var data = 'show=65761&event=buy&module_parent='+$(el).attr("module")+'&holder='+$(el).attr("holder")+'&member='+$(el).attr("member");
 $.ajax({
   url: '/search.txt',
   data: data,
   success: function(data) {
     $.ajax({
       url: '/page_prototype.txt',
       data: 'show=48073&rand'+Math.random(),
       dataType: 'html',
       success: function(data) {
         if(button.val() != ' ') button.val('Отложено');//.addClass('in-cart');
         setPopup($(this),"buy", 'Товар добавлен в корзину.',e);
         $("#basket-state").html(data);
       }
     });
   }
 });
}


//Функция настройки фильтра 
function filterSetup() {
$("#table-selector input[class*=button]").each(function(i) {
  $(this).click(function() {
     $("#sortname").val($(this).attr('lnk'));
     ($("#descname").val()=="0") ? $("#descname").val("1") : $("#descname").val("0");
     $(this).submit();
  });
});
$("#filter-clear").click(function() {window.location.href = /(.*\.html)/.exec(window.location.href)[1];} )
}

//Функция разбора URL для фильтра
function urlParse() {
  $.each(/html\?(.*)/.exec(window.location.href)[1].split('&'), function(i,value) {
    $("#table-selector input[name="+value.split('=')[0]+"]").val(value.split('=')[1]);
    if(value.split('=')[0] == 'sortgoods') { $("#table-selector input[lnk*="+value.split('=')[1]+"]").addClass('active'); }
    if(value.split('=')[0] == 'descgoods' && value.split('=')[1] == '1' ) { $("#table-selector input[class*='active']").addClass('desc'); }
    if(value.split('=')[0] == 'descgoods' && value.split('=')[1] == '0' ) { $("#table-selector input[class*='active']").addClass('asc'); }
  });
}

//Функция проверки высоты скроллинг полей в уникальном каталоге
function checkHeight() {
 $(".scroller").each(function(index, el) {
   if ( $(this).height() > $(this).parent().height() ) {
    $(this).parent().parent().find(".img-bottom").show().bind({
	  mouseenter: function() { scrollDown( $(el).attr('id') ) },
	  mouseleave: function() { scrollStop() }
    });
    $(this).parent().parent().find(".img-top").show().bind({
	  mouseenter: function() { scrollUp( $(el).attr('id') ) },
	  mouseleave: function() { scrollStop() }
    });
   }
   else {
     $(this).parent().parent().find(".img-top").unbind().hide();
     $(this).parent().parent().find(".img-bottom").unbind().hide();
   }
 });
}

//Функции вертикального скроллинга
var moving; var st;

function scrollDown(id) {
 var s = $("#"+id);
 var sr = s.height() - s.parent().height(); // ширина невидимой части
 if (sr > -parseInt(s.css('top')) ) {
 s.css('top', parseInt(s.css('top')) - 1 );
 moving = window.setTimeout( "scrollDown('"+id+"')", 10);
 }
}

function scrollUp(id) {
 var s = $("#"+id);
 var sr = s.height() - s.parent().height(); // ширина невидимой части
 if (parseInt(s.css('top')) < 0 ) {
 s.css('top', parseInt(s.css('top')) + 1 );
 moving = window.setTimeout("scrollUp('"+id+"')", 10);
 }
}

function scrollStop() {
 if (moving) clearTimeout(moving);
}

//Функции обработки кук
var expDays = 30;
var DefaultExp = new Date(); 
DefaultExp.setTime(DefaultExp.getTime() + (expDays*24*60*60*1000));

function SetCookie (name, value) 
{
	var argv = SetCookie.arguments; 
	var argc = SetCookie.arguments.length; 
	var path = (argc > 2) ? argv[2] : '/'; 
	var expires = (argc > 3) ? argv[3] : null;
	var domain = (argc > 4) ? argv[4] : null; 
	var secure = (argc > 5) ? argv[5] : false; 

	var cookie = name + "=" + escape (value) + 
	((path == null) ? "" : ("; path=" + path)) + 
	((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + 
	((domain == null) ? "" : ("; domain=" + domain)) + 
	((secure == true) ? "; secure" : "");

	document.cookie = cookie;
}/*SetCookie*/

function GetCookie(sName)
{
	var aCookie = document.cookie.split("; ");
	for (var i=0; i < aCookie.length; i++)
	{
		var aCrumb = aCookie[i].split("=");
		if (sName == aCrumb[0]) 
		return unescape(aCrumb[1]);
	}
	return null;
}/*GetCookie*/

function DeleteCookie (name) { 
	var exp = new Date(); 
	exp.setTime (exp.getTime() - 1); 
	// This cookie is history 
	var cval = GetCookie (name); 
	document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}/*DeleteCookie*/

function buyFromShopBasket(data,art,el,ie) {
	var lnk = $(data).find('#'+art).attr('href');
	if(lnk) { var lnk2 = lnk.replace('catalog','solobuy'); window.location.replace(lnk2); }
	else { setAjaxPopup($(el),'solo') }
}


function buyFromShop(el)  {
var art = $(el).attr('art');
var url = 'http://admos-shop.ru/search.txt?show=71924&asis=1&string='+art +'&rand'+Math.random();

$.ajax({
	method: 'POST',
	url: url,
//	dataType: "xml",
	error: function() {
		req_init(url,art,el);
	},
	success: function(data) {
		buyFromShopBasket(data,art,el);
	}                 
});


}

    var xdr;

    function read_data()
    {
        var output = document.getElementById('text_response');
        if(output) { output.innerText = xdr.responseText; }
        alert("Content-type: " + xdr.contentType);
        alert("Length: " + xdr.responseText.length);
    }

    function alert_error() {
        alert("XDR onerror");
    }

    function req_init(url,art,el) {
        var timeout = '10000';
        if (window.XDomainRequest) {
            xdr = new XDomainRequest(); 
            if (xdr) {
                xdr.onerror     = alert_error;
                xdr.onload  = function() { buyFromShopBasket(xdr.responseText, art, el, 'ie');  };
                xdr.open("get", url);
                xdr.send();
            }
            else { alert('Failed to create new XDR object.'); }
        }
	else { alert('XDR does not exist.'); }
    }


