HEX
Server: LiteSpeed
System: Linux d8 4.18.0-553.121.1.lve.el8.x86_64 #1 SMP Thu Apr 30 16:40:41 UTC 2026 x86_64
User: wbwebdes (3015)
PHP: 8.1.31
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/wbwebdes/domains/survey.nailsbyrianne.nl/public_html/tmp/assets/6c116bf8/emailtemplates.js
// $Id: saved.js 9330 2010-10-24 22:23:56Z c_schmitz $

/**
 * NOTE: After updating this file, generate the "minified" version with:
 * uglifyjs -c -- emailtemplates.js > emailtemplates.min.js
 */

// Namespace
var LS = LS || {  onDocumentReady: {} };

var PrepEmailTemplates = function(){
    var currentTarget = null;

    var kcFinderCallback = function (url)
    {
        if($(currentTarget).closest('.selector__table-container').hasClass('d-none')){
            $(currentTarget).closest('.selector__table-container').removeClass('d-none');
        }
        addAttachment(currentTarget, url);
        window.KCFinder = null;
        const modal = bootstrap.Modal.getOrCreateInstance(document.getElementById('kc-modal-open'));
        modal.hide();
    },
    
    /**
     * Edit relevance equation for attachment
     *
     * @param e
     * @return void
     */
    editAttachmentRelevance = function (e)
    {
            /*
            $('#attachment-relevance-editor').on('show.bs.modal', function(event) {
                console.log(event);
                alert('here');
            });
            */
    
            e.preventDefault();
            var target = $(this).parents('tr').find('input.relevance');
            var span = $(this).parents('tr').find('span.relevance');
    
            $('#attachment-relevance-editor textarea').val($(target).val());
    
            const attachmentRelevanceModal = bootstrap.Modal.getOrCreateInstance(document.getElementById('attachment-relevance-editor'), {
                backdrop: 'static',
                keyboard: false
            });
            attachmentRelevanceModal.show();

            $('#attachment-relevance-editor .btn-primary').one('click', function (event) {
                var newRelevanceEquation = $('#attachment-relevance-editor textarea').val();
                $(target).val(newRelevanceEquation);
    
                if (newRelevanceEquation.length > 50)
                {
                    $(span).html(newRelevanceEquation.replace(/(\r\n|\n|\r)/gm,"").substr(0, 47) + '...');
                }
                else
                {
                    $(span).html(newRelevanceEquation);
                }
    
                attachmentRelevanceModal.hide();
            });
    
    },
    
    /**
     * Add an attachment to this template
     *
     * @param target
     * @param url
     * @param relevance
     * @param size
     * @return void
     */
    addAttachment = function (target, url, relevance, size, error)
    {
        if (typeof relevance == 'undefined')
        {
            var relevance = '1';
        }
        if (typeof size == 'undefined')
        {
            var size = '-';
        }
        var filename = decodeURIComponent(url.replace(/^.*[\\\/]/, ''));
    
        var baserow = $('#rowTemplate').find('tbody').html();
    
        if ($(target).is('table'))
        {
            var newrow = $(baserow).clone();
            var templatetype = $(target).attr('data-template');
            var index = $(target).find('tr').length - 1;
    
            if (relevance.length > 50)
            {
                $(newrow).find('span.relevance').html(relevance.replace(/(\r\n|\n|\r)/gm,"").substr(0, 47) + '...');
            }
            else
            {
                $(newrow).find('span.relevance').html(relevance);
            }
    
            $(newrow).find('input.relevance').val(relevance).attr('name', 'attachments' + templatetype + '[' + index + '][relevance]');
            $(newrow).find('input.filename').attr('name', 'attachments' + templatetype + '[' + index + '][url]');
            if (error) {
                $(newrow).find('input.filename').parent().append($("<span class='fa fa-exclamation-triangle text-danger' title='" + error + "'></span>"));
            }
            $(newrow).appendTo($(target).find('tbody'));
            const modal = bootstrap.Modal.getOrCreateInstance(document.getElementById('kc-modal-open'));
            modal.hide();
        }
        else
        {
            var newrow = target;
        }
    
    
        $('.edit-relevance-equation').off('click').on('click', editAttachmentRelevance);
        $('.btnattachmentremove').off('click').on('click', removeAttachment);
    
        $('span.filename').off('click').on('click', function(e) {
            e.preventDefault();
            var target = $(this).parents('tr');
            var ckTarget = $(this).parents('table').data('ck-target');
            uri = LS.data.baseUrl + '/vendor/kcfinder/browse.php?opener=custom&type=files&CKEditor='+ckTarget+'&langCode='+sKCFinderLanguage;
            openKCFinderSingleFile(target, uri);
        });
    
        $(newrow).find('span.filesize').text(formatFileSize(size));
        $(newrow).find('span.filename').text(filename);
        $(newrow).find('input.filename').val(url);
    },
    removeAttachment = function (e)
    {
        e.preventDefault();
        $(this).parents('tr').remove();
    },
    formatFileSize = function (bytes)
    {
        if (bytes >= 1000000)
        {
            return (bytes / 1000000).toFixed(2) + 'MB';
        }
        else if (bytes < 1000000)
        {
            return (bytes / 1000).toFixed(0) + 'KB';
        }
        return bytes;
    },
        openKCFinderSingleFile = function (target, uri) {
            let modalElement = document.getElementById('kc-modal-open');
            let modal = new bootstrap.Modal(modalElement);
            modalElement.addEventListener('shown.bs.modal', function () {
                currentTarget = target;
                window.KCFinder = {};
                window.KCFinder.target = target;
                window.KCFinder.callBack = kcFinderCallback;
                $('#kc-modal-open').find('iframe').attr('src', uri);
            }, {once: true});
            modalElement.addEventListener('hidden.bs.modal', function () {
                $(this).find('iframe').attr('src', 'about:blank');
            }, {once: true});
            modal.show();
        },
    bindActions = function(elements, translate, resetUrl){
        $(elements.validate).remoteModal({}, {
            closeIcon : '<button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label="'+translate.close+'"></button>',
            closeButton : '<button type=\"button\" class=\"btn btn-outline-secondary\" data-bs-dismiss=\"modal\">'+translate.close+'</button>',
            saveButton : '<button type=\"button\" class=\"btn btn-primary\">'+translate.save+'</button>'
        });
        $(elements.reset).on('click', function(){
            var $self = $(this);
            $.ajax({
                url : resetUrl,
                dataType: 'html',
                success: function(result){
                    if(CKEDITOR !== undefined && CKEDITOR.instances[$self.data('target')]){
                        CKEDITOR.instances[$self.data('target')].setData(result);
                    } else {
                        $('#'+$self.data('target')).val(result);
                    }

                },
                error: console.ls.error,
                beforeSend: function(){
                    if(CKEDITOR !== undefined && CKEDITOR.instances[$self.data('target')]){
                        CKEDITOR.instances[$self.data('target')].setData('');
                    } else {
                        $('#'+$self.data('target')).val('');
                    }

                }
            });
        });
    },

    init = function(modal_id){
        // Binds the Default value buttons for each email template subject and body text
        $('.fillin').off('click').on('click', function(e) {
            e.preventDefault;
            var newval = $(this).attr('data-value');
            var target = $('#' + $(this).attr('data-target'));
            $(target).val(newval);
            try{
                updateCKeditor($(this).attr('data-target'),newval);
            }
            catch(err) {}
        });

        $('button.add-attachment').off('click.emailtemplates').on('click.emailtemplates', function(e) {
            e.preventDefault();
            var target = $($(this).data('target'));
            var ckTarget =  $(this).data('ck-target');
            var uri = LS.data.baseUrl + '/vendor/kcfinder/browse.php?opener=custom&type=files&CKEditor='+ckTarget+'&langCode='+sKCFinderLanguage

            openKCFinderSingleFile(target, uri);

        });
    };

    return {
        init: init,
        bindActions: bindActions,
        currentTarget: currentTarget,
        addAttachment: addAttachment
    };
};