var options = {
  target: "#multi_content",
  beforeSubmit: showRequest, // функция, вызываемая перед передачей
  success: showResponse, // функция, вызываемая при получении ответа
  timeout: 3000 // тайм-аут
};

var tmp_val = 1;
var bascount = '';
var basket_left = 0;
var show_wind = '';

function init_basket() {
  bascount = $("#right_menu");
  show_wind = $("#show_window");
  putItemToBasket(0, 0);
  try {
    $('#basket_content').css({left:basket_left , top: bascount.offset().top+20});
    set_top();
  } catch(e) { }

}

function set_top() {
  var fly = $('#fly');
  var doc = $(document);
  try {
    if (doc.scrollTop() > fly.offset().top) {
      jqSlideTo('right_menu', fly.offset().left + 10, doc.scrollTop() + 30, 500);
      if ($('#basket_content').css('display') == 'block') {
        jqSlideTo('basket_content', basket_left, doc.scrollTop()+20, 500);
        jqSlideTo('show_window', basket_left + 16, doc.scrollTop()+30, 500);
      }
//
      jqSlideTo('right_menu_f', fly.offset().left + 10, doc.scrollTop() + 170, 500);
//
    
    } else {
      jqSlideTo('right_menu',fly.offset().left + 10, fly.offset().top + 30, 500);
      if ($('#basket_content').css('display') == 'block') {
        jqSlideTo('basket_content', basket_left , fly.offset().top+20, 500);
        jqSlideTo('show_window', basket_left +16 , fly.offset().top+30, 500);
      }
//
      jqSlideTo('right_menu_f',fly.offset().left + 10, fly.offset().top + 170, 500);
//      
    }
  } catch(e) { }
}

function fnShowBanner() {
  fnShowOverlay();
  var w = $(window);
  var elem =  $("#banner_cont");
  elem.css("left","0");
  elem.css("width","100%");
  elem.css("top","-300");
  elem.animate({ top: (w.height() - elem.height()) / 2 + w.scrollTop() + 20 }, 1200);
}

function fnCloseBanner() {
  $("#banner_cont").hide();
  fnHideOverlay();
}

function fnBannerOsen() {
  location.href = 'http://www.kmssport.ru/catalog/child/group-1/goods-4/';
}

/* Фон старт */

function fnCreateOverlay() {
   $('<div id="site_wrap"></div>').appendTo("body");
   $("#site_wrap").prepend('<div id="site_overlay"></div>');
   $("#site_overlay").css({'width': $(window).width(), 'height': $(document).height(), 'opacity': 0.4});
   if ($.browser.msie) {
    $("#site_wrap").prepend('<iframe id="site_bigIframe" scrolling="no" frameborder="0"></iframe>');
    $("#site_bigIframe").css({'width': $(window).width(), 'height': $(document).height(), 'opacity': 0});
   }
   $("#site_overlay, #site_bigIframe").hide();
}

function fnShowOverlay(type) {
  var ox = 0;
  if (type) {
    ox = 20;
  } 
  $("#site_overlay").css({'width': $(window).width() + ox, 'height': $(document).height()}); 
   if ($.browser.msie) {
    $("#site_bigIframe").css({'width': $(window).width(), 'height': $(document).height()});
   }  
  $("#site_overlay,#site_bigIframe").fadeIn("fast").show(); 
}

function fnHideOverlay() {
  $("#site_overlay,#site_bigIframe").fadeOut("fast").hide();
}

function fnCloseOverlay() {
  $("#site_overlay,#site_bigIframe").fadeOut("fast").remove();
}

/* Прокрутка страницы */
function fnHideScroll() {
  $("body").css("overflow", "hidden");
}

function fnShowScroll() {
  $("body").css("overflow", "auto");
}
/* End */

/* Ajax заказ */

