Warning: chmod(): Operation not permitted in /data/html/improve/wp-content/plugins/wordfence/wordfence.php on line 8
403WebShell
403Webshell
Server IP : 52.9.100.119  /  Your IP : 216.73.216.135
Web Server : Apache/2.4.61 (Amazon) OpenSSL/1.0.2k-fips PHP/7.3.30 Phusion_Passenger/5.1.5
System : Linux ip-172-31-9-35 4.14.355-196.618.amzn1.x86_64 #1 SMP Mon Apr 7 17:09:50 UTC 2025 x86_64
User : root ( 0)
PHP Version : 7.3.30
Disable Function : exec,passthru,shell_exec,system,popen,proc_open
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /data/html/hanniel/static/js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /data/html/hanniel/static/js/main.js
/*==========================================
  Create by: Avitex
  Create at: 1/7/2020
  Creator: Khanh Vu
==========================================*/

"use strict";

//Variables
const MOBILE_POINT = 768;
const slideArrow = {
  nextArrow: `<button type="button" class="slick-next"><i class="fas fa-chevron-right"></i></button>`,
  prevArrow: `<button type="button" class="slick-prev"><i class="fas fa-chevron-left"></i></button>`,
};
const DUMMY_DATA = [
  {
    image: "assets/images/posts/1.png",
    category: "Technology",
    title: "Looking for some feedback for this rejected track",
    date: "Clock  Wed 02, 2019",
    comment: 3,
  },
  {
    image: "assets/images/posts/2.png",
    category: "Typography",
    title: "How to name, save and export a finish template",
    date: "Clock  Wed 02, 2019",
    comment: 3,
  },
  {
    image: "assets/images/posts/3.png",
    category: "Graphic",
    title: "I want to create a logo with illustrator hacker",
    date: "Clock  Wed 02, 2019",
    comment: 3,
  },
  {
    image: "assets/images/posts/4.png",
    category: "Design",
    title: "where I can found the sound in this video template?",
    date: "Clock  Wed 02, 2019",
    comment: 3,
  },
  {
    image: "assets/images/posts/5.png",
    category: "Graphic",
    title: "I want to create a logo with illustrator hacker",
    date: "Clock  Wed 02, 2019",
    comment: 3,
  },
  {
    image: "assets/images/posts/6.png",
    category: "Typography",
    title: "where I can found the sound in this video template?",
    date: "Clock  Wed 02, 2019",
    comment: 3,
  },
  {
    image: "assets/images/posts/7.png",
    category: "Graphic",
    title: "I want to create a logo with illustrator hacker",
    date: "Clock  Wed 02, 2019",
    comment: 3,
  },
];

let currentCategoryLayout = "";

//==========================================
//  Utilities
//==========================================
function onMobileBreakpoint(less, than) {
  if (window.matchMedia(`(max-width: ${MOBILE_POINT}px)`).matches) {
    less();
  } else {
    than();
  }
}

function onResizeBreakpoint(less, than) {
  onMobileBreakpoint(less, than);
  $(window).on("resize", function () {
    onMobileBreakpoint(less, than);
  });
}

function clickOutSideElm(elm, callback) {
  $(document).mouseup(function (e) {
    var container = $(elm);
    if (!container.is(e.target) && container.has(e.target).length === 0) {
      callback();
    }
  });
}
//==========================================
//==========================================

