
jQuery.preloadImages = function()
{
  for(var i = 0; i<arguments.length; i++)
  {
    jQuery("<img>").attr("src", arguments[i]);
  }
}

function inquiry_preload() {
    $.preloadImages(
        "/media/img/site/icon-left-top.png",
        "/media/img/site/icon-center-bottom.png",
        "/media/img/site/icon-center-top.png",
        "/media/img/site/icon-left-bottom.png",
        "/media/img/site/icon-right-bottom.png",
        "/media/img/site/icon-right-top.png",
        "/media/img/site/icon-side1.png",
        "/media/img/site/icon-side2.png");
}

function setup_product_types_mouseover() {
  $("#sidenav li").each(function() {
        $.preloadImages($(this).attr("name"));

	$(this).mouseover(function(){
	    var img_url = $(this).attr("name");

        var img = $("#imageholder_content");
        if (img.attr('src') == img_url)
            return false;
            
        img.hide();
	    img.attr("src", img_url);
        img.fadeIn(400);

        // set all li elements as inactive
        // activate only one
        $("#sidenav li").removeClass("active");
        $(this).addClass("active");
	});

  });
}


function apply_product_image(img_url) {
        var img = $("#product_details_main_img");
        img.fadeOut(400, function() {
            img.attr("src", img_url);
            img.fadeIn(500);
        });
}

function ie_apply_product_image(img_url) {
        var img = $("#product_details_main_img");
        img.fadeOut(400, function() {
            var holder = $("#product_image_holder");
            holder.html('<img id="product_details_main_img" title="" style="display:none" alt="image" name="' + img_url + '" src="' + img_url + '"');
            img = $("#product_details_main_img");
            img.fadeIn(500);
        });

}


function switch_product_desc(e) {
    var eid = e.attr("id");
    var li_id = eid + "_li";
    var item_desc = $("#" + li_id).attr("name");
    var default_desc = $("#item_desc_holder").attr('name');
    if (item_desc) {
        $("#item_desc_holder").html(item_desc);
    } else {
        $("#item_desc_holder").html(default_desc);
    }
}


function activate_product_mouseover_image(a_id) {
    var e = $("#" + a_id);
    var img_url = e.attr("name");
    var img = $("#product_details_main_img");

    if (img.attr('src') == img_url)
        return false;

    switch_product_desc(e);

    // set circle image as active and make
        // the others inactive
    $("#product_content_desc a").addClass("dot_inactive");
    $("#product_content_desc a").removeClass("dot_active");
    e.addClass("dot_active");

    apply_product_image(img_url);
}


function ie_activate_product_mouseover_image(a_id) {
    var e = $("#" + a_id);
    var img_url = e.attr("name");
    var img = $("#product_details_main_img");

    if (img.attr('name') == img_url)
        return false;

    switch_product_desc(e);

    // set circle image as active and make
        // the others inactive
    $("#product_content_desc a").addClass("dot_inactive");
    $("#product_content_desc a").removeClass("dot_active");
    e.addClass("dot_active");

    ie_apply_product_image(img_url);
}


var timeout_handlers = new Array();

function clear_timeouts() {
    if (!timeout_handlers) { return;}

    for (var x=0; x<timeout_handlers.length; x++) {
        clearTimeout(timeout_handlers[x]);     
    }
    timeout_handlers = new Array();
}

function setup_product_item_mouseover() {

  var is_ie = $("#ie_block_mark:visible:first")[0];
  var hd;
  
  $("#product_content_desc a").each(function() {

    if (!is_ie) {
        $.preloadImages($(this).attr("name"));

        $(this).mouseover(function(){
            clear_timeouts();
            hd = setTimeout("activate_product_mouseover_image('" + $(this).attr("id")+ "')", 400);
            timeout_handlers.push(hd);
        });
    } else {
        $(this).mouseover(function(){
            clear_timeouts();
            hd = setTimeout("ie_activate_product_mouseover_image('" + $(this).attr("id")+ "')", 400);
            timeout_handlers.push(hd);
        });
    }

  });
}

function product_list_fadein_content() {
   var elements = $("#item_desc_holder");
   var img = $("#product_details_main_img");
   elements.hide();
   img.hide();

   elements.fadeIn(500);
   img.fadeIn(900);
}


function fadein_content() {
   var elements = $(".sidebar, #footer");
   var img = $("#imageholder_content");
   elements.hide();
   img.hide();

   elements.fadeIn(500);
   img.fadeIn(900);
}


function close_inquiry_form() {
    $("#popup").hide();
    $(".lightbox-fader").hide();
}

function save_inquiry_form() {
      var form_obj = $("#inquiry_form_holder form");
      var form_data = form_obj.formSerialize();
      var item_id = $("#popup").attr('name');

      if ($("#is_masterpiece_holder")[0]) {
        url = "/catalog/inquiry/save/" + item_id + "/1/";
      } else {
        url = "/catalog/inquiry/save/" + item_id + "/";
      }

      jQuery.ajax({
            type: "POST",
            url: url,
            datatype: "html",
            scriptCharset: "utf-8" ,
            contentType: "application/x-www-form-urlencoded; charset=utf-8",
            data: form_data,
            timeout: 3000000,

            success: function(r) {
                $("#inquiry_form_holder").html(r);
                if (!r.match('class="error"')) {
                    $("#inquiry_form_holder :input").val("");
                    $("#popup").hide();
                    $(".lightbox-fader").hide();
                    $("#thanks_box").show();
                    $("#thanks_box").fadeOut(2000);
                }
            }
       });
}
