// fixPNG(); (author Tigirlas Igor)
function fixPNG(element)
{
if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent))
{
var src;
if (element.tagName=='IMG')
{
if (/\.png$/.test(element.src))
{
src = element.src;
element.src = "/bitrix/templates/blank.gif";
}}
else
{
src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i)
if (src)
{
src = src[1];
element.runtimeStyle.backgroundImage="none";
}}
if (src) element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";
}}

function show_big_picture(fn)
{
   document.getElementById('big_picture').src = fn;
   fixPNG(document.getElementById('big_picture'));
}

function toggle(id)
{
  d = document.getElementById(id).style.display;
  if (d == 'none') document.getElementById(id).style.display = 'block';
  else document.getElementById(id).style.display = 'none';
}

function toggle_text(id, text_id, text1, text2)
{
  d = document.getElementById(id).style.display;
  if (d == 'none') document.getElementById(text_id).innerHTML = text1;
  else document.getElementById(text_id).innerHTML = text2;
}

var choice = new Array(3);
choice[1] = true; choice[2] = true; choice[3] = true; choice[4] = true; choice[5] = true;
choice[6] = true; choice[7] = true; choice[8] = true; choice[9] = true; choice[10] = true;
var prices = new Array(3);
prices[1] = 0; prices[2] = 0; prices[3] = 0; prices[4] = 0; prices[5] = 0;
prices[6] = 0; prices[7] = 0; prices[8] = 0; prices[9] = 0; prices[10] = 0;
var current_choice;
var current_price = 0;
var current_spec = 0;
var hiddenImg = new Array();

var basket = new Array();

