HEX
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.30
System: Linux iZj6c1151k3ad370bosnmsZ 3.10.0-1160.76.1.el7.x86_64 #1 SMP Wed Aug 10 16:21:17 UTC 2022 x86_64
User: root (0)
PHP: 7.4.30
Disabled: NONE
Upload Files
File: /var/www/html/amberconcept/wp-content/plugins/cleantalk-spam-protect/js/cleantalk-admin.min.js.map
{"version":3,"sources":["cleantalk-admin.js","apbct-common-functions.js"],"names":["apbct_admin_sendAJAX","data","params","obj","let","callback","callbackContext","callback_context","callbackParams","callback_params","async","notJson","timeout","button","spinner","progressbar","ctAdminCommon","_ajax_nonce","Math","random","no_cache","setAttribute","style","cursor","jQuery","css","ajax","type","url","_ajax_url","success","result","removeAttribute","JSON","parse","error","setTimeout","fadeOut","cleantalkModal","loaded","toString","open","alert","apply","concat","jqXHR","textStatus","errorThrown","console","log","apbctSetEmailDecoderPopupAnimation","animationElements","animationWrapper","document","createElement","classList","i","length","apbctEEAnimationDogOne","innerText","append","ctFillDecodedEmailHandler","event","clickSource","ctWlBrandname","encodedEmail","ctPublic","this","removeEventListener","encodedEmailNodesIsMixed","wl_brandname","encodedEmailNodes","plugin_name","encodedEmailNode","body","add","popupHeaderWrapper","popupTextWrapper","popupTextWaiting","popupTextDecoding","encoderPopup","getElementById","ctPublicFunctions","text__ee_wait_for_decoding","innerHTML","waitingPopup","popupHeader","color","id","text__ee_decoding_process","apbctAjaxEmailDecodeBulk","event_javascript_data","getJavascriptClientData","post_url","location","href","referrer","encodedEmails","encodedEmailsCollection","indexOf","preventDefault","apbctTooltip","apbct","dataset","originalString","stringify","data__ajax_type","apbct_public_sendREST","method","ctSetCookie","emailEncoderPassKey","apbctEmailEncoderCallbackBulk","onErrorCallback","res","resetEncodedNodes","ctShowDecodeComment","action","apbct_public_sendAJAX","0","appendChild","is_allowed","popup","email","currentResultData","forEach","row","encoded_email","decoded_email","split","firstNode","querySelector","selectableEmail","wrapper","text__ee_click_to_select","title","text__ee_original_email","outerHTML","secondNode","remove","buttonWrapper","text__ee_got_it","addEventListener","fillDecodedNodes","click","text__ee_blocked","comment","text__ee_cannot_connect","element","text__ee_cannot_decode","popupText","text__ee_email_decoder","encodedNodes","decodingResult","ctProcessDecodedDataResult","linkTypePrefix","replace","baseElementContent","querySelectorAll","encodedEmailTextInsideMailto","el","response","targetElement","ctFillDecodedEmail","target","ready","$","on","ctDate","Date","getTime","ctSecure","protocol","cookie","toUTCString","e","parent","after","apbctNoticeDismissSuccess","siblings","apbctNoticeName","attr","notice_id","confirm","notice_when_deleting_user_text","window","btnForceProtectionOn","checked","apbctNoticeForceProtectionOn","spmOrderId","order_id","reload","message","includes"],"mappings":"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","file":"cleantalk-admin.min.js","sourcesContent":["jQuery(document).ready(function($) {\n    // Auto update banner close handler\n    jQuery('.apbct_update_notice').on('click', 'button', function() {\n        let ctDate = new Date(new Date().getTime() + 1000 * 86400 * 30 );\n        let ctSecure = location.protocol === 'https:' ? '; secure' : '';\n        document.cookie = 'apbct_update_banner_closed=1; path=/; expires=' +\n        ctDate.toUTCString() + '; samesite=lax' + ctSecure;\n    });\n\n    jQuery('li a[href=\"options-general.php?page=cleantalk\"]').css('white-space', 'nowrap')\n        .css('display', 'inline-block');\n\n    jQuery('body').on('click', '.apbct-notice .notice-dismiss-link', function(e) {\n        jQuery(e.target).parent()\n            .parent('.notice')\n            .after('<div id=\"apbct-notice-dismiss-success\" class=\"notice notice-success is-dismissible\"><p>' +\n                ctAdminCommon.apbctNoticeDismissSuccess +\n                '</p></div>');\n        setTimeout(function() {\n            jQuery('#apbct-notice-dismiss-success').fadeOut();\n        }, 2000);\n        jQuery(e.target).parent().siblings('.apbct-notice .notice-dismiss').click();\n    });\n    jQuery('body').on('click', '.apbct-notice .notice-dismiss', function(e) {\n        let apbctNoticeName = jQuery(e.target).parent().attr('id');\n        if ( apbctNoticeName ) {\n            apbct_admin_sendAJAX(\n                {\n                    'action': 'cleantalk_dismiss_notice',\n                    'notice_id': apbctNoticeName,\n                },\n                {\n                    'callback': null,\n                    'notJson': true,\n                },\n            );\n        }\n    });\n\n    // Notice when deleting user\n    jQuery('.ct_username .row-actions .delete a').on('click', function(e) {\n        e.preventDefault();\n\n        let result = confirm(ctAdminCommon.notice_when_deleting_user_text);\n\n        if (result) {\n            window.location = this.href;\n        }\n    });\n\n    let btnForceProtectionOn = document.querySelector('#apbct_setting_forms__force_protection__On');\n    if (btnForceProtectionOn) {\n        btnForceProtectionOn.addEventListener('click', function(e) {\n            if (btnForceProtectionOn.checked) {\n                let result = confirm(ctAdminCommon.apbctNoticeForceProtectionOn);\n\n                if (!result) {\n                    e.preventDefault();\n                }\n            }\n        });\n    }\n    // Restore spam order\n    $('.apbct-restore-spam-order-button').click(function() {\n        const spmOrderId = $(this).data('spam-order-id');\n        let data = {\n            action: 'apbct_restore_spam_order',\n            _ajax_nonce: ctAdminCommon._ajax_nonce,\n            order_id: spmOrderId,\n        };\n        $.ajax({\n            type: 'POST',\n            url: ctAdminCommon._ajax_url,\n            data: data,\n            success: function(result) {\n                if (result.success) {\n                    window.location.reload();\n                } else {\n                    alert(result.data.message);\n                }\n            },\n        });\n    });\n\n    // Email decoder example\n    if (window.location.href.includes('options-general.php?page=cleantalk')) {\n        let encodedEmailNode = document.querySelector('[data-original-string]');\n        if (encodedEmailNode) {\n            ctAdminCommon.encodedEmailNode = encodedEmailNode;\n            encodedEmailNode.style.cursor = 'pointer';\n            encodedEmailNode.addEventListener('click', ctFillDecodedEmailHandler);\n        }\n    }\n});\n// eslint-disable-next-line camelcase,require-jsdoc,no-unused-vars\nfunction apbct_admin_sendAJAX(data, params, obj) {\n    // Default params\n    let callback = params.callback || null;\n    let callbackContext = params.callback_context || null;\n    let callbackParams = params.callback_params || null;\n    let async = params.async || true;\n    let notJson = params.notJson || null;\n    let timeout = params.timeout || 15000;\n    var obj = obj || null; // eslint-disable-line no-var\n    let button = params.button || null;\n    let spinner = params.spinner || null;\n    let progressbar = params.progressbar || null;\n\n    if (typeof (data) === 'string') {\n        data = data + '&_ajax_nonce=' + ctAdminCommon._ajax_nonce + '&no_cache=' + Math.random();\n    } else {\n        data._ajax_nonce = ctAdminCommon._ajax_nonce;\n        data.no_cache = Math.random();\n    }\n    // Button and spinner\n    if (button) {\n        button.setAttribute('disabled', 'disabled'); button.style.cursor = 'not-allowed';\n    }\n    if (spinner) jQuery(spinner).css('display', 'inline');\n\n    jQuery.ajax({\n        type: 'POST',\n        url: ctAdminCommon._ajax_url,\n        data: data,\n        async: async,\n        success: function(result) {\n            if (button) {\n                button.removeAttribute('disabled'); button.style.cursor = 'pointer';\n            }\n            if (spinner) jQuery(spinner).css('display', 'none');\n            if (!notJson) result = JSON.parse(result);\n            if (result.error) {\n                setTimeout(function() {\n                    if (progressbar) progressbar.fadeOut('slow');\n                }, 1000);\n                if ( typeof cleantalkModal !== 'undefined' ) {\n                    // Show the result by modal\n                    cleantalkModal.loaded = 'Error:<br>' + result.error.toString();\n                    cleantalkModal.open();\n                } else {\n                    alert('Error happens: ' + (result.error || 'Unkown'));\n                }\n            } else {\n                if (callback) {\n                    if (callbackParams) {\n                        callback.apply( callbackContext, callbackParams.concat( result, data, params, obj ) );\n                    } else {\n                        callback(result, data, params, obj);\n                    }\n                }\n            }\n        },\n        error: function(jqXHR, textStatus, errorThrown) {\n            if (button) {\n                button.removeAttribute('disabled'); button.style.cursor = 'pointer';\n            }\n            if (spinner) jQuery(spinner).css('display', 'none');\n            console.log('APBCT_AJAX_ERROR');\n            console.log(jqXHR);\n            console.log(textStatus);\n            console.log(errorThrown);\n        },\n        timeout: timeout,\n    });\n}\n","/**\n * @return {HTMLElement} event\n */\nfunction apbctSetEmailDecoderPopupAnimation() {\n    const animationElements = ['apbct_dog_one', 'apbct_dog_two', 'apbct_dog_three'];\n    const animationWrapper = document.createElement('div');\n    animationWrapper.classList = 'apbct-ee-animation-wrapper';\n    for (let i = 0; i < animationElements.length; i++) {\n        const apbctEEAnimationDogOne = document.createElement('span');\n        apbctEEAnimationDogOne.classList = 'apbct_dog ' + animationElements[i];\n        apbctEEAnimationDogOne.innerText = '@';\n        animationWrapper.append(apbctEEAnimationDogOne);\n    }\n    return animationWrapper;\n}\n\n/**\n * @param {mixed} event\n */\nfunction ctFillDecodedEmailHandler(event = false) {\n    let clickSource = false;\n    let ctWlBrandname = '';\n    let encodedEmail = '';\n    if (typeof ctPublic !== 'undefined') {\n        this.removeEventListener('click', ctFillDecodedEmailHandler);\n        // remember clickSource\n        clickSource = this;\n        // globally remember if emails is mixed with mailto\n        ctPublic.encodedEmailNodesIsMixed = false;\n        ctWlBrandname = ctPublic.wl_brandname;\n        encodedEmail = ctPublic.encodedEmailNodes;\n    } else if (typeof ctAdminCommon !== 'undefined') {\n        ctWlBrandname = ctAdminCommon.plugin_name;\n        encodedEmail = ctAdminCommon.encodedEmailNode;\n    }\n\n    // get fade\n    document.body.classList.add('apbct-popup-fade');\n    // popup show\n    let encoderPopup = document.getElementById('apbct_popup');\n    if (!encoderPopup) {\n        // construct popup\n        let waitingPopup = document.createElement('div');\n        waitingPopup.setAttribute('class', 'apbct-popup apbct-email-encoder-popup');\n        waitingPopup.setAttribute('id', 'apbct_popup');\n\n        // construct text header\n        let popupHeaderWrapper = document.createElement('span');\n        popupHeaderWrapper.classList = 'apbct-email-encoder-elements_center';\n        let popupHeader = document.createElement('p');\n        popupHeader.innerText = ctWlBrandname;\n        popupHeader.setAttribute('class', 'apbct-email-encoder--popup-header');\n        popupHeaderWrapper.append(popupHeader);\n\n        // construct text wrapper\n        let popupTextWrapper = document.createElement('div');\n        popupTextWrapper.setAttribute('id', 'apbct_popup_text');\n        popupTextWrapper.setAttribute('class', 'apbct-email-encoder-elements_center');\n        popupTextWrapper.style.color = 'black';\n\n        // construct text first node\n        // todo make translatable\n        let popupTextWaiting = document.createElement('p');\n        popupTextWaiting.id = 'apbct_email_ecoder__popup_text_node_first';\n        if (typeof ctPublicFunctions !== 'undefined' && ctPublicFunctions.text__ee_wait_for_decoding) {\n            popupTextWaiting.innerText = ctPublicFunctions.text__ee_wait_for_decoding;\n        } else {\n            popupTextWaiting.innerText = ctAdminCommon.text__ee_wait_for_decoding;\n        }\n        popupTextWaiting.setAttribute('class', 'apbct-email-encoder-elements_center');\n\n        // construct text second node\n        // todo make translatable\n        let popupTextDecoding = document.createElement('p');\n        popupTextDecoding.id = 'apbct_email_ecoder__popup_text_node_second';\n        if (typeof ctPublicFunctions !== 'undefined' && ctPublicFunctions.text__ee_decoding_process) {\n            popupTextDecoding.innerText = ctPublicFunctions.text__ee_decoding_process;\n        } else {\n            popupTextDecoding.innerText = ctAdminCommon.text__ee_decoding_process;\n        }\n\n        // appending\n        popupTextWrapper.append(popupTextWaiting);\n        popupTextWrapper.append(popupTextDecoding);\n        waitingPopup.append(popupHeaderWrapper);\n        waitingPopup.append(popupTextWrapper);\n        waitingPopup.append(apbctSetEmailDecoderPopupAnimation());\n        document.body.append(waitingPopup);\n    } else {\n        encoderPopup.setAttribute('style', 'display: inherit');\n        if (typeof ctPublicFunctions !== 'undefined' && ctPublicFunctions.text__ee_wait_for_decoding) {\n            document.getElementById('apbct_popup_text').innerHTML = ctPublicFunctions.text__ee_wait_for_decoding;\n        } else {\n            document.getElementById('apbct_popup_text').innerHTML = ctAdminCommon.text__ee_wait_for_decoding;\n        }\n    }\n\n    apbctAjaxEmailDecodeBulk(event, encodedEmail, clickSource);\n}\n\n/**\n * @param {mixed} event\n * @param {mixed} encodedEmailNodes\n * @param {mixed} clickSource\n */\nfunction apbctAjaxEmailDecodeBulk(event, encodedEmailNodes, clickSource) {\n    if (event && clickSource) {\n        // collect data\n        const javascriptClientData = getJavascriptClientData();\n        let data = {\n            event_javascript_data: javascriptClientData,\n            post_url: document.location.href,\n            referrer: document.referrer,\n            encodedEmails: '',\n        };\n        let encodedEmailsCollection = {};\n        for (let i = 0; i < encodedEmailNodes.length; i++) {\n            // disable click for mailto\n            if (\n                typeof encodedEmailNodes[i].href !== 'undefined' &&\n                encodedEmailNodes[i].href.indexOf('mailto:') === 0\n            ) {\n                event.preventDefault();\n                ctPublic.encodedEmailNodesIsMixed = true;\n            }\n\n            // Adding a tooltip\n            let apbctTooltip = document.createElement('div');\n            apbctTooltip.setAttribute('class', 'apbct-tooltip');\n            apbct(encodedEmailNodes[i]).append(apbctTooltip);\n\n            // collect encoded email strings\n            encodedEmailsCollection[i] = encodedEmailNodes[i].dataset.originalString;\n        }\n\n        // JSONify encoded email strings\n        data.encodedEmails = JSON.stringify(encodedEmailsCollection);\n\n        // Using REST API handler\n        if ( ctPublicFunctions.data__ajax_type === 'rest' ) {\n            apbct_public_sendREST(\n                'apbct_decode_email',\n                {\n                    data: data,\n                    method: 'POST',\n                    callback: function(result) {\n                        // set alternative cookie to skip next pages encoding\n                        ctSetCookie('apbct_email_encoder_passed', ctPublic.emailEncoderPassKey, '');\n                        apbctEmailEncoderCallbackBulk(result, encodedEmailNodes, clickSource);\n                    },\n                    onErrorCallback: function(res) {\n                        resetEncodedNodes();\n                        ctShowDecodeComment(res);\n                    },\n                },\n            );\n\n            // Using AJAX request and handler\n        } else {\n            data.action = 'apbct_decode_email';\n            apbct_public_sendAJAX(\n                data,\n                {\n                    notJson: false,\n                    callback: function(result) {\n                        console.log('result');\n                        console.log(result);\n\n                        // set alternative cookie to skip next pages encoding\n                        ctSetCookie('apbct_email_encoder_passed', ctPublic.emailEncoderPassKey, '');\n                        apbctEmailEncoderCallbackBulk(result, encodedEmailNodes, clickSource);\n                    },\n                    onErrorCallback: function(res) {\n                        resetEncodedNodes();\n                        ctShowDecodeComment(res);\n                    },\n                },\n            );\n        }\n    } else {\n        const encodedEmail = encodedEmailNodes.dataset.originalString;\n        let data = {\n            encodedEmails: JSON.stringify({0: encodedEmail}),\n        };\n\n        // Adding a tooltip\n        let apbctTooltip = document.createElement('div');\n        apbctTooltip.setAttribute('class', 'apbct-tooltip');\n        encodedEmailNodes.appendChild(apbctTooltip);\n\n        apbct_admin_sendAJAX(\n            {\n                'action': 'apbct_decode_email',\n                'encodedEmails': data.encodedEmails,\n            },\n            {\n                'callback': function(result) {\n                    apbctEmailEncoderCallbackBulk(result, encodedEmailNodes, false);\n                },\n                'notJson': true,\n            },\n        );\n    }\n}\n\n/**\n * @param {mixed} result\n * @param {mixed} encodedEmailNodes\n * @param {mixed} clickSource\n */\nfunction apbctEmailEncoderCallbackBulk(result, encodedEmailNodes, clickSource = false) {\n    if (result.success && result.data[0].is_allowed === true) {\n        // start process of visual decoding\n        setTimeout(function() {\n            // popup remove\n            let popup = document.getElementById('apbct_popup');\n            if (popup !== null) {\n                let email = '';\n                if (clickSource) {\n                    let currentResultData;\n                    result.data.forEach((row) => {\n                        if (row.encoded_email === clickSource.dataset.originalString) {\n                            currentResultData = row;\n                        }\n                    });\n\n                    email = currentResultData.decoded_email.split(/[&?]/)[0];\n                } else {\n                    email = result.data[0].decoded_email;\n                }\n                // handle first node\n                let firstNode = popup.querySelector('#apbct_email_ecoder__popup_text_node_first');\n                // get email selectable by click\n                let selectableEmail = document.createElement('b');\n                selectableEmail.setAttribute('class', 'apbct-email-encoder-select-whole-email');\n                selectableEmail.innerText = email;\n                if (typeof ctPublicFunctions !== 'undefined' && ctPublicFunctions.text__ee_click_to_select) {\n                    selectableEmail.title = ctPublicFunctions.text__ee_click_to_select;\n                } else {\n                    selectableEmail.title = ctAdminCommon.text__ee_click_to_select;\n                }\n                // add email to the first node\n                if (firstNode) {\n                    if (typeof ctPublicFunctions !== 'undefined' && ctPublicFunctions.text__ee_original_email) {\n                        firstNode.innerHTML = ctPublicFunctions.text__ee_original_email +\n                            '&nbsp;' + selectableEmail.outerHTML;\n                    } else {\n                        firstNode.innerHTML = ctAdminCommon.text__ee_original_email +\n                            '&nbsp;' + selectableEmail.outerHTML;\n                    }\n\n                    firstNode.setAttribute('style', 'flex-direction: row;');\n                }\n                // remove animation\n                let wrapper = popup.querySelector('.apbct-ee-animation-wrapper');\n                if (wrapper) {\n                    wrapper.remove();\n                }\n                // remove second node\n                let secondNode = popup.querySelector('#apbct_email_ecoder__popup_text_node_second');\n                if (secondNode) {\n                    secondNode.remove();\n                }\n                // add button\n                let buttonWrapper = document.createElement('span');\n                buttonWrapper.classList = 'apbct-email-encoder-elements_center top-margin-long';\n                if (!document.querySelector('.apbct-email-encoder-got-it-button')) {\n                    let button = document.createElement('button');\n                    if (typeof ctPublicFunctions !== 'undefined' && ctPublicFunctions.text__ee_got_it) {\n                        button.innerText = ctPublicFunctions.text__ee_got_it;\n                    } else {\n                        button.innerText = ctAdminCommon.text__ee_got_it;\n                    }\n                    button.classList = 'apbct-email-encoder-got-it-button';\n                    button.addEventListener('click', function() {\n                        document.body.classList.remove('apbct-popup-fade');\n                        popup.setAttribute('style', 'display:none');\n                        fillDecodedNodes(encodedEmailNodes, result);\n                        // click on mailto if so\n                        if (typeof ctPublic !== 'undefined' && ctPublic.encodedEmailNodesIsMixed && clickSource) {\n                            clickSource.click();\n                        }\n                    });\n                    buttonWrapper.append(button);\n                    popup.append(buttonWrapper);\n                }\n            }\n        }, 3000);\n    } else {\n        if (clickSource) {\n            if (result.success) {\n                resetEncodedNodes();\n                if (typeof ctPublicFunctions !== 'undefined' && ctPublicFunctions.text__ee_blocked) {\n                    ctShowDecodeComment(ctPublicFunctions.text__ee_blocked + ': ' + result.data[0].comment);\n                } else {\n                    ctShowDecodeComment(ctAdminCommon.text__ee_blocked + ': ' + result.data[0].comment);\n                }\n            } else {\n                resetEncodedNodes();\n                if (typeof ctPublicFunctions !== 'undefined' && ctPublicFunctions.text__ee_cannot_connect) {\n                    ctShowDecodeComment(ctPublicFunctions.text__ee_cannot_connect + ': ' + result.apbct.comment);\n                } else {\n                    ctShowDecodeComment(ctAdminCommon.text__ee_cannot_connect + ': ' + result.data[0].comment);\n                }\n            }\n        } else {\n            console.log('result', result);\n        }\n    }\n}\n\n/**\n * Reset click event for encoded email\n */\nfunction resetEncodedNodes() {\n    if (typeof ctPublic.encodedEmailNodes !== 'undefined') {\n        ctPublic.encodedEmailNodes.forEach(function(element) {\n            element.addEventListener('click', ctFillDecodedEmailHandler);\n        });\n    }\n}\n\n/**\n * Show Decode Comment\n * @param {string} comment\n */\nfunction ctShowDecodeComment(comment) {\n    if ( ! comment ) {\n        if (typeof ctPublicFunctions !== 'undefined' && ctPublicFunctions.text__ee_cannot_decode) {\n            comment = ctPublicFunctions.text__ee_cannot_decode;\n        } else {\n            comment = ctAdminCommon.text__ee_cannot_decode;\n        }\n    }\n\n    let popup = document.getElementById('apbct_popup');\n    let popupText = document.getElementById('apbct_popup_text');\n    if (popup !== null) {\n        document.body.classList.remove('apbct-popup-fade');\n        if (typeof ctPublicFunctions !== 'undefined' && ctPublicFunctions.text__ee_email_decoder) {\n            popupText.innerText = ctPublicFunctions.text__ee_email_decoder + ': ' + comment;\n        } else {\n            popupText.innerText = ctAdminCommon.text__ee_email_decoder + ': ' + comment;\n        }\n        setTimeout(function() {\n            popup.setAttribute('style', 'display:none');\n        }, 3000);\n    }\n}\n\n/**\n * Run filling for every node with decoding result.\n * @param {mixed} encodedNodes\n * @param {mixed} decodingResult\n */\nfunction fillDecodedNodes(encodedNodes, decodingResult) {\n    if (encodedNodes.length > 0) {\n        for (let i = 0; i < encodedNodes.length; i++) {\n            // chek what is what\n            let currentResultData;\n            decodingResult.data.forEach((row) => {\n                if (row.encoded_email === encodedNodes[i].dataset.originalString) {\n                    currentResultData = row;\n                }\n            });\n            // quit case on cloud block\n            if (currentResultData.is_allowed === false) {\n                return;\n            }\n            // handler for mailto\n            if (\n                typeof encodedNodes[i].href !== 'undefined' &&\n                (\n                    encodedNodes[i].href.indexOf('mailto:') === 0 ||\n                    encodedNodes[i].href.indexOf('tel:') === 0\n                )\n            ) {\n                let linkTypePrefix;\n                if (encodedNodes[i].href.indexOf('mailto:') === 0) {\n                    linkTypePrefix = 'mailto:';\n                } else if (encodedNodes[i].href.indexOf('tel:') === 0) {\n                    linkTypePrefix = 'tel:';\n                } else {\n                    continue;\n                }\n                let encodedEmail = encodedNodes[i].href.replace(linkTypePrefix, '');\n                let baseElementContent = encodedNodes[i].innerHTML;\n                encodedNodes[i].innerHTML = baseElementContent.replace(\n                    encodedEmail,\n                    currentResultData.decoded_email,\n                );\n                encodedNodes[i].href = linkTypePrefix + currentResultData.decoded_email;\n\n                encodedNodes[i].querySelectorAll('span.apbct-email-encoder').forEach((el) => {\n                    let encodedEmailTextInsideMailto = '';\n                    decodingResult.data.forEach((row) => {\n                        if (row.encoded_email === el.dataset.originalString) {\n                            encodedEmailTextInsideMailto = row.decoded_email;\n                        }\n                    });\n                    el.innerHTML = encodedEmailTextInsideMailto;\n                });\n            } else {\n                encodedNodes[i].classList.add('no-blur');\n                // fill the nodes\n                setTimeout(() => {\n                    ctProcessDecodedDataResult(currentResultData, encodedNodes[i]);\n                }, 2000);\n            }\n            // remove listeners\n            encodedNodes[i].removeEventListener('click', ctFillDecodedEmailHandler);\n        }\n    } else {\n        let currentResultData = decodingResult.data[0];\n        encodedNodes.classList.add('no-blur');\n        // fill the nodes\n        setTimeout(() => {\n            ctProcessDecodedDataResult(currentResultData, encodedNodes);\n        }, 2000);\n        encodedNodes.removeEventListener('click', ctFillDecodedEmailHandler);\n    }\n}\n\n/**\n * @param {mixed} response\n * @param {mixed} targetElement\n */\nfunction ctProcessDecodedDataResult(response, targetElement) {\n    targetElement.setAttribute('title', '');\n    targetElement.removeAttribute('style');\n    ctFillDecodedEmail(targetElement, response.decoded_email);\n}\n\n/**\n * @param {mixed} target\n * @param {string} email\n */\nfunction ctFillDecodedEmail(target, email) {\n    target.innerHTML = target.innerHTML.replace(/.+?(<div class=[\"']apbct-tooltip[\"'].+?<\\/div>)/, email + '$1');\n}\n"]}