2010-01-26 11:13:44 +01:00
|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* Pandora FMS- http://pandorafms.com
|
|
|
|
* ==================================================
|
|
|
|
* Copyright (c) 2005-2009 Artica Soluciones Tecnologicas
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU General Public License
|
|
|
|
* as published by the Free Software Foundation for version 2.
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*/
|
|
|
|
|
|
|
|
// Load global vars
|
2010-03-03 18:10:37 +01:00
|
|
|
global $config;
|
2010-01-26 11:13:44 +01:00
|
|
|
|
|
|
|
check_login ();
|
|
|
|
|
|
|
|
if (! give_acl ($config['id_user'], 0, "PM") && ! is_user_admin ($config['id_user'])) {
|
|
|
|
audit_db ($config['id_user'], $REMOTE_ADDR, "ACL Violation", "Trying to access Visual Setup Management");
|
|
|
|
require ("general/noaccess.php");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
require_once ('include/functions_gis.php');
|
|
|
|
|
|
|
|
$action = get_parameter('action', 'create_connection_map');
|
|
|
|
|
|
|
|
if (is_ajax ()) {
|
|
|
|
}
|
|
|
|
|
|
|
|
echo '<form action="index.php?sec=gsetup&sec2=godmode/setup/gis_step_2" method="post">';
|
|
|
|
|
|
|
|
switch ($action) {
|
|
|
|
case 'create_connection_map':
|
|
|
|
echo "<h2>".__('Pandora Setup')." » ";
|
|
|
|
echo __('Create new map connection')."</h2>";
|
|
|
|
$mapConnection_name = '';
|
|
|
|
$mapConnection_group = '';
|
2010-03-01 11:24:19 +01:00
|
|
|
$mapConnection_numLevelsZoom = '19';
|
|
|
|
$mapConnection_defaultZoom = '16';
|
2010-01-26 11:13:44 +01:00
|
|
|
$mapConnection_type = 0;
|
|
|
|
$mapConnection_defaultLatitude = '40.42056';
|
|
|
|
$mapConnection_defaultLongitude = '-3.708187';
|
|
|
|
$mapConnection_defaultAltitude = '0';
|
|
|
|
$mapConnection_centerLatitude = '40.42056';
|
|
|
|
$mapConnection_centerLongitude = '-3.708187';
|
|
|
|
$mapConnection_centerAltitude = '0';
|
|
|
|
$mapConnectionData = null;
|
|
|
|
|
|
|
|
print_input_hidden('action', 'save_map_connection');
|
|
|
|
break;
|
|
|
|
case 'edit_connection_map':
|
|
|
|
echo "<h2>".__('Pandora Setup')." » ";
|
|
|
|
echo __('Edit map connection')."</h2>";
|
|
|
|
|
|
|
|
$idConnectionMap = get_parameter('id_connection_map');
|
|
|
|
$mapConnection = get_db_row_sql('SELECT * FROM tgis_map_connection WHERE id_tmap_connection = ' . $idConnectionMap);
|
|
|
|
|
|
|
|
$mapConnection_name = $mapConnection['conection_name'];
|
|
|
|
$mapConnection_group = $mapConnection['group_id'];
|
|
|
|
$mapConnection_numLevelsZoom = $mapConnection['num_zoom_levels'];
|
|
|
|
$mapConnection_defaultZoom = $mapConnection['default_zoom_level'];
|
|
|
|
$mapConnection_type = $mapConnection['connection_type'];
|
|
|
|
$mapConnection_defaultLatitude = $mapConnection['default_latitude'];
|
|
|
|
$mapConnection_defaultLongitude = $mapConnection['default_longitude'];
|
|
|
|
$mapConnection_defaultAltitude = $mapConnection['default_altitude'];
|
|
|
|
$mapConnection_centerLatitude = $mapConnection['initial_latitude'];
|
|
|
|
$mapConnection_centerLongitude = $mapConnection['initial_longitude'];
|
|
|
|
$mapConnection_centerAltitude = $mapConnection['initial_altitude'];
|
|
|
|
$mapConnectionData = json_decode($mapConnection['conection_data'], true);
|
|
|
|
|
|
|
|
print_input_hidden('id_connection_map', $idConnectionMap);
|
|
|
|
print_input_hidden('action', 'save_edit_map_connection');
|
|
|
|
break;
|
|
|
|
case 'save_map_connection':
|
|
|
|
case 'save_edit_map_connection':
|
|
|
|
$mapConnection_name = get_parameter('name');
|
|
|
|
$mapConnection_group = get_parameter('group');
|
|
|
|
$mapConnection_numLevelsZoom = get_parameter('num_levels_zoom');
|
|
|
|
$mapConnection_defaultZoom = get_parameter('initial_zoom');
|
|
|
|
$mapConnection_type = get_parameter('type');
|
|
|
|
$mapConnection_defaultLatitude = get_parameter('default_latitude');
|
|
|
|
$mapConnection_defaultLongitude = get_parameter('default_longitude');
|
|
|
|
$mapConnection_defaultAltitude = get_parameter('default_altitude');
|
|
|
|
$mapConnection_centerLatitude = get_parameter('center_latitude');
|
|
|
|
$mapConnection_centerLongitude = get_parameter('center_longitude');
|
|
|
|
$mapConnection_centerAltitude = get_parameter('center_altitude');
|
|
|
|
|
|
|
|
$idConnectionMap = get_parameter('id_connection_map', null);
|
|
|
|
|
|
|
|
switch ($mapConnection_type) {
|
|
|
|
case 'OSM':
|
|
|
|
$mapConnection_OSM_url = get_parameter('url');
|
|
|
|
$mapConnectionData = array('type' => 'OSM',
|
|
|
|
'url' => $mapConnection_OSM_url);
|
|
|
|
break;
|
2010-02-24 13:01:23 +01:00
|
|
|
case 'Gmap':
|
|
|
|
$gmap_type= get_parameter('gmap_type');
|
2010-02-25 12:30:56 +01:00
|
|
|
$gmap_key= get_parameter('gmap_key');
|
|
|
|
$mapConnectionData = array('type' => 'Gmap',
|
|
|
|
'gmap_type' => $gmap_type,
|
|
|
|
'gmap_key' => $gmap_key);
|
2010-02-24 13:01:23 +01:00
|
|
|
break;
|
|
|
|
case 'Static_Image':
|
|
|
|
$mapConnection_Image_url= get_parameter('url');
|
|
|
|
$bb_left= get_parameter('bb_left');
|
|
|
|
$bb_right= get_parameter('bb_right');
|
|
|
|
$bb_bottom= get_parameter('bb_bottom');
|
|
|
|
$bb_top= get_parameter('bb_top');
|
|
|
|
$image_height= get_parameter('image_height');
|
|
|
|
$image_width= get_parameter('image_width');
|
|
|
|
$mapConnectionData = array('type' => 'Static_Image',
|
|
|
|
'url' => $mapConnection_Image_url,
|
|
|
|
'bb_left' => $bb_left,
|
|
|
|
'bb_right' => $bb_right,
|
|
|
|
'bb_top' => $bb_top,
|
|
|
|
'bb_bottom' => $bb_bottom,
|
|
|
|
'image_width' => $image_width,
|
|
|
|
'image_height' => $image_height
|
|
|
|
);
|
2010-02-23 15:47:41 +01:00
|
|
|
break;
|
2010-01-26 11:13:44 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
//TODO VALIDATE PARAMETERS
|
|
|
|
|
|
|
|
saveMapConnection($mapConnection_name, $mapConnection_group,
|
|
|
|
$mapConnection_numLevelsZoom, $mapConnection_defaultZoom,
|
|
|
|
$mapConnection_defaultLatitude, $mapConnection_defaultLongitude,
|
|
|
|
$mapConnection_defaultAltitude, $mapConnection_centerLatitude,
|
|
|
|
$mapConnection_centerLongitude, $mapConnection_centerAltitude,
|
|
|
|
$mapConnectionData, $idConnectionMap);
|
|
|
|
|
|
|
|
require_once('gis.php');
|
|
|
|
return;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
|
|
$table->width = '90%';
|
|
|
|
|
|
|
|
$table->data = array();
|
2010-02-23 15:47:41 +01:00
|
|
|
$table->data[0][0] = __('Connection Name') .print_help_tip (__('Descriptive name for the connection'), true). ":";
|
2010-01-26 11:13:44 +01:00
|
|
|
$table->data[0][1] = print_input_text ('name', $mapConnection_name, '', 30, 60, true);
|
|
|
|
|
2010-02-23 15:47:41 +01:00
|
|
|
$table->data[1][0] = __("Group") .print_help_tip (__('Group that owns the connection'), true) . ":";
|
2010-01-26 11:13:44 +01:00
|
|
|
$table->data[1][1] = print_select_from_sql('SELECT id_grupo, nombre FROM tgrupo', 'group', $mapConnection_group, '', '', '0', true);
|
|
|
|
|
2010-02-23 15:47:41 +01:00
|
|
|
$table->data[2][0] = __('Number of zoom levels') . ":";
|
2010-01-26 11:13:44 +01:00
|
|
|
$table->data[2][1] = print_input_text ('num_levels_zoom', $mapConnection_numLevelsZoom, '', 4, 10, true);
|
|
|
|
|
|
|
|
|
2010-02-23 15:47:41 +01:00
|
|
|
$table->data[3][0] = __('Default zoom level') .print_help_tip (__('Zoom level used when the map is opened'), true). ":";
|
2010-01-26 11:13:44 +01:00
|
|
|
$table->data[3][1] = print_input_text ('initial_zoom', $mapConnection_defaultZoom, '', 4, 10, true);
|
|
|
|
|
|
|
|
echo "<h3>" . __('Basic configuration') . "</h3>";
|
|
|
|
print_table($table);
|
|
|
|
|
|
|
|
$table->width = '60%';
|
|
|
|
$table->data = array();
|
2010-02-23 15:47:41 +01:00
|
|
|
$types[0] = __('Please select the connection type');
|
2010-01-26 11:13:44 +01:00
|
|
|
$types["OSM"] = __('Open Street Maps');
|
2010-02-24 13:01:23 +01:00
|
|
|
$types["Gmap"] = __('Google Maps');
|
|
|
|
$types["Static_Image"] = __('Static Image');
|
2010-01-26 11:13:44 +01:00
|
|
|
$table->data[0][0] = __('Type') . ":";
|
|
|
|
$table->data[0][1] = print_select($types, 'sel_type', $mapConnection_type, "selMapConnectionType();", '', 0, true);
|
|
|
|
|
2010-02-23 15:47:41 +01:00
|
|
|
echo "<h3>" . __('Map connection type') . "</h3>";
|
2010-01-26 11:13:44 +01:00
|
|
|
print_table ($table);
|
|
|
|
|
|
|
|
$optionsConnectionTypeTable = '';
|
|
|
|
$mapConnectionDataUrl = '';
|
2010-02-24 14:42:01 +01:00
|
|
|
$gmap_type = '';
|
2010-03-01 21:42:49 +01:00
|
|
|
$gmap_key= '';
|
2010-02-24 14:42:01 +01:00
|
|
|
$bb_left = '';
|
|
|
|
$bb_right = '';
|
|
|
|
$bb_bottom = '';
|
|
|
|
$bb_top = '';
|
|
|
|
$image_width = '';
|
|
|
|
$image_height = '';
|
2010-01-26 11:13:44 +01:00
|
|
|
if ($mapConnectionData != null) {
|
|
|
|
switch ($mapConnection_type) {
|
|
|
|
case 'OSM':
|
|
|
|
$mapConnectionDataUrl = $mapConnectionData['url'];
|
|
|
|
break;
|
2010-02-24 13:01:23 +01:00
|
|
|
case 'Gmap':
|
|
|
|
$gmap_type = $mapConnectionData['gmap_type'];
|
2010-02-25 12:30:56 +01:00
|
|
|
$gmap_key = $mapConnectionData['gmap_key'];
|
2010-02-24 13:01:23 +01:00
|
|
|
break;
|
|
|
|
case 'Static_Image':
|
2010-02-23 15:47:41 +01:00
|
|
|
$mapConnectionDataUrl = $mapConnectionData['url'];
|
2010-02-24 13:01:23 +01:00
|
|
|
$bb_left= $mapConnectionData['bb_left'];
|
|
|
|
$bb_right= $mapConnectionData['bb_right'];
|
|
|
|
$bb_bottom= $mapConnectionData['bb_bottom'];
|
|
|
|
$bb_top= $mapConnectionData['bb_top'];
|
|
|
|
$image_width= $mapConnectionData['image_width'];
|
|
|
|
$image_height= $mapConnectionData['image_height'];
|
2010-02-23 15:47:41 +01:00
|
|
|
break;
|
2010-01-26 11:13:44 +01:00
|
|
|
}
|
|
|
|
}
|
2010-02-23 15:47:41 +01:00
|
|
|
// Open Street Map Connection
|
2010-01-26 11:13:44 +01:00
|
|
|
$optionsConnectionOSMTable = '<table class="databox" border="0" cellpadding="4" cellspacing="4" width="50%">' .
|
|
|
|
'<tr class="row_0">' .
|
2010-02-24 13:01:23 +01:00
|
|
|
'<td>' . __("Tile Server URL") . ':</td>' .
|
2010-01-26 11:13:44 +01:00
|
|
|
'<td><input id="type" type="hidden" name="type" value="OSM" />' . print_input_text ('url', $mapConnectionDataUrl, '', 45, 90, true) . '</td>' .
|
|
|
|
'</tr>' .
|
|
|
|
'</table>';
|
|
|
|
|
2010-02-24 13:01:23 +01:00
|
|
|
// Google Maps Connection
|
2010-03-02 13:10:15 +01:00
|
|
|
$gmaps_types["G_PHYSICAL_MAP"] = __('Google Physical');
|
|
|
|
$gmaps_types["G_HYBRID_MAP"] = __('Google Hybrid');
|
|
|
|
$gmaps_types["G_SATELITE_MAP"] = __('Google Satelite');
|
2010-02-25 12:30:56 +01:00
|
|
|
// TODO: Use label tags for the forms.
|
|
|
|
$optionsConnectionGmapTable = '<table class="databox" border="0" cellpadding="4" cellspacing="4" width="90%">' .
|
2010-02-23 15:47:41 +01:00
|
|
|
'<tr class="row_0">' .
|
2010-02-24 13:01:23 +01:00
|
|
|
'<td>' . __("Google Map Type") . ':</td>' .
|
|
|
|
'<td><input id="type" type="hidden" name="type" value="Gmap" />'.trim(print_select($gmaps_types,'gmap_type', $gmap_type, "", '', 0, true)) . '</td>' .
|
|
|
|
'</tr>' .
|
2010-02-25 12:30:56 +01:00
|
|
|
'<tr class="row_2">' .
|
|
|
|
'<td>' . __("Google Maps Key") . ':</td>' .
|
|
|
|
'</tr>' .
|
|
|
|
'<tr class="row_3">' .
|
|
|
|
'<td colspan="2">' . print_input_text ('gmap_key', $gmap_key, '', 90, 128, true) . '</td>' .
|
|
|
|
'</tr>' .
|
2010-02-24 13:01:23 +01:00
|
|
|
'</table>';
|
|
|
|
// Image Map Connection
|
|
|
|
$optionsConnectionImageTable = '<table class="databox" border="0" cellpadding="4" cellspacing="4" width="50%">' .
|
|
|
|
'<tr class="row_0">' .
|
|
|
|
'<td>' . __("Image URL") . ':</td>' .
|
|
|
|
'<td colspan="3"><input id="type" type="hidden" name="type" value="Static_Image" />' . print_input_text ('url', $mapConnectionDataUrl, '', 45, 90, true) . '</td>' .
|
|
|
|
'</tr>' .
|
|
|
|
'<tr class="row_1">' .
|
|
|
|
'<td colspan="4"><strong>' . __("Corners of the area of the image") . ':</strong></td>' .
|
|
|
|
'</tr>' .
|
|
|
|
'<tr class="row_2">' .
|
|
|
|
'<td>' . __("Left") . ':</td>' .
|
|
|
|
'<td>'. print_input_text ('bb_left', $bb_left, '', 25, 25, true) . '</td>' .
|
|
|
|
'<td>' . __("Bottom") . ':</td>' .
|
|
|
|
'<td>'. print_input_text ('bb_bottom', $bb_bottom, '',25 , 25, true) . '</td>' .
|
|
|
|
'</tr>' .
|
|
|
|
'<tr class="row_3">' .
|
|
|
|
'<td>' . __("Right") . ':</td>' .
|
|
|
|
'<td>'. print_input_text ('bb_right', $bb_right, '', 25, 25, true) . '</td>' .
|
|
|
|
'<td>' . __("Top") . ':</td>' .
|
|
|
|
'<td>'. print_input_text ('bb_top', $bb_top, '', 25, 25, true) . '</td>' .
|
|
|
|
'</tr>' .
|
|
|
|
'<tr class="row_4">' .
|
|
|
|
'<td colspan="4"><strong>' . __("Image Size") . ':</strong></td>' .
|
|
|
|
'</tr>' .
|
|
|
|
'<tr class="row_5">' .
|
|
|
|
'<td>' . __("Width") . ':</td>' .
|
|
|
|
'<td>'. print_input_text ('image_width', $image_width, '', 25, 25, true) . '</td>' .
|
|
|
|
'<td>' . __("Height") . ':</td>' .
|
|
|
|
'<td>'. print_input_text ('image_height', $image_height, '', 25, 25, true) . '</td>' .
|
2010-02-23 15:47:41 +01:00
|
|
|
'</tr>' .
|
|
|
|
'</table>';
|
2010-01-26 11:13:44 +01:00
|
|
|
if ($mapConnectionData != null) {
|
|
|
|
switch ($mapConnection_type) {
|
|
|
|
case 'OSM':
|
|
|
|
$optionsConnectionTypeTable = $optionsConnectionOSMTable;
|
|
|
|
break;
|
2010-02-24 13:01:23 +01:00
|
|
|
case 'Gmap':
|
|
|
|
$optionsConnectionTypeTable = $optionsConnectionGmapTable;
|
|
|
|
break;
|
|
|
|
case 'Static_Image':
|
|
|
|
$optionsConnectionTypeTable = $optionsConnectionImageTable;
|
2010-02-23 15:47:41 +01:00
|
|
|
break;
|
2010-01-26 11:13:44 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
echo "<div id='form_map_connection_type'>" . $optionsConnectionTypeTable . "</div>";
|
|
|
|
|
2010-02-23 15:47:41 +01:00
|
|
|
echo "<h3>" . __('Preview to select the center of the map and the default position of an agent without gis data') . "</h3>";
|
|
|
|
print_button(__("Load preview map"),'button_refresh', false, 'refreshMapView();', 'class="sub"');
|
2010-02-15 12:00:51 +01:00
|
|
|
echo "<br /><br />";
|
2010-02-09 18:06:25 +01:00
|
|
|
echo "<div id='map' style='width: 300px; height: 300px; border: 1px solid black; float: left'></div>";
|
2010-01-26 11:13:44 +01:00
|
|
|
|
2010-02-09 18:06:25 +01:00
|
|
|
$table->width = '60%';
|
2010-01-26 11:13:44 +01:00
|
|
|
$table->data = array();
|
|
|
|
|
2010-02-09 18:06:25 +01:00
|
|
|
//$table->colspan[0][3] = 3;
|
|
|
|
$table->data[0][0] = '';
|
2010-02-23 15:47:41 +01:00
|
|
|
$table->data[0][1] = __('Map Center').print_help_tip (__('Position to center the map when the map is opened'), true) ;
|
2010-02-09 18:06:25 +01:00
|
|
|
$table->data[0][2] = __("Default position for agents without GIS data");
|
2010-01-26 11:13:44 +01:00
|
|
|
|
2010-02-23 15:47:41 +01:00
|
|
|
$table->data[1][0] = __('Change in the map'). print_help_tip (__('This selects what to change by clicking on the map'), true);
|
2010-02-09 18:06:25 +01:00
|
|
|
$table->data[1][1] = print_radio_button_extended('radio_button', 1, '', 1, false, "changeSetManualPosition(true, false)", '', true);
|
|
|
|
$table->data[1][2] = print_radio_button_extended('radio_button', 2, '', 0, false, "changeSetManualPosition(false, true)", '', true);
|
2010-01-26 11:13:44 +01:00
|
|
|
|
2010-02-09 18:06:25 +01:00
|
|
|
$table->data[2][0] = __('Latitude') . ":";
|
|
|
|
$table->data[2][1] = print_input_text ('center_latitude', $mapConnection_centerLatitude, '', 10, 10, true);
|
|
|
|
$table->data[2][2] = print_input_text ('default_latitude', $mapConnection_defaultLatitude, '', 10, 10, true);
|
2010-01-26 11:13:44 +01:00
|
|
|
|
2010-02-09 18:06:25 +01:00
|
|
|
$table->data[3][0] = __('Longitude') . ":";
|
|
|
|
$table->data[3][1] = print_input_text ('center_longitude', $mapConnection_centerLongitude, '', 10, 10, true);
|
|
|
|
$table->data[3][2] = print_input_text ('default_longitude', $mapConnection_defaultLongitude, '', 10, 10, true);
|
|
|
|
|
|
|
|
$table->data[4][0] = __('Altitude') . ":";
|
|
|
|
$table->data[4][1] = print_input_text ('center_altitude', $mapConnection_centerAltitude, '', 10, 10, true);
|
|
|
|
$table->data[4][2] = print_input_text ('default_altitude', $mapConnection_defaultAltitude, '', 10, 10, true);
|
2010-01-26 11:13:44 +01:00
|
|
|
print_table($table);
|
|
|
|
|
2010-02-09 18:06:25 +01:00
|
|
|
echo '<div class="action-buttons" style="clear: left; width: 90%; float: left;">';
|
2010-01-26 11:13:44 +01:00
|
|
|
print_submit_button (__('Save'), '', false, 'class="sub save"');
|
|
|
|
echo '</div>';
|
|
|
|
echo "</form>";
|
2010-03-02 16:13:04 +01:00
|
|
|
|
|
|
|
require_javascript_file('OpenLayers/OpenLayers');
|
2010-02-09 18:06:25 +01:00
|
|
|
require_javascript_file('openlayers.pandora');
|
|
|
|
?>
|
2010-01-26 11:13:44 +01:00
|
|
|
<script type="text/javascript">
|
2010-02-09 18:06:25 +01:00
|
|
|
var setCenter = true;
|
|
|
|
var centerPoint = null;
|
|
|
|
var setGISDefaultPosition = false;
|
|
|
|
var GISDefaultPositionPoint = null;
|
2010-01-26 11:13:44 +01:00
|
|
|
|
2010-02-09 18:06:25 +01:00
|
|
|
/**
|
|
|
|
* Set the item to change, the center point or the center default.
|
|
|
|
*
|
|
|
|
* @param boolean stCenter Set center point for changing.
|
|
|
|
* @param boolean stGISDefault Set GISDefault point for changing.
|
|
|
|
*
|
|
|
|
* @return None
|
|
|
|
*/
|
|
|
|
function changeSetManualPosition(stCenter, stGISDefault) {
|
|
|
|
setCenter = stCenter;
|
|
|
|
setGISDefaultPosition = stGISDefault;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* The callback function when click the map. And make or move the points.
|
|
|
|
*
|
|
|
|
* @param object e The object of openlayer, that it has the parammeters of click.
|
|
|
|
*
|
|
|
|
* @return None
|
|
|
|
*/
|
|
|
|
function changePoints(e) {
|
|
|
|
var lonlat = map.getLonLatFromViewPortPx(e.xy);
|
|
|
|
lonlat.transform(map.getProjectionObject(), map.displayProjection); //transform the lonlat in object proyection to "standar proyection"
|
|
|
|
|
|
|
|
if (setCenter) {
|
|
|
|
//Change the fields
|
|
|
|
center_latitude = $('input[name=center_latitude]').val(lonlat.lat);
|
|
|
|
center_longitude = $('input[name=center_longitude]').val(lonlat.lon);
|
|
|
|
|
|
|
|
if (centerPoint == null) {
|
2010-02-24 13:01:23 +01:00
|
|
|
centerPoint = js_addPointExtent('temp_layer', '<?php echo __('Center'); ?>', lonlat.lon, lonlat.lat, 'images/dot_green.png', 11, 11, 'center', '');
|
2010-02-09 18:06:25 +01:00
|
|
|
}
|
|
|
|
else {
|
|
|
|
//return to no-standar the proyection for to move
|
|
|
|
centerPoint.move(lonlat.transform(map.displayProjection, map.getProjectionObject()));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
if (setGISDefaultPosition) {
|
|
|
|
//Change the fields
|
|
|
|
center_latitude = $('input[name=default_latitude]').val(lonlat.lat);
|
|
|
|
center_longitude = $('input[name=default_longitude]').val(lonlat.lon);
|
|
|
|
|
|
|
|
if (GISDefaultPositionPoint == null) {
|
2010-02-24 13:01:23 +01:00
|
|
|
GISDefaultPositionPoint = js_addPointExtent('temp_layer', '<?php echo __('Default'); ?>', lonlat.lon, lonlat.lat, 'images/dot_red.png', 11, 11, 'default', '');
|
2010-02-09 18:06:25 +01:00
|
|
|
}
|
|
|
|
else {
|
|
|
|
//return to no-standar the proyection for to move
|
|
|
|
GISDefaultPositionPoint.move(lonlat.transform(map.displayProjection, map.getProjectionObject()));
|
|
|
|
}
|
2010-01-26 11:13:44 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2010-02-09 18:06:25 +01:00
|
|
|
/**
|
|
|
|
* Function to show and refresh the map. The function give the params for map of
|
|
|
|
* fields. And make two points, center and default.
|
|
|
|
*/
|
|
|
|
function refreshMapView() {
|
2010-03-02 16:13:04 +01:00
|
|
|
switch ($('#sel_type :selected').val()) {
|
|
|
|
case 'Gmap':
|
|
|
|
//TODO: Validate there is a key, and use it
|
|
|
|
gmap_key = $('input[name=gmap_key]').val();
|
|
|
|
var script = document.createElement("script");
|
|
|
|
script.type = "text/javascript";
|
|
|
|
script.src = 'http://www.google.com/jsapi?key='+gmap_key+'&callback=loadGoogleMap';
|
|
|
|
//script.src = 'http://www.google.com/jsapi?key=ABQIAAAAjpkAC9ePGem0lIq5XcMiuhT2yXp_ZAY8_ufC3CFXhHIE1NvwkxTS6gjckBmeABOGXIUiOiZObZESPg&callback=loadGoogleMap';
|
|
|
|
document.getElementsByTagName("head")[0].appendChild(script);
|
|
|
|
|
|
|
|
//TODO: paint the gif clock for waiting the request.
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
refreshMapViewSecondStep();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
2010-02-09 18:06:25 +01:00
|
|
|
}
|
2010-03-02 16:13:04 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Function to show and refresh the map. The function give the params for map of
|
|
|
|
* fields. And make two points, center and default.
|
|
|
|
*/
|
|
|
|
function refreshMapViewSecondStep() {
|
|
|
|
//Clear the previous map.
|
|
|
|
map = null;
|
|
|
|
$("#map").html('');
|
|
|
|
//Clear the points.
|
|
|
|
centerPoint = null;
|
|
|
|
GISDefaultPositionPoint = null;
|
|
|
|
|
|
|
|
//Change the text to button.
|
|
|
|
$("input[name=button_refresh]").val('<?php echo __("Refresh preview map");?>');
|
|
|
|
|
|
|
|
//Obtain data of map of fields.
|
|
|
|
inital_zoom = $('input[name=initial_zoom]').val();
|
|
|
|
num_levels_zoom =$('input[name=num_levels_zoom').val();
|
|
|
|
center_latitude = $('input[name=center_latitude]').val();
|
|
|
|
center_longitude = $('input[name=center_longitude]').val();
|
|
|
|
center_altitude = $('input[name=center_altitude]').val();
|
|
|
|
|
|
|
|
var objBaseLayers = Array();
|
|
|
|
objBaseLayers[0] = {};
|
|
|
|
objBaseLayers[0]['type'] = $('select[name=sel_type] :selected').val();
|
|
|
|
objBaseLayers[0]['name'] = $('input[name=name]').val();
|
|
|
|
objBaseLayers[0]['url'] = $('input[name=url]').val();
|
|
|
|
// type Gmap
|
|
|
|
objBaseLayers[0]['gmap_type'] = $('select[name=gmap_type] option:selected').val();
|
|
|
|
objBaseLayers[0]['gmap_key'] = $('input[name=gmap_key]').val();
|
|
|
|
// type Static Image
|
|
|
|
objBaseLayers[0]['bb_left'] = $('input[name=bb_left]').val();
|
|
|
|
objBaseLayers[0]['bb_right'] = $('input[name=bb_right]').val();
|
|
|
|
objBaseLayers[0]['bb_bottom'] = $('input[name=bb_bottom]').val();
|
|
|
|
objBaseLayers[0]['bb_top'] = $('input[name=bb_top]').val();
|
|
|
|
objBaseLayers[0]['image_width'] = $('input[name=image_width]').val();
|
|
|
|
objBaseLayers[0]['image_height'] = $('input[name=image_height]').val();
|
|
|
|
|
|
|
|
arrayControls = null;
|
|
|
|
arrayControls = Array('Navigation', 'PanZoom', 'MousePosition');
|
|
|
|
|
|
|
|
js_printMap('map', inital_zoom, num_levels_zoom, center_latitude, center_longitude, objBaseLayers, arrayControls);
|
|
|
|
|
|
|
|
layer = js_makeLayer('temp_layer', true, null);
|
|
|
|
|
|
|
|
centerPoint = js_addPointExtent('temp_layer', '<?php echo __('Center'); ?>', $('input[name=center_longitude]').val(), $('input[name=center_latitude]').val(), 'images/dot_green.png', 11, 11, 'center', '');
|
|
|
|
GISDefaultPositionPoint = js_addPointExtent('temp_layer', '<?php echo __('Default'); ?>', $('input[name=default_longitude]').val(), $('input[name=default_latitude]').val(), 'images/dot_red.png', 11, 11, 'default', '');
|
|
|
|
|
|
|
|
js_activateEvents(changePoints);
|
|
|
|
}
|
|
|
|
|
2010-03-01 21:42:49 +01:00
|
|
|
function validateGmapsParamtres () {
|
|
|
|
gmap_key = $('input[name=gmap_key]').val();
|
|
|
|
if (gmap_key == "") {
|
2010-03-02 16:13:04 +01:00
|
|
|
$('input[name=gmap_key]').css('background-color', 'red');
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
refreshMapViewSecondStep();
|
|
|
|
}
|
2010-03-01 21:42:49 +01:00
|
|
|
}
|
2010-03-02 16:13:04 +01:00
|
|
|
|
2010-03-01 21:42:49 +01:00
|
|
|
function loadGoogleMap() {
|
|
|
|
google.load("maps", "2", {"callback" : validateGmapsParamtres});
|
|
|
|
}
|
2010-02-09 18:06:25 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Dinamic write the fields in form when select a type of connection.
|
|
|
|
*/
|
2010-01-26 11:13:44 +01:00
|
|
|
function selMapConnectionType() {
|
2010-02-24 13:01:23 +01:00
|
|
|
$('#form_map_connection_type').fadeOut("normal");
|
2010-01-26 11:13:44 +01:00
|
|
|
switch ($('#sel_type :selected').val()) {
|
|
|
|
case 'OSM':
|
2010-02-24 13:01:23 +01:00
|
|
|
$('#form_map_connection_type').html('<?php echo $optionsConnectionOSMTable; ?>').hide();
|
|
|
|
break;
|
|
|
|
case 'Gmap':
|
2010-03-01 21:42:49 +01:00
|
|
|
// TODO: Validate there is a key, and use it
|
2010-02-24 13:01:23 +01:00
|
|
|
$('#form_map_connection_type').html('<?php echo $optionsConnectionGmapTable; ?>').hide();
|
|
|
|
break;
|
|
|
|
case 'Static_Image':
|
|
|
|
$('#form_map_connection_type').html('<?php echo $optionsConnectionImageTable; ?>').hide();
|
2010-01-26 11:13:44 +01:00
|
|
|
break;
|
|
|
|
default:
|
2010-02-24 13:01:23 +01:00
|
|
|
$('#form_map_connection_type').html('').hide();
|
2010-01-26 11:13:44 +01:00
|
|
|
break;
|
|
|
|
}
|
2010-02-24 13:01:23 +01:00
|
|
|
$('#form_map_connection_type').fadeIn("normal");
|
2010-01-26 11:13:44 +01:00
|
|
|
}
|
2010-02-23 15:47:41 +01:00
|
|
|
</script>
|