////////////// functions for basket ///////////////////
function compare_item_num_text(item_num)
{
    if (item_num == 1)
    {
        $("#items_text").html("впечатление");
    }
    else if ((item_num >= 2) && (item_num <= 4))
    {
        $("#items_text").html("впечатления");
    }
    else
    {
        $("#items_text").html("впечатлений");
    }
}
function check_basket(name, img, id, price)
{
    var item_is_checked = $("#" + id + "_ch").is(":checked");
//    var item_span = $(th).parent().parent().children("td:first").children("span");
    if (item_is_checked) {
//        add_to_basket(name, img, id, price, item_span);
        add_to_basket(name, img, id, price);
    } else {
        remove_from_basket(name, img, id, $("#" + id + "_ch").parent().parent().children().children(".remove_choice").val(), price);
    }
}
function add_to_basket(name, img, id, price)
{
	current_choice = 0;
	for (var i = 10; i > 0; i--) if (choice[i]) current_choice = i;
	//if (current_choice == 10 || current_choice == 0) document.getElementById('main_choice').style.display = 'none';
	//else document.getElementById('main_choice').style.display = 'block';
	if (current_choice)
	{
//        th.parent().children(".remove_choice").val(current_choice);
//        th.parent().parent().children().children("input").attr("checked", true);
        $("#" + id).parent().children(".remove_choice").val(current_choice);
        $("#" + id + "_ch").attr("checked", true);

        basket[current_choice] = id;
		document.getElementById('choice'+current_choice).style.display = 'block';
		//вставляем текст и изображение в корзину
		document.getElementById('choice'+current_choice).style.height = "";
		if (img == "/bitrix/templates/blank.gif") str_height = "height='116px'"; else str_height = "";
		var str = "<span class='minus' style='color:red;' name='" + id + "' onclick=\"remove_from_basket('" + name + "', '" + img +"', '" + id + "', '" + current_choice + "', " + price + ")\">х</span><img src='" + img + "' alt=''" + str_height + "/><div class='topic'>" + name + "</div>";
		document.getElementById('choice'+current_choice).innerHTML = str;
		//fixPNG(document.getElementById('choice'+current_choice));
		choice[current_choice] = false;

		//"очищаем" выбранный пункт
		if (document.getElementById(id))
		{
  		document.getElementById(id).onclick = function () {};
  		if (document.getElementById(id + '_pic')) document.getElementById(id + '_pic').onclick = function () {};
  		document.getElementById(id).style.color = "#666";
  		document.getElementById(id).style.border = "0px";
		}
		if (document.getElementById(id+'_gl'))
		{
		  document.getElementById(id+'_gl').onclick = function () {};
  		if (document.getElementById(id + '_pic_gl')) document.getElementById(id + '_pic_gl').onclick = function () {};
  		document.getElementById(id+'_gl').style.color = "#666";
  		document.getElementById(id+'_gl').style.border = "0px";
		}

		//работаем с ценой
		prices[current_choice] = price;
		document.getElementById('price').innerHTML = get_max_price();
		document.getElementById('max_price').value = get_max_price();

        var new_items_num = 1 + Math.abs($("#items_num").html());
        $("#items_num").html(new_items_num);
        compare_item_num_text(new_items_num);

		document.getElementById('_pack'+current_choice).value = name;
		document.getElementById('h_pack_'+current_choice).value = id;
	} else {
//        th.parent().parent().children().children("input").attr("checked", false);
        $("#" + id + "_ch").attr("checked", false);
    }
//	if (choice[1] || choice[2] || choice[3] || choice[4] || choice[5] || choice[6] || choice[7] || choice[8] || choice[9] || choice[10]) document.getElementById('main_choice').style.display = 'block';
//	else document.getElementById('main_choice').style.display = 'none';
}
function remove_from_basket(name, img, id, remove_choice, price)
{
	basket[remove_choice] = '';

	document.getElementById('choice'+remove_choice).style.display = 'none';
	//"удаляем" из корзины продукт
	document.getElementById('choice'+remove_choice).innerHTML = '<img src="/bitrix/templates/blank.gif" height="116px" alt="" />';
	choice[remove_choice] = true;
	prices[remove_choice] = 0;
	document.getElementById('price').innerHTML = get_max_price();
    document.getElementById('max_price').value = get_max_price();

    var new_items_num = Math.abs($("#items_num").html()) - 1;
    if (new_items_num == 0) {
        $("#items_num").html("0");
    } else {
        $("#items_num").html(new_items_num);
    }
    compare_item_num_text(new_items_num);

    document.getElementById('_pack'+remove_choice).value = '';
	document.getElementById('h_pack_'+remove_choice).value = '';

	//возвращаем его к жизни в списке
	if (document.getElementById(id))
	{
  	document.getElementById(id).onclick = function() { add_to_basket(name, img, id, price); };
  	if(document.getElementById(id + '_pic')) document.getElementById(id + '_pic').onclick = function() { add_to_basket(name, img, id, price); };
  	document.getElementById(id).style.color = "#FF1700";
  	document.getElementById(id).style.borderBottom = "1px dashed #FF1700";
//    $("#" + id).parent().parent().children().children("input").attr("checked", false);
    $("#" + id + "_ch").attr("checked", false);
	}
	if (document.getElementById(id+'_gl'))
	{
  	document.getElementById(id+'_gl').onclick = function() { add_to_basket(name, img, id, price); };
  	if(document.getElementById(id + '_pic_gl')) document.getElementById(id + '_pic_gl').onclick = function() { add_to_basket(name, img, id, price); };
  	document.getElementById(id+'_gl').style.color = "#FF1700";
  	document.getElementById(id+'_gl').style.borderBottom = "1px dashed #FF1700";
//    $("#" + id + "_gl").parent().parent().children().children("input").attr("checked", false);
	}
//	if (choice[1] || choice[2] || choice[3] || choice[4] || choice[5] || choice[6] || choice[7] || choice[8] || choice[9] || choice[10]) document.getElementById('main_choice').style.display = 'block';
//	else document.getElementById('main_choice').style.display = 'none';
}
function check_choice(id)
{
  for (var i = 0; i < 10; i++) if (basket[i] == id) return true;
  return false;
}
function set_pack(num)
{
  $('#big_pack').fadeOut("slow", function() {
  	document.getElementById('big_pack').src = "/images/b"+num+".jpg";
    $('#big_pack').fadeIn("slow")
  })
	document.getElementById('pack'+num).checked = true;
	document.getElementById('_pack').value = '' + num;
}
function set_pack4(id, fn, name)
{
  $('#big_pack').fadeOut("slow", function() {
  	document.getElementById('big_pack').src = fn;
    $('#big_pack').fadeIn("slow")
  })
	document.getElementById('pack'+id).checked = true;
	document.getElementById('_pack').value = '' + name;
	document.getElementById('h_pack_0').value = id;
}
function set_pack2(num)
{
	document.getElementById('pack'+num).checked = true;
	document.getElementById('big_pack').src = "/images/b2_"+num+".jpg";
	document.getElementById('_pack').value = '' + num;
        if (num == 1) document.getElementById('price').innerHTML = '1850';
        if (num == 2) document.getElementById('price').innerHTML = '3300';
        if (num == 3) document.getElementById('price').innerHTML = '5800';
}
function set_pack3(num, img, price, code, name, short_text, anons_text, id)
{
  var str = '' +
  '<img src="' + img + '" alt="" style="width:221px; height:237px" />' +
  '<div class="name">' +
  '<h3>' + name + '</h3>' +
  '<span class="grey">' + short_text + '</span>' +
  '<p>' +
  anons_text +
  '<br /><a href="/portfolio/' + code +'">Подробнее</a>' +
  '</p>' +
  '<h2>' + price + '&nbsp;грн.</h2>' +
  '</div>';

	document.getElementById('pack'+num).checked = true;
	document.getElementById('_pack').value = '' + code;
	document.getElementById('gift').innerHTML = str;
	document.getElementById('product_id').value = id;
}
function get_max_price()
{
	var max_price = 0;
	for (var i = 1; i<11; i++) if (prices[i] > max_price) max_price = prices[i];
	return max_price;
}
function show_specs(from, url)
{
  if (url == undefined) url = "portfolio";
	if ((current_spec+1) > specs.length) current_spec = 0;
	if (current_spec < 0) current_spec = specs.length - 1;
	num_of_element = from;
	for(var i = 0; i < 5; i++)
	{
		if ((num_of_element+1) > specs.length) num_of_element = 0;
		if (num_of_element < 0) num_of_element = specs.length - 1;
		str = "<a style='display:inline;' href='/" + url + "/" + specs[num_of_element].code + "'><img height='116px' src='" + specs[num_of_element].url + "' alt='' /></a><div class='topic'><a style='color:#999;font-size:100%' href='/" + url + "/" + specs[num_of_element].code + "'>" + specs[num_of_element].name + "</a> <a href='/" + url + "/" + specs[num_of_element].code + "'>";
		if (specs[num_of_element].posts > 0) str = str + specs[num_of_element].posts;
		str = str + "</a><div class='red'><a href='/" + url +"/" + specs[num_of_element].code + "'>" + specs[num_of_element].short_text + "</a></div></div>";
		document.getElementById('spec'+i).innerHTML =  str;
		num_of_element++;
	}
}
function prepare_form(form)
{
	if (document.getElementById('_pack').value == '') alert('Выберите упаковку');
	else form.submit();
	//form.action.value = form.action.value + "&_pack=" + form._pack.value + "&_pack1=" + form._pack1.value + "&_pack2=" + form._pack2.value + "&_pack3=" + form._pack3.value;
	return false;
}
function prepare_form2(form)
{
  form.action = '/basket/add_handmade.php';
	if (document.getElementById('_pack').value == '') alert('Выберите упаковку');
	else form.submit();
	return false;
}
function preLoadImages()
{
	for (var i = 1; i < 6; i++)
	{
		hiddenImg[i] = new Image();
		hiddenImg[i].src = "/images/b"+i+".jpg";
	}
}
function preLoadBlyamba()
{
  newImg = new Image();
  newImg.src = "/images/what.png";
}
////////////// functions for basket ///////////////////


