/** * This function creates an import Form * * @return string HTML string of form */ function getImportExportForm() { global $_CONF, $_TABLES, $LANG_MAPS_1; $return = COM_startBlock($LANG_MAPS_1['import_export']); $template = COM_newTemplate($_CONF['path'] . 'plugins/maps/templates'); $template->set_file(array('import_export' => 'import_export_form.thtml')); $template->set_var('site_admin_url', $_CONF['site_admin_url']); $template->set_var('import', $LANG_MAPS_1['import']); $template->set_var('import_message', $LANG_MAPS_1['import_message']); $template->set_var('export', $LANG_MAPS_1['export']); $template->set_var('export_message', $LANG_MAPS_1['export_message']); $template->set_var('select_file', $LANG_MAPS_1['select_file']); //delimiters $template->set_var('separator_in', $LANG_MAPS_1['separator']); $template->set_var('separator_out', $LANG_MAPS_1['separator']); $separator_options = '<option value=";">;</option>' . LB; $separator_options .= '<option value="tab">tab</option>' . LB; $separator_options .= '<option value=",">,</option>' . LB; $template->set_var('separator_options_in', $separator_options); $template->set_var('separator_options_out', $separator_options); //select map $template->set_var('mid_label', $LANG_MAPS_1['name_label']); $map_options = MAPS_recurseMaps($marker['mid']); $template->set_var('map_options', $map_options); //Fields to import or export $template->set_var('choose_fields_import', $LANG_MAPS_1['choose_fields_import']); $template->set_var('choose_fields_export', $LANG_MAPS_1['choose_fields_export']); $template->set_var('checkall', $LANG_MAPS_1['checkall']); $valid_fieds = MAPS_getFieldsImportExport(); foreach ($valid_fieds as $value) { $fields_selector .= '<input type="checkbox" name="import_export[]" value="' . $value . '" />' . $value . '<br' . XHTML . '>' . LB; } $template->set_var('fields_selector', $fields_selector); //Form validation $template->set_var('ok_button', $LANG_MAPS_1['ok_button']); $return .= $template->parse('output', 'import_export'); $return .= COM_endBlock(); return $return; }
/** * This function creates a map Form * * Creates a Form for a map using the supplied defaults (if specified). * * @param array $map array of values describing a map * @return string HTML string of map form */ function getUserMarkerForm($marker = array()) { global $_CONF, $_TABLES, $_MAPS_CONF, $LANG_MAPS_1, $LANG_configselects, $LANG_ACCESS, $_USER, $_GROUPS, $_SCRIPTS; $display = COM_startBlock('<h1>' . $LANG_MAPS_1['marker_edit'] . ' ' . $marker['name'] . '</h1>'); $map_options = MAPS_recurseMaps($marker['mid']); if ($map_options == '') { $display .= COM_startBlock($LANG_MAPS_1['error'], '', 'blockheader-message.thtml'); $display .= $LANG_MAPS_1['maps_empty']; $display .= COM_endBlock('blockfooter-message.thtml'); } else { $template = new Template($_CONF['path'] . 'plugins/maps/templates'); $template->set_file(array('map' => 'marker_user_form.thtml')); $template->set_var('site_url', $_MAPS_CONF['site_url']); $template->set_var('xhtml', XHTML); $template->set_var('goog_api_key', $_MAPS_CONF['google_api_key']); $template->set_var('go', $LANG_MAPS_1['go']); $template->set_var('edit_marker_text', $LANG_MAPS_1['edit_marker_text']); if (isset($marker['mkid'])) { $template->set_var('default_address', $marker['address']); } else { $template->set_var('default_address', '1600 Amphitheatre Pky, Mountain View, CA'); } $template->set_var('yes', $LANG_MAPS_1['yes']); $template->set_var('no', $LANG_MAPS_1['no']); $template->set_var('arrow', '<img src="' . $_MAPS_CONF['site_url'] . '/images/arrow.png" alt=""align="absmiddle"> '); //informations $template->set_var('informations', $LANG_MAPS_1['informations']); $template->set_var('name_label', $LANG_MAPS_1['marker_name_label']); $template->set_var('name', stripslashes($marker['name'])); $template->set_var('address_label', $LANG_MAPS_1['address_label']); $template->set_var('address', stripslashes($marker['address'])); $template->set_var('empty_for_geo', $LANG_MAPS_1['empty_for_geo']); $template->set_var('lat', $LANG_MAPS_1['lat']); $template->set_var('lat_value', $marker['lat']); $template->set_var('lng', $LANG_MAPS_1['lng']); $template->set_var('lng_value', $marker['lng']); $template->set_var('select_marker_map', $LANG_MAPS_1['select_marker_map']); $template->set_var('mid_label', $LANG_MAPS_1['name_label']); $template->set_var('mid', $marker['mid']); $template->set_var('map_options', $map_options); $template->set_var('created_label', $LANG_MAPS_1['marker_created']); $template->set_var('modified_label', $LANG_MAPS_1['modified']); $datecreated = COM_getUserDateTimeFormat($marker['created']); $datemodified = COM_getUserDateTimeFormat($marker['modified']); $template->set_var('created', $datecreated[0]); $template->set_var('modified', $datemodified[0]); $template->set_var('required_field', $LANG_MAPS_1['required_field']); //marker $template->set_var('marker_customisation', $LANG_MAPS_1['marker_customisation']); $template->set_var('mk_default', $LANG_MAPS_1['mk_default']); if ($marker['mk_default'] == 0) { $template->set_var('mk_default_yes', ''); $template->set_var('mk_default_no', ' selected'); } else { $template->set_var('mk_default_yes', ' selected'); $template->set_var('mk_default_no', ''); } //icon $sql = "SELECT * FROM {$_TABLES['maps_map_icons']} WHERE 1=1"; $result = DB_query($sql, 0); $radio = '<p>' . $LANG_MAPS_1['choose_icon'] . '</p>'; $marker['mk_icon'] == 0 ? $checked = ' checked="checked"' : ($checked = ''); $radio .= '<input type="radio" name="mk_icon" value="0"' . $checked . '>' . $LANG_MAPS_1['no_icon'] . ' | '; while ($icon = DB_fetchArray($result, false)) { $marker['mk_icon'] == $icon['icon_id'] ? $checked = ' checked="checked"' : ($checked = ''); $radio .= '<input type="radio" name="mk_icon" value="' . $icon['icon_id'] . '"' . $checked . '> <img src="' . $_MAPS_CONF['images_icons_url'] . $icon['icon_image'] . '" alt="' . $icon['icon_image'] . '"> | '; } $radio .= '<hr' . XHTML . '>'; $template->set_var('icon', $radio); $template->set_var('primary_color_label', $LANG_MAPS_1['primary_color_label']); $template->set_var('primary_color', $marker['mk_pcolor']); $template->set_var('stroke_color_label', $LANG_MAPS_1['stroke_color_label']); $template->set_var('stroke_color', $marker['mk_scolor']); $template->set_var('label_label', $LANG_MAPS_1['label']); $template->set_var('label', $marker['mk_label']); $template->set_var('label_color_label', $LANG_MAPS_1['label_color']); if ($marker['mk_label_color'] == '') { $marker['label_color'] = $_MAPS_CONF['label_color']; } if ($marker['mk_label_color'] == 1) { $template->set_var('label_color_white', ' selected'); $template->set_var('label_color_black', ''); } else { $template->set_var('label_color_white', ''); $template->set_var('label_color_black', ' selected'); } $template->set_var('black', $LANG_MAPS_1['black']); $template->set_var('white', $LANG_MAPS_1['white']); //Genaral settings $template->set_var('general_settings', $LANG_MAPS_1['general_settings']); //payed $template->set_var('payed', $LANG_MAPS_1['payed']); if ($marker['payed'] == '') { $marker['payed'] = $_MAPS_CONF['payed']; } if ($marker['payed'] == 1) { $template->set_var('payed_yes', ' selected'); $template->set_var('payed_no', ''); } else { $template->set_var('payed_yes', ''); $template->set_var('payed_no', ' selected'); } //active $template->set_var('active', $LANG_MAPS_1['marker_active']); if ($marker['active'] == '') { $marker['active'] = $_MAPS_CONF['map_active']; } if ($marker['active'] == 1) { $template->set_var('active_yes', ' selected'); $template->set_var('active_no', ''); } else { $template->set_var('active_yes', ''); $template->set_var('active_no', ' selected'); } //hidden $template->set_var('hidden', $LANG_MAPS_1['marker_hidden']); if ($marker['hidden'] == '') { $marker['hidden'] = $_MAPS_CONF['map_hidden']; } if ($marker['hidden'] == 1) { $template->set_var('hidden_yes', ' selected'); $template->set_var('hidden_no', ''); } else { $template->set_var('hidden_yes', ''); $template->set_var('hidden_no', ' selected'); } //validity $template->set_var('validity', $marker['validity']); $template->set_var('marker_validity', $LANG_MAPS_1['marker_validity']); if ($marker['validity'] == '') { $marker['validity'] = $_MAPS_CONF['map_hidden']; } if ($marker['validity'] == 1) { $template->set_var('validity_yes', ' selected'); $template->set_var('validity_no', ''); $template->set_var('disabled', ''); } else { $template->set_var('validity_yes', ''); $template->set_var('validity_no', ' selected'); $template->set_var('disabled', ' disabled'); } $template->set_var('from_label', $LANG_MAPS_1['from']); if ($marker['validity_start'] != '') { $datefrom = date("m/d/Y", strtotime($marker['validity_start'])); $template->set_var('from', $datefrom); } else { $datefrom = date("m/d/Y"); $template->set_var('from', $datefrom); } $template->set_var('to_label', $LANG_MAPS_1['to']); if ($marker['validity_end'] != '') { $dateto = date("m/d/Y", strtotime($marker['validity_end'])); $template->set_var('to', $dateto); } else { $dateto = date("m/d/Y"); $template->set_var('to', $dateto); } //note $template->set_var('remark_label', $LANG_MAPS_1['remark']); $template->set_var('remark', stripslashes($marker['remark'])); //Tab presentation $template->set_var('presentation_tab', $LANG_MAPS_1['presentation_tab']); $template->set_var('description_label', $LANG_MAPS_1['description_label']); $template->set_var('description', stripslashes($marker['description'])); $template->set_var('street_label', $LANG_MAPS_1['street_label']); if ($_MAPS_CONF['street'] == 1) { $template->set_var('street', '<input type="text" name="street" value="' . stripslashes($marker['street']) . '" size="80" maxlength="255">'); } else { $template->set_var('street', $LANG_MAPS_1['not_use_see_config']); } $template->set_var('code_label', $LANG_MAPS_1['code_label']); if ($_MAPS_CONF['code'] == 1) { $template->set_var('code', '<input type="text" name="code" value="' . $marker['code'] . '" size="10" maxlength="10">'); } else { $template->set_var('code', $LANG_MAPS_1['not_use_see_config']); } $template->set_var('city_label', $LANG_MAPS_1['city_label']); if ($_MAPS_CONF['city'] == 1) { $template->set_var('city', '<input type="text" name="city" value="' . stripslashes($marker['city']) . '" size="80" maxlength="255">'); } else { $template->set_var('city', $LANG_MAPS_1['not_use_see_config']); } $template->set_var('state_label', $LANG_MAPS_1['state_label']); if ($_MAPS_CONF['state'] == 1) { $template->set_var('state', '<input type="text" name="state" value="' . stripslashes($marker['state']) . '" size="80" maxlength="255">'); } else { $template->set_var('state', $LANG_MAPS_1['not_use_see_config']); } $template->set_var('country_label', $LANG_MAPS_1['country_label']); if ($_MAPS_CONF['country'] == 1) { $template->set_var('country', '<input type="text" name="country" value="' . stripslashes($marker['country']) . '" size="80" maxlength="255">'); } else { $template->set_var('country', $LANG_MAPS_1['not_use_see_config']); } $template->set_var('tel_label', $LANG_MAPS_1['tel_label']); if ($_MAPS_CONF['tel'] == 1) { $template->set_var('tel', '<input type="text" name="tel" value="' . $marker['tel'] . '" size="20" maxlength="20">'); } else { $template->set_var('tel', $LANG_MAPS_1['not_use_see_config']); } $template->set_var('fax_label', $LANG_MAPS_1['fax_label']); if ($_MAPS_CONF['fax'] == 1) { $template->set_var('fax', '<input type="text" name="fax" value="' . $marker['fax'] . '" size="20" maxlength="20">'); } else { $template->set_var('fax', $LANG_MAPS_1['not_use_see_config']); } $template->set_var('web_label', $LANG_MAPS_1['web_label']); if ($_MAPS_CONF['web'] == 1) { $template->set_var('web', '<input type="text" name="web" value="' . stripslashes($marker['web']) . '" size="80" maxlength="255">'); } else { $template->set_var('web', $LANG_MAPS_1['not_use_see_config']); } //Tab ressources $template->set_var('ressources_tab', $LANG_MAPS_1['ressources_tab']); $template->set_var('max_char', $LANG_MAPS_1['max_char']); $arr = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); $ressources = ''; foreach ($arr as &$value) { if ($_MAPS_CONF['item_' . $value] == '') { $template->set_var('item_' . $value . '_label', ''); $template->set_var('item_' . $value, ''); $ressources .= ''; } else { $template->set_var('item_' . $value . '_label', $_MAPS_CONF['item_' . $value]); $template->set_var('item_' . $value, $marker['item_' . $value]); $ressources .= '<p>' . $_MAPS_CONF['item_' . $value] . ' <input type"text" name="item_' . $value . '" size="80" maxlength="255" value="' . $marker['item_' . $value] . '"></p>'; } } if ($ressources == '') { $ressources = $LANG_MAPS_1['empty_ressources']; } $template->set_var('ressources', $ressources); // Permissions if ($marker['perm_owner'] == '') { SEC_setDefaultPermissions($marker, $_MAPS_CONF['default_permissions']); } $template->set_var('lang_accessrights', $LANG_ACCESS['accessrights']); $template->set_var('lang_owner', $LANG_ACCESS['owner']); if ($marker['owner_id'] == '') { $marker['owner_id'] = $_USER['uid']; } $ownername = COM_getDisplayName($marker['owner_id']); $template->set_var('owner_username', DB_getItem($_TABLES['users'], 'username', "uid = {$marker['owner_id']}")); $template->set_var('owner_name', $ownername); $template->set_var('owner', $ownername); $template->set_var('owner_id', $marker['owner_id']); if ($marker['group_id'] == '') { $marker['group_id'] = $_GROUPS['Maps Admin']; } $template->set_var('lang_group', $LANG_ACCESS['group']); //Todo make group = maps.admin $access = 3; $template->set_var('group_dropdown', SEC_getGroupDropdown($marker['group_id'], $access)); $template->set_var('permissions_editor', SEC_getPermissionsHTML($marker['perm_owner'], $marker['perm_group'], $marker['perm_members'], $marker['perm_anon'])); $template->set_var('lang_permissions', $LANG_ACCESS['permissions']); $template->set_var('lang_perm_key', $LANG_ACCESS['permissionskey']); $template->set_var('permissions_msg', $LANG_ACCESS['permmsg']); $template->set_var('lang_permissions_msg', $LANG_ACCESS['permmsg']); //Form validation $template->set_var('submission', $marker['submission']); $template->set_var('save_button', $LANG_MAPS_1['save_button']); $template->set_var('delete_button', $LANG_MAPS_1['delete_button']); $template->set_var('ok_button', $LANG_MAPS_1['ok_button']); $template->set_var('mkid', '<input type="hidden" name="mkid" value="' . $marker['mkid'] . '" />'); $display .= $template->parse('output', 'map'); } $display .= COM_endBlock(); $_SCRIPTS->setJavaScriptLibrary('jquery'); $_SCRIPTS->setJavaScriptFile('maps_simplecolor', '/' . $_MAPS_CONF['maps_folder'] . '/js/simple-color.js'); $js = LB . '<script type="text/javascript" src= "https://maps.googleapis.com/maps/api/js?key=' . $_MAPS_CONF['google_api_key'] . '&sensor=false"> </script> <script type="text/javascript"> jQuery(document).ready( function() { jQuery("#primary_color").simpleColor({ cellWidth: 9, cellHeight: 9, border: \'1px solid #333333\', displayColorCode: true }); jQuery("#stroke_color").simpleColor({ cellWidth: 9, cellHeight: 9, border: \'1px solid #333333\', displayColorCode: true }); $( "#from" ).datepicker(); $( "#to" ).datepicker(); }); function changeValidity() { if (document.getElementById(\'validity\').value == 0){ $("#from").prop(\'disabled\', true); $("#to").prop(\'disabled\', true); } else { $("#from").prop(\'disabled\', false); $("#to").prop(\'disabled\', false); } } jQuery(function() { jQuery(\'#from\').datepicker({ altFormat:\'m/d/Y\' }); jQuery(\'#to\').datepicker({ altFormat:\'m/d/Y\', }); }); var geocoder = new google.maps.Geocoder(); var map; function initializeGMap() { var mapOptions = { center: new google.maps.LatLng(' . $marker['lat'] . ', ' . $marker['lng'] . '), zoom: 10, mapTypeId: google.maps.MapTypeId.ROADMAP }; map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions); var marker = new google.maps.Marker({ map: map, position: new google.maps.LatLng(' . $marker['lat'] . ', ' . $marker['lng'] . '), title: "' . $marker['name'] . '", draggable:true, animation: google.maps.Animation.DROP, }); google.maps.event.addDomListener(marker, "dragend", function(evt) { document.getElementById(\'lat\').value = evt.latLng.lat().toFixed(6); document.getElementById(\'lng\').value = evt.latLng.lng().toFixed(6); //showInfoWindowHtml(marker); }); } google.maps.event.addDomListener(window, \'load\', initializeGMap); function showInfoWindowHtml (marker) { var latlng= marker.getLatLng(); var lat=latlng.lat(); var lng=latlng.lng(); //marker.openInfoWindowHtml(\'<p>{lat} \' + lat.toString() + \'</p><p>{lng} \' + lng.toString()); document.getElementById(\'lat\').value = lat; document.getElementById(\'lng\').value = lng; } function codeAddress() { var address = document.getElementById(\'geoaddress\').value; geocoder.geocode( { \'address\': address}, function(results, status) { if (status == google.maps.GeocoderStatus.OK) { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); document.getElementById(\'lat\').value = results[0].geometry.location.lat(); document.getElementById(\'lng\').value = results[0].geometry.location.lng(); } else { alert(\'Geocode was not successful for the following reason: \' + status); } }); } function limitText(limitField, limitCount, limitNum) { if (limitField.value.length > limitNum) { limitField.value = limitField.value.substring(0, limitNum); } else { limitCount.value = limitNum - limitField.value.length; } } function copyText() { var t1 = document.getElementById(\'geoaddress\').value; document.getElementById(\'address\').value = t1; } </script>' . LB . LB; $_SCRIPTS->setJavaScript($js, false); $_SCRIPTS->setJavaScriptFile('ui_core', '/javascript/jquery_ui/jquery.ui.core.min.js'); $_SCRIPTS->setJavaScriptFile('datepicker', '/javascript/jquery_ui/jquery.ui.datepicker.min.js'); return $display; }
/** * This function creates a Overlay Form * * Creates a Form for an overlay using the supplied defaults (if specified). * * @param array $overlay array of values describing an overlay * @return string HTML string of overlay form */ function MAPS_getOverlayForm($overlay = array()) { global $_CONF, $_TABLES, $_MAPS_CONF, $LANG_MAPS_1, $LANG_configselects, $LANG_ACCESS, $_USER, $_GROUPS, $_SCRIPTS; $display = COM_startBlock('<h1>' . $LANG_MAPS_1['overlay_edit'] . ' ' . $overlay['name'] . '</h1>'); $map_options = MAPS_recurseMaps($overlay['mid']); if ($map_options == '') { $display .= COM_startBlock($LANG_MAPS_1['error'], '', 'blockheader-message.thtml'); $display .= $LANG_MAPS_1['maps_empty']; $display .= COM_endBlock('blockfooter-message.thtml'); } else { $template = COM_newTemplate($_CONF['path'] . 'plugins/maps/templates'); $template->set_file(array('map' => 'overlay_form.thtml')); $template->set_var('edit_overlay_text', $LANG_MAPS_1['edit_overlay_text']); $template->set_var('yes', $LANG_MAPS_1['yes']); $template->set_var('no', $LANG_MAPS_1['no']); //informations $template->set_var('overlay_presentation', $LANG_MAPS_1['overlay_presentation']); $template->set_var('informations', $LANG_MAPS_1['informations']); $template->set_var('name_label', $LANG_MAPS_1['overlay_name_label']); $template->set_var('name', stripslashes($overlay['o_name'])); $template->set_var('group', MAPS_selectGroupOverlays($overlay['o_group'])); $template->set_var('sw_lat', $LANG_MAPS_1['sw_lat']); $template->set_var('sw_lat_value', $overlay['o_sw_lat']); $template->set_var('sw_lng', $LANG_MAPS_1['sw_lng']); $template->set_var('sw_lng_value', $overlay['o_sw_lng']); $template->set_var('ne_lat', $LANG_MAPS_1['ne_lat']); $template->set_var('ne_lat_value', $overlay['o_ne_lat']); $template->set_var('ne_lng', $LANG_MAPS_1['ne_lng']); $template->set_var('ne_lng_value', $overlay['o_ne_lng']); $template->set_var('required_field', $LANG_MAPS_1['required_field']); //active $template->set_var('active', $LANG_MAPS_1['overlay_active']); if ($overlay['o_active'] == '') { $overlay['o_active'] = $_MAPS_CONF['map_active']; } if ($overlay['o_active'] == 1) { $template->set_var('active_yes', ' selected'); $template->set_var('active_no', ''); } else { $template->set_var('active_yes', ''); $template->set_var('active_no', ' selected'); } //zoom $template->set_var('zoom_min_label', $LANG_MAPS_1['zoom_min_label']); $template->set_var('zoom_min', $overlay['o_zoom_min']); $template->set_var('zoom_max_label', $LANG_MAPS_1['zoom_max_label']); $template->set_var('zoom_max', $overlay['o_zoom_max']); //Image $template->set_var('image', $LANG_MAPS_1['image']); $template->set_var('image_message', $LANG_MAPS_1['image_message']); $overlay_image = $_MAPS_CONF['path_overlay_images'] . $overlay['o_image']; if (is_file($overlay_image)) { $template->set_var('overlay_image', '<p>' . $LANG_MAPS_1['image_replace'] . '<p><p><img src="' . $_MAPS_CONF['site_url'] . '/timthumb.php?src=' . $_MAPS_CONF['images_overlay_url'] . $overlay['o_image'] . '&w=350&q=70&zc=1" alt="" /></p>'); } else { $template->set_var('overlay_image', ''); } //Form validation $template->set_var('save_button', $LANG_MAPS_1['save_button']); if ($overlay['oid'] > 0) { $template->set_var('delete_button', '<option value="delete">' . $LANG_MAPS_1['delete_button'] . '</option>'); } else { $template->set_var('delete_button', ''); } $template->set_var('ok_button', $LANG_MAPS_1['ok_button']); if (isset($overlay['oid'])) { $template->set_var('oid', '<input type="hidden" name="oid" value="' . $overlay['oid'] . '" />'); } else { $template->set_var('oid', ''); } $display .= $template->parse('output', 'map'); } $display .= COM_endBlock(); return $display; }