function putItemToBasket(item_id, count_obj) {
  if (count_obj>0) {
    item_count = $("#"+ count_obj +"").val();
    var url = '/ajax/get_item-'+item_id+'-'+item_count+'.htm';
  } else {
    var url = '/ajax/get_item-'+item_id+'.htm';
  }

  try {
    $.ajax({
      type: "POST",
      data: 'post',
      url: url,
      cache: false,
      success: function(page) {
      try {
        if (item_id) {
          var env = $("#envelop_"+item_id);
          var postop =  env.offset().top;
          var posleft =  env.offset().left;
          $("#hidden-fly").css("top",postop+"px");
          $("#hidden-fly").css("left",posleft+"px");
          env.css("display","none");
          $("#hidden-fly").css("display","block");
          if (env.length > 0) {
            $("#hidden-fly").animate({ left: bascount.offset().left + 5, top: bascount.offset().top + 5, opacity: 1 }, 600, function() {
              $("#right_menu").html(page);
              env.css("display","block");
              $("#hidden-fly").css("display","none");
              fnInitCompare();
              basket_show();
            });
          }
        } else {
          $("#right_menu").empty().html(page);
          fnInitCompare();
        }        
      } catch(e) { }          
      }
    });
  } catch(e) { }
  
}

function basket_show(what) {
  var wind_basket = $("#show_window");
  var basket_content = $('#basket_content');

  if (what == 2) { //убрать
    wind_basket.css({left: -950});
    wind_basket.css("display","none");
    basket_content.removeClass('no_bg');
    var fly_left = $('#fly').offset().left;


    if($("#tabs .sel").html() == "Ваши данные"){
    	if ($.browser.msie) basket_content.css("height","400px");
    	else basket_content.css("height","370px");
    }

    basket_content.animate({
      width        : "0px",
      opacity      : '0.2'
    }, 800, function(){ fnHideOverlay("dark"); set_top(); });
    $(window).scroll(function() { set_top(); })
  }

  else { //показать
    if ($(basket_content).css('width')=='0px') {
      $(window).unbind('scroll');
      divdescr = 'multi_content';
      ajax_url = '/ajax/basket.htm';
        $.ajax({
          type: "POST",
          url: ajax_url,
          cache:false,
          success: function(page) {
            $("#"+divdescr+"").empty().html(page);
            fnAfterLoad();
            fnShowOverlay("dark");
            if (wind_basket.height()) {
            var fly_left = $('#fly').offset().left + 26;
            basket_left = fly_left - 16;
            basket_content.css({left: fly_left, top: bascount.offset().top, width: '0px', height: ""+wind_basket.height()+"px", opacity:'0.2' });
            basket_content.animate({
                top: bascount.offset().top,
                width: "650px",
                opacity: 0.8
              }, 1000, function() {
              basket_content.addClass('no_bg');
              wind_basket.css({left: basket_content.offset().left, top:basket_content.offset().top});
              wind_basket.css("display","block");
            });
            }
          }
        });
      $(window).scroll(function() { set_top(); })
    }
  }
  return false;
}

function fnAfterLoad() {
  if (!$.browser.msie) {
    $("#tabs a").corner("tl tr 8px");
    $("#tab_content").corner("tr bl br 8px");
  }
  $(".count_cont").mouseover(function(){ $(this).addClass('sell_cont');  });
  $(".count_cont").mouseout(function(){ $(this).removeClass('sell_cont'); });
  //$("#multi_control div").mouseover(function(){  $("#multi_control div").removeClass('sell'); $(this).addClass('sell'); });
  //$("#multi_control div").mouseout(function(){ $(this).removeClass('sell'); });

  $(".count_min").click(function(){
    inp_obj = $("#inp_"+$(this).attr("item")+"");
    if (parseInt(intval(inp_obj.val())) > 2) {
      inp_obj.val(parseInt(intval(inp_obj.val())) - 1);
    } else {
      inp_obj.val(1);
    }
    fnPlusMin($(this).attr("item"), inp_obj.val());
  });

  $(".count_min").mouseover(function(){ $(this).addClass('chose_min');  });
  $(".count_min").mouseout(function(){ $(this).removeClass('chose_min'); });

  $(".count_plus").mouseover(function(){ $(this).addClass('chose_plus');  });
  $(".count_plus").mouseout(function(){ $(this).removeClass('chose_plus'); });

  $(".count_plus").click(function(){
    inp_obj = $("#inp_"+$(this).attr("item")+"");
    if (parseInt(intval(inp_obj.val())) < 0) {
      inp_obj.val(1);
    } else {
      inp_obj.val(parseInt(intval(inp_obj.val())) + 1);
    }
    fnPlusMin($(this).attr("item"), inp_obj.val());
  });

  $(".count_input").focus( function() { tmp_val = $(this).val(); });

  $(".count_input").change( function() {
     if (/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test($(this).val())) {
       if ($(this).val() <= 0) {
         $(this).val(tmp_val);
         alert('Допустимы только числовые значение больше 0!');
       } else {
         fnPlusMin($(this).attr("item"), $(this).val());
       }
     } else {
       $(this).val(tmp_val);
       alert('Допустимы только числовые значение больше 0!');
     }
  });

  $(".count_input").keyup( function() {
    if (/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test($(this).val())) {
       if ($(this).val() <= 0) {
         $(this).val(tmp_val);
       }
    } else {
       $(this).val(tmp_val);
    }
  });

  $(".item_del").click(function(){
    fnDellChartItem("multi_content", $(this).attr("item"));
  });

  $(".item_del").mouseover(function(){ $(this).addClass('sel_del');  });
  $(".item_del").mouseout(function(){ $(this).removeClass('sel_del'); });

}