//Category post generator
function categoryGenerator() {
  function getLayout() {
    let $activeCategoryItem = $(".category__header__filter__item.active");
    let $categoryContent = $(".category_content");
    const currentLayout = $activeCategoryItem.data("layout");
    let content = "";
    if (currentCategoryLayout === currentLayout) {
      return;
    }
    currentCategoryLayout = currentLayout;
    if (currentCategoryLayout === "grid") {
      DUMMY_DATA.forEach((item, index) => {
        content += `
          <div class="post-card -center"><a class="card__cover" href="post_standard.html"><img src="${item.image}" alt="${item.title}"></a>
            <div class="card__content">
            <h5 class="card__content-category">${item.category}</h5><a class="card__content-title" href="post_standard.html">${item.title}</a>
            <div class="card__content-info">
              <div class="info__time"><i class="far fa-clock"></i>
                <p>${item.date}</p>
              </div>
              <div class="info__comment"><i class="far fa-comment"></i>
                <p>${item.comment}</p>
              </div>
            </div>
          </div>
        </div>
        `;
      });

      $categoryContent
        .empty()
        .addClass("-grid")
        .removeClass("-list")
        .prepend(content);
      let $masonryBeauty = $categoryContent.masonry({
        itemSelector: ".post-card",
        gutter: 20,
      });
      $masonryBeauty.imagesLoaded().progress(function () {
        $masonryBeauty.masonry("layout");
      });
    } else {
      $categoryContent.masonry("destroy");
      DUMMY_DATA.forEach((item, index) => {
        content += `
        <div class="col-12">
          <div class="post-card -small -horizontal"><a class="card__cover" href="post_standard.html" tabindex="0"><img src="${item.image}" alt="${item.title}"></a>
            <div class="card__content">
              <h5 class="card__content-category">Technology</h5><a class="card__content-title" href="post_standard.html" tabindex="0">${item.title}</a>
              <div class="card__content-info">
                <div class="info__time"><i class="far fa-clock"></i>
                  <p>Clock  Wed 02, 2019</p>
                </div>
                <div class="info__comment"><i class="far fa-comment"></i>
                  <p>3</p>
                </div>
              </div>
              <p class="card__content-description">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt labore aliqua. Quis ipsum suspendisse ultrices gravida. Risus commodo viverra maecenas accumsan lacus vel facilisis.</p>
            </div>
          </div>
        </div>`;
      });
      content = `<div class="row">${content}</div>`;
      $categoryContent
        .empty()
        .addClass("-list")
        .removeClass("-grid")
        .prepend(content);
    }
  }

  getLayout();

  $(".category__header__filter__item").on("click", function (e) {
    e.preventDefault();
    $(".category__header__filter__item").removeClass("active");
    $(this).addClass("active");
    getLayout();
  });
}

//Nav dropdown handle
function navDropdownHandle() {
  let header = $("header");
  let nav = $("header nav");

  function dropdownMenuMobileHandle() {
    if ($(".nav-item").children(".dropdown-menu__controller").length > 0) {
      return;
    }
    $(".nav-item:has(.dropdown-menu)").prepend(
      `<a href="#" class="dropdown-menu__controller"><i class="fas fa-plus"></i></a>`
    );

    $(".dropdown-menu__controller").on("click", function (e) {
      e.preventDefault();
      $(this)
        .parent()
        .siblings()
        .children(".dropdown-menu")
        .removeClass("show");
      $(this).siblings(".dropdown-menu").toggleClass("show");
      $(".dropdown-menu__controller i")
        .removeClass("fa-minus")
        .addClass("fa-plus");
      if ($(this).siblings(".dropdown-menu").hasClass("show")) {
        $(this).children().removeClass("fa-plus").addClass("fa-minus");
      } else {
        $(this).children().removeClass("fa-minus").addClass("fa-plus");
      }
    });
  }

  function dropdownMenuDesktopHandle() {
    $(".dropdown-menu__controller").remove();
    $(".dropdown-menu").removeClass("show");
  }

  //Mobile menu handle
  function menuMobileHandle() {
    header.addClass("is-mobile");
    nav.slideUp();
    dropdownMenuMobileHandle();
  }
  //Desktop menu handle
  function menuDesktopHandle() {
    header.removeClass("is-mobile");
    nav.removeAttr("style");
    dropdownMenuDesktopHandle();
  }

  onResizeBreakpoint(menuMobileHandle, menuDesktopHandle);

  (function () {
    $("#mobile-menu-controller").on("click", function (e) {
      e.preventDefault();
      nav.slideToggle();
    });
  })();
}

//Menu scroll handle
function menuScrollHandle() {
  let header = $("header");
  $(window).on("scroll", function (e) {
    let topPos = $(this).scrollTop();
    if (topPos > 200) {
      header.addClass("scroll-down");
    } else {
      header.removeClass("scroll-down");
    }
  });
}

//Show search input
function showSearchInput() {
  let isOpened = false;
  let $searchBox = $("#search-box");
  $searchBox.slideUp();
  $("#search").on("click", function (e) {
    e.preventDefault();
    if (!isOpened) {
      $searchBox.slideDown();
      isOpened = true;
      $(this).addClass("active");
    } else {
      $searchBox.slideUp();
      isOpened = false;
      $(this).removeClass("active");
    }
  });
  clickOutSideElm($("header"), function () {
    $searchBox.slideUp();
    isOpened = false;
    $("#search").removeClass("active");
  });
}

