HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: /var/www/html/insiders/wp-load/wp-content/plugins/gutenmate/settings/settings-page.php
<?php

function gtm_add_settings_menu() {
	/* To create Data uri for icon
		Open the file logo-icon.svg and set fill="#fff" before converting to data uri
	*/
	$icon      = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYiIGhlaWdodD0iMjU2IiB2aWV3Qm94PSIwIDAgMjU2IDI1NiI+DQoJPHBhdGggZD0iTTE2MCwxODUuNjNWMjI0SDExOWMtMjIuNjksMC00MS43Ny0xNi42Ni00Mi40My0zNy44Ni0uNy0yMi40OCwxOC45My00MC44NCw0My00MC4xOUMxNDIuMTksMTQ2LjU3LDE2MCwxNjQuNDIsMTYwLDE4NS42M1pNMTgzLjgzLDY4Yy0yOC44MiwwLTUyLjE4LDIxLjg0LTUyLjE4LDQ4Ljc5YTQ1LjY2LDQ1LjY2LDAsMCwwLC45NSw5LjI2YzIxLjYzLDQuNjIsMzksMTkuNyw0NS42NiwzOS4yNSwxLjgzLjE4LDMuNjguMjgsNS41Ny4yOCwyOC44MSwwLDUyLjE3LTIxLjg0LDUyLjE3LTQ4Ljc5VjY4Wm0tNzYuNjUsNTguNjJhNjkuNTUsNjkuNTUsMCwwLDEtLjU4LTguOTRjMC0zMC43MSwyMC4yMy01Nyw0OC45LTY3Ljg2YTg0LjYxLDg0LjYxLDAsMCwwLTUzLTE4LjI5QzU3LjUsMzEuNTMsMjEsNjUuNjYsMjEsMTA3Ljc3VjE4NEg1N0M1NywxNTUuNjYsNzguNTcsMTMyLDEwNy4xOCwxMjYuNjJaIiBmaWxsPSIjZmZmZmZmIiAvPg0KPC9zdmc+DQo=';
	$page_hook = add_menu_page( __( 'Gutenmate', 'gutenmate' ),
		esc_html__( 'Gutenmate', 'gutenmate' ),
		'manage_options',
		'gutenmate_settings',
		'gtm_settings_page_template_main',
		$icon
	);
}

add_action( 'admin_menu', 'gtm_add_settings_menu' );

/**
 * Supress all notices for beautiful page
 */

add_action( 'current_screen', 'gtm_disable_notice_in_settings_page' );
function gtm_disable_notice_in_settings_page() {
	$currentScreen = get_current_screen();

	if ( $currentScreen->id === "toplevel_page_gutenmate_settings" ) {
		gtm_suppress_admin_notices();
	}
}

function gtm_suppress_admin_notices() {
	add_action( 'admin_notices', function () {ob_start();}, 1 );
	add_action( 'admin_notices', function () {ob_get_clean();}, 100 );
}

/**
 * Main settings page
 */

function gtm_settings_page_template_main() {
	?>
	<div class="gtm-settings-page-header">
		<div class="gtm-settings-page-header-inner">
			<img width="344" height="74" src="<?php echo esc_url( GTM_URL . 'assets/img/logo.png' ) ?>" alt="<?php esc_attr_e( 'Gutenmate settings', 'gutenmate' )?>">
		</div>
	</div>
	<div id="gtm-settings-page-notice"></div>
	<div id="gtm-settings-page-body"></div>
	<?php
}

add_action( 'admin_enqueue_scripts', 'gtm_settings_page_asset_main', 10, 1 );
function gtm_settings_page_asset_main( $hook_suffix ) {
	if ( 'toplevel_page_gutenmate_settings' == $hook_suffix ) {
		$asset_name = 'settings-main';

		wp_enqueue_script( "gtm-$asset_name", GTM_URL . "build/$asset_name.js", ['wp-notices', 'wp-core-data', 'wp-api-fetch', 'wp-i18n', 'wp-components', 'wp-element', 'gtm-block-shared'], GTM_VERSION, true );
		wp_enqueue_style( "gtm-$asset_name", GTM_URL . "build/$asset_name.css", array_merge( ['wp-components', 'gtm-block-shared-editor-style', 'gtm-block-editor-style'], gtm_get_icon_set_enqueue_handles() ) );

		wp_localize_script( "gtm-$asset_name", 'gtm_available_icon_sets', GTM_Icon_Set::all() );
		wp_localize_script( "gtm-$asset_name", 'gtm_asd_preview_url', esc_url( gtm_add_ads_demo_mode_link( get_site_url() ) ) );
	}
}