function fnShowOrder(divdescr) {
  SetLoader(divdescr);
  $.ajax({
    type: "POST",
    url: 'ajax/order.htm',
    cache:false,
    success: function(page) {
      $("#"+divdescr+"").empty().html(page);
      $("#order_form").submit(function() {
        $(this).ajaxSubmit(options);
        return false;
      });
      fnAfterLoad();
      $("#order_company_id").focus();
      $("#order_company_id").focus();
    }
  });
}

function saveFieldsAt(){

}

function fnShowBasket(divdescr) {
  var order_form_fields = $("#order_form").serialize();
  SetLoader(divdescr);
  $.ajax({
    url: 'ajax/savefield.htm?'+order_form_fields,
    success: function(html) {
      $.ajax({
        type: "POST",
        url: 'ajax/basket.htm',
        cache:false,
        success: function(page) {
          $("#"+divdescr+"").empty().html(page);
          fnAfterLoad();
        }
      });
    }
  });
}

function fnScrollNextPrev(ord, type) {
  if (!ord) ord = 1;
  now_page = parseInt($("#ord_now").val());
  items = $(".table_basket tr[order='true']");
  items_count = items.length;
  all_pages = Math.ceil( items_count / ord );
  if (type == 'next') {
    old_page = now_page;
    if (all_pages > old_page) {
      first_item = now_page * ord;
      now_page = now_page + 1;
      last_item = now_page * ord;
    }
  } else if (type == 'prev') {
    old_page = now_page;
    if (old_page > 1) {
      now_page = now_page - 1;
      last_item = now_page * ord;
      first_item = (now_page * ord) - ord;
    }
  }

  if (now_page > 0) {
    items.each(function (i) {
      item_id = i + 1;
      if (type == 'next' && (all_pages > old_page)) {
        if ((item_id > last_item) || (item_id <= first_item)) {
          $(this).hide();
        } else {
          $(this).show();
        }
      } else if (type == 'prev' && old_page > 1) {
        //alert('i='+item_id+'&l='+last_item+'&f='+first_item+'');
        if ((item_id <= last_item) && (item_id > first_item)) {
          $(this).show();
        } else {
          $(this).hide();
        }
      }
    });
    $("#ord_now").val(now_page);
  }
  //$(".table_basket tr[order='next']").removeClass("order_tr").addClass("hidden_tr");
}

function fnCloseBanner() {
  $("#banner_cont").hide();
  fnHideOverlay();
}

function fnFormClose(win_id) {
  $("#img_cart").hide();
  $("#"+win_id+"").hide();
  fnHideOverlay();
  //fnShowScroll();
  left_b = $("#smbg").offset().left;
  left_p = $("#smbg").offset().left + $("#smbg").width() - price_b.width();
  basket_b.css("left", left_b);
  price_b.css("left", left_p);
}

function showRequest(formData, jqForm, options) {
  var queryString = $.param(formData);
  //alert('Вот что мы передаем: \n\n' + queryString);
  SetLoader('multi_content');
  return true;
}