////////////// functions for tooltip ///////////////////
/*
originally written by paul sowden <paul@idontsmoke.co.uk> | http://idontsmoke.co.uk
modified and localized by alexander shurkayev <alshur@narod.ru> | http://htmlcoder.visions.ru
*/

preLoadBlyamba();

window.onerror = null;

tooltip = {

	/* НАЧАЛО НАСТРОЕК */

	attr_name: "tooltip", // наименование создаваемого tooltip'ого атрибута
	blank_text: "(откроется в новом окне)", // текст для ссылок с target="_blank"
	newline_entity: "  ", // укажите пустую строку (""), если не хотите использовать в tooltip'ах многострочность; ежели хотите, то укажите тот символ или символы, которые будут заменяться на перевод строки
	max_width: 0, // максимальная ширина tooltip'а в пикселах; обнулите это значение, если ширина должна быть нелимитирована

	/* КОНЕЦ НАСТРОЕК */

	t: document.createElement("DIV"),
	c: null,
	g: false,

	m: function(e){
		if (tooltip.g){
			oCanvas = document.getElementsByTagName(
			(document.compatMode && document.compatMode == "CSS1Compat") ? "HTML" : "BODY"
			)[0];
			x = window.event ? event.clientX + oCanvas.scrollLeft : e.pageX;
			y = window.event ? event.clientY + oCanvas.scrollTop : e.pageY;
			tooltip.a(x, y);
		}
	},

	d: function(){
		tooltip.t.setAttribute("id", "tooltip");
		//tooltip.t.style.filter = "alpha(opacity=85)"; // buggy in ie5.0
		document.body.appendChild(tooltip.t);
		a = document.all ? document.all : document.getElementsByTagName("*");
		aLength = a.length;
		for (var i = 0; i < aLength; i++){

			//if (a[i].tagName == "A" || a[i].tagName == "BUTTON" || (a[i].tagName == "INPUT" && (a[i].type == "submit" || a[i].type == "button" || a[i].type == "reset"))) a[i].onclick = self.focus;

			if (!a[i]) continue;

			tooltip_title = a[i].getAttribute("title");
			tooltip_alt = a[i].getAttribute("alt");
			tooltip_class = a[i].getAttribute("class");
			tooltip_blank = a[i].getAttribute("target") && a[i].getAttribute("target") == "_blank" && tooltip.blank_text;
			if (tooltip_class == "smile_tooltip") {
  			if (tooltip_title || tooltip_blank){
  				a[i].setAttribute(tooltip.attr_name, tooltip_blank ? (tooltip_title ? tooltip_title + " " + tooltip.blank_text : tooltip.blank_text) : tooltip_title);
  				if (a[i].getAttribute(tooltip.attr_name)){
  					a[i].removeAttribute("title");
  					if (tooltip_alt && a[i].complete) a[i].removeAttribute("alt");
  					tooltip.l(a[i], "mouseover", tooltip.s);
  					tooltip.l(a[i], "mouseout", tooltip.h);
  				}
  			}else if (tooltip_alt && a[i].complete){
  				a[i].setAttribute(tooltip.attr_name, tooltip_alt);
  				if (a[i].getAttribute(tooltip.attr_name)){
  					a[i].removeAttribute("alt");
  					tooltip.l(a[i], "mouseover", tooltip.s);
  					tooltip.l(a[i], "mouseout", tooltip.h);
  				}
  			}
  			if (!a[i].getAttribute(tooltip.attr_name) && tooltip_blank){
  				//
  			}
  		}
		}
		document.onmousemove = tooltip.m;
		window.onscroll = tooltip.h;
		tooltip.a(-99, -99);
	},

	s: function(e){
		d = window.event ? window.event.srcElement : e.currentTarget;
		if (!d.getAttribute(tooltip.attr_name)) return;
		s = d.getAttribute(tooltip.attr_name);
		if (tooltip.newline_entity){
			s = s.replace(/\&/g,"&amp;");
			s = s.replace(/\</g,"&lt;");
			s = s.replace(/\>/g,"&gt;");
			s = s.replace(eval("/" + tooltip.newline_entity + "/g"), "<br />");
			tooltip.t.innerHTML = s;
		}else{
			if (tooltip.t.firstChild) tooltip.t.removeChild(tooltip.t.firstChild);
			tooltip.t.appendChild(document.createTextNode(s));
			//tooltip.t.innerText = s;
		}
		tooltip.c = setTimeout("tooltip.t.style.visibility = 'visible';", 500);
		tooltip.g = true;
	},

	h: function(e){
		tooltip.t.style.visibility = "hidden";
		if (!tooltip.newline_entity && tooltip.t.firstChild) tooltip.t.removeChild(tooltip.t.firstChild);
		clearTimeout(tooltip.c);
		tooltip.g = false;
		tooltip.a(-99, -99);
	},

	l: function(o, e, a){
		if (o.addEventListener) o.addEventListener(e, a, false); // was true--Opera7b workaround!
		else if (o.attachEvent) o.attachEvent("on" + e, a);
			else return null;
	},

	a: function(x, y){
		oCanvas = document.getElementsByTagName(
		(document.compatMode && document.compatMode == "CSS1Compat") ? "HTML" : "BODY"
		)[0];

		w_width = window.innerWidth ? window.innerWidth + window.pageXOffset : oCanvas.clientWidth + oCanvas.scrollLeft;
		w_height = window.innerHeight ? window.innerHeight + window.pageYOffset : oCanvas.clientHeight + oCanvas.scrollTop;

		tooltip.t.style.width = "auto";

		t_width = window.event ? tooltip.t.clientWidth : tooltip.t.offsetWidth;
		t_height = window.event ? tooltip.t.clientHeight : tooltip.t.offsetHeight;

		if ((tooltip.max_width) && (t_width > tooltip.max_width)){
			tooltip.t.style.width = tooltip.max_width + "px";
			t_width = window.event ? tooltip.t.clientWidth : tooltip.t.offsetWidth;
		}

		t_extra_width = 7; // CSS padding + borderWidth;
		t_extra_height = 5; // CSS padding + borderWidth;

		tooltip.t.style.left = x + 8 + "px";
		tooltip.t.style.top = y + 8 + "px";

		while (x + t_width + t_extra_width > w_width){
			--x;
			tooltip.t.style.left = x + "px";
			t_width = window.event ? tooltip.t.clientWidth : tooltip.t.offsetWidth;
		}

		while (y + t_height + t_extra_height > w_height){
			--y;
			tooltip.t.style.top = y + "px";
			t_height = window.event ? tooltip.t.clientHeight : tooltip.t.offsetHeight;
		}
	}
}

