$(document).ready(function () {
    var levelHeight = 230;

    /*
     * NAVIGACE
     **/
    function addLevel(url, callback, noEffect) {
      // vložíme nový DIV.level
      $('#hp-navigace .submenu').append('<div class="level"></div>');
      // načteme do něj obsah
      var lastIndex = $('#hp-navigace .submenu .level').length-1;
      if(noEffect) {
        // bez efektu pomaleho posouvani
        $('#hp-navigace .submenu').scrollTo('+='+levelHeight);
      }

      $('#hp-navigace .submenu .level:last').load(url, function() {
        // po dokončení načtení se na něj odscrollujeme
        if(!noEffect) {
          // efekt pomaleho posouvani
          $('#hp-navigace .submenu').scrollTo('+='+levelHeight, {duration: 500});
        }

        // a aktivujeme nove nactenou drobeckovou navigaci
        addBreadcrumbsEvents($('#hp-navigace .submenu .level:eq('+lastIndex+') .breadcrumbs'));
        // a aktivnujeme odkazy na dalsi kategorie (dalsi zanoreni)
        addCategoryEvents($('#hp-navigace .submenu .level:eq('+lastIndex+') ul'));
        
        if(callback) {
          callback();
        }
      });
    };

    function removeLevels(level) {
      // odstraní všechny úrovně (levely) od úrovně Level výše
      var total = $('#hp-navigace .submenu .level').length;
      for(var t=level; t<total; t++) {
        $('.level:eq('+level+')').remove();
      }
    }

    function addBreadcrumbsEvents(div) {
      // aktivuje nove nactenou drobeckovou navigaci
      div.children('a').each(function(i) {
        $(this).click(function() {
          // klik na drobek
          // odscrollujeme se na odpovidajici misto
          // po dokonceni scrollovani odsunute DIVy odstranime
          $('#hp-navigace .submenu').scrollTo(levelHeight*i, {duration: 500, onAfter: function() {
            removeLevels(i+1);
          }});
          return false;
        });
      });
    }

    function addCategoryEvents(list) {
      // aktivuje nove nacteny seznam kategorii
      list.children('li').each(function() {
        $(this).children('a.open').click(function() {
          // klikem na kategorii se nacte novy seznam
          addLevel($(this).attr('href'));
          return false;
        });
      });
    }

    // akce aplikujeme na otevirajici submenu
    //if($('#hp-navigace-submenu').length) {
    if($('#_navigation_is_off').length) {
      // dynamicke prepinani je vypnuto

      if($('.hp-navigace-index').length) {
        $('#hp-navigace .main li a').click(function() {
          // klik na záložku
          $('#hp-navigace .main li.active').removeClass('active');
          $(this).parent('li').addClass('active');

          var id = $(this).parent('li').attr('id').substring(3);
          var href = $(this).attr('href');
          // schovame soucasny obsah
          $('#hp-navigace-submenu').fadeOut("fast", function() {
            // zmenime obrazek na pozadi (kazda kategorie ma svuj vlastni)
            $('#hp-navigace .background')[0].className = 'background background-category-'+id;

            removeLevels(0); // odstraníme všechny podkategorie
            addLevel(href, function(){$('#hp-navigace-submenu').fadeIn("fast");}); // a načteme novou a obsah znovu zobrazime

          });

          return false;
        });
      }

      if(typeof(levels) != "undefined") {
        // jme zanořeni do nějaké subkategorie
        // při načtení stránky jsou určené úrovně nadřazených kategorií -> načteme je
        // přičemž statický obsah zobrazíme jako poslední úroveň

        for(var i = 0; i<levels.length-1; i++) {
          addLevel(levels[i], false, true);
        }

        // přesuneme statický obsah
        $('#hp-navigace-submenu .static-level').addClass('level');
        $('#hp-navigace .submenu').append($('#hp-navigace-submenu .static-level'));

        // přidáme eventy statickému obsahu
        addBreadcrumbsEvents($('#hp-navigace-submenu .static-level .breadcrumbs'));
        addCategoryEvents($('#hp-navigace-submenu .static-level ul'));

      } else {
        // aktivní drobečky
        addBreadcrumbsEvents($('.breadcrumbs'));
        // aktivní vnořování kategorií
        addCategoryEvents($('#hp-navigace-submenu ul'));

        if(!$('#hp-navigace-submenu ul').length) {
          $('#hp-navigace .main li a:first').click();
        };
      }
    }

    /*
     * VYHLEDAVANI
     **/
    $('#seachtop-code-checkbox').click(function() {
      if($(this).is(':checked')) {
        $('#searchtop-name').hide();
        $('#searchtop-code').show();
      } else {
        $('#searchtop-code').hide();
        $('#searchtop-name').show();
      }
    });

    $('#search :submit').hide();
    $('#search .button-search').click(function(){$('#search').submit();return false;});

    var options = {
      script:"/search/suggest/?",
      varname:"q",
      json: true,
      callback: function (obj) { }
    };
    var as_json = new bsn.AutoSuggest('testinput', options);

    /*
     * PRIHLASENI
     **/
    $('#login-open').click(function() {
      $('#login .inside').slideToggle('fast');
      return false;
    });
    $('#login-send').click(function() {
      $('#login form').submit();
      return false;
    });

    $('#login form').submit(function() {
      $('#login input').click();

      if($('#login input[value=""]').length) {
        $('#login .error').html('<p class="error fl">vyplňte uživatelské jméno a heslo</p>');

        return false;
      }
    });
    $('#login input').focus(function() {
      $(this).click();
    });
    $('#login input').click(function() {
      if(!$(this).data('erased')) {
        $(this).val('');
        $(this).data('erased', true);
      }
    });


  /*
   * Klikatelne tabulky
   */
    $('table.clickable tr').click(function() {
      var a = $(this).find('a');
      if(a.length) {
        document.location = a[0].href;
      }
    });
    $('table.clickable tr a').click(function(event) {
      event.stopPropagation();
    });


  /*
   * Pruhovane tabulky
   */
    $('table.stripped tr').each(function(i) {
      if(!(i%2))
        $(this).addClass('even');
      });

  /*
   * cluetip u novych produktu
   */
      
  $(".tooltip-novinka").cluetip({
    splitTitle: '|',
    width: '190',
    height: 'auto',
    showTitle: false,
    tracking: false,
    dropShadow: false,
    cluetipClass: 'new',
    topOffset: 35,
    leftOffset: -60,
    positionBy: 'fixed',
    dropShadow: false,
    fx: {
      open: 'fadeIn',
      openSpeed: ''
    }
  });

  /*
   * cluetip u akcnich produktu
   */
   
  $(".tooltip-akce").cluetip({
    splitTitle: '|',
    width: '190',
    height: 'auto',
    showTitle: false,
    tracking: false,
    dropShadow: false,
    cluetipClass: 'action',
    topOffset: 35,
    leftOffset: -95,
    positionBy: 'fixed',
    dropShadow: false,
    fx: {
      open: 'fadeIn',
      openSpeed: ''
    }
  });      
});