function SetLoader(win_id) {
  $("#"+win_id+"").html($("#loader").html());
}


function showResponse(responseText, statusText)  {
  fnAfterLoad();
}


function fnPlusMin(item_id, count) {
  $.ajax({
    type: "POST",
    url: '/ajax/get_item-'+item_id+'.htm?count='+count+'',
    cache:false,
    success: function(page) {
      bascount.empty().html(page);
      $("#td_inp_"+item_id+"").html($("#item_price_inp").val());
      $("#intogo").html($("#it_price").html());
      $("#intogo_text").html($("#it_count").html());
    }
  });
}

function fnEmptyChart(divdescr) {
  SetLoader(divdescr);
  $.ajax({
    type: "POST",
    url: '/ajax/empty_basket.htm',
    cache:false,
    success: function(page) {
      putItemToBasket(0);
      $.ajax({
        type: "POST",
        url: '/ajax/basket.htm',
        cache:false,
        success: function(page) {
          $("#"+divdescr+"").empty().html(page);
          fnAfterLoad();
        }
      });
    }
  });
}

function fnDellChartItem(divdescr, item_id) {
  SetLoader(divdescr);
  $.ajax({
    type: "POST",
    url: '/ajax/basketdel-'+item_id+'.htm',
    cache:false,
    success: function(page) {
      putItemToBasket(0);
      $.ajax({
        type: "POST",
        url: '/ajax/basket.htm',
        cache:false,
        success: function(page) {
          $("#"+divdescr+"").empty().html(page);
          fnAfterLoad();
        }
      });
      //$("#multi_control").hide();
    }
  });
}


function intval(mixed_var, base) {
  var tmp;
  var type = typeof( mixed_var );
  if (type == 'boolean'){
    if (mixed_var == true) {
      return 1;
    } else {
      return 0;
    }
  } else if (type == 'string') {
    tmp = parseInt(mixed_var * 1, 10);
    if (isNaN(tmp) || !isFinite(tmp)) {
      return 0;
    } else {
      return tmp.toString(base || 10);
    }
  } else if (type == 'number' && isFinite(mixed_var) ) {
    return Math.floor(mixed_var);
  } else {
    return 0;
  }
}

function fnSendOrder(form_name) {
	var regExpObj=/(.+)@(.+)\.(.+)/;

  if (!form_name.order_name.value.match(/^[^\d]+$/)) {
    alert("Укажите контактное лицо!");
    form_name.order_name.focus();
    return false;
  }

  if (form_name.order_email.value) {
    if(!regExpObj.test(form_name.order_email.value)){
      alert("Укажите корректный email!");
      form_name.order_email.focus();
      return false;
    }
  }
  
  if (!form_name.order_city.value.match(/^[^\d]+$/)) {
    alert("Укажите город!");
    form_name.order_city.focus();
    return false;
  }

  if (!form_name.order_phone.value.match(/^\d+$/)) {
    alert("Правильно укажите телефон (только цифры)");
    form_name.order_phone.focus();
    return false;
  }

  $("#order_form").submit();
}


function fnShowWindow(win_id, type, ajax_url, divdescr) {
  //fnHideScroll();
  fnShowOverlay();
  var w = $(window);
 /* if ($("#img_cart").length == 0) {
    $('<div id="img_cart"></div>').appendTo("body");
  } */

  var elem =  $("#"+win_id+"");
  if (type == 2) {
    elem.animate({ top: (w.height() - elem.height())/2+w.scrollTop() + 20 }, 1200);
  } else {
    elem.css("top",(w.height()-elem.height())/2+w.scrollTop() + "px");
    elem.css("left",(w.width()-elem.width())/2+w.scrollLeft() + "px");
  }
  if (ajax_url && divdescr) {
    SetLoader(divdescr);
    $.ajax({
      type: "POST",
      url: ajax_url,
      cache:false,
      success: function(page) {
        $("#"+divdescr+"").empty().html(page);
        fnAfterLoad();
        $("#img_cart").css("top",($("#"+win_id+"").offset().top + $("#"+win_id+"").height() - 110 + "px"));
        $("#img_cart").css("left",($("#"+win_id+"").offset().left - 50 + "px"));
        $("#img_cart").show();
      }
    });
  }
  $("#"+win_id+"").show();
}

