﻿$(function() {

/* START Tooltips */
$(".icons-info").live('mouseover', function(evo) {
  var $tip = $("#"+$(this).attr("id")+"_tt");
  var deltaX = 0; if ($tip.width()+$(this).offset().left > $("body").width()) deltaX = -($tip.width()+$(this).offset().left - $("body").width() + 50);
  $tip.fadeTo("fast", 1);
  $tip.offset({ left: $(this).offset().left + 10 + deltaX, top: $(this).offset().top + 10 });
  //$tip.mouseover(function() { $tip.show() });
  //$tip.mouseout(function() { $(this).fadeTo("slow", 0, function() {$(this).hide();}); });
});
$(".icons-info").live('mouseout', function() {
  var $tip = $("#"+$(this).attr("id")+"_tt");
  $tip.fadeTo("slow", 0, function() { $tip.hide(); });
});
$(".icons-info").click(function() { return false; });
/* END Tooltips */

/* START Popup окошки */
$("a.thickbox").click(function() {
  var wnd = $(this).attr("wnd");
  $("#progress").show();
  $(wnd).load($(this).attr("href"), { rnd: Math.random() }, function() {
      $("#progress").hide(); Cufon.replace('h2'); Cufon.replace('.cufon'); 
      window.scrollTo(0, 0);
      SetCompareAccordition(); SetFavouriteTitles(); SetCompareTitles();
  });
  $(wnd).parent().addClass("open");
  return false;
});

$(".popup-close").live("click", function() {
  $(this).parent().parent().removeClass("open");
  return false;
});
/* END Popup окошки */

$(".tabs-head li").click(function() {
    var tab = $(this).find("a").attr("href");
    if ($(tab).attr("url")) {
        $("#progress").show(); Math.random
        $(tab).load($(tab).attr("url"), { rnd: Math.random() }, function() { InitOptionsFilters(); $("#progress").hide(); });
    }
    $(".tabs-head li").removeClass("curent");
    $(this).addClass("curent");
    $(".tabs-body div").removeClass("curent");
    $(tab).addClass("curent");
    return false;
});

    $("input[id^='op']").live('click', function() {
        ApplyOption();
    });

    if ($("#carousel").length > 0 && $("#carousel .carousel-feature").length > 0) {
        $("#carousel").featureCarousel({
        autoPlay: 0, trackerIndividual: false, topPadding: 55
      , preload: false, largeFeatureWidth: 280, largeFeatureHeight: 210            
      , leftButtonTag: "#btleft", rightButtonTag: "#btright"
        });
    }
});

$(document).ready(function() {
  if (typeof InitComboFilters == 'function') InitComboFilters();
  InitOptionsFilters();
  SetFavouriteTitles(); SetCompareTitles();
  InitSorter();
  cuSel({ changedEl: "select", checkZIndex: true });
});

function CuselDisabledInit()
{
  //$("#cbsort").find("option[value='-10']").attr("disabled", "disabled").addClass("Disabled");
  $("#cuselFrame-cbsort span[value='-10']").attr("disabled", "disabled").addClass("Disabled").bind("click", function() { return false; });
}

function InitSorter() {
  $("#cbrows").val($("#hrows").val());
  $("#cbrows").live('change', function() {
    ApplySort();
  });
  $("#cbsort").live('change', function() {
    ApplySort();
  });
  HideFilters();
}

function HideFilters()
{
  // Спрятать фильтры
  var s = $("#lbResult").text().split(' ');
  if (s[0] <= 1)                   { $("div.perpage").addClass("shide"); $("div.order").addClass("shide"); }
  else if (s[0] > 1 && s[0] <= 10) { $("div.perpage").addClass("shide"); $("div.order").removeClass("shide");}
  else { $("div.perpage").removeClass("shide"); $("div.order").removeClass("shide"); }
}

function SetCombos() {
  $("#cbrows").val($("#hrows").val());
  cuSel({ changedEl: "select", checkZIndex: true });
  SetFavouriteTitles(); SetCompareTitles(); Cufon.replace('.cufon'); 
  //InitSorter();
  HideFilters();
}

function ApplySort() {
  var valsort = $("#cbsort").val();
  var valrcnt = $("#cbrows").val();
  var s = $("#changesort").attr("href");
  s = s.replace("sort=0", "sort=" + valsort);
  s = s.replace("rows=0", "rows=" + valrcnt); 
  $("#changesort").attr("href", s);
  $("#changesort").click();
}