//Slide init
function ititalSlide() {
  $(".card__cover.-slide").slick(
    Object.assign({ slidesToShow: 1, slidesToScroll: 1 }, slideArrow)
  );

  $(".card__cover.-slide-splited").slick({
    slidesToShow: 3,
    slidesToScroll: 1,
    arrows: false,
    responsive: [
      {
        breakpoint: 996,
        settings: {
          slidesToShow: 2,
        },
      },
    ],
  });

  $(".blog-imageless-mansonry__categories").slick({
    slidesToShow: 5,
    slidesToScroll: 1,
    arrows: false,
    responsive: [
      {
        breakpoint: 992,
        settings: {
          slidesToShow: 4,
        },
      },
      {
        breakpoint: 768,
        settings: {
          slidesToShow: 3,
        },
      },
      {
        breakpoint: 576,
        settings: {
          slidesToShow: 2,
        },
      },
    ],
  });

  if ($(".instagrams-container").parents(".container").length > 0) {
    $(".instagrams-container").slick({
      slidesToShow: 5,
      slidesToScroll: 1,
      arrows: false,
      autoplay: true,
      responsive: [
        {
          breakpoint: 992,
          settings: {
            slidesToShow: 4,
          },
        },
        {
          breakpoint: 768,
          settings: {
            slidesToShow: 3,
          },
        },
        {
          breakpoint: 576,
          settings: {
            slidesToShow: 2,
          },
        },
      ],
    });
  } else {
    $(".instagrams-container").slick({
      slidesToShow: 6,
      slidesToScroll: 1,
      arrows: false,
      autoplay: true,
      responsive: [
        {
          breakpoint: 1200,
          settings: {
            slidesToShow: 5,
          },
        },
        {
          breakpoint: 992,
          settings: {
            slidesToShow: 4,
          },
        },
        {
          breakpoint: 768,
          settings: {
            slidesToShow: 3,
          },
        },
        {
          breakpoint: 576,
          settings: {
            slidesToShow: 2,
          },
        },
      ],
    });
  }

  $(".blog-ocean__slider").slick(Object.assign({ fade: true }, slideArrow));

  $(".news-block__tab__item.active .news-block__content").slick(
    Object.assign({ infinite: false }, slideArrow)
  );

  $(".news-block__tab__item.active .news-block__content-multi").slick(
    Object.assign(
      {
        slidesToShow: 4,
        slidesToScroll: 1,
        responsive: [
          {
            breakpoint: 992,
            settings: {
              slidesToShow: 3,
            },
          },
          {
            breakpoint: 768,
            settings: {
              slidesToShow: 2,
            },
          },
          {
            breakpoint: 576,
            settings: {
              slidesToShow: 1,
            },
          },
        ],
      },
      slideArrow
    )
  );

  $(".blog-food__slide").slick(
    Object.assign(
      {
        slidesToShow: 5,
        slidesToScroll: 1,
        responsive: [
          {
            breakpoint: 1200,
            settings: {
              slidesToShow: 4,
            },
          },
          {
            breakpoint: 992,
            settings: {
              slidesToShow: 3,
            },
          },
          {
            breakpoint: 695,
            settings: {
              slidesToShow: 2,
            },
          },
          {
            breakpoint: 465,
            settings: {
              slidesToShow: 1,
            },
          },
        ],
      },
      slideArrow
    )
  );

  $(".blog-flower__slide").slick(
    Object.assign(
      {
        slidesToShow: 3,
        slidesToScroll: 1,
        responsive: [
          {
            breakpoint: 1400,
            settings: {
              slidesToShow: 2,
            },
          },
          {
            breakpoint: 992,
            settings: {
              slidesToShow: 1,
            },
          },
        ],
      },
      slideArrow
    )
  );

  $(".related-post-slide").slick(
    Object.assign(
      {
        slidesToShow: 4,
        slidesToScroll: 1,
        arrows: false,
        responsive: [
          {
            breakpoint: 996,
            settings: {
              arrows: true,
              slidesToShow: 3,
            },
          },
          {
            breakpoint: 768,
            settings: {
              arrows: true,
              slidesToShow: 2,
            },
          },
          {
            breakpoint: 576,
            settings: {
              slidesToShow: 1,
            },
          },
        ],
      },
      slideArrow
    )
  );

  function slideSync() {
    $(".slider-single").slick({
      slidesToShow: 1,
      slidesToScroll: 1,
      arrows: false,
      fade: false,
      adaptiveHeight: true,
      infinite: false,
      useTransform: true,
      speed: 400,
      cssEase: "cubic-bezier(0.77, 0, 0.18, 1)",
    });

    $(".slider-nav")
      .on("init", function (event, slick) {
        $(".slider-nav .slick-slide.slick-current").addClass("is-active");
      })
      .slick(
        Object.assign(
          {
            slidesToShow: 3,
            slidesToScroll: 3,
            dots: false,
            focusOnSelect: false,
            infinite: false,
          },
          slideArrow
        )
      );

    $(".slider-single").on("afterChange", function (
      event,
      slick,
      currentSlide
    ) {
      $(".slider-nav").slick("slickGoTo", currentSlide);
      var currrentNavSlideElem =
        '.slider-nav .slick-slide[data-slick-index="' + currentSlide + '"]';
      $(".slider-nav .slick-slide.is-active").removeClass("is-active");
      $(currrentNavSlideElem).addClass("is-active");
    });

    $(".slider-nav").on("click", ".slick-slide", function (event) {
      event.preventDefault();
      var goToSingleSlide = $(this).data("slick-index");

      $(".slider-single").slick("slickGoTo", goToSingleSlide);
    });
  }

  slideSync();
}