// Ограничиваем ввод в поля ввода количества только цифрами
function recountByKey(el){
	el.value = el.value.replace(/\D+/, "");
	if(!el.value || el.value==0) el.value = 1;
}

/* Сравнение */

var wnd_url, wnd_width, wnd_height;

function fnInitCompare() {
  $(".callwnd").click(function(){ fnSetParams($(this)); return false; }).fancybox({
    'content': 'Поиск данных',
    'autoDimensions': false,
    'width': 250, 
    'height': 155, 
    'speedIn': 300, 
    'speedOut': 300,
    'centerOnScroll': true, 
    'showCloseButton': true,
    'enableEscapeButton': true,
    'hideOnContentClick': false, 
    'hideOnOverlayClick': false,
    'onComplete': function() {
      fnShowWindow(wnd_width, wnd_height, wnd_url);
    },
    'onCleanup': function() {
      $("#fancybox-inner").html('');
    },
    'onClosed': function() {
      //
    }    
  }); 
}

function fnSetParams(obj) {
  var w_width = $(window).width();
  var w_height = $(window).height();
  
  wnd_url = obj.attr('wnd');  
  if (w_width > 1200) {
    wnd_width = w_width - 100;   
    wnd_height = w_height - 100;  
  } else {
    wnd_width = obj.attr('wndw');
    wnd_height = obj.attr('wndh');
  }
}   

function fnShowWindow(w, h, link, ltext) {
  if (!ltext) ltext = 'Поиск данных...';
  $("#fancybox-inner").html(''+$("#loader").html()+'<div align="center">'+ ltext +'</div>');
  $.ajax({
    type: 'POST',
    url: link,
    cache:false,
    success: function(page) {
      var lmin = Math.round((w - $("#fancybox-wrap").width())/2);
      var tmin = Math.round((h - $("#fancybox-wrap").height())/2);
      $("#fancybox-wrap").animate({ width: w +'px', height: h + 'px', left: '-=' + lmin + 'px', top: '-=' + tmin + 'px' }, 800, function(){
        $("#fancybox-inner").css({ width: w - 20 + 'px', height: 'auto', padding: '0px 0px 0px 0px' });
        $("#fancybox-inner").html(page);
        $("#compare_show").css({'width': wnd_width - 20, 'height': wnd_height - 27 });
        $("#cmp_area").css({'width': wnd_width - 32, 'height': wnd_height - 35 });
        
        $("a.cmp_image").fancybox({
          'speedIn': 300, 
          'speedOut': 300,
          'centerOnScroll': true, 
          'showCloseButton': true,
          'enableEscapeButton': true,
          'hideOnContentClick': false, 
          'hideOnOverlayClick': false,          
          'onComplete': function() {
            $("#fancybox-close").unbind('click').click(function(){
              if ($("#compare_show").length > 0) {
                $.fancybox.close();
              } else {
                fnSetParams($("#compare_href"));
                fnShowWindow(wnd_width, wnd_height, wnd_url);
              }
            });
          }
        });
      });
    }
  });
}

function fnAddToCompare(item_id, obj) {
  var url = '/ajax/compare/add-'+item_id+'.htm';  
  if ($(obj).text() == 'Исключить') {
    fnDellCompare(item_id, obj);
  } else {
    try {
      $.ajax({
        type: "POST",
        data: 'post',
        url: url,
        cache: false,
        success: function(page) {
        try {
          if (item_id) {
            var env = $("#compenv_"+item_id);
            var hfly = $("#hidden-fly");
            var postop =  $(obj).offset().top;
            var posleft =  $(obj).offset().left;
            hfly.css("top",postop+"px");
            hfly.css("left",posleft+"px");               
            hfly.css("display","block");
            if (env.length > 0) {
              hfly.animate({ left: bascount.offset().left + 5, top: bascount.offset().top +155 +190, opacity: 1 }, 400, function() {
                $("#compare_fly").show();
                hfly.hide();
              });
            }                   
            $(obj).text('Исключить');
            /*$(obj).click(function(){
              fnDellCompare(item_id, obj);
            }); */
            $("#compare_fly").show();
          } else {

          }
        } catch(e) { }

        }
      });
    } catch(e) { }
  }
}

