www.mapsmarker.com"); } global $wpdb; $lmm_options = get_option( 'leafletmapsmarker_options' ); $table_name_markers = $wpdb->prefix.'leafletmapsmarker_markers'; $table_name_layers = $wpdb->prefix.'leafletmapsmarker_layers'; $radius = 1; $pagenum = isset($_POST['paged']) ? intval($_POST['paged']) : (isset($_GET['paged']) ? intval($_GET['paged']) : 1); //info: security check if input variable is valid $columnsort_values = array('m.id','m.icon','m.markername','m.popuptext','l.name','m.openpopup','m.panel','m.zoom','m.basemap','m.createdon','m.createdby','m.updatedon','m.updatedby','m.controlbox'); $columnsort_input = isset($_POST['orderby']) ? esc_sql($_POST['orderby']) : (isset($_GET['orderby']) ? esc_sql($_GET['orderby']) : $lmm_options[ 'misc_marker_listing_sort_order_by' ]); $columnsort = (in_array($columnsort_input, $columnsort_values)) ? $columnsort_input : $lmm_options[ 'misc_marker_listing_sort_order_by' ]; //info: security check if input variable is valid $columnsortorder_values = array('asc','desc','ASC','DESC'); $columnsortorder_input = isset($_POST['order']) ? esc_sql($_POST['order']) : (isset($_GET['order']) ? esc_sql($_GET['order']) : $lmm_options[ 'misc_marker_listing_sort_sort_order' ]); $columnsortorder = (in_array($columnsortorder_input, $columnsortorder_values)) ? $columnsortorder_input : $lmm_options[ 'misc_marker_listing_sort_sort_order' ]; $offset = ($pagenum - 1) * intval($lmm_options[ 'markers_per_page' ]); $action = isset($_POST['action']) ? $_POST['action'] : (isset($_GET['action']) ? $_GET['action'] : ''); $searchtext = isset($_POST['searchtext']) ? '%' .esc_sql($_POST['searchtext']) . '%' : (isset($_GET['searchtext']) ? '%' . esc_sql($_GET['searchtext']) : '') . '%'; $markers_per_page_validated = intval($lmm_options[ 'markers_per_page' ]); if ($action == 'search') { $markersearchnonce = isset($_POST['_wpnonce']) ? $_POST['_wpnonce'] : ''; if (! wp_verify_nonce($markersearchnonce, 'markersearch-nonce') ) die('
'.__('Security check failed - please call this function from the according admin page!','lmm').''); $mcount = intval($wpdb->get_var($wpdb->prepare("SELECT COUNT(*) FROM `$table_name_markers` WHERE id like '%s' OR markername like '%s' OR popuptext like '%s' OR address like '%s'", $searchtext, $searchtext, $searchtext, $searchtext))); $marklist = $wpdb->get_results( $wpdb->prepare("SELECT m.id,m.basemap,m.icon,m.popuptext,m.layer,m.zoom,m.openpopup as openpopup,m.lat,m.lon,m.mapwidth,m.mapheight,m.mapwidthunit,m.markername,m.panel,m.createdby,m.createdon,m.updatedby,m.updatedon,m.controlbox,m.overlays_custom,m.overlays_custom2,m.overlays_custom3,m.overlays_custom4,m.wms,m.wms2,m.wms3,m.wms4,m.wms5,m.wms6,m.wms7,m.wms8,m.wms9,m.wms10,m.address,l.name AS layername,l.id as layerid FROM `$table_name_markers` AS m LEFT OUTER JOIN `$table_name_layers` AS l ON m.layer=l.id WHERE m.id like '%s' OR m.markername like '%s' OR m.popuptext like '%s' OR m.address like '%s' order by $columnsort $columnsortorder LIMIT $markers_per_page_validated OFFSET $offset", $searchtext, $searchtext, $searchtext, $searchtext), ARRAY_A); } else { $mcount = intval($wpdb->get_var('SELECT COUNT(*) FROM '.$table_name_markers)); $marker_per_page = intval($lmm_options[ 'markers_per_page' ]); $marklist = $wpdb->get_results( "SELECT m.id,CONCAT(m.lat,',',m.lon) AS coords,m.basemap,m.icon,m.popuptext,m.layer,m.zoom,m.openpopup as openpopup,m.lat,m.lon,m.mapwidth,m.mapheight,m.mapwidthunit,m.markername,m.panel,m.createdby,m.createdon,m.updatedby,m.updatedon,m.controlbox,m.overlays_custom,m.overlays_custom2,m.overlays_custom3,m.overlays_custom4,m.wms,m.wms2,m.wms3,m.wms4,m.wms5,m.wms6,m.wms7,m.wms8,m.wms9,m.wms10,m.address,l.name AS layername,l.id as layerid FROM `$table_name_markers` AS m LEFT OUTER JOIN $table_name_layers AS l ON m.layer=l.id order by $columnsort $columnsortorder LIMIT $marker_per_page OFFSET $offset", ARRAY_A); } //info: get pagination $getorder = isset($_GET['order']) ? htmlspecialchars($_GET['order']) : $lmm_options[ 'misc_marker_listing_sort_sort_order' ]; $getorderby = isset($_GET['orderby']) ? '&orderby=' . htmlspecialchars($_GET['orderby']) : ''; if ($getorder == 'asc') { $sortorder = 'desc'; } else { $sortorder= 'asc'; }; if ($getorder == 'asc') { $sortordericon = 'asc'; } else { $sortordericon = 'desc'; }; $pager = ''; if ($mcount > intval($lmm_options[ 'markers_per_page' ])) { $maxpage = intval(ceil($mcount / intval($lmm_options[ 'markers_per_page' ]))); if ($maxpage > 1) { $pager .= '
' . __('Markers per page','lmm') . ': '; if (current_user_can('activate_plugins')) { $pager .= '' . intval($lmm_options[ 'markers_per_page' ]) . '   |   '; } else { $pager .= intval($lmm_options[ "markers_per_page" ]) . '   |   '; } $pager .= '
' . __('page','lmm') . ' '; $pager .= ''; $pager .= ''; if ($pagenum > (2 + $radius * 2)) { foreach (range(1, 1 + $radius) as $num) $pager .= ''.$num.''; $pager .= '...'; foreach (range($pagenum - $radius, $pagenum - 1) as $num) $pager .= ''.$num.''; } else if ($pagenum > 1) foreach (range(1, $pagenum - 1) as $num) $pager .= ''.$num.''; $pager .= ' '; if (($maxpage - $pagenum) >= (2 + $radius * 2)) { foreach (range($pagenum + 1, $pagenum + $radius) as $num) $pager .= ''.$num.''; $pager .= '...'; foreach (range($maxpage - $radius, $maxpage) as $num) $pager .= ''.$num.''; } else if ($pagenum < $maxpage) foreach (range($pagenum + 1, $maxpage) as $num) $pager .= ''.$num.''; $pager .= '
'; } } include('inc' . DIRECTORY_SEPARATOR . 'admin-header.php'); $deleteselected = ( isset($_POST['bulkactions-markers']) && ($_POST['bulkactions-markers'] == 'deleteselected') ) ? '1' : '0'; $assignselected = ( isset($_POST['bulkactions-markers']) && ($_POST['bulkactions-markers'] == 'assignselected') ) ? '1' : '0'; $massactionnonce = isset($_POST['_wpnonce']) ? $_POST['_wpnonce'] : (isset($_GET['_wpnonce']) ? $_GET['_wpnonce'] : ''); if ( ($deleteselected == '1') && isset($_POST['checkedmarkers']) ) { if (! wp_verify_nonce($massactionnonce, 'massaction-nonce') ) die('
'.__('Security check failed - please call this function from the according admin page!','lmm').''); $checked_markers_prepared = implode(",", $_POST['checkedmarkers']); $checked_markers = preg_replace('/[a-z|A-Z| |\=]/', '', $checked_markers_prepared); $wpdb->query( "DELETE FROM `$table_name_markers` WHERE `id` IN (" . htmlspecialchars($checked_markers) . ")"); $wpdb->query( "OPTIMIZE TABLE `$table_name_markers`" ); echo '