//Plyr init
function plyrInit() {
  const audioPlayer = Plyr.setup(".audio", {
    controls: [
      "play-large",
      "play",
      "progress",
      "current-time",
      "mute",
      "volume",
    ],
  });

  const players = Array.from(document.querySelectorAll(".video")).map((p) => {
    return new Plyr(p, {
      controls: [
        "play-large",
        "play",
        "progress",
        "current-time",
        "mute",
        "volume",
        "fullscreen",
      ],
      hideControls: false,
      ratio: "16:9",
      vimeo: {
        byline: false,
        title: true,
      },
    });
  });

  players.forEach((item) => {
    item.toggleControls(false);
    item.on("play", (event) => {
      item.toggleControls(true);
    });
    let videoTitle = $(item.elements.container).siblings("a");
    if (videoTitle) {
      item.on("playing", (event) => {
        videoTitle.hide();

        item.toggleControls(true);
      });
    }
  });

  const verticalPlayers = Array.from(
    document.querySelectorAll(".video-9x16")
  ).map((p) => {
    return new Plyr(p, {
      controls: [
        "play-large",
        "play",
        "progress",
        "current-time",
        "mute",
        "volume",
        "fullscreen",
      ],
      hideControls: false,
      ratio: "9:16",
      vimeo: {
        byline: false,
        title: true,
      },
    });
  });

  verticalPlayers.forEach((item) => {
    item.toggleControls(false);
    item.on("play", (event) => {
      item.toggleControls(true);
    });
    item.source = {
      poster: "../images/backgrounds/trending-post-1.png",
    };
    let videoTitle = $(item.elements.container).siblings("a");
    console.log(videoTitle);
    if (videoTitle) {
      item.on("playing", (event) => {
        videoTitle.hide();

        item.toggleControls(true);
      });
    }
  });

  const videoListPlayer = new Plyr("#video-list-player", {
    controls: [
      "play-large",
      "play",
      "progress",
      "current-time",
      "mute",
      "volume",
      "fullscreen",
    ],
    ratio: "16:9",
  });

  let $h2Tag = $(videoListPlayer.elements.container).siblings("h2");
  videoListPlayer.on("play", (event) => {
    $h2Tag.hide();
  });
  videoListPlayer.on("pause", (event) => {
    $h2Tag.show();
  });

  $(".video-list__content__item").on("click", function (e) {
    e.preventDefault();
    let src = $(this).data("src");
    let type = "video/mp4";
    let provider = "vimeo";
    let title = $(this).find(".item__detail h5").text();

    $("#video-list__title").text(title);

    $(this).addClass("active").siblings().removeClass("active");

    $("#video-list__title").text();
    videoListPlayer.source = {
      title: "Test",
      type: "video",
      sources: [
        {
          src: src,
          provider: "vimeo",
        },
      ],
    };
  });
}

