script.js 7.88 KB
$(function()
  {
    footer();
    search();
    phonesTab();
    openMobMenu();
    closeMobMenu();
    openSubMenuMob();
    homeSlider();
    hoverCatList();
    expandAllCatList();
    loadCollection();
    tabs();
    form();
    if(device.mobile())
    {
      deviceCheck();
    } else if(device.tablet())
    {
      deviceCheck();
    }
    $('.gall-1').lightGallery();

    var width = $(window).width();

    function deviceCheck()
    {
      var meta = document.createElement('meta');
      meta.name = "viewport";
      meta.content = "width=device-width";
      document.getElementsByTagName('head')[0].appendChild(meta);
    }

    function footer()
    {
      footerBottom();
      resizeFooterBottom();

      function footerBottom()
      {
        var heightHeader = $('.section-box-header').height();
        var heightFooter = $('.section-box-footer').height();
        var windowHeight = $(window).height();
        $('.section-box-content>.container.shadow').css({minHeight : windowHeight - heightHeader - heightFooter - 3})
      }

      function resizeFooterBottom()
      {
        $(window).resize(
          function()
          {
            footerBottom();
          }
        )
      }
    }

    function mobOverlayAdd()
    {
      $('body').append('<div class="mob-overlay"></div>')
    }

    function mobOverlayRemove()
    {
      $('.mob-overlay').remove()
    }

    function search()
    {
      $('.search-btn').click(
        function()
        {

          $('.hidden-search').addClass('vis')

        }
      );
      $('.close-search-btn').click(
        function()
        {
          $('.hidden-search').removeClass('vis')
        }
      )

    }

    function phonesTab()
    {
      $('.phones-table-wr').click(
        function()
        {
          $(this).toggleClass('vis-phone')
        }
      );

      var timerPhone;
      $('.phones-table-wr').hover(
        function()
        {
          clearTimeout(timerPhone)
        }, function()
        {
          timerPhone = setTimeout(
            function()
            {
              $('.phones-table-wr').removeClass('vis-phone')
            }, 320
          )

        }
      )

    }

    function openMobMenu()
    {
      $('.menu_mob').click(
        function()
        {
          mobOverlayAdd()
          $('body').addClass('off-scroll')
          $('.xs-sm-menu').addClass('open')
          setTimeout(
            function()
            {
              $('.xs-sm-menu').addClass('visible')
            }, 10
          )
        }
      )
    }

    function openSubMenuMob()
    {
      $('.xs-sm-menu ul.main-menu li a').click(
        function(e)
        {
          var checkSubMEnu = $(this).parent().find('ul')
          if(checkSubMEnu.length > 0)
          {
            e.preventDefault();
            $(this).parent().toggleClass('show-sub-menu')
          }
        }
      )
    }

    function closeMobMenu()
    {
      $('body').on(
        'click', '.mob-overlay', function()
        {
          mobOverlayRemove()
          if($('.xs-sm-menu').hasClass('visible'))
          {
            $('.xs-sm-menu').removeClass('visible')
            setTimeout(
              function()
              {
                $('.xs-sm-menu').removeClass('open')
              }, 200
            )
            $('body').removeClass('off-scroll')
          }
          $('.xs-sm-menu .show-sub-menu').removeClass('show-sub-menu')

        }
      )
      $('.close-menu-mob').click(
        function()
        {
          mobOverlayRemove()
          $('.xs-sm-menu').removeClass('visible')
          setTimeout(
            function()
            {
              $('.xs-sm-menu').removeClass('open')
            }, 200
          )
          $('body').removeClass('off-scroll')
          $('.xs-sm-menu .show-sub-menu').removeClass('show-sub-menu')
        }
      )
    }

    function homeSlider()
    {
      var slideA = $('.slider-img a')
      var numA = slideA.length

      setInterval(
        function()
        {
          var activeNumA = $('.slider-img a.active-slide').index() + 1;

          if(activeNumA < numA)
          {
            $('.slider-img a').removeClass('active-slide')
            $(slideA[activeNumA]).addClass('active-slide')
          } else
          {
            $('.slider-img a').removeClass('active-slide')
            $(slideA[0]).addClass('active-slide')
          }
        }, 4000
      )
    }

    function hoverCatList()
    {
      $('.cat-list-wr').hover(
        function()
        {
          $(this).addClass('hover')
        }, function()
        {
          $(this).removeClass('hover')
        }
      )
    }

    function expandAllCatList()
    {
      $('.expand_brands').click(
        function()
        {
          var oldTxt = 'развернуть';
          var newTxt = 'свернуть';

          if($(this).parents('.cat-list-wr').hasClass('expand'))
          {
            $('.cat-list-wr').removeClass('expand');
            $(this).find('p').html(oldTxt);
          } else
          {
            $('.cat-list-wr').removeClass('expand');
            $('.expand_brands').find('p').html(oldTxt);
            $(this).parents('.cat-list-wr').addClass('expand');

            $(this).find('p').html(newTxt);
          }

        }
      );
    }

    function removeLoadCollection() {
      $('.load_collection').animate({opacity:0},500,function () {
        $('.load_collection').remove()
      })
    }

    function loadCollection() {
      $('.collection-list ul li a').click(function (e) {
        e.preventDefault();
        $('.collection-list li').removeClass('active')
        $(this).parent().addClass('active')
        $('body').append('<div class="load_collection"><div></div></div>');
        //после того как загрузиться новый контент, вызвать ф-цию removeLoadCollection()
      })
    }

    function tabs() {
      var tabsLi = $('.collect-tabs ul li')
      var tabsContent = $('.tabs-content')
      tabsContent.css({display:'none'});
      $(tabsContent[0]).css({display:'block'});
      $(tabsLi[0]).addClass('active-tab');
      tabsLi.click(function () {
        tabsLi.removeClass('active-tab');
        $(this).addClass('active-tab');
        var thisIndex=$(this).index();
        tabsContent.css({display:'none'});
        $(tabsContent[thisIndex]).css({display:'block'});
      })
    }

    function form() {
      $('.question-form').click(function () {
        $('#overlay').fadeIn(400,
            function(){
              $('#modal_form')
              .css('display', 'block')
              .animate({opacity: 1, top: '80px'}, 200);
            });
        $(".content").mCustomScrollbar();
      });

      $('.to_order').click(function () {
        $('#overlay').fadeIn(400,
            function(){
              $('#modal_form-2')
              .css('display', 'block')
              .animate({opacity: 1, top: '80px'}, 200);
            });
        $(".scrollbar_").mCustomScrollbar();
      });

      $('#close-form, #overlay').click( function(){
        $('#modal_form, #modal_form-2, #success-form').animate({opacity: 0, top: 20}, 200,function(){
          $(this).css('display', 'none');
          $('#overlay').fadeOut(400);
        });
      });


      // после отправки формы зарустить ф-цию success()
      function success() {
        $('#modal_form, #modal_form-2').animate({opacity: 0, top: 20}, 200,function(){
          $(this).css('display', 'none');
        });
        setTimeout(function () {
          $('#success-form').css('display', 'block').animate({opacity: 1}, 700);
        },400)
      }


    }
  }
);