PageSourceSearch

https://360-grad-bewerbung.de/wp-content/plugins/email-encoder-bun…?ver=2c542c9989f589cd5318f5cef6a9ecd7

js 360-grad-bewerbung.de collected 2026-09-24 09:06:10 UTC 2,261 bytes, 102 lines download raw bytes

1/* Email Encoder */
2/*global jQuery, window*/
3jQuery(function ($) {
4
5    'use strict';
6
7    // encoding method
8    function rot13(s) {
9        // source: http://jsfromhell.com/string/rot13
10        return s.replace(/[a-zA-Z]/g, function (c) {
11            return String.fromCharCode((c <= 'Z' ? 90 : 122) >= (c = c.charCodeAt(0) + 13) ? c : c - 26);
12        });
13    }
14
15    /**
16     * EMAIL RELATED LOGIC
17     */
18
19    // fetch email from data attribute
20    function fetchEmail(el) {
21        var email = el.getAttribute('data-enc-email');
22
23        if (!email) {
24            return null;
25        }
26
27        // replace [at] sign
28        email = email.replace(/\[at\]/g, '@');
29
30        // encode
31        email = rot13(email);
32
33        return email;
34    }
35
36    // replace email in title attribute
37    function parseTitle(el) {
38        var title = el.getAttribute('title');
39        var email = fetchEmail(el);
40
41        if (title && email) {
42            title = title.replace('{{email}}', email);
43            el.setAttribute('title', title);
44        }
45    }
46
47    // set input value attribute
48    function setInputValue(el) {
49        var email = fetchEmail(el);
50
51        if (email) {
52            el.setAttribute('value', email);
53        }
54    }
55
56    // open mailto link
57    function mailto(el) {
58        var email = fetchEmail(el);
59
60        if (email) {
61            window.location.href = 'mailto:' + email;
62        }
63    }
64    
65    // revert
66    function revert(el, rtl) {
67        var email = fetchEmail(el);
68
69        if (email) {
70           rtl.text(email);
71           rtl.removeClass('eeb-rtl');
72        }
73    }
74
75    // prepare for copying email
76    document.addEventListener('copy', function(e){
77        $('a[data-enc-email]').each(function () {
78            var rtl = $(this).find('.eeb-rtl');
79
80            if (rtl.text()) {
81                revert(this, rtl);
82            }
83        });
84        console.log('copy');
85    });
86
87    // set mailto click
88    $('body').on('click', 'a[data-enc-email]', function () {
89        mailto(this);
90    });
91
92    // parse title attirbute
93    $('a[data-enc-email]').each(function () {
94        parseTitle(this);
95    });
96
97    // parse input fields
98    $('input[data-enc-email]').each(function () {
99        setInputValue(this);
100    });
101
102});

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.