PageSourceSearch

https://methexis.gr/wp-content/themes/bookworm/assets/js/hs.core.js?ver=1.1.3

js methexis.gr collected 2026-10-09 17:53:49 UTC 5,127 bytes, 176 lines download raw bytes

1/**
2* HSCore -
3*
4* @author HtmlStream
5* @version 1.0
6*/
7;
8(function ($) {
9
10    'use strict';
11
12    $.HSCore = {
13
14        /**
15        *
16        *
17        * @param
18        *
19        * @return
20        */
21        init: function () {
22
23            $(document).ready(function (e) {
24                // Botostrap Tootltips
25                $('[data-toggle="tooltip"]').tooltip();
26
27                // Bootstrap Popovers
28                $('[data-toggle="popover"]').popover();
29
30                // Detect Internet Explorer (IE)
31                $.HSCore.helpers.detectIE();
32
33                // Bootstrap Navigation Options
34                $.HSCore.helpers.bootstrapNavOptions.init();
35
36            });
37
38        },
39
40        /**
41        *
42        *
43        * @var
44        */
45        components: {},
46
47        /**
48        *
49        *
50        * @var
51        */
52        helpers: {
53
54            Math: {
55
56                getRandomValueFromRange: function(startPoint, endPoint, fixed) {
57
58                    var fixedInner = fixed ? fixed : false;
59
60                    Math.random();
61
62                    return fixedInner ? (Math.random() * (endPoint - startPoint) + startPoint) : (Math.floor(Math.random() * (endPoint - startPoint + 1)) + startPoint);
63
64                }
65
66            },
67
68
69            /**
70            * Detect Internet Explorer (IE)
71            *
72            * @return version of IE or false, if browser is not Internet Explorer
73            */
74
75            detectIE: function() {
76
77                var ua = window.navigator.userAgent;
78
79                var trident = ua.indexOf('Trident/');
80                if (trident > 0) {
81                    // IE 11 => return version number
82                    var rv = ua.indexOf('rv:');
83                    var ieV = parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);
84                    document.querySelector('body').className += ' IE';
85                }
86
87                var edge = ua.indexOf('Edge/');
88                if (edge > 0) {
89                    // IE 12 (aka Edge) => return version number
90                    var ieV = parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);
91                    document.querySelector('body').className += ' IE';
92                }
93
94                // other browser
95                return false;
96
97            },
98
99
100            /**
101            * Bootstrap navigation options
102            *
103            */
104            bootstrapNavOptions: {
105                init: function () {
106                    this.mobileHideOnScroll();
107                },
108
109                mobileHideOnScroll: function () {
110                    var $collection = $('.navbar');
111                    if (!$collection.length) return;
112
113                    var $w = $(window),
114                    breakpointsMap = {
115                        'sm': 576,
116                        'md': 768,
117                        'lg': 992,
118                        'xl': 1200
119                    };
120
121                    $('body').on('click.HSMobileHideOnScroll', '.navbar-toggler', function (e) {
122                        var $navbar = $(this).closest('.navbar');
123
124                        if ($navbar.length) {
125                            $navbar.data('mobile-menu-scroll-position', $w.scrollTop());
126                        }
127                        e.preventDefault();
128                    });
129
130                    $w.on('scroll.HSMobileHideOnScroll', function (e) {
131                        $collection.each(function (i, el) {
132                            var $this = $(el), $toggler, $nav, offset, $hamburgers, breakpoint;
133                            if ($this.hasClass('navbar-expand-xl')) breakpoint = breakpointsMap['xl'];
134                            else if ($this.hasClass('navbar-expand-lg')) breakpoint = breakpointsMap['lg'];
135                            else if ($this.hasClass('navbar-expand-md')) breakpoint = breakpointsMap['md'];
136                            else if ($this.hasClass('navbar-expand-xs')) breakpoint = breakpointsMap['xs'];
137
138                            if ($w.width() > breakpoint) return;
139
140                            $toggler = $this.find('.navbar-toggler');
141                            $nav = $this.find('.navbar-collapse');
142
143                            if (!$nav.data('mobile-scroll-hide')) return;
144
145                            if ($nav.length) {
146                                offset = $this.data('mobile-menu-scroll-position');
147
148                                if (Math.abs($w.scrollTop() - offset) > 40 && $nav.hasClass('show')) {
149                                    $toggler.trigger('click');
150                                    $hamburgers = $toggler.find('.is-active');
151                                    if ($hamburgers.length) {
152                                        $hamburgers.removeClass('is-active');
153                                    }
154                                }
155                            }
156                        });
157                    });
158                }
159            }
160
161        },
162
163        /**
164        *
165        *
166        * @var
167        */
168        settings: {
169            rtl: false
170        }
171
172    };
173
174    $.HSCore.init();
175
176})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.