var root = window.addEventListener || window.attachEvent ? window : document.addEventListener ? document : null;
if (root){
	if (root.addEventListener) root.addEventListener("load", tooltip.d, false);
	else if (root.attachEvent) root.attachEvent("onload", tooltip.d);
}
////////////// functions for tooltip ///////////////////

document.onclick = function (e) {
//if (document.getElementById('what') == null) return false;
e = e || event; var t = e.target || e.srcElement;
if (((t.offsetParent != null && t.offsetParent.id != "what" && t.id != "what" && t.id != "about_smile") || (t.id == "close_smile")) && document.getElementById('what')) { document.getElementById('what').style.display='none'; }
if (((t.offsetParent != null && t.offsetParent.id != "delivery" && t.id != "delivery" && t.id != "smile_delivery") || (t.id == "close_delivery")) && document.getElementById('delivery')) { document.getElementById('delivery').style.display='none';}
}
if (document.captureEvents) document.captureEvents(Event.CLICK);

function change_order_sum()
{
  var os = parseInt($('#order_sum').val());
  for (var i = 1; i < 4; i++)
  {
    var elem = $('#delivery_' + i).get();
    if (elem[0].checked) os += delivery[i];
  }
  $('#order_sum_text').html(number_format(os, 0, '', ' '));
}