//Mansonry layout init {
function masonry() {
  let $masonry = $(".blog-masonry").masonry({
    itemSelector: ".post-card",
    horizontalOrder: true,
    gutter: 30,
  });

  $masonry.imagesLoaded().progress(function () {
    $masonry.masonry("layout");
  });

  let $masonryBeauty = $(".blog-imageless-mansonry__content").masonry({
    itemSelector: ".post-card",
    gutter: 20,
    // fitWidth: true,
    // percentPosition: true,
  });

  $masonryBeauty.imagesLoaded().progress(function () {
    $masonryBeauty.masonry("layout");
  });

  let $masonryBeauty2 = $(".blog-imageless-mansonry__content__wide").masonry({
    itemSelector: ".grid-item ",
    // gutter: 20,
    // fitWidth: true,
    columnWidth: ".grid-sizer",
    percentPosition: true,
  });

  $masonryBeauty2.imagesLoaded().progress(function () {
    $masonryBeauty2.masonry("layout");
  });
}

//Tab
function tab() {
  (function newsBlockTab() {
    $(".tab-item").on("click", function (e) {
      e.preventDefault();
      $(this).addClass("active").siblings().removeClass("active");

      let getShownTab = $(this).data("for");
      let foundTab = $(this)
        .parents(".news-block__header")
        .siblings(".news-block__tab")
        .find(`[data-tab-name='${getShownTab}']`);
      let foundSlide = foundTab.find(".news-block__content");
      foundTab.fadeIn(300).siblings().fadeOut(300).removeClass("active");
      foundSlide.slick(Object.assign({ infinite: false }, slideArrow));
    });
  })();
  (function tabHandle() {
    let dataFor = $(".tab-header ul>li>a.active").data("for");

    $(`.tab .tab-content__item[data-stand="${dataFor}"]`).addClass("active");

    $(".tab-header ul>li>a").on("click", function (e) {
      e.preventDefault();
      let currentDataFor = $(this).data("for");
      $(".tab-header ul>li>a").removeClass("active");
      $(".tab-content__item").removeClass("active");
      $(this)
        .addClass("active")
        .parents(".tab-header")
        .next()
        .find(`.tab-content__item[data-stand="${currentDataFor}"]`)
        .addClass("active");
    });
  })();
}

//Render product rate star
function renderStar() {
  const star = $(".star");
  const starHtml = '<i class="fas fa-star"></i>';
  $.each(star, function (index, val) {
    const numberStar = $(val).data("number");
    $(val).prepend(starHtml.repeat(numberStar));
  });
}

//Change quantity
function quantityController() {
  const $up = $(".quantity-controller .increase-btn");
  const $down = $(".quantity-controller .decrease-btn");
  const $inputVal = $(".quantity-controller input").val();

  function pad(d) {
    return d < 10 ? "0" + d.toString() : d.toString();
  }

  function numberControl(e) {
    e.preventDefault();
    let val = $(this).siblings("input").val();

    if ($(this).hasClass("increase-btn")) {
      $(this)
        .siblings("input")
        .val(pad(parseInt(val) + 1));
    } else {
      if (val > 1) {
        $(this)
          .siblings("input")
          .val(pad(parseInt(val) - 1));
      }
    }
  }

  $up.on("click", numberControl);
  $down.on("click", numberControl);
}

//Select payment method
function selectPaymentMethod() {
  let $checkbox = $('.total__payment-method__block input[type="checkbox"]');

  function checkChecked() {
    $.each($checkbox, function (index, val) {
      if ($(val).is(":checked")) {
        $(val).parent().next().slideDown();
      } else {
        $(val).parent().next().slideUp();
      }
    });
  }

  checkChecked();
  $checkbox.on("click", checkChecked);
}

//Document ready
$(document).ready(function () {
  ititalSlide();
  navDropdownHandle();
  menuScrollHandle();
  showSearchInput();
  plyrInit();
  masonry();
  tab();
  categoryGenerator();
  renderStar();
  quantityController();
  selectPaymentMethod();
  //Preload
});

(function preload() {
  const $load = $("#load");
  $(window).on("load", function () {
    $load.fadeOut(300, function () {
      $load.remove();
    });
  });
})();

Youez - 2016 - github.com/yon3zu
LinuXploit