';
//info: dont show on save (remove with AJAX ;-)
$action = isset($_POST['action']) ? $_POST['action'] : (isset($_GET['action']) ? $_GET['action'] : '');
$first_run = (isset($_GET['first_run']) ? 'true' : 'false');
if ( ($action == 'add') || ($action == 'edit') || ($action == 'duplicate') ) {
return;
} else {
require_once(ABSPATH . WPINC . DIRECTORY_SEPARATOR . "pluggable.php");
$lmm_options = get_option( 'leafletmapsmarker_options' ); //info: required for bing maps api key check
//info: make to menu buttons active depended on page you´re on
$page = (isset($_GET['page']) ? $_GET['page'] : '');
$oid = isset($_POST['id']) ? intval($_POST['id']) : (isset($_GET['id']) ? intval($_GET['id']) : '');
if ($page == 'leafletmapsmarker_markers') {
$buttonclass1 = 'button button-primary lmm-nav-primary';
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
$buttonclass2b = 'button button-secondary lmm-nav-secondary';
$buttonclass3 = 'button button-secondary lmm-nav-secondary';
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
$buttonclass5 = 'button button-secondary lmm-nav-secondary';
$buttonclass6 = 'button button-secondary lmm-nav-secondary';
$buttonclass7 = 'button button-secondary lmm-nav-secondary';
$buttonclass8 = 'button button-secondary lmm-nav-secondary';
$buttonclass9 = 'button button-secondary lmm-nav-secondary';
} else if ($page == 'leafletmapsmarker_marker') {
$buttonclass1 = 'button button-secondary lmm-nav-secondary';
if ( ($oid == NULL) && ($page == 'leafletmapsmarker_marker') ) {
$buttonclass2 = 'button button-primary lmm-nav-primary';
} else if ( ($oid != NULL) && ($page == 'leafletmapsmarker_marker') ) {
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
} else {
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
}
$buttonclass2b = 'button button-secondary lmm-nav-secondary';
$buttonclass3 = 'button button-secondary lmm-nav-secondary';
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
$buttonclass5 = 'button button-secondary lmm-nav-secondary';
$buttonclass6 = 'button button-secondary lmm-nav-secondary';
$buttonclass7 = 'button button-secondary lmm-nav-secondary';
$buttonclass8 = 'button button-secondary lmm-nav-secondary';
$buttonclass9 = 'button button-secondary lmm-nav-secondary';
} else if ($page == 'leafletmapsmarker_import_export') {
$buttonclass1 = 'button button-secondary lmm-nav-secondary';
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
$buttonclass2b = 'button button-primary lmm-nav-primary';
$buttonclass3 = 'button button-secondary lmm-nav-secondary';
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
$buttonclass5 = 'button button-secondary lmm-nav-secondary';
$buttonclass6 = 'button button-secondary lmm-nav-secondary';
$buttonclass7 = 'button button-secondary lmm-nav-secondary';
$buttonclass8 = 'button button-secondary lmm-nav-secondary';
$buttonclass9 = 'button button-secondary lmm-nav-secondary';
} else if ($page == 'leafletmapsmarker_layers') {
$buttonclass1 = 'button button-secondary lmm-nav-secondary';
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
$buttonclass2b = 'button button-secondary lmm-nav-secondary';
$buttonclass3 = 'button button-primary lmm-nav-primary';
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
$buttonclass5 = 'button button-secondary lmm-nav-secondary';
$buttonclass6 = 'button button-secondary lmm-nav-secondary';
$buttonclass7 = 'button button-secondary lmm-nav-secondary';
$buttonclass8 = 'button button-secondary lmm-nav-secondary';
$buttonclass9 = 'button button-secondary lmm-nav-secondary';
} else if ($page == 'leafletmapsmarker_layer') {
$buttonclass1 = 'button button-secondary lmm-nav-secondary';
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
$buttonclass2b = 'button button-secondary lmm-nav-secondary';
$buttonclass3 = 'button button-secondary lmm-nav-secondary';
if ( ($oid == NULL) && ($page == 'leafletmapsmarker_layer') ) {
$buttonclass4 = 'button button-primary lmm-nav-primary';
} else if ( ($oid != NULL) && ($page == 'leafletmapsmarker_layer') ) {
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
} else {
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
}
$buttonclass5 = 'button button-secondary lmm-nav-secondary';
$buttonclass6 = 'button button-secondary lmm-nav-secondary';
$buttonclass7 = 'button button-secondary lmm-nav-secondary';
$buttonclass8 = 'button button-secondary lmm-nav-secondary';
$buttonclass9 = 'button button-secondary lmm-nav-secondary';
} else if ($page == 'leafletmapsmarker_tools') {
$buttonclass1 = 'button button-secondary lmm-nav-secondary';
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
$buttonclass2b = 'button button-secondary lmm-nav-secondary';
$buttonclass3 = 'button button-secondary lmm-nav-secondary';
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
$buttonclass5 = 'button button-primary lmm-nav-primary';
$buttonclass6 = 'button button-secondary lmm-nav-secondary';
$buttonclass7 = 'button button-secondary lmm-nav-secondary';
$buttonclass8 = 'button button-secondary lmm-nav-secondary';
$buttonclass9 = 'button button-secondary lmm-nav-secondary';
} else if ($page == 'leafletmapsmarker_settings') {
$buttonclass1 = 'button button-secondary lmm-nav-secondary';
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
$buttonclass2b = 'button button-secondary lmm-nav-secondary';
$buttonclass3 = 'button button-secondary lmm-nav-secondary';
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
$buttonclass5 = 'button button-secondary lmm-nav-secondary';
$buttonclass6 = 'button button-primary lmm-nav-primary';
$buttonclass7 = 'button button-secondary lmm-nav-secondary';
$buttonclass8 = 'button button-secondary lmm-nav-secondary';
$buttonclass9 = 'button button-secondary lmm-nav-secondary';
} else if ($page == 'leafletmapsmarker_apis') {
$buttonclass1 = 'button button-secondary lmm-nav-secondary';
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
$buttonclass2b = 'button button-secondary lmm-nav-secondary';
$buttonclass3 = 'button button-secondary lmm-nav-secondary';
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
$buttonclass5 = 'button button-secondary lmm-nav-secondary';
$buttonclass6 = 'button button-secondary lmm-nav-secondary';
$buttonclass7 = 'button button-secondary lmm-nav-secondary';
$buttonclass8 = 'button button-secondary lmm-nav-secondary';
$buttonclass9 = 'button button-primary lmm-nav-primary';
} else if ($page == 'leafletmapsmarker_help') {
$buttonclass1 = 'button button-secondary lmm-nav-secondary';
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
$buttonclass2b = 'button button-secondary lmm-nav-secondary';
$buttonclass3 = 'button button-secondary lmm-nav-secondary';
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
$buttonclass5 = 'button button-secondary lmm-nav-secondary';
$buttonclass6 = 'button button-secondary lmm-nav-secondary';
$buttonclass7 = 'button button-primary lmm-nav-primary';
$buttonclass8 = 'button button-secondary lmm-nav-secondary';
$buttonclass9 = 'button button-secondary lmm-nav-secondary';
} else if ($page == 'leafletmapsmarker_pro_upgrade') {
$buttonclass1 = 'button button-secondary lmm-nav-secondary';
$buttonclass2 = 'button button-secondary lmm-nav-secondary';
$buttonclass2b = 'button button-secondary lmm-nav-secondary';
$buttonclass3 = 'button button-secondary lmm-nav-secondary';
$buttonclass4 = 'button button-secondary lmm-nav-secondary';
$buttonclass5 = 'button button-secondary lmm-nav-secondary';
$buttonclass6 = 'button button-secondary lmm-nav-secondary';
$buttonclass7 = 'button button-secondary lmm-nav-secondary';
$buttonclass8 = 'button button-primary lmm-nav-primary';
$buttonclass9 = 'button button-secondary lmm-nav-secondary';
}
$admin_quicklink_tools_buttons = ( current_user_can( "activate_plugins" ) ) ? "
".__('Tools','lmm')." " : "";
$admin_quicklink_settings_buttons = ( current_user_can( "activate_plugins" ) ) ? "
".__('Settings','lmm')." " : "";
$admin_quicklink_apis_buttons = ( current_user_can( "activate_plugins" ) ) ? "" : "";
//////////////////////////////////////////////////////
// info: admin notices which only show on LMM pages //
//////////////////////////////////////////////////////
/*retirement notice*/
echo '
';
echo '
Important notice
' . __('Leaflet Maps Marker has earned its retirement - existing users get a parting gift: a 50% coupon code for an unexpiring Maps Marker Pro license (
view demo). For a limited time only, get yours now!
Read more & get 50% coupon code') . '
';
if ( isset($lmm_options['misc_global_admin_notices']) && ($lmm_options['misc_global_admin_notices'] == 'show') ){
//info: check if Google Maps API is loaded by other plugins/themes
if ( $lmm_options['google_maps_api_status'] == 'enabled') {
if ( $lmm_options['google_api_deregister_scripts'] == 'disabled') {
global $wp_scripts;
$scripts_found = '';
if (isset($wp_scripts->registered) && is_array($wp_scripts->registered)) {
foreach ( $wp_scripts->registered as $script) {
if (strpos($script->src, 'maps.google.com/maps/api/js') !== false) {
$scripts_found .= $script->handle;
}
if (strpos($script->src, 'maps.googleapis.com/maps/api/js') !== false) {
$scripts_found .= $script->handle;
}
}
}
if ($scripts_found != '') {
echo '
' . sprintf(__('
Warning: an active plugin or theme is also embedding the Google Maps API (script handle: %1$s) - this can break (Google) maps and address search on backend for %2$s!To fix this, please either remove that additional Google Maps API call manually or enable the compatibility option "
Deregister Google Maps API scripts enqueued by third parties"','lmm'), $scripts_found, 'Leaflet Maps Marker', LEAFLET_WP_ADMIN_URL . 'admin.php?page=leafletmapsmarker_settings#lmm-basemaps-google_js_api') . '
';
}
}
}
//info: check if custom shadow image and custom marker icon directory exists
function checkUrlExists($url) {
$result = wp_remote_get(
$url,
array(
'sslverify' => false,
'body' => $url
)
);
if (is_wp_error($result)) { return false; }
if ((integer)$result['response']['code']!=200) { return false; }
return true;
}
if ( $lmm_options['defaults_marker_icon_shadow_url_status'] == 'custom') {
$custom_shadow_icon_url = $lmm_options['defaults_marker_icon_shadow_url'];
$custom_shadow_icon_url_exists = checkUrlExists($custom_shadow_icon_url);
if ( ($custom_shadow_icon_url != NULL) && (!$custom_shadow_icon_url_exists) ) {
echo '
' . sprintf(__('Warning: the setting for the marker shadow url (%1s) seems to be invalid. This can happen when you moved your WordPress installation from one server to another one.
Please navigate to Settings / Map Defaults / "Default values for marker icons" and update the option "Shadow URL". If you do not know which values to enter, please reset all plugins options to their defaults', 'lmm'), $shadow_icon_url, LEAFLET_WP_ADMIN_URL . 'admin.php?page=leafletmapsmarker_settings#lmm-mapdefaults-marker_icons', LEAFLET_WP_ADMIN_URL . 'admin.php?page=leafletmapsmarker_settings#lmm-reset-reset_settings') . ' ';
}
}
//info: display admin notice (lmm only) if user switches back to free version
$lmm_pro_readme = WP_PLUGIN_DIR . DIRECTORY_SEPARATOR . 'leaflet-maps-marker-pro' . DIRECTORY_SEPARATOR . 'readme.txt';
if (file_exists($lmm_pro_readme)) {
$lmm_pro_version = get_option( 'leafletmapsmarker_version_pro' );
if ( $lmm_pro_version != NULL) {
$lmm_trial_key = get_option('leafletmapsmarkerpro_license_key_trial'); //info: do not add additional option just for free downgrade since v2.4p/multi-layer-assignment-checks
if ($lmm_trial_key != NULL) {
$toolnonce = wp_create_nonce('tool-nonce');
echo '
' . sprintf(__('Warning: "Maps Marker Pro" enabled you to assign markers to multiple layers. If you plan to use "Leaflet Maps Marker" again, a database downgrade is needed!
Please be aware that the information about markers being assigned to multiple layers will get lost during that downgrade - only the first layer each marker was assigned to will be preserved!
Please click here to start the database downgrade','lmm'), LEAFLET_WP_ADMIN_URL . 'admin.php?page=leafletmapsmarker_tools&action=database_downgrade&_wpnonce=' . $toolnonce) . '
' . __('This message will disappear once the database downgrade has been completed.','lmm') . '
';
}
} else {
echo '
' . sprintf(__('You downloaded
Maps Marker Pro but did not register a free 30-day-trial license key. Please note that
according to our privacy policy we will not disclose, rent or sell your personal information!
If you install Maps Marker Pro on a localhost installation (
see available packages on Wikipedia) you can also test the pro plugin without registering a free 30-day-trial license key and without time limitation.','lmm'), 'https://www.mapsmarker.com', 'https://www.mapsmarker.com/privacy', 'http://en.wikipedia.org/wiki/List_of_AMP_packages') . '
' . __('This message will disappear once the pro version has been activated or deleted from your server (via the WordPress Plugins page!)','lmm') . '
';
}
}
}//info: end misc_global_admin_notices check
//info: check if newer plugin version is available
$plugin_updates = get_site_transient( 'update_plugins' );
if (isset($plugin_updates->response['leaflet-maps-marker/leaflet-maps-marker.php']->new_version)) {
$plugin_updates_lmm_installed = get_option("leafletmapsmarker_version");
$plugin_updates_lmm_new_version = $plugin_updates->response['leaflet-maps-marker/leaflet-maps-marker.php']->new_version;
echo '
' . __('Leaflet Maps Marker - plugin update available!','lmm') . '' . sprintf(__('You are currently using v%1s and the plugin author highly recommends updating to v%2s for new features, bugfixes and updated translations (please see
this blog post for more details about the latest release).','lmm'), $plugin_updates_lmm_installed, $plugin_updates_lmm_new_version, $plugin_updates_lmm_new_version) . '
';
if ( current_user_can( 'update_plugins' ) ) {
echo sprintf(__('Update instruction: please start the update from the
Updates-page.','lmm'), get_admin_url() . 'update-core.php' ) . '
';
} else {
echo sprintf(__('Update instruction: as your user does not have the right to update plugins, please contact your
administrator','lmm'), get_option('admin_email'), site_url() ) . '
';
}
}
/*
//info: show info about Google Maps API key only for fresh free installs
if ( ($page == 'leafletmapsmarker_marker') || ($page == 'leafletmapsmarker_layer') ) {
if( current_user_can( 'activate_plugins' ) ) { //info: do not show for non-admins
if ( ($lmm_options['google_maps_api_key'] == NULL) || ($lmm_options['google_maps_api_status'] == 'disabled') ) {
if (version_compare(get_option('leafletmapsmarker_version_before_update'),'0','=')) {
echo '';
if (version_compare(phpversion(),"5.6","<")){
echo '
' . sprintf(__('Warning: your server uses the outdated PHP version %1$s, which is not updated anymore and potentially insecure!
PHP version %2$s is now the recommended version for WordPress (but it does not hurt to get updated to PHP %3$s or higher already).
Read more information about how you can update at %4$s','lmm'), phpversion(), '5.6', '7.0', '
http://www.wpupdatephp.com/') . '
';
}
if ($lmm_version_old == 0) {
echo '
' . sprintf(__('Leaflet Maps Marker has been successfully updated to version %1s!','lmm'), $lmm_version_new) . '
';
} else {
echo '
' . sprintf(__('Leaflet Maps Marker has been successfully updated from version %1s to %2s!','lmm'), $lmm_version_old, $lmm_version_new) . '
';
}
echo '
'.PHP_EOL;
echo '
';
}
if ($first_run == 'true') { $menu_visibility = 'style="display:none;"'; } else { $menu_visibility = ''; } ?>