' . __('The selected markers have been deleted','lmm') . ' (ID ' . htmlspecialchars($checked_markers) . ')
'; echo '

' . __('list all markers','lmm') . '   ' . __('add new maker','lmm') . '

'; } else if ( ($assignselected == '1') && isset($_POST['checkedmarkers']) ) { if (! wp_verify_nonce($massactionnonce, 'massaction-nonce') ) die('
'.__('Security check failed - please call this function from the according admin page!','lmm').''); $checked_markers_prepared = implode(",", $_POST['checkedmarkers']); $checked_markers = preg_replace('/[a-z|A-Z| |\=]/', '', $checked_markers_prepared); $wpdb->query( "UPDATE `$table_name_markers` SET `layer` = " . intval($_POST['layer']) . " where `id` IN (" . $checked_markers . ")"); echo '

' . __('The selected markers have been assigned to the selected layer','lmm') . ' (' . __('Marker','lmm') . ' ID ' . htmlspecialchars($checked_markers) . ', ' . __('Layer','lmm') . ' ID ' . htmlspecialchars($_POST['layer']) . ')
'; echo '

' . __('list all markers','lmm') . '   ' . __('add new maker','lmm') . '

'; } else { ?>

"/>
" . __('list all markers','lmm') . "" : ""; ?>

