HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux ip-10-0-8-47 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:31:58 UTC 2024 aarch64
User: ubuntu (1000)
PHP: 8.1.2-1ubuntu2.22
Disabled: NONE
Upload Files
File: /var/www/javaapp.co.uk/wp-content/plugins/elementskit-lite/modules/megamenu/api.php
<?php 
namespace ElementsKit_Lite;

use ElementsKit_Lite\Libs\Framework\Attr;
use ElementsKit_Lite\Modules\Megamenu\Init;

defined( 'ABSPATH' ) || exit;

class Megamenu_Api extends Core\Handler_Api {

	public function config() {
		$this->prefix = 'megamenu';
	}

	public function get_save_menuitem_settings() {
		if ( ! current_user_can( 'manage_options' ) ) {
			return;
		}
		$menu_item_id       = $this->request['settings']['menu_id'];
		$menu_item_settings = json_encode( $this->request['settings'], JSON_UNESCAPED_UNICODE );
		update_post_meta( $menu_item_id, Init::$menuitem_settings_key, $menu_item_settings );

		return array(
			'saved'   => 1,
			'message' => esc_html__( 'Saved', 'elementskit-lite' ),
		);
	}

	public function get_get_menuitem_settings() {
		if ( ! current_user_can( 'manage_options' ) ) {
			return;
		}
		$menu_item_id = $this->request['menu_id'];

		$data = get_post_meta( $menu_item_id, Init::$menuitem_settings_key, true );
		return (array) json_decode( $data );
	}

	public function get_megamenu_content() {
		$menu_item_id = intval($this->request['id']);

		if (!get_post_status ($menu_item_id) || post_password_required($menu_item_id)) {
			return;
		}

		$elementor = \Elementor\Plugin::instance();
		$output   = $elementor->frontend->get_builder_content_for_display($menu_item_id);

		return $output;
	}
}
new Megamenu_Api();