HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux WebLive 5.15.0-79-generic #86-Ubuntu SMP Mon Jul 10 16:07:21 UTC 2023 x86_64
User: ubuntu (1000)
PHP: 7.4.33
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_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/wpicare/wp-content/plugins/wp-rocket/inc/ThirdParty/Plugins/I18n/Weglot.php
<?php

namespace WP_Rocket\ThirdParty\Plugins\I18n;

use WP_Rocket\Event_Management\Subscriber_Interface;

/**
 * Subscriber for compatibility with Weglot.
 */
class Weglot implements Subscriber_Interface {

	/**
	 *  Returns an array of events that this subscriber wants to listen to.
	 *
	 * @return array|string[]
	 */
	public static function get_subscribed_events() {
		if ( ! class_exists( 'Context_Weglot' ) ) {
			return [];
		}

		return [
			'rocket_admin_bar_referer' => 'add_langs_to_referer',
		];
	}

	/**
	 * Modify the referer URL by appending the current language from Weglot as a prefix to the URL path.
	 *
	 * @param string $referer The original referer URL.
	 * @return string The modified referer URL with the language as a prefix.
	 */
	public function add_langs_to_referer( $referer ) {
		if ( ! function_exists( 'weglot_get_request_url_service' ) || ! function_exists( 'weglot_get_current_full_url' ) ) {
			return $referer;
		}

		return weglot_get_request_url_service()->url_to_relative( weglot_get_current_full_url() );
	}
}