Hunter Black Hat SEO
Server:LiteSpeed
System:Linux raton.hozzt.com 4.18.0-553.144.1.lve.el8.x86_64 #1 SMP Thu Jul 16 08:31:06 UTC 2026 x86_64
User:altinkayamarble (1260)
PHP:7.4.33
Disabled:symlink, show_source, system, virtual, shell_exec,passthru, exec, popen, proc_open, proc_close, proc_nice, proc_terminate,proc_get_status, pfsockopen,allow_url_fopen, posix_getpwuid, eval,posix_setsid, posix_mkfifo, posix_setpgid,posix_setuid, posix_uname,posix_kill,apache_child_terminate, apache_setenv,define_syslog_variables,escapeshellarg, escapeshellcmd, leak, dl, fp, fput,ftp_connect, ftp_exec,ftp_get, ftp_login, ftp_nb_fput, ftp_put, ftp_raw, ftp_rawlist,highlight_file, ini_alter, ini_get_all, ini_restore, inject_code
Upload Files
File: /home/altinkayamarble/www/wp-content/plugins/elementor/modules/favorites/types/widgets.php
<?php
namespace Elementor\Modules\Favorites\Types;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Modules\Favorites\Favorites_Type;
use Elementor\Plugin;

class Widgets extends Favorites_Type {
	const CATEGORY_SLUG = 'favorites';

	/**
	 * Widgets favorites type constructor.
	 */
	public function __construct( array $items = [] ) {
		parent::__construct( $items );

		add_action( 'elementor/document/before_get_config', [ $this, 'update_widget_categories' ], 10, 1 );
	}

	public function get_name() {
		return 'widgets';
	}

	public function prepare( $favorites ) {
		return array_intersect( parent::prepare( $favorites ), $this->get_available() );
	}

	/**
	 * Get all available widgets.
	 *
	 * @return string[]
	 */
	public function get_available() {
		return (array) array_keys(
			Plugin::instance()->widgets_manager->get_widget_types()
		);
	}

	/**
	 * Update the categories of a widget inside a filter.
	 *
	 * @param $document
	 */
	public function update_widget_categories( $document ) {
		foreach ( $this->values() as $favorite ) {
			Plugin::$instance->widgets_manager->get_widget_types( $favorite )
				->set_config( 'categories', [ static::CATEGORY_SLUG ] );
		}
	}
}