Dre4m Shell
Server IP : 85.214.239.14  /  Your IP : 18.191.223.30
Web Server : Apache/2.4.62 (Debian)
System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.18
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /srv/automx/automx-master/src/foundation-scss/javascripts/foundation/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /srv/automx/automx-master/src/foundation-scss/javascripts/foundation/foundation.topbar.js
/*jslint unparam: true, browser: true, indent: 2 */

;
(function ($, window, document, undefined) {
    'use strict';

    Foundation.libs.topbar = {
        name: 'topbar',

        version: '4.2.3',

        settings: {
            index: 0,
            stickyClass: 'sticky',
            custom_back_text: true,
            back_text: 'Back',
            is_hover: true,
            scrolltop: true, // jump to top when sticky nav menu toggle is clicked
            init: false
        },

        init: function (section, method, options) {
            Foundation.inherit(this, 'data_options');
            var self = this;

            if (typeof method === 'object') {
                $.extend(true, this.settings, method);
            } else if (typeof options !== 'undefined') {
                $.extend(true, this.settings, options);
            }

            if (typeof method !== 'string') {

                $('.top-bar, [data-topbar]').each(function () {
                    $.extend(true, self.settings, self.data_options($(this)));
                    self.settings.$w = $(window);
                    self.settings.$topbar = $(this);
                    self.settings.$section = self.settings.$topbar.find('section');
                    self.settings.$titlebar = self.settings.$topbar.children('ul').first();
                    self.settings.$topbar.data('index', 0);

                    var breakpoint = $("<div class='top-bar-js-breakpoint'/>").insertAfter(self.settings.$topbar);
                    self.settings.breakPoint = breakpoint.width();
                    breakpoint.remove();

                    self.assemble();

                    if (self.settings.$topbar.parent().hasClass('fixed')) {
                        $('body').css('padding-top', self.outerHeight(self.settings.$topbar));
                    }
                });

                if (!self.settings.init) {
                    this.events();
                }

                return this.settings.init;
            } else {
                // fire method
                return this[method].call(this, options);
            }
        },

        events: function () {
            var self = this;
            var offst = this.outerHeight($('.top-bar, [data-topbar]'));
            $(this.scope)
                .off('.fndtn.topbar')
                .on('click.fndtn.topbar', '.top-bar .toggle-topbar, [data-topbar] .toggle-topbar', function (e) {
                    var topbar = $(this).closest('.top-bar, [data-topbar]'),
                        section = topbar.find('section, .section'),
                        titlebar = topbar.children('ul').first();

                    e.preventDefault();

                    if (self.breakpoint()) {
                        if (!self.rtl) {
                            section.css({left: '0%'});
                            section.find('>.name').css({left: '100%'});
                        } else {
                            section.css({right: '0%'});
                            section.find('>.name').css({right: '100%'});
                        }

                        section.find('li.moved').removeClass('moved');
                        topbar.data('index', 0);

                        topbar
                            .toggleClass('expanded')
                            .css('height', '');
                    }

                    if (!topbar.hasClass('expanded')) {
                        if (topbar.hasClass('fixed')) {
                            topbar.parent().addClass('fixed');
                            topbar.removeClass('fixed');
                            $('body').css('padding-top', offst);
                        }
                    } else if (topbar.parent().hasClass('fixed')) {
                        topbar.parent().removeClass('fixed');
                        topbar.addClass('fixed');
                        $('body').css('padding-top', '0');

                        if (self.settings.scrolltop) {
                            window.scrollTo(0, 0);
                        }
                    }
                })

                .on('mouseenter mouseleave', '.top-bar li', function (e) {
                    if (!self.settings.is_hover) return;

                    if (/enter|over/i.test(e.type)) {
                        $(this).addClass('hover');
                    } else {
                        $(this).removeClass('hover');
                    }
                })

                .on('click.fndtn.topbar', '.top-bar li.has-dropdown', function (e) {
                    if (self.breakpoint()) return;

                    var li = $(this),
                        target = $(e.target),
                        topbar = li.closest('[data-topbar], .top-bar'),
                        is_hover = topbar.data('topbar');

                    if (self.settings.is_hover && !Modernizr.touch) return;

                    e.stopImmediatePropagation();

                    if (target[0].nodeName === 'A' && target.parent().hasClass('has-dropdown')) {
                        e.preventDefault();
                    }

                    if (li.hasClass('hover')) {
                        li
                            .removeClass('hover')
                            .find('li')
                            .removeClass('hover');
                    } else {
                        li.addClass('hover');
                    }
                })

                .on('click.fndtn.topbar', '.top-bar .has-dropdown>a, [data-topbar] .has-dropdown>a', function (e) {
                    if (self.breakpoint()) {
                        e.preventDefault();

                        var $this = $(this),
                            topbar = $this.closest('.top-bar, [data-topbar]'),
                            section = topbar.find('section, .section'),
                            titlebar = topbar.children('ul').first(),
                            dropdownHeight = $this.next('.dropdown').outerHeight(),
                            $selectedLi = $this.closest('li');

                        topbar.data('index', topbar.data('index') + 1);
                        $selectedLi.addClass('moved');

                        if (!self.rtl) {
                            section.css({left: -(100 * topbar.data('index')) + '%'});
                            section.find('>.name').css({left: 100 * topbar.data('index') + '%'});
                        } else {
                            section.css({right: -(100 * topbar.data('index')) + '%'});
                            section.find('>.name').css({right: 100 * topbar.data('index') + '%'});
                        }

                        topbar.css('height', self.outerHeight($this.siblings('ul'), true) + self.outerHeight(titlebar, true));
                    }
                });

            $(window).on('resize.fndtn.topbar', function () {
                if (!self.breakpoint()) {
                    $('.top-bar, [data-topbar]')
                        .css('height', '')
                        .removeClass('expanded')
                        .find('li')
                        .removeClass('hover');
                }
            }.bind(this));

            $('body').on('click.fndtn.topbar', function (e) {
                var parent = $(e.target).closest('[data-topbar], .top-bar');

                if (parent.length > 0) {
                    return;
                }

                $('.top-bar li, [data-topbar] li').removeClass('hover');
            });

            // Go up a level on Click
            $(this.scope).on('click.fndtn', '.top-bar .has-dropdown .back, [data-topbar] .has-dropdown .back', function (e) {
                e.preventDefault();

                var $this = $(this),
                    topbar = $this.closest('.top-bar, [data-topbar]'),
                    titlebar = topbar.children('ul').first(),
                    section = topbar.find('section, .section'),
                    $movedLi = $this.closest('li.moved'),
                    $previousLevelUl = $movedLi.parent();

                topbar.data('index', topbar.data('index') - 1);

                if (!self.rtl) {
                    section.css({left: -(100 * topbar.data('index')) + '%'});
                    section.find('>.name').css({left: 100 * topbar.data('index') + '%'});
                } else {
                    section.css({right: -(100 * topbar.data('index')) + '%'});
                    section.find('>.name').css({right: 100 * topbar.data('index') + '%'});
                }

                if (topbar.data('index') === 0) {
                    topbar.css('height', '');
                } else {
                    topbar.css('height', self.outerHeight($previousLevelUl, true) + self.outerHeight(titlebar, true));
                }

                setTimeout(function () {
                    $movedLi.removeClass('moved');
                }, 300);
            });
        },

        breakpoint: function () {
            return $(document).width() <= this.settings.breakPoint || $('html').hasClass('lt-ie9');
        },

        assemble: function () {
            var self = this;
            // Pull element out of the DOM for manipulation
            this.settings.$section.detach();

            this.settings.$section.find('.has-dropdown>a').each(function () {
                var $link = $(this),
                    $dropdown = $link.siblings('.dropdown'),
                    url = $link.attr('href');

                if (url && url.length > 1) {
                    var $titleLi = $('<li class="title back js-generated"><h5><a href="#"></a></h5></li><li><a class="parent-link js-generated" href="' + url + '">' + $link.text() + '</a></li>');
                } else {
                    var $titleLi = $('<li class="title back js-generated"><h5><a href="#"></a></h5></li>');
                }

                // Copy link to subnav
                if (self.settings.custom_back_text == true) {
                    $titleLi.find('h5>a').html('&laquo; ' + self.settings.back_text);
                } else {
                    $titleLi.find('h5>a').html('&laquo; ' + $link.html());
                }
                $dropdown.prepend($titleLi);
            });

            // Put element back in the DOM
            this.settings.$section.appendTo(this.settings.$topbar);

            // check for sticky
            this.sticky();
        },

        height: function (ul) {
            var total = 0,
                self = this;

            ul.find('> li').each(function () {
                total += self.outerHeight($(this), true);
            });

            return total;
        },

        sticky: function () {
            var klass = '.' + this.settings.stickyClass;
            if ($(klass).length > 0) {
                var distance = $(klass).length ? $(klass).offset().top : 0,
                    $window = $(window);
                var offst = this.outerHeight($('.top-bar'));
                //Whe resize elements of the page on windows resize. Must recalculate distance
                $(window).resize(function () {
                    clearTimeout(t_top);
                    t_top = setTimeout(function () {
                        distance = $(klass).offset().top;
                    }, 105);
                });
                $window.scroll(function () {
                    if ($window.scrollTop() > (distance)) {
                        $(klass).addClass("fixed");
                        $('body').css('padding-top', offst);
                    }

                    else if ($window.scrollTop() <= distance) {
                        $(klass).removeClass("fixed");
                        $('body').css('padding-top', '0');
                    }
                });
            }
        },

        off: function () {
            $(this.scope).off('.fndtn.topbar');
            $(window).off('.fndtn.topbar');
        },

        reflow: function () {
        }
    };
}(Foundation.zj, this, this.document));

Anon7 - 2022
AnonSec Team