function number_format(number, decimals, dec_point, thousands_sep){
  var exponent = "";
  var numberstr = number.toString ();
  var eindex = numberstr.indexOf ("e");
 var i, z;
  if(eindex > -1){
    exponent = numberstr.substring (eindex);
    number = parseFloat (numberstr.substring (0, eindex));
  }

  if(decimals != null){
    var temp = Math.pow (10, decimals);
    number = Math.round (number * temp) / temp;
  }
  var sign = number < 0 ? "-" : "";
  var integer = (number > 0 ?
      Math.floor (number) : Math.abs (Math.ceil (number))).toString ();

  var fractional = number.toString ().substring (integer.length + sign.length);
  dec_point = dec_point != null ? dec_point : ".";
  fractional = decimals != null && decimals > 0 || fractional.length > 1 ? (dec_point + fractional.substring (1)) : "";
  if(decimals != null && decimals > 0){
    for(i = fractional.length - 1, z = decimals; i < z; ++i)
      fractional += "0";
  }

  thousands_sep = (thousands_sep != dec_point || fractional.length == 0) ?
                  thousands_sep : null;
  if(thousands_sep != null && thousands_sep != ""){
  for (i = integer.length - 3; i > 0; i -= 3)
   integer = integer.substring (0 , i) + thousands_sep + integer.substring (i);
  }
  return sign + integer + fractional + exponent;
}

function change_transit_text()
{
  var elem = $('#delivery_3').get();
  if (elem[0].checked) $("#transit_text").html("<br />и&nbsp;доставки другому человеку:");
  else $("#transit_text").html(":");
}

function show_transit_fields()
{
	$(".forward").toggle();
	var tmp = $("#transfer_address textarea").get(0).value;
	$("#transfer_address textarea").get(0).value = $("#personal_notes textarea").get(0).value;
	$("#personal_notes textarea").get(0).value = tmp;

  var elem = $('#delivery_3').get();
  if (elem[0].checked)
  {
    $("#transfer_to").show();
    $("#transfer_address").show();
    $("#transfer_time").show();
    $("#transfer_address_field").attr("name", "PERSONAL_NOTES");
    $("#personal_notes_field").attr("name", "TRANSFER_ADDRESS");
    $("#transfer_time_field").attr("name", "DATE_OF_DELIVERY");
    $("#date_of_delivery_field").attr("name", "TRANSFER_TIME");
  }
  else
  {
    $("#transfer_to").hide();
    $("#transfer_address").hide();
    $("#transfer_time").hide();
    $("#transfer_address_field").attr("name", "TRANSFER_ADDRESS");
    $("#personal_notes_field").attr("name", "PERSONAL_NOTES");
    $("#transfer_time_field").attr("name", "TRANSFER_TIME");
    $("#date_of_delivery_field").attr("name", "DATE_OF_DELIVERY");
  }

}
