From faa9e52da28dea21c90a6588a4aeaf0731b88857 Mon Sep 17 00:00:00 2001 From: rWatcher Date: Wed, 17 Mar 2010 20:05:30 -0400 Subject: [PATCH] Added admin option for selecting starting map type. --- modules/exif_gps/controllers/admin_exif_gps.php | 16 ++++++++++++++-- modules/exif_gps/controllers/exif_gps.php | 8 ++++++++ modules/exif_gps/views/exif_gps_map.html.php | 2 +- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/modules/exif_gps/controllers/admin_exif_gps.php b/modules/exif_gps/controllers/admin_exif_gps.php index ba5d7639..f0a056e5 100644 --- a/modules/exif_gps/controllers/admin_exif_gps.php +++ b/modules/exif_gps/controllers/admin_exif_gps.php @@ -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")); diff --git a/modules/exif_gps/controllers/exif_gps.php b/modules/exif_gps/controllers/exif_gps.php index ceb65e85..abe4d358 100644 --- a/modules/exif_gps/controllers/exif_gps.php +++ b/modules/exif_gps/controllers/exif_gps.php @@ -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"); diff --git a/modules/exif_gps/views/exif_gps_map.html.php b/modules/exif_gps/views/exif_gps_map.html.php index 749e2f35..e183fb76 100644 --- a/modules/exif_gps/views/exif_gps_map.html.php +++ b/modules/exif_gps/views/exif_gps_map.html.php @@ -7,7 +7,7 @@ var myOptions = { zoom: 1, center: latlng, - mapTypeId: google.maps.MapTypeId.ROADMAP + mapTypeId: google.maps.MapTypeId. }; 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.