PageSourceSearch

https://drivetecautoparts.com/wp-content/plugins/download-manager/assets/js/front.js

js drivetecautoparts.com collected 2026-10-08 22:49:22 UTC 21,424 bytes, 449 lines download raw bytes

1var allps;
2
3var WPDM = {
4
5
6    beep: function() {
7        if(WPDM.audio == undefined)
8            var snd = new  Audio("data:audio/wav;base64,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Zx5zfMakeAAAAmwAAAAF5F3P0w9GtAAACfAAAAAwLhMDmAYWMgVEG1U0FIGCBgXBXAtfMH10000EEEEEECUBYln03TTTdNBDZopopYvrTTdNa325mImNg3TTPV9q3pmY0xoO6bv3r00y+IDGid/9aaaZTGMuj9mpu9Mpio1dXrr5HERTZSmqU36A3CumzN/9Robv/Xx4v9ijkSRSNLQhAWumap82WRSBUqXStV/YcS+XVLnSS+WLDroqArFkMEsAS+eWmrUzrO0oEmE40RlMZ5+ODIkAyKAGUwZ3mVKmcamcJnMW26MRPgUw6j+LkhyHGVGYjSUUKNpuJUQoOIAyDvEyG8S5yfK6dhZc0Tx1KI/gviKL6qvvFs1+bWtaz58uUNnryq6kt5RzOCkPWlVqVX2a/EEBUdU1KrXLf40GoiiFXK///qpoiDXrOgqDR38JB0bw7SoL+ZB9o1RCkQjQ2CBYZKd/+VJxZRRZlqSkKiws0WFxUyCwsKiMy7hUVFhIaCrNQsKkTIsLivwKKigsj8XYlwt/WKi2N4d//uQRCSAAjURNIHpMZBGYiaQPSYyAAABLAAAAAAAACWAAAAApUF/Mg+0aohSIRobBAsMlO//Kk4soosy1JSFRYWaLC4qZBYWFRGZdwqKiwkNBVmoWFSJkWFxX4FFRQWR+LsS4W/rFRb/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////VEFHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU291bmRib3kuZGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjAwNGh0dHA6Ly93d3cuc291bmRib3kuZGUAAAAAAAAAACU=");
9        else
10            var snd = new  Audio(WPDM.audio);
11        snd.play();
12    },
13
14    popupWindow: function(url, title, w, h) {
15        /* Fixes dual-screen position                         Most browsers      Firefox */
16        var dualScreenLeft = window.screenLeft != undefined ? window.screenLeft : screen.left;
17        var dualScreenTop = window.screenTop != undefined ? window.screenTop : screen.top;
18
19        var width = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : screen.width;
20        var height = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : screen.height;
21
22        var left = ((width / 2) - (w / 2)) + dualScreenLeft;
23        var top = ((height / 2) - (h / 2)) + dualScreenTop;
24        var newWindow = window.open(url, title, 'scrollbars=yes, width=' + w + ', height=' + h + ', top=' + top + ', left=' + left);
25
26        /* Puts focus on the newWindow */
27        if (window.focus) {
28            newWindow.focus();
29        }
30
31        return false;
32    },
33
34    bootAlert: function(heading, content, width) {
35        var html;
36        if(!width) width = 400;
37        jQuery("#w3eden__bootModal").remove();
38        html = '<div class="w3eden" id="w3eden__bootModal"><div id="__bootModal" class="modal fade" tabindex="-1" role="dialog">\n' +
39            '  <div class="modal-dialog" style="width: '+width+'px" role="document">\n' +
40            '    <div class="modal-content" style="border-radius: 3px;overflow: hidden">\n' +
41            '      <div class="modal-header" style="padding: 12px 15px;background: #f5f5f5;">\n' +
42            '        <h4 class="modal-title" style="font-size: 9pt;font-weight: 500;padding: 0;margin: 0;font-family:Montserrat, san-serif;letter-spacing: 0.5px">'+heading+'</h4>\n' +
43            '      </div>\n' +
44            '      <div class="modal-body fetfont" style="line-height: 1.5;text-transform: unset;font-weight:400;letter-spacing:0.5px;font-size: 12px">\n' +
45            '        '+content+'\n' +
46            '      </div>\n' +
47            '      <div class="modal-footer" style="padding: 10px 15px">\n' +
48            '        <button type="button" class="btn btn-secondary btn-xs" data-dismiss="modal">Close</button>\n' +
49            '      </div>\n' +
50            '    </div>\n' +
51            '  </div>\n' +
52            '</div></div>';
53        jQuery('body').append(html);
54        jQuery("#__bootModal").modal('show');
55    },
56
57
58    /**
59     * Local push notification
60     * @param title
61     * @param message
62     * @param icon
63     * @param image
64     * @param url
65     */
66    pushNotify: function(title, message, icon, image, url){
67        if (!('Notification' in window) || !('ServiceWorkerRegistration' in window)) {
68            return;
69        }
70
71        Notification.requestPermission(function (result) {
72            if(result === 'granted'){
73                console.log('Notification: ' + result);
74                try {
75                    var notification = new Notification(title, {body: message, icon: icon?icon:'../../data/icons/hawcons/32/698558-icon-47-note-important-512.png', image: image?image:''});
76                    if(url) {
77                        notification.onclick = function (e) {
78                            e.preventDefault();
79                            window.open(url, '_blank');
80                        };
81                    }
82                } catch (err) {
83                    console.log('Notification API error: ' + err);
84                }
85            } else {
86                console.log('Notification: ' + result);
87            }
88        });
89
90    },
91
92
93
94    /**
95     * Shows notification
96     * @param message
97     * @param type
98     * @param position
99     */
100    notify: function(message, type, position){
101        var $ = jQuery;
102        if(type === undefined) type = "info";
103        position = 'top-right';
104        var notifycont = '#wpdm-notify-'+position;
105        if($(notifycont).length  == 0)
106            $('body').prepend("<div id='wpdm-notify-"+position+"'></div>");
107        var notif = $("<div class='wpdm-notify fetfont wpdm-notify-"+type+"' style='margin-right: -500px'>"+message+"</div>");
108        $(notifycont).append(notif);
109        $(notif).animate({marginRight: '0px'});
110        return $(notif);
111    },
112
113    /**
114     * Shows notification
115     * @param message
116     * @param type
117     * @param position
118     */
119    floatify: function(html, position){
120        var $ = jQuery;
121        position = 'top-right';
122        var floatifycont = '#wpdm-floatify-'+position;
123        if($(floatifycont).length  == 0)
124            $('body').prepend("<div class='w3eden' id='wpdm-floatify-"+position+"'></div>");
125        var floatify = $("<div class='wpdm-floatify fetfont style='margin-right: -500px'>"+html+"</div>");
126        $(floatifycont).append(floatify);
127        $(floatify).animate({marginRight: '0px'});
128        return $(floatify);
129    },
130
131    blockUI: function(element, xhr){
132        jQuery(element).addClass("blockui");
133        if(xhr)
134            xhr.addEventListener("load", function () {
135                jQuery(element).removeClass("blockui");
136            });
137    },
138
139    unblockUI: function(element){
140        jQuery(element).removeClass("blockui");
141    },
142
143    overlay: function(element, html){
144        var $ = jQuery;
145        var overlaycontent = $("<div class='wpdm-overlay-content' style='display: none'>"+html+"<div class='wpdm-overlay-close' style='cursor: pointer'><i class='far fa-times-circle'></i> close</div></div>");
146        $(element).addClass('wpdm-overlay').append(overlaycontent);
147        $(overlaycontent).fadeIn();
148        $('body').on('click', '.wpdm-overlay-close', function () {
149            $(overlaycontent).fadeOut(function () {
150                $(this).remove();
151            });
152        });
153        return $(overlaycontent);
154    },
155
156
157    confirm: function(heading, content, buttons) {
158        var html, $ = jQuery;
159        $("#w3eden__boot_popup").remove();
160        var _buttons = '';
161        if(buttons) {
162            _buttons = '<div class="modal-footer" style="padding: 8px 15px;">\n';
163            $.each(buttons, function (i, button) {
164                var id = 'btx_' + i;
165                _buttons += "<button id='" + id + "' class='" + button.class + " btn-xs' style='font-size: 10px;padding: 3px 20px;'>" + button.label + "</button> ";
166            });
167            _buttons += '</div>\n';
168        }
169
170        html = '<div class="w3eden" id="w3eden__boot_popup"><div id="__boot_popup" style="z-index: 9999999 !important;" class="modal fade" tabindex="-1" role="dialog">\n' +
171            '  <div class="modal-dialog" role="document" style="max-width: 100%;width: 350px">\n' +
172            '    <div class="modal-content" style="border-radius: 3px;overflow: hidden">\n' +
173            '      <div class="modal-header" style="padding: 12px 15px;background: #f5f5f5;">\n' +
174            '        <h4 class="modal-title" style="font-size: 9pt;font-weight: 500;padding: 0;margin: 0;font-family:var(--wpdm-font), san-serif;letter-spacing: 0.5px">'+heading+'</h4>\n' +
175            '      </div>\n' +
176            '      <div class="modal-body text-center" style="font-family:var(--wpdm-font), san-serif;letter-spacing: 0.5px;font-size: 10pt;font-weight: 300;padding: 25px;line-height: 1.5">\n' +
177            '        '+content+'\n' +
178            '      </div>\n' + _buttons +
179            '    </div>\n' +
180            '  </div>\n' +
181            '</div></div>';
182        $('body').append(html);
183        $("#__boot_popup").modal('show');
184        $.each(buttons, function (i, button) {
185            var id = 'btx_'+i;
186            $('#'+id).unbind('click');
187            $( '#'+id).bind('click' , function () {
188                button.callback.call($("#__boot_popup"));
189                return false;
190            });
191        });
192        return $("#__boot_popup");
193    }
194
195};
196
197jQuery(function ($) {
198
199    $('.wpdm_hide.wpdm_remove_empty').remove();
200
201    $('.wpdm-checkbox.wpdm-lock-terms').on('click', function () {
202        var target = $(this).data('target');
203        if($(this).is(':checked'))
204            $(target).slideDown();
205        else
206            $(target).slideUp();
207    });
208
209    $('.input-group input').on('focus', function () {
210        $(this).parent().find('.input-group-addon').addClass('input-group-addon-active');
211    });
212    $('.input-group input').on('blur', function () {
213        $(this).parent().find('.input-group-addon').removeClass('input-group-addon-active');
214    });
215
216    $('body').on('click', '.wpdm-download-link.wpdm-download-locked', function (e) {
217        e.preventDefault();
218        hideLockFrame();
219        $('body').append("<iframe id='wpdm-lock-frame' style='left:0;top:0;width: 100%;height: 100%;z-index: 99999;position: fixed;background: rgba(255,255,255,0.3) url("+wpdm_home_url+"wp-content/plugins/download-manager/assets/images/loader.svg) center center no-repeat;background-size: 100px 100px;border: 0;' src='"+wpdm_home_url+"?__wpdmlo="+$(this).data('package')+"'></iframe>");
220    });
221
222    $('body').on('click', '.inddl', function () {
223        var tis = this;
224        $.post( wpdm_site_url, {
225            wpdmfileid: $(this).data('pid'),
226            wpdmfile: $(this).data('file'),
227            actioninddlpvr: $($(this).data('pass')).val()
228        }, function (res) {
229            res = res.split('|');
230            var ret = res[1];
231            if (ret == 'error') $($(tis).data('pass')).addClass('input-error');
232            if (ret == 'ok') location.href = $(tis).attr('rel') + '&_wpdmkey=' + res[2];
233        });
234    });
235
236    $('body').on('click', '.wpdm-download-locked.pop-over', function () {
237
238        var $dc = $($(this).attr('href'));
239        if ($(this).attr('data-ready') == undefined) {
240
241            $(this).popover({
242                placement: 'bottom',
243                html: true,
244                content: function () {
245
246                    return $dc.html()+'<div style="padding-top: 10px;border-top: 1px solid #eeeeee;text-align: right"><button class="btn btn-danger btn-xs po-close" s><i class="fa fa-times-circle"></i> Close</button></div>';
247
248
249                }
250            });
251            $(this).attr('data-ready', 'hide');
252        }
253
254        if ($(this).attr('data-ready') == 'hide') {
255            $(this).popover('show');
256            $(this).attr('data-ready', 'show');
257        } else if ($(this).attr('data-ready') == 'show') {
258            $(this).popover('hide');
259            $(this).attr('data-ready', 'hide');
260        }
261
262
263        return false;
264    });
265
266    $('body').on('click', '.wpdm-indir', function (e) {
267        e.preventDefault();
268        $('#xfilelist').load(location.href, {
269            action: 'wpdmfilelistcd',
270            pid: $(this).data('pid'),
271            cd: $(this).data('dir')
272        });
273    });
274
275    $('body').on('click', '.po-close', function () {
276
277        $('.wpdm-download-link').popover('hide');
278        $('.wpdm-download-link').attr('data-ready', 'hide');
279
280    });
281
282
283    $('body').on('click', '.wpdm-btn-play', function (e) {
284        e.preventDefault();
285        var player = $('#' + $(this).data('player'));
286        var btn = $('#' + this.id);
287
288        if (btn.data('state') == 'playing') {
289            $(this).data('state', 'paused');
290            player.trigger('pause');
291            $(this).html("<i class='fa fa-play'></i>");
292            return false;
293        }
294
295        if (btn.data('state') == 'paused') {
296            $(this).data('state', 'playing');
297            player.trigger('play');
298            $('.wpdm-btn-play').html("<i class='fa fa-play'></i>");
299            $(this).html("<i class='fa fa-pause'></i>");
300            return false;
301        }
302
303
304        player.attr('src', $(this).data('song') + "&play=song.mp3");
305        player.slideDown();
306        $('.wpdm-btn-play').data("state", "stopped");
307        $('.wpdm-btn-play').html("<i class='fa fa-play'></i>");
308        btn.html("<i class='fa fa-spinner fa-spin'></i>");
309        player.unbind('loadedmetadata');
310        player.on('loadedmetadata', function () {
311            console.log("Playing " + this.src + ", for: " + this.duration + "seconds.");
312            btn.html("<i class='fa fa-pause'></i>");
313            btn.data('state', 'playing');
314            //audio.play();
315        });
316    });
317
318
319    // Uploading files
320    var file_frame, dfield;
321
322
323    jQuery('body').on('click', '.wpdm-media-upload', function (event) {
324        event.preventDefault();
325        dfield = jQuery(jQuery(this).attr('rel'));
326
327        // If the media frame already exists, reopen it.
328        if (file_frame) {
329            file_frame.open();
330            return;
331        }
332
333        // Create the media frame.
334        file_frame = wp.media.frames.file_frame = wp.media({
335            title: jQuery(this).data('uploader_title'),
336            button: {
337                text: jQuery(this).data('uploader_button_text')
338            },
339            multiple: false  // Set to true to allow multiple files to be selected
340        });
341
342        // When an image is selected, run a callback.
343        file_frame.on('select', function () {
344            // We set multiple to false so only get one image from the uploader
345            attachment = file_frame.state().get('selection').first().toJSON();
346            dfield.val(attachment.url);
347
348        });
349
350        // Finally, open the modal
351        file_frame.open();
352    });
353
354    try {
355        /*
356         FB.login(function(response) {
357         if (response.session) {
358
359         var user_id = response.session.uid;
360         var page_id = "40796308305"; //coca cola
361         var fql_query = "SELECT uid FROM page_fan WHERE page_id = "+page_id+"and uid="+user_id;
362         var the_query = FB.Data.query(fql_query);
363
364         the_query.wait(function(rows) {
365
366         if (rows.length == 1 && rows[0].uid == user_id) {
367         $("#container_like").show();
368
369         //here you could also do some ajax and get the content for a "liker" instead of simply showing a hidden div in the page.
370
371         } else {
372         $("#container_notlike").show();
373         //and here you could get the content for a non liker in ajax...
374         }
375         });
376
377
378         } else {
379         // user is not logged in
380         }
381         });
382         */
383    } catch (err) {
384    }
385
386});
387
388function hideLockFrame() {
389    jQuery('#wpdm-lock-frame').remove();
390}
391
392function wpdm_bootModal(heading, content, width) {
393    var html;
394    if(!width) width = 400;
395    jQuery("#w3eden__bootModal").remove();
396    html = '<div class="w3eden" id="w3eden__bootModal"><div id="__bootModal" class="modal fade" tabindex="-1" role="dialog">\n' +
397        '  <div class="modal-dialog" style="width: '+width+'px" role="document">\n' +
398        '    <div class="modal-content">\n' +
399        '      <div class="modal-header">\n' +
400        '        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>\n' +
401        '        <h4 class="modal-title">'+heading+'</h4>\n' +
402        '      </div>\n' +
403        '      <div class="modal-body">\n' +
404        '        <p>'+content+'</p>\n' +
405        '      </div>\n' +
406        '      <div class="modal-footer">\n' +
407        '        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>\n' +
408        '      </div>\n' +
409        '    </div>\n' +
410        '  </div>\n' +
411        '</div></div>';
412    jQuery('body').append(html);
413    jQuery("#__bootModal").modal('show');
414}
415
416function wpdm_boot_popup(heading, content, buttons) {
417    var html, $ = jQuery;
418    $("#w3eden__boot_popup").remove();
419    var _buttons = '<div class="modal-footer" style="padding: 8px 15px;">\n';
420    $.each(buttons, function (i, button) {
421        var id = 'btx_'+i;
422        _buttons += "<button id='"+id+"' class='"+button.class+" btn-xs' style='font-size: 10px;padding: 3px 20px;'>"+button.label+"</button> ";
423    });
424    _buttons += '</div>\n';
425
426    html = '<div class="w3eden" id="w3eden__boot_popup"><div id="__boot_popup" style="z-index: 9999999 !important;" class="modal fade" tabindex="-1" role="dialog">\n' +
427        '  <div class="modal-dialog" role="document" style="max-width: 100%;width: 350px">\n' +
428        '    <div class="modal-content" style="border-radius: 3px;overflow: hidden">\n' +
429        '      <div class="modal-header" style="padding: 12px 15px;background: #f5f5f5;">\n' +
430        '        <h4 class="modal-title" style="font-size: 9pt;font-weight: 500;padding: 0;margin: 0;font-family:Montserrat, san-serif;letter-spacing: 0.5px">'+heading+'</h4>\n' +
431        '      </div>\n' +
432        '      <div class="modal-body text-center" style="letter-spacing: 0.5px;font-size: 10pt;font-weight: 300;padding: 25px;line-height: 1.5">\n' +
433        '        '+content+'\n' +
434        '      </div>\n' + _buttons +
435        '    </div>\n' +
436        '  </div>\n' +
437        '</div></div>';
438    $('body').append(html);
439    $("#__boot_popup").modal('show');
440    $.each(buttons, function (i, button) {
441        var id = 'btx_'+i;
442        $('#'+id).unbind('click');
443        $( '#'+id).bind('click' , function () {
444            button.callback.call($("#__boot_popup"));
445            return false;
446        });
447    });
448    return $("#__boot_popup");
449}

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.