(function($) {
"use strict";
/*-------------------------------------
jQuery MeanMenu activation code
--------------------------------------*/
$('nav#dropdown').meanmenu({
siteLogo: ""
});
$(document).ready(function() {
$(".accordion-trigger").QuickAccord();
})
responsivemenu.init({
wrapper: document.querySelector('.navigation_container'),
togglecontent: 'دسته بندی فروشگاه',
sticky: 1
});
/*-------------------------------------
Home page 4 Category Menu
-------------------------------------*/
$('#menu-content').on('click', 'li.has-sub-menu > a', function(e) {
e.preventDefault();
});
$(document).on('click', '#cat-btn', function(e) {
e.preventDefault();
var distype = $('#cat-filter').css('display');
if (distype =="none") {
$('#cat-filter').css('display', 'block');
$('#search-filter').css('display', 'none');
$('#mobfilter').css('display', 'none');
} else {
$('#cat-filter').css('display', 'none');
}
});
$(document).on('click', '#search-btn', function(e) {
e.preventDefault();
var distype = $('#search-filter').css('display');
if (distype =="none") {
$('#search-filter').css('display', 'block');
$('#cat-filter').css('display', 'none');
$('#mobfilter').css('display', 'none');
} else {
$('#search-filter').css('display', 'none');
}
});
$(document).on('click', '#filter-btn', function(e) {
e.preventDefault();
var distype = $('#mobfilter').css('display');
if (distype =="none") {
$('#mobfilter').css('display', 'block');
$('#cat-filter').css('display', 'none');
$('#search-filter').css('display', 'none');
} else {
$('#mobfilter').css('display', 'none');
}
});
/*-------------------------------------
wow js active
-------------------------------------*/
new WOW().init();
initFlickity();
/*-------------------------------------
jquery Scollup activation code
-------------------------------------*/
$.scrollUp({
scrollText: '',
easingType: 'linear',
scrollSpeed: 900,
animation: 'fade'
});
/* Flickity Slider
-------------------------------------------------------*/
function initFlickity() {
// main large image (shop product)
$('#gallery-main').flickity({
cellAlign: 'center',
contain: true,
wrapAround: true,
autoPlay: false,
prevNextButtons: true,
percentPosition: true,
imagesLoaded: true,
lazyLoad: 1,
pageDots: false,
selectedAttraction : 0.1,
friction: 0.6,
rightToLeft: true,
arrowShape: 'M 25,50 L 65,90 L 70,90 L 30,50 L 70,10 L 65,10 Z'
});
// thumbs
$('#gallery-thumbs').flickity({
asNavFor: '#gallery-main',
contain: true,
cellAlign: 'right',
wrapAround: false,
autoPlay: false,
prevNextButtons: false,
percentPosition: true,
imagesLoaded: true,
pageDots: false,
selectedAttraction : 0.1,
friction: 0.6,
rightToLeft: true
});
var $gallery = $('.mfp-hover');
$gallery.on( 'dragStart.flickity', function( event, pointer ) {
$(this).addClass('is-dragging');
})
$gallery.on( 'dragEnd.flickity', function( event, pointer ) {
$(this).removeClass('is-dragging');
})
$gallery.magnificPopup({
delegate: '.lightbox-img, .lightbox-video',
callbacks: {
elementParse: function(item) {
if(item.el.context.className === 'lightbox-video') {
item.type = 'iframe';
} else {
item.type = 'image';
}
}
},
type: 'image',
closeBtnInside:false,
gallery:{
enabled:true
}
});
}
/*-------------------------------------
Carousel slider initiation
-------------------------------------*/
$('.metro-carousel').each(function() {
var carousel = $(this),
loop = carousel.data('loop'),
items = carousel.data('items'),
margin = carousel.data('margin'),
stagePadding = carousel.data('stage-padding'),
autoplay = carousel.data('autoplay'),
autoplayTimeout = carousel.data('autoplay-timeout'),
smartSpeed = carousel.data('smart-speed'),
dots = carousel.data('dots'),
nav = carousel.data('nav'),
navSpeed = carousel.data('nav-speed'),
rXsmall = carousel.data('r-x-small'),
rXsmallNav = carousel.data('r-x-small-nav'),
rXsmallDots = carousel.data('r-x-small-dots'),
rXmedium = carousel.data('r-x-medium'),
rXmediumNav = carousel.data('r-x-medium-nav'),
rXmediumDots = carousel.data('r-x-medium-dots'),
rSmall = carousel.data('r-small'),
rSmallNav = carousel.data('r-small-nav'),
rSmallDots = carousel.data('r-small-dots'),
rMedium = carousel.data('r-medium'),
rMediumNav = carousel.data('r-medium-nav'),
rMediumDots = carousel.data('r-medium-dots'),
rLarge = carousel.data('r-large'),
rLargeNav = carousel.data('r-large-nav'),
rLargeDots = carousel.data('r-large-dots'),
center = carousel.data('center');
carousel.owlCarousel({
loop: (loop ? true : false),
items: (items ? items : 4),
lazyLoad: true,
margin: (margin ? margin : 0),
autoplay: (autoplay ? true : false),
autoplayTimeout: (autoplayTimeout ? autoplayTimeout : 1000),
smartSpeed: (smartSpeed ? smartSpeed : 250),
dots: (dots ? true : false),
nav: (nav ? true : false),
navText: ["", ""],
navSpeed: (navSpeed ? true : false),
center: (center ? true : false),
responsiveClass: true,
responsive: {
0: {
items: (rXsmall ? rXsmall : 2),
nav: (rXsmallNav ? true : false),
dots: (rXsmallDots ? true : false)
},
480: {
items: (rXmedium ? rXmedium : 2),
nav: (rXmediumNav ? true : false),
dots: (rXmediumDots ? true : false)
},
768: {
items: (rSmall ? rSmall : 3),
nav: (rSmallNav ? true : false),
dots: (rSmallDots ? true : false)
},
992: {
items: (rMedium ? rMedium : 5),
nav: (rMediumNav ? true : false),
dots: (rMediumDots ? true : false)
},
1199: {
items: (rLarge ? rLarge : 6),
nav: (rLargeNav ? true : false),
dots: (rLargeDots ? true : false)
}
}
});
});
/*-------------------------------------
Jquery Serch Box
-------------------------------------*/
$(document).on('click', '#top-search-form a.search-button', function(e) {
e.preventDefault();
var targrt = $(this).prev('input.search-input');
targrt.animate({
width: ["toggle", "swing"],
height: ["toggle", "swing"],
opacity: "toggle"
}, 500, "linear");
return false;
});
/*-------------------------------------
Input Quantity Up & Down activation code
-------------------------------------*/
$('#quantity-holder,#quantity-holder2').on('click', '.quantity-plus', function() {
var $holder = $(this).parents('.quantity-holder');
var $target = $holder.find('input.quantity-input');
var $quantity = parseInt($target.val(), 10);
var qty = parseInt($target.data('qty'), 10);
if ($.isNumeric($quantity) && $quantity > 0) {
if ($quantity < qty) {
$quantity = $quantity + 1;
$target.val($quantity);
}
} else {
$target.val($quantity);
}
}).on('click', '.quantity-minus', function() {
var $holder = $(this).parents('.quantity-holder');
var $target = $holder.find('input.quantity-input');
var $quantity = parseInt($target.val(), 10);
if ($.isNumeric($quantity) && $quantity >= 2) {
$quantity = $quantity - 1;
$target.val($quantity);
} else {
$target.val(1);
}
});
/*-------------------------------------
Select2 activation code
-------------------------------------*/
if ($('#checkout-form select.select2').length) {
$('#checkout-form select.select2').select2({
theme: 'classic',
dropdownAutoWidth: true,
width: '100%'
});
}
/*-------------------------------------
Sidebar Menu activation code
-------------------------------------*/
$('#additional-menu-area').on('click', 'span.side-menu-trigger', function() {
var $this = $(this);
if ($this.hasClass('open')) {
document.getElementById('mySidenav').style.width = '0';
$this.removeClass('open').find('i.fa').removeClass('fa-times').addClass('fa-bars');
} else {
$this.addClass('open').find('i.fa').removeClass('fa-bars').addClass('fa-times');
document.getElementById('mySidenav').style.width = '280px';
}
});
$('#mySidenav').on('click', '.closebtn', function(e) {
e.preventDefault();
document.getElementById('mySidenav').style.width = '0';
$('#additional-menu-area span.side-menu-trigger').removeClass('open').find('i.fa').removeClass('fa-times').addClass('fa-bars');
});
/*-------------------------------------
Category menu selecting
-------------------------------------*/
$('#adv-search .sidenav-nav li').on('click', 'a', function() {
var $this = $(this),
target = $this.parents('div.dropdown').children('button').children('span');
target.text($this.text());
});
/*-------------------------------------
Shop category submenu positioning
-------------------------------------*/
$('#category-menu-area,#category-menu-area-top').on("mouseenter", "ul > li", function() {
var self = $(this),
target = self.find('ul.dropdown-menu'),
targetUlW = target.outerWidth(),
parentHolder = self.parents('.category-menu-area'),
w = $(window).width() - (parentHolder.offset().left + parentHolder.width());
if (targetUlW > w) {
target.css({
'top': 0,
'left': '-' + targetUlW + 'px'
});
}
}).on("mouseleave", "ul li > a", function() {
var self = $(this),
target = self.find('ul.dropdown-menu');
target.css({
'top': '',
'left': ''
});
});
/*-------------------------------------
Auto height for product listing
-------------------------------------*/
function equalHeight() {
$('.products-container').each(function() {
var mHeight = 0;
$(this).children('div').children('div').height('auto');
$(this).children('div').each(function() {
var itemHeight = $(this).outerHeight();
if (itemHeight > mHeight) {
mHeight = itemHeight;
}
$(this).children('div').height(mHeight + 'px');
});
});
}
/*-------------------------------------
Window load function
-------------------------------------*/
$(window).on('load', function() {
// Page Preloader
// $('#preloader').fadeOut('slow', function() {
// $(this).remove();
// });
//jQuery for Isotope initialization
var $container = $('#home-isotope');
if ($container.length > 0) {
var $isotope = $container.find('.featuredContainer').isotope({
filter: '*',
animationOptions: {
duration: 750,
easing: 'linear',
queue: false
}
});
$container.find('.isotop-classes-tab').on('click', 'a', function() {
var $this = $(this);
$this.parent('.isotop-classes-tab').find('a').removeClass('current');
$this.addClass('current');
var selector = $this.attr('data-filter');
$isotope.isotope({
filter: selector,
animationOptions: {
duration: 750,
easing: 'linear',
queue: false
}
});
return false;
});
}
}); // end window load function
/*-------------------------------------
Call the load and resized function
-------------------------------------*/
$(window).on('load resize', function() {
equalHeight(); // Call Equal height function
//Define the maximum height for mobile menu
var wHeight = $(window).height(),
mLogoH = $('a.logo-mobile-menu').outerHeight();
wHeight = wHeight - 50;
$('.mean-nav > ul').css('height', wHeight + 'px');
});
/*-------------------------------------
window scroll function
-------------------------------------*/
$(window).on('scroll', function() {
//jquery Stiky Menu activation code
// var s = $('#sticker'),
// w = $('.wrapper-area'),
// target = s.find('.header-bottom'),
// windowpos = $(window).scrollTop(),
// windowWidth = $(window).width();
//
// if (windowWidth > 767) {
// var topBar = s.find('.header-top'),
// topBarH = 0;
// if (topBar.length) {
// topBarH = topBar.outerHeight();
// }
//
// if (windowpos >= topBarH) {
// s.addClass('stick');
// var h = target.outerHeight();
// w.css('padding-top', h + 'px');
// } else {
// s.removeClass('stick');
// w.css('padding-top', 0);
// }
// }
}); // end of scrool function
/*-------------------------------------
Google Map activation code
-------------------------------------*/
if ($('#googleMap').length) {
var initialize = function() {
var mapOptions = {
zoom: 15,
scrollwheel: false,
center: new google.maps.LatLng(-37.81618, 144.95692)
};
var map = new google.maps.Map(document.getElementById("googleMap"), mapOptions);
var marker = new google.maps.Marker({
position: map.getCenter(),
animation: google.maps.Animation.BOUNCE,
icon: 'img/map-marker.png',
map: map
});
}
google.maps.event.addDomListener(window, 'load', initialize);
}
/*-------------------------------------
Shopping Cart Manager
-------------------------------------*/
$(document).on('click', 'a.btn-product_compare', function() {
var reload = false;
var article_id = $(this).data('id');
if ($(this).hasClass('refresh-me')) {
reload = true;
}
manageCompare('add', article_id, reload);
});
$(document).on('click', 'a.btn-product_addtocart', function() {
var reload = false;
var article_id = $(this).data('id');
var name = $(this).data('var');
var num = parseInt($("#number").val(), 10);
var price = $(this).data('price');
var goto_site = $(this).data('goto');
if ($(this).hasClass('refresh-me')) {
reload = true;
}
manageShoppingCart('add', article_id, reload,name,price,num);
});
$(document).on('click', 'a.btn-product_remove', function(){
var reload = true;
var article_id = $(this).data('id');
var vid = $(this).data('vid');
manageShoppingCart('remove', article_id, reload ,'',vid);
});
$(document).on('click', 'a.btn-compare_remove', function(){
var reload = true;
var article_id = $(this).data('id');
manageCompare('remove', article_id, reload);
});
$('button.quantity-plus').click(function () {
var reload = true;
var article_id = $(this).data('id');
var num = parseInt($(this).parent().prev().val(), 10);;
var name = $(this).data('var');
var target = $(this).data('qty');
var price = $(this).data('price');
var goto_site = $(this).data('goto');
if ($(this).hasClass('refresh-me')) {
reload = true;
}
console.log(num);
console.log(target);
if (num < target) {
manageShoppingCart('add', article_id, reload,name,price, num + 1);
}
});
$('button.quantity-minus').click(function () {
var reload = true;
var article_id = $(this).data('id');
var vid = $(this).data('vid');
manageShoppingCart('remove', article_id, reload ,'',vid);
});
function manageShoppingCarteupdate(action, article_id, reload ) {
$.ajax({
type: "POST",
url: variable.manageShoppingCartUrl,
data:
{
article_id: article_id,
action: action
}
}).done(function (data) {
$(".dropdown-cart").empty();
$(".dropdown-cart").append(data);
var sum_items = parseInt($('.sumOfItems').text());
if (action == 'add') {
$('.sumOfItems').text(sum_items + 1);
}
if (action == 'remove') {
$('.sumOfItems').text(sum_items - 1);
}
if (reload == true) {
location.reload(true);
return;
}
// ShowNotificator('alert-info', action_success_msg);
}).fail(function (err) {
// ShowNotificator('alert-danger', action_error_msg);
}).always(function () {
if (action == 'add') {
$('.add-to-cart a[data-id="' + article_id + '"] span').show();
$('.add-to-cart a[data-id="' + article_id + '"] img').hide();
}
});
}
function manageShoppingCart(action, article_id, reload,name, price=0 , num=0) {
$.ajax({
type: "POST",
url: variable.manageShoppingCartUrl,
data:
{
article_id: article_id,
name: name,
price: price,
num: num,
action: action
}
}).done(function (data) {
$(".dropdown-cart").empty();
$(".dropdown-cart").append(data);
var sum_items = parseInt($('.sumOfItems').text());
if (action == 'add') {
$('.sumOfItems').text(sum_items + 1);
}
if (action == 'remove') {
$('.sumOfItems').text(sum_items - 1);
}
if (reload == true) {
location.reload(false);
return;
} else if (typeof reload == 'string') {
location.href = reload;
return;
}
}).fail(function (err) {
// ShowNotificator('alert-danger', action_error_msg);
alert("خطا")
}).always(function () {
if (action == 'add') {
$('.add-to-cart a[data-id="' + article_id + '"] span').show();
$('.add-to-cart a[data-id="' + article_id + '"] img').hide();
}
});
}
function manageCompare(action, article_id, reload) {
$.ajax({
type: "POST",
url: variable.manageCompareUrl,
data:
{
article_id: article_id,
action: action
}
}).done(function (data) {
var sum_items = parseInt($('.sumOfCompare').text());
if (action == 'add') {
$('.sumOfCompare').text(sum_items + 1);
}
if (action == 'remove') {
$('.sumOfCompare').text(sum_items - 1);
}
if (reload == true) {
location.reload(false);
return;
} else if (typeof reload == 'string') {
location.href = reload;
return;
}
}).fail(function (err) {
// ShowNotificator('alert-danger', action_error_msg);
alert("خطا")
}).always(function () {
});
}
/*-------------------------------------
Price Range Filter activation code
-------------------------------------*/
$(document).ready(function()
{
$('#btnlogin').html('ارسال کد و تایید شماره');
$(document).on('click', '#btnlogin', function(e){
e.preventDefault();
$('#btnlogin').html('... درحال پردازش');
var url = 'https://eramesabz.com';
var user = $('#loginformmodal').serialize();
var logincheck = function(){
$.ajax({
type: 'POST',
url: url + '/users/modalcheckphone',
dataType: 'json',
data: user,
success:function(response){
$('#message').html(response.message);
if(response.error){
$('#responseDiv').removeClass('alert-success').addClass('alert-danger').show();
}
else{
$('#responseDiv').removeClass('alert-danger').addClass('alert-success').show();
$('#otpsection').css("display","block")
$('#btnotp').css("display","block")
$('#btnlogin').css("display","none")
$('#btnlogin').html('ورود و تایید کد');
$(document).on('click', '#btnotp', function(e){
e.preventDefault();
var info = $('#loginformmodal').serialize();
var login = function(){
$.ajax({
type: 'POST',
url: url + '/modallogin',
dataType: 'json',
data: info,
success:function(response){
$('#message').html(response.message);
if(response.error){
$('#responseDiv').removeClass('alert-success').addClass('alert-danger').show();
}
else{
$('#responseDiv').removeClass('alert-danger').addClass('alert-success').show();
setTimeout(function(){
location.reload();
}, 2000);
}
}
});
};
setTimeout(login, 1000);
});
}
}
});
};
setTimeout(logincheck, 1000);
});
});
$(document).ready(function(){
var rate;
rate = 0;
/* 1. Visualizing things on Hover - See next part for action on click */
$('#stars li').on('mouseover', function(){
var onStar = parseInt($(this).data('value'), 10); // The star currently mouse on
// Now highlight all the stars that's not after the current hovered star
$(this).parent().children('li.star').each(function(e){
if (e < onStar) {
$(this).addClass('hover');
}
else {
$(this).removeClass('hover');
}
});
}).on('mouseout', function(){
$(this).parent().children('li.star').each(function(e){
$(this).removeClass('hover');
});
});
/* 2. Action to perform on click */
$('#stars li').on('click', function(){
var onStar = parseInt($(this).data('value'), 10); // The star currently selected
var stars = $(this).parent().children('li.star');
for (var i = 0; i < stars.length; i++) {
$(stars[i]).removeClass('selected');
}
for (i = 0; i < onStar; i++) {
$(stars[i]).addClass('selected');
}
// JUST RESPONSE (Not needed)
var ratingValue = parseInt($('#stars li.selected').last().data('value'), 10);
rate = ratingValue ;
$('input[name=rate]').val(rate);
});
$('#commentbtntxt').html("ارسال دیدگاه");
$('#product_comment').submit(function(e){
e.preventDefault();
$('#commentbtntxt').html('...ارسال دیدگاه ');
var url = 'https://eramesabz.com';
var comment = $('#product_comment').serialize();
var didgah = function(){
$.ajax({
type: 'POST',
url: url + '/comment',
dataType: 'json',
data: comment,
success:function(response){
$('#message').html('دیدگاه شما ارسال شد و پس از تایید توسط مدیر فروشگاه به نمایش گذاشته خواهد شد');
$('#commentbtntxt').html('دیدگاه شما ارسال شد');
if(response.error){
$('#responseDiv').removeClass('alert-success').addClass('alert-danger').show();
}
else{
$('#responseDiv').removeClass('alert-danger').addClass('alert-success').show();
$('#product_comment')[0].reset();
setTimeout(function(){
location.reload();
}, 2000);
}
}
});
};
setTimeout(didgah, 2000);
});
$(document).on('click', '#clearMsg', function(){
$('#responseDiv').hide();
});
});
})(jQuery);