// Инициализация опций
function InitOptionsFilters() {
  jQuery('.checkbox input:checked').parent().addClass('checked');
  jQuery('.checkbox input').change(function() {
    if ($(this).attr('checked')) {
      $(this).parent().addClass('checked');
    } else {
      $(this).parent().removeClass('checked');
    }
  })

  $("input[id^='op']").attr("checked", "");
  //$("#opts").val('<%= ViewData["voptions"] %>');
  var v = $("#opts").val().split(',');
  for (i = 0; i < v.length; i++) {
    $("input[id='op" + v[i] + "']").attr("checked", "true");
    $("input[id='op" + v[i] + "']").parent().addClass("checked");
  }
}
// Применение опций к фильтру
function ApplyOption() {
  var s = "";
  $("input[id^='op']").each(function() {
    if ($(this).attr("checked")) s += $(this).attr("id").replace("op", "") + ",";
  });
  $("#opts").val(s.substr(0, s.length - 1));
  ApplyOptFilter($("#opts").val());
}
// Применить для фильтра выбранное значение из списка
function ApplyComboFilter(name, val1, vtitle) {
  if ($("#s" + name).text() == " " + vtitle) return;
  $("#s" + name).text(" " + vtitle);
  if (val1 == -1) return;
  DO_GetCalcCars({ param: name, val1: val1 });
}
// Применить для фильтра выбранное значение ползунка
function ApplyRangeFilter(name, val1, val2, ispost) {
  if (name == "price" || name == "run" || name == "volume") {
    $("#s" + name).text(" " + sdf_FTS(val1) + " - " + sdf_FTS(val2));
  }
  else { $("#s" + name).text(" " + val1 + " - " + val2); }
  if (!ispost) return;
  DO_GetCalcCars({ param: name, val1: val1, val2: val2 });
}
// Применить для фильтра выбранную опцию
function ApplyOptFilter(vals) {
  DO_GetCalcCars({ param: "options", val1: vals });
}
// Применить для фильтра выбранную галку (APlus)
function CheckBoxFilterApply(el) {
  DO_GetCalcCars({ param: $(el).attr("id"), val1: $(el).attr("checked") });
}

// Подсчёт кол-ва авто с учётом фильтра
function DO_GetCalcCars(adata) {
  $("#progress").show();
  $.ajax({
    url: "/Car/GetCalcCars", type: "POST",
    data: adata,
    success: function(data) {
      $("#progress").hide();
      $("#lbResult").text(data);
      var s = data.split(' ');
      if (s[0] == '0' && $("#btCarRequest a").attr("href") != "#" ) { $("#btCarRequest").removeClass("shide"); }
      else { $("#btCarRequest").addClass("shide"); }
    },
    error: function(data) {
      $("#progress").hide();
      alert(data);
    }
  });
}

function FavouriteToogle(dat) {
  $.ajax({
    url: "/Car/FavouritesToggle/" + dat.id, type: "POST",
    data: { title: dat.title, price: dat.price },
    success: function(data) {
      $("#cntFav").text(data);
      SetFavouriteTitles();
    },
    error: function(data) { }
  });
  return false;
}

function CompareToogle(dat) {
  $.ajax({
    url: "/Car/ComparesToggle/" + dat.id, type: "POST",
    data: { title: dat.title, price: dat.price },
    success: function(data) {
      $("#cntCom").text(data);
      SetCompareTitles();
    },
    error: function(data) { }
  });
  return false;
}

function openPrintDialog(url) {
  window.open(url, "Печать", "width=830,location=no,menubar=no,toolbar=no,scrollbars=yes");
  return false;
}


var sFAdd = "Добавить в избранное";
var sFDel = "Удалить из избранных";
var sCAdd = "Добавить к сравнению";
var sCDel = "Удалить из сравнения";

function SetFavouriteTitles()
{
  $(".car a[href*='FavouritesPreview']").each(function() {
    var s = $(this).html();
    $(this).html(s.replace(sFDel,sFAdd));
  });
  $("a[onclick*='FavouriteToogle']").each(function() {
    var s = $(this).html();
    $(this).html(s.replace(sFDel,sFAdd));
  });

  $("#tFav tr").each(function() {
    var id = $(this).attr("id").replace("r", ""); 
    var s = $(".car a[href*='FavouritesPreview/"+id+"']").html();
    if (s != null) {
      $(".car a[href*='FavouritesPreview/"+id+"']").html(s.replace(sFAdd,sFDel)); 
    }
    var s = $("a.f"+id).html();
    if (s != null) {
      $("a.f"+id).html(s.replace(sFAdd,sFDel)); 
    }
  });
}

function SetCompareTitles()
{
  $(".car a[href*='ComparesPreview']").each(function() {
    var s = $(this).html();
    $(this).html(s.replace(sCDel,sCAdd));
  });
  $("a[onclick*='CompareToogle']").each(function() {
    var s = $(this).html();
    $(this).html(s.replace(sCDel,sCAdd));
  });

  $("#tCom tr").each(function() {
    var id = $(this).attr("id").replace("r", ""); 
    var s = $(".car a[href*='ComparesPreview/"+id+"']").html();
    if (s != null) {
      $(".car a[href*='ComparesPreview/"+id+"']").html(s.replace(sCAdd,sCDel)); 
    }
    var s = $("a.c"+id).html();
    if (s != null) {
       $("a.c"+id).html(s.replace(sCAdd,sCDel)); 
    }
  });
}
