1
0

Added admin option for selecting starting map type.

This commit is contained in:
rWatcher 2010-03-18 08:05:30 +08:00 committed by Tim Almdal
parent de15c3f77b
commit ab76910135
3 changed files with 23 additions and 3 deletions

View File

@ -39,10 +39,11 @@ class Admin_EXIF_GPS_Controller extends Admin_Controller {
Kohana_Log::add("error",print_r($form,1));
// Save settings to Gallery's database.
module::set_var("exif_gps", "googlemap_api_key", $form->google_api_key->value);
module::set_var("exif_gps", "googlemap_api_key", $form->Global->google_api_key->value);
module::set_var("exif_gps", "sidebar_zoom", $form->Sidebar->sidebar_default_zoom->value);
module::set_var("exif_gps", "sidebar_mapformat", $form->Sidebar->sidebar_mapformat->value);
module::set_var("exif_gps", "sidebar_maptype", $form->Sidebar->sidebar_maptype->value);
module::set_var("exif_gps", "largemap_maptype", $form->LargeMap->largemap_maptype->value);
// Display a success message and redirect back to the TagsMap admin page.
message::success(t("Your settings have been saved."));
@ -62,7 +63,9 @@ class Admin_EXIF_GPS_Controller extends Admin_Controller {
array("id" => "g-exif-gps-adminForm"));
// Input box for the Maps API Key
$form->input("google_api_key")
$gps_global_group = $form->group("Global")
->label(t("Global Settings"));
$gps_global_group->input("google_api_key")
->label(t("Google Maps API Key"))
->value(module::get_var("exif_gps", "googlemap_api_key"))
->rules("required");
@ -84,6 +87,15 @@ class Admin_EXIF_GPS_Controller extends Admin_Controller {
t("Hybrid Map"), t("Physical Map")))
->selected(module::get_var("exif_gps", "sidebar_maptype"));
// Create a group for map album/user settings
$gps_large_map_group = $form->group("LargeMap")
->label(t("Map Album/User Settings"));
$gps_large_map_group->dropdown("largemap_maptype")
->label(t("Default Map Type"))
->options(array(t("Road Map"), t("Satellite Map"),
t("Hybrid Map"), t("Physical Map")))
->selected(module::get_var("exif_gps", "largemap_maptype"));
// Add a save button to the form.
$form->submit("SaveSettings")->value(t("Save"));

View File

@ -57,6 +57,14 @@ class EXIF_GPS_Controller extends Controller {
$template->content->title = t("Map of") . " " . $map_title;
}
// Figure out default map type.
$int_map_type = module::get_var("exif_gps", "largemap_maptype");
if ($int_map_type == 0) $map_type = "ROADMAP";
if ($int_map_type == 1) $map_type = "SATELLITE";
if ($int_map_type == 2) $map_type = "HYBRID";
if ($int_map_type == 3) $map_type = "TERRAIN";
$template->content->map_type = $map_type;
// Load in module preferences.
$template->content->items = $items;
$template->content->google_map_key = module::get_var("exif_gps", "googlemap_api_key");

View File

@ -7,7 +7,7 @@
var myOptions = {
zoom: 1,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
mapTypeId: google.maps.MapTypeId.<?=$map_type; ?>
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var glatlngbounds = new google.maps.LatLngBounds( ); // This is so we can auto center the map.