:
'; else foreach ($marklist as $row) { if (current_user_can( $lmm_options[ 'capabilities_delete' ])) { $delete_link_marker = '
' . __('delete','lmm') . '
'; } else { $delete_link_marker = ''; } $rowlayername = ($row['layerid'] == 0) ? "" . __('unassigned','lmm') . "
" : "" . htmlspecialchars($row['layername']) . " (ID " .$row['layerid'] . ")"; $openpopupstatus = ($row['openpopup'] == 1) ? __('open','lmm') : __('closed','lmm'); $openpanelstatus = ($row['panel'] == 1) ? __('visible','lmm') : __('hidden','lmm'); if ($row['controlbox'] == 0) { $controlboxstatus = __('hidden','lmm'); } else if ($row['controlbox'] == 1) { $controlboxstatus = __('collapsed (except on mobiles)','lmm'); } else if ($row['controlbox'] == 2) { $controlboxstatus = __('expanded','lmm'); }; $column_address = ((isset($lmm_options[ 'misc_marker_listing_columns_address' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_address' ] == 1 )) ? '' : ''; $popuptextabstract = (strlen($row['popuptext']) >= 90) ? "...": ""; //info: set column display variables - need for for-each $column_popuptext = ((isset($lmm_options[ 'misc_marker_listing_columns_popuptext' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_popuptext' ] == 1 )) ? '' : ''; $column_layer = ((isset($lmm_options[ 'misc_marker_listing_columns_layer' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_layer' ] == 1 )) ? '' : ''; $column_openpopup = ((isset($lmm_options[ 'misc_marker_listing_columns_openpopup' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_openpopup' ] == 1 )) ? '' : ''; $column_panelstatus = ((isset($lmm_options[ 'misc_marker_listing_columns_panelstatus' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_panelstatus' ] == 1 )) ? '' : ''; $column_coordinates = ((isset($lmm_options[ 'misc_marker_listing_columns_coordinates' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_coordinates' ] == 1 )) ? '' : ''; $column_mapsize = ((isset($lmm_options[ 'misc_marker_listing_columns_mapsize' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_mapsize' ] == 1 )) ? '' : ''; $column_zoom = ((isset($lmm_options[ 'misc_marker_listing_columns_zoom' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_zoom' ] == 1 )) ? '' : ''; $column_controlbox = ((isset($lmm_options[ 'misc_marker_listing_columns_controlbox' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_controlbox' ] == 1 )) ? '' : ''; //info: workaround - select shortcode on input focus doesnt work on iOS global $wp_version; if ( version_compare( $wp_version, '3.4', '>=' ) ) { $is_ios = wp_is_mobile() && preg_match( '/iPad|iPod|iPhone/', $_SERVER['HTTP_USER_AGENT'] ); $shortcode_select = ( $is_ios ) ? '' : 'onfocus="this.select();" readonly="readonly"'; } else { $shortcode_select = ''; } $column_shortcode = ((isset($lmm_options[ 'misc_marker_listing_columns_shortcode' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_shortcode' ] == 1 )) ? '' : ''; $column_kml = ((isset($lmm_options[ 'misc_marker_listing_columns_kml' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_kml' ] == 1 )) ? '' : ''; $column_fullscreen = ((isset($lmm_options[ 'misc_marker_listing_columns_fullscreen' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_fullscreen' ] == 1 )) ? '' : ''; $column_qr_code = ((isset($lmm_options[ 'misc_marker_listing_columns_qr_code' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_qr_code' ] == 1 )) ? '' : ''; $column_geojson = ((isset($lmm_options[ 'misc_marker_listing_columns_geojson' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_geojson' ] == 1 )) ? '' : ''; $column_georss = ((isset($lmm_options[ 'misc_marker_listing_columns_georss' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_georss' ] == 1 )) ? '' : ''; $column_basemap = ((isset($lmm_options[ 'misc_marker_listing_columns_basemap' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_basemap' ] == 1 )) ? '' : ''; $column_createdby = ((isset($lmm_options[ 'misc_marker_listing_columns_createdby' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_createdby' ] == 1 )) ? '' : ''; $column_createdon = ((isset($lmm_options[ 'misc_marker_listing_columns_createdon' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_createdon' ] == 1 )) ? '' : ''; $column_updatedby = ((isset($lmm_options[ 'misc_marker_listing_columns_updatedby' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_updatedby' ] == 1 )) ? '' : ''; $column_updatedon = ((isset($lmm_options[ 'misc_marker_listing_columns_updatedon' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_updatedon' ] == 1 )) ? '' : ''; echo ' ' . $column_address . ' ' . $column_popuptext . ' ' . $column_layer . ' ' . $column_openpopup . ' ' . $column_panelstatus . ' ' . $column_coordinates . ' ' . $column_mapsize . ' ' . $column_zoom . ' ' . $column_basemap . ' ' . $column_createdby . ' ' . $column_createdon . ' ' . $column_updatedby . ' ' . $column_updatedon . ' ' . $column_controlbox; echo ((isset($lmm_options[ 'misc_marker_listing_columns_used_in_content' ] ) == TRUE ) && ( $lmm_options[ 'misc_marker_listing_columns_used_in_content' ] == 1 )) ? '' : ''; echo $column_shortcode . ' ' . $column_kml . ' ' . $column_fullscreen . ' ' . $column_qr_code . ' ' . $column_geojson . ' ' . $column_georss . ' '; }//info: end foreach ?>
ID KML      GeoJSON  GeoRSS 
ID KML      GeoJSON  GeoRSS 
'.__('No marker created yet', 'lmm').'
' . stripslashes(htmlspecialchars($row['address'])) . '' . mb_substr(strip_tags(stripslashes($row['popuptext'])), 0, 90) . $popuptextabstract . '' . stripslashes($rowlayername) . '' . $openpopupstatus . '' . $openpanelstatus . 'Lat: ' . $row['lat'] . '
Lon: ' . $row['lon'] . '
' . __('Width','lmm') . ': '.$row['mapwidth'].$row['mapwidthunit'].'
' . __('Height','lmm') . ': '.$row['mapheight'].'px
' . $row['zoom'] . '' . $controlboxstatus . 'KML-Logo
KML
Fullscreen-Logo
' . __('Fullscreen','lmm') . '
QR-code-logo
' . __('QR code','lmm') . '
GeoJSON-logo
GeoJSON
GeoRSS-logo
GeoRSS
' . $row['basemap'] . '' . esc_html($row['createdby']) . '' . $row['createdon'] . '' . esc_html($row['updatedby']) . '' . $row['updatedon'] . '