commit
83cde81cc4
|
@ -57,7 +57,7 @@ class Admin_Pages_Controller extends Admin_Controller {
|
|||
$page_id = Input::instance()->post("page_id");
|
||||
$page_name = urlencode(trim(Input::instance()->post("page_name")));
|
||||
$page_title = Input::instance()->post("page_title");
|
||||
$page_code = Input::instance()->post("page_code");
|
||||
$page_code = stripslashes($_REQUEST["page_code"]); // access var directly to get around xss filtering.
|
||||
$display_menu = Input::instance()->post("display_menu");
|
||||
|
||||
// If $page_id is set, update an existing page.
|
||||
|
@ -240,7 +240,7 @@ class Admin_Pages_Controller extends Admin_Controller {
|
|||
// Generate a form for editing an existing page. Reuse the overwrite form for as it's basically the same thing.
|
||||
return ($this->get_overwrite_page_form($existing_page->id, $existing_page->name, $existing_page->title, $existing_page->html_code, $existing_page->display_menu));
|
||||
}
|
||||
|
||||
|
||||
private function get_prefs_form() {
|
||||
// Generate a form for global preferences.
|
||||
$form = new Forge("admin/pages/saveprefs", "", "post",
|
||||
|
@ -250,12 +250,15 @@ class Admin_Pages_Controller extends Admin_Controller {
|
|||
$pages_group->checkbox("display_sidebar")
|
||||
->label(t("Hide sidebar on Pages?"))
|
||||
->checked(module::get_var("pages", "show_sidebar"));
|
||||
$pages_group->checkbox("disable_rich_editor")
|
||||
->label(t("Disable rich text editor?"))
|
||||
->checked(module::get_var("pages", "disable_rte"));
|
||||
$pages_group->submit("save_prefs")
|
||||
->value(t("Save"));
|
||||
|
||||
return $form;
|
||||
}
|
||||
|
||||
|
||||
public function saveprefs() {
|
||||
// Save a preferences to the database.
|
||||
|
||||
|
@ -263,6 +266,7 @@ class Admin_Pages_Controller extends Admin_Controller {
|
|||
|
||||
// Save form variables.
|
||||
module::set_var("pages", "show_sidebar", Input::instance()->post("display_sidebar"));
|
||||
module::set_var("pages", "disable_rte", Input::instance()->post("disable_rich_editor"));
|
||||
|
||||
// Display message and load main pages admin screen.
|
||||
message::success(t("Your settings have been saved."));
|
||||
|
|
|
@ -31,8 +31,15 @@ class Pages_Controller extends Controller {
|
|||
throw new Kohana_404_Exception();
|
||||
}
|
||||
|
||||
// Set up breadcrumbs.
|
||||
$breadcrumbs = array();
|
||||
$root = item::root();
|
||||
$breadcrumbs[] = Breadcrumb::instance($root->title, $root->url())->set_first();
|
||||
$breadcrumbs[] = Breadcrumb::instance(t($existing_page[0]->title), url::site("pages/show/{$page_name}"))->set_last();
|
||||
|
||||
// Display the page.
|
||||
$template = new Theme_View("page.html", "other", "Pages");
|
||||
$template->set_global(array("breadcrumbs" => $breadcrumbs));
|
||||
$template->page_title = t("Gallery :: ") . t($existing_page[0]->title);
|
||||
$template->content = new View("pages_display.html");
|
||||
$template->content->title = $existing_page[0]->title;
|
||||
|
|
|
@ -31,8 +31,12 @@ class pages_installer {
|
|||
UNIQUE KEY(`name`))
|
||||
DEFAULT CHARSET=utf8;");
|
||||
|
||||
// Set some initial values.
|
||||
module::set_var("pages", "show_sidebar", true);
|
||||
module::set_var("pages", "disable_rte", false);
|
||||
|
||||
// Set the module version number.
|
||||
module::set_version("pages", 2);
|
||||
module::set_version("pages", 3);
|
||||
}
|
||||
static function upgrade($version) {
|
||||
$db = Database::instance();
|
||||
|
@ -40,5 +44,9 @@ class pages_installer {
|
|||
$db->query("ALTER TABLE {static_pages} ADD COLUMN `display_menu` boolean default 0");
|
||||
module::set_version("pages", $version = 2);
|
||||
}
|
||||
if ($version == 2) {
|
||||
module::set_var("pages", "disable_rte", false);
|
||||
module::set_version("pages", $version = 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,8 +20,9 @@
|
|||
class pages_theme_Core {
|
||||
static function admin_head($theme) {
|
||||
// Load jHtmlArea js and css.
|
||||
return $theme->script("jHtmlArea-0.7.0.js") .
|
||||
$theme->css("jHtmlArea.css");
|
||||
if (module::get_var("pages", "disable_rte", false) == false) {
|
||||
return $theme->script("jHtmlArea-0.7.0.js") .
|
||||
$theme->css("jHtmlArea.css");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
name = "Pages"
|
||||
description = "Allows Gallery admins to create static pages."
|
||||
version = 2
|
||||
version = 3
|
||||
author_name = "rWatcher"
|
||||
author_url = "http://codex.gallery2.org/User:RWatcher"
|
||||
info_url = "http://codex.gallery2.org/Gallery3:Modules:Pages"
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
class Admin_TagsMap_Controller extends Admin_Controller {
|
||||
public function index() {
|
||||
// Generate a new admin page.
|
||||
|
@ -185,9 +184,8 @@ class Admin_TagsMap_Controller extends Admin_Controller {
|
|||
// Input box for the Maps API Key
|
||||
$googlemap_group = $form->group("GoogleMapsKey");
|
||||
$googlemap_group->input("google_api_key")
|
||||
->label(t("Google Maps API Key"))
|
||||
->value(module::get_var("tagsmap", "googlemap_api_key"))
|
||||
->rules("required");
|
||||
->label(t("Google APIs Console key (optional):"))
|
||||
->value(module::get_var("tagsmap", "googlemap_api_key"));
|
||||
|
||||
// Input boxes for the Maps starting location map type and zoom.
|
||||
$startingmap_group = $form->group("GoogleMapsPos");
|
||||
|
@ -212,6 +210,8 @@ class Admin_TagsMap_Controller extends Admin_Controller {
|
|||
"G_PHYSICAL_MAP" => "Physical",
|
||||
"G_SATELLITE_3D_MAP" => "Google Earth"))
|
||||
->selected(module::get_var("tagsmap", "googlemap_type"));
|
||||
$startingmap_group->checkbox("restrict_maps")->label(t("Restrict maps to registered users?"))
|
||||
->checked(module::get_var("tagsmap", "restrict_maps", false));
|
||||
|
||||
// Add a save button to the form.
|
||||
$form->submit("SaveSettings")->value(t("Save"));
|
||||
|
@ -234,6 +234,7 @@ class Admin_TagsMap_Controller extends Admin_Controller {
|
|||
module::set_var("tagsmap", "googlemap_longitude", $form->GoogleMapsPos->google_starting_longitude->value);
|
||||
module::set_var("tagsmap", "googlemap_zoom", $form->GoogleMapsPos->google_default_zoom->value);
|
||||
module::set_var("tagsmap", "googlemap_type", $form->GoogleMapsPos->google_default_type->value);
|
||||
module::set_var("tagsmap", "restrict_maps", $form->GoogleMapsPos->restrict_maps->value);
|
||||
|
||||
// Display a success message and redirect back to the TagsMap admin page.
|
||||
message::success(t("Your settings have been saved."));
|
||||
|
@ -247,4 +248,4 @@ class Admin_TagsMap_Controller extends Admin_Controller {
|
|||
$view->content->tags = ORM::factory("tag")->order_by("name", "ASC")->find_all();
|
||||
print $view;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,17 +20,22 @@
|
|||
class TagsMap_Controller extends Controller {
|
||||
public function googlemap($fullsize) {
|
||||
// Display all tags with GPS coordinates on a google map.
|
||||
|
||||
|
||||
// If the user can't view maps, throw a 404 error.
|
||||
if ((module::get_var("tagsmap", "restrict_maps") == true) && (identity::active_user()->guest)) {
|
||||
throw new Kohana_404_Exception();
|
||||
}
|
||||
|
||||
// Generate a list of GPS coordinates.
|
||||
$tagsGPS = ORM::factory("tags_gps")->find_all();
|
||||
|
||||
|
||||
// Set up and display the actual page.
|
||||
// If fullsize is true, allow the map to take up the entire browser window,
|
||||
// if not, then display the map in the gallery theme.
|
||||
if ($fullsize == true) {
|
||||
$view = new View("tagsmap_googlemap.html");
|
||||
$view->map_fullsize = true;
|
||||
|
||||
|
||||
// Load in module preferences.
|
||||
$view->tags_gps = $tagsGPS;
|
||||
$view->google_map_key = module::get_var("tagsmap", "googlemap_api_key");
|
||||
|
@ -38,21 +43,28 @@ class TagsMap_Controller extends Controller {
|
|||
$view->google_map_longitude = module::get_var("tagsmap", "googlemap_longitude");
|
||||
$view->google_map_zoom = module::get_var("tagsmap", "googlemap_zoom");
|
||||
$view->google_map_type = module::get_var("tagsmap", "googlemap_type");
|
||||
|
||||
|
||||
print $view;
|
||||
} else {
|
||||
$template = new Theme_View("page.html", "other", "TagsMap");
|
||||
// Set up breadcrumbs.
|
||||
$breadcrumbs = array();
|
||||
$root = item::root();
|
||||
$breadcrumbs[] = Breadcrumb::instance($root->title, $root->url())->set_first();
|
||||
$breadcrumbs[] = Breadcrumb::instance(t("Tag Map"), url::site("tagsmap/googlemap/"))->set_last();
|
||||
|
||||
$template = new Theme_View("page.html", "other", "tag");
|
||||
$template->page_title = t("Gallery :: Map");
|
||||
$template->set_global(array("breadcrumbs" => $breadcrumbs));
|
||||
$template->content = new View("tagsmap_googlemap.html");
|
||||
|
||||
// Load in module preferences.
|
||||
// Load in module preferences.
|
||||
$template->content->tags_gps = $tagsGPS;
|
||||
$template->content->google_map_key = module::get_var("tagsmap", "googlemap_api_key");
|
||||
$template->content->google_map_latitude = module::get_var("tagsmap", "googlemap_latitude");
|
||||
$template->content->google_map_longitude = module::get_var("tagsmap", "googlemap_longitude");
|
||||
$template->content->google_map_zoom = module::get_var("tagsmap", "googlemap_zoom");
|
||||
$template->content->google_map_type = module::get_var("tagsmap", "googlemap_type");
|
||||
|
||||
|
||||
print $template;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
#g-tagsmap-dialog {
|
||||
color: black;
|
||||
}
|
||||
#g-tagsmap-dialog a { color: blue !important; }
|
||||
#g-tagsmap-dialog a { color: blue !important; }
|
||||
|
|
|
@ -48,6 +48,10 @@ class tagsmap_event_Core {
|
|||
}
|
||||
|
||||
static function photo_menu($menu, $theme) {
|
||||
// Make sure the user can view maps before displaying one.
|
||||
if ((module::get_var("tagsmap", "restrict_maps") == true) && (identity::active_user()->guest)) {
|
||||
return;
|
||||
}
|
||||
$menu->append(Menu::factory("link")
|
||||
->id("tagsmap")
|
||||
->label(t("View Map"))
|
||||
|
@ -56,18 +60,38 @@ class tagsmap_event_Core {
|
|||
}
|
||||
|
||||
static function movie_menu($menu, $theme) {
|
||||
// Make sure the user can view maps before displaying one.
|
||||
if ((module::get_var("tagsmap", "restrict_maps") == true) && (identity::active_user()->guest)) {
|
||||
return;
|
||||
}
|
||||
$menu->append(Menu::factory("link")
|
||||
->id("tagsmap")
|
||||
->label(t("View Map"))
|
||||
->url(url::site("tagsmap/googlemap/"))
|
||||
->css_id("g-tagsmap-link"));
|
||||
}
|
||||
|
||||
|
||||
static function tag_menu($menu, $theme) {
|
||||
// Make sure the user can view maps before displaying one.
|
||||
if ((module::get_var("tagsmap", "restrict_maps") == true) && (identity::active_user()->guest)) {
|
||||
return;
|
||||
}
|
||||
$menu->append(Menu::factory("link")
|
||||
->id("tagsmap")
|
||||
->label(t("View Map"))
|
||||
->url(url::site("tagsmap/googlemap/"))
|
||||
->css_id("g-tagsmap-link"));
|
||||
}
|
||||
|
||||
static function album_menu($menu, $theme) {
|
||||
// Make sure the user can view maps before displaying one.
|
||||
if ((module::get_var("tagsmap", "restrict_maps") == true) && (identity::active_user()->guest)) {
|
||||
return;
|
||||
}
|
||||
$menu->append(Menu::factory("link")
|
||||
->id("tagsmap")
|
||||
->label(t("View Map"))
|
||||
->url(url::site("tagsmap/googlemap/"))
|
||||
->css_id("g-tagsmap-link"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -36,7 +36,15 @@ class tagsmap_installer {
|
|||
module::set_var("tagsmap", "googlemap_longitude", 134);
|
||||
module::set_var("tagsmap", "googlemap_zoom", 5);
|
||||
module::set_var("tagsmap", "googlemap_type", "G_NORMAL_MAP");
|
||||
module::set_version("tagsmap", 2);
|
||||
module::set_var("tagsmap", "restrict_maps", "0");
|
||||
module::set_version("tagsmap", 3);
|
||||
}
|
||||
|
||||
static function upgrade($version) {
|
||||
if ($version == 2) {
|
||||
module::set_var("tagsmap", "restrict_maps", "0");
|
||||
module::set_version("tagsmap", 3);
|
||||
}
|
||||
}
|
||||
|
||||
static function deactivate() {
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
class tagsmap_theme_Core {
|
||||
|
||||
static function head($theme) {
|
||||
return $theme->css("tagsmap_menu.css");
|
||||
}
|
||||
|
|
|
@ -18,4 +18,4 @@
|
|||
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
class Tags_GPS_Model extends ORM {
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
name = "TagsMap"
|
||||
description = "Assign GPS coordinates to existing tags and display them on a map."
|
||||
version = 2
|
||||
version = 3
|
||||
author_name = "rWatcher"
|
||||
author_url = "http://codex.gallery2.org/User:RWatcher"
|
||||
info_url = "http://codex.gallery2.org/Gallery3:Modules:tagsmap"
|
||||
|
|
|
@ -6,7 +6,8 @@
|
|||
<h3>
|
||||
<?= t("Google Maps Settings") ?>
|
||||
</h3>
|
||||
<br/><div>You may sign up for a Google Maps API key <a href="http://code.google.com/apis/maps/signup.html" target="_new">here</a>.</div><br/>
|
||||
<br/><div>
|
||||
<?=t("You may sign up for a Google APIs Console key"); ?> <a href="https://developers.google.com/maps/documentation/javascript/tutorial#api_key" target="_new">here</a>.</div><br/>
|
||||
<?= $googlemaps_form ?>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -6,4 +6,3 @@
|
|||
<a href="<?= url::site("admin/tagsmap") ?>">Cancel</a>
|
||||
<?= $tagsmapdelete_form ?>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -9,7 +9,13 @@
|
|||
</div>
|
||||
|
||||
|
||||
<script src="http://www.google.com/jsapi?key=<?= module::get_var("tagsmap", "googlemap_api_key") ?>" type="text/javascript"></script>
|
||||
<? if (isset($google_map_key) && ($google_map_key != "")) {
|
||||
print "<script src=\"http://www.google.com/jsapi?key=" . $google_map_key . "\" type=\"text/javascript\"></script>\n";
|
||||
} else {
|
||||
print "<script src=\"http://www.google.com/jsapi\" type=\"text/javascript\"></script>\n";
|
||||
}
|
||||
?>
|
||||
|
||||
<script type="text/javascript">
|
||||
google.load("maps", "2.160");
|
||||
var lat = $("input[name=gps_latitude]");
|
||||
|
@ -55,4 +61,3 @@
|
|||
|
||||
google.setOnLoadCallback(Gload);
|
||||
</script>
|
||||
|
||||
|
|
|
@ -9,7 +9,12 @@
|
|||
<body>
|
||||
<? } ?>
|
||||
|
||||
<script src="http://www.google.com/jsapi?key=<?=$google_map_key ?>" type="text/javascript"></script>
|
||||
<? if (isset($google_map_key) && ($google_map_key != "")) {
|
||||
print "<script src=\"http://www.google.com/jsapi?key=" . $google_map_key . "\" type=\"text/javascript\"></script>\n";
|
||||
} else {
|
||||
print "<script src=\"http://www.google.com/jsapi\" type=\"text/javascript\"></script>\n";
|
||||
}
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
google.load("maps", "2.160");
|
||||
|
||||
|
@ -64,8 +69,8 @@
|
|||
<div id="map_canvas" style="width: 100%; height: 100%"></div>
|
||||
</body></html>
|
||||
<? } else { ?>
|
||||
<div id="map_canvas" style="width: 600px; height: 480px"></div> <br/>
|
||||
<a href="<?= url::site("tagsmap/googlemap/fullsize/1")?>">
|
||||
<div id="map_canvas" style="width: 690px; height: 480px"></div> <br/>
|
||||
<center><a href="<?= url::site("tagsmap/googlemap/fullsize/1")?>">
|
||||
<?= t("View Fullsize")?>
|
||||
</a><br/><br/>
|
||||
</a></center><br/><br/>
|
||||
<? } ?>
|
||||
|
|
Reference in New Issue
Block a user