function fnDellCompare(item_id, obj) {
  var url = '/ajax/compare/del-'+item_id+'.htm';
  $.ajax({
    type: "POST",
    data: 'post',
    url: url,
    cache: false,
    success: function(page) {
      if (item_id) {
        if (obj) {
          $(obj).unbind('click');
          $(obj).text('Сравнить');
          $(obj).click(function(){
             fnAddToCompare(item_id, obj);
          });
        }
        if ($.trim(page)) {
          eval(page);
        }
      }
    }
  });  
}

function fnClearCompare() {
  var url = '/ajax/compare/delall.htm';
  $("#fancybox-inner").html(''+$("#loader").html()+'');
  $.ajax({
    type: "POST",
    data: 'post',
    url: url,
    cache: false,
    success: function(page) {
      $.fancybox.close();
      $("#compare_fly").hide();
    }
  });  
}

/* Social */

function SocialShare(id) { 
  if (id) {
    var c = $("#"+ id +"");
  } else {
    var c = $("#share");
  }  
  var b = c.attr("page");
  function a(e) {
    window.open(e,"sharer","toolbar=0,status=0,width=626,height=470");
  };
  c.find(".mailru").click(function(){
    a("http://connect.mail.ru/share?share_url="+b+"?social=1");
    return false;
  });
  c.find(".vk").click(function(){
    a("http://www.vkontakte.ru/share.php?url="+b+"?social=1");
    return false;
  }); 
  c.find(".odnk").click(function(){
    a("http://www.odnoklassniki.ru/dk?st.cmd=addShare&st.s=1000&st._surl="+b+"?social=1");
    return false;
  });  
  c.find(".twitter, .email").attr("target","_blank");
  c.find(".facebook").click(function(){
   a("http://www.facebook.com/sharer.php?u="+b+"?social=1");
   return false;
  });
  c.find(".livejournal").click(function(){
   var f = window.open("","","toolbar=0,resizable=1,scrollbars=1,status=1,width=830,height=700");
   var e = $('<form method="POST" accept-charset="utf-8" />').attr("action","http://www.livejournal.com/update.bml?usescheme=nonavigation").appendTo(f.document);
   var g = {subject:$(this).data("title"),event:$(this).data("text"),transform:1};
   for (name in g) {
     $('<input type="hidden" />').attr("name",name).attr("value",g[name]).appendTo(e)
   };
   e.submit();
   return false;
  });
}

/* Main popup menu */

function fnDivOn(id) { $(id).show(); }
function fnDivOff(id) { $(id).hide(); }
function fnOff(id) { e = $("#"+id+""); e.hide(); }
function fnOn(id, parent, y, x) { if (!y) y = 21; if (!x) x = 0; e = $("#"+id+""); e.css("top", ($(parent).offset().top + y + "px")); e.css("left", ($(parent).offset().left - x + "px")); e.show().fadeIn("fast"); }

/* PopUp Banner */

function fnShowBanner() {  
  fnShowOverlay(1);
  $("body").addClass('overhidden');
  var w = $(window);
  var elem =  $("#banner_cont");
  elem.css("left","0");
  elem.css("width","100%");
  elem.animate({ top: (w.height() - elem.height())/2+w.scrollTop() }, 1200);
  $(window).scroll(function(){
    var w = $(window);    
    var top_cord = w.scrollTop() + 100;
    $("#banner_cont").animate({ top: top_cord }, 1200);
  })
}

function fnCloseBanner() {
  $("#banner_cont").hide();
  $(window).unbind('scroll');
  fnHideOverlay();
  $("body").removeClass('overhidden');
}

function isiPad() {
  return (navigator.platform.indexOf("iPad") != -1);
}

/* Доставка */

function fnShowZone(id, obj) {
  $("#zone_buts a").removeClass('sel');
  $(obj).addClass("sel");
  $(".zone_tbl", $("#zones")).hide();
  $("#"+id+"").show();
}
