function preload(images) {
    if (typeof document.body == "undefined") return;
    try {
      var div = document.createElement("div");
      var s = div.style;
      s.position = "absolute";
      s.top = s.left = 0;
      s.visibility = "hidden";
      document.body.appendChild(div);
      for (var i = 0; i < images.length; i++) {
      	div.innerHTML += "<img src=\""+ images[i] +"\" />";
      }
    } catch(e) {}
}

$(function init() {
	$(".bubble").bind("mouseover", function(e) {
		$(".bubble").removeClass("active");
		$(this).addClass("active");
		$(".bubbles .column2").css("background-image", "url(/bitrix/templates/chembalt/images/pic-" + $(this).find(".number").text() + ".png)")
	});

	preload(new Array('/bitrix/templates/chembalt/images/pic-1.png', '/bitrix/templates/chembalt/images/pic-2.png', '/bitrix/templates/chembalt/images/pic-3.png', '/bitrix/templates/chembalt/images/pic-4.png', '/bitrix/templates/chembalt/images/pic-5.png'));

	catSelectorId = $(".selector");

	catSelectorId.bind("click", function(e) {
		catListId = $(this).find(".categories");

		if($(this).hasClass("tab")) {
			closeMenu();
			return;
		}
		else {
			closeMenu();
		}

		if(catListId.data("opened") != "true") {
			catListId.css("display", "block").data("opened", "true");
			$(this).addClass("tab");
		}
		else {
			catListId.css("display", "none").data("opened", "false");
			$(this).removeClass("tab");
		}
	})

	$(".top-menu, .catalogue").bind("mouseout", function(e) {
		closeMenu();
	});
    var elItemAdd = $("#item-added");
    if(elItemAdd.length){
        $.noticeAdd({
            text: elItemAdd.text(),
            stay: false
        });
    }
    
    $('.menu-left li').each(function(){
        var t = $(this);
        if ( $(this).has("ul").length ) {
            $(this).children('.wrapper').append('<div class="switch">&nbsp;</div>');
        } 
    }); 
    
    $(".menu-left .wrapper .switch").click( function() {
        var holder = $(this).closest('li');
        var submenu = holder.children('ul');
        if ( holder.hasClass("hide-children") ) {
            submenu.slideDown();
        } else {
            submenu.slideUp();
        }
        holder.toggleClass("hide-children");
    } );
    
    $(".menu-left .switch").each(function() {
        var holder = $(this).closest('li');
        if ( !holder.find("a.active").length ) {
            $(this).click();
        }
    });
    
    // messages
    $("div.description .link-block a").click(showMessagesOnDetail);
    $("div.description .link-block span").click(showMessagesOnDetail);
    
});

function showMessagesOnDetail()
{
    var t = $(this);
    var id = t.attr("rel");
    var msg = $(".messages div."+id ).html();
    $.noticeDescAdd({
        text: msg,
        stay: true,
        type: "success"
    });
    return false;
}

function closeMenu() {
	$(".categories").css("display", "none").data("opened", "false");
	$(".selector").removeClass("tab");
}

function showLoginForm() {
	$("#login-container").removeClass("hidden");
	return false;
}

function hideLoginForm() {
	$("#login-container").addClass("hidden");
}

wdShowTab = function(tab, id) {
	var sDisplay;
	if ( !$(tab).hasClass('active') ) {
		$("#tabs .tab").removeClass('active');
		$(tab).addClass('active');
		
		sDisplay = (id=="description") ? "block" : "none";
		$("#description").css("display", sDisplay );
		sDisplay = (id=="warranty") ? "block" : "none";
		$("#warranty").css("display", sDisplay );
		sDisplay = (id=="feedback") ? "block" : "none";
		$("#feedback").css("display", sDisplay );
	}
}

wdHideVideo = function () {
	$("#video-overlay").css("display", "none");
	$("#video-container").css("display", "none");
    $("#overview_3d-container").css("display", "none");
    $("#catalog_element_video_player").get(0).sendEvent("STOP","true");
}

wdShowVideo = function () {
	var scroll = wdGetScrollXY();
	$("#video-overlay").css( {left: ""+scroll[0]+"px", top: ""+scroll[1]+"px", display: "block"});
	var winSize = wdGetWindowSize();
	winSize[0] = (winSize[0] - 480);
	winSize[1] = (winSize[1] - 420);
	( winSize[0] >0 ) ? winSize[0] = winSize[0] >>> 1 :  winSize[0] = 0;
	( winSize[1] >0 ) ? winSize[1] = (winSize[1] >>> 1)+scroll[1] :  winSize[1] = 0;
	$("#video-container").css({left: ""+winSize[0]+"px", top: ""+winSize[1]+"px", display: "block"});
}

wdShowOverview3D = function () {
	var scroll = wdGetScrollXY();
	$("#video-overlay").css( {left: ""+scroll[0]+"px", top: ""+scroll[1]+"px", display: "block"});
	var winSize = wdGetWindowSize();
	winSize[0] = (winSize[0] - 480);
	winSize[1] = (winSize[1] - 420);
	( winSize[0] >0 ) ? winSize[0] = winSize[0] >>> 1 :  winSize[0] = 0;
	( winSize[1] >0 ) ? winSize[1] = (winSize[1] >>> 1)+scroll[1] :  winSize[1] = 0;
	$("#overview_3d-container").css({left: ""+winSize[0]+"px", top: ""+winSize[1]+"px", display: "block"});
}


/**
/ THIRD FUNCTION
* getPageScroll() by quirksmode.com
*
* @return Array Return an array with x,y page scroll values.
*/
function wdGetScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
  //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}
/**
/ THIRD FUNCTION
* alertSize() by http://www.howtocreate.co.uk/tutorials/javascript/browserwindow
*
* @return Array return an array with width, height window dimensions.
*/

function wdGetWindowSize() {
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }
  
  return [ myWidth, myHeight ];
}

wdShowFeedbackForm = function(val) {
    $("#feedback-container div.feedback").css("display", "none");
    var iElm = "feedback"+val;
    $("#feedback-container div.#"+iElm).css("display", "block");
}
