summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Almdal <tnalmdal@shaw.ca>2009-09-29 15:07:53 -0700
committerTim Almdal <tnalmdal@shaw.ca>2009-09-29 15:07:53 -0700
commit19cb27c9a4489c357c0e516c69ebcb218f8832c1 (patch)
tree41017d2e999e4d94adaa405334d29caebd8afa49
parent39a40e49a19f00baeeeefe375d67e915ccc7e09a (diff)
change the block_manager api so that the theme is passed into the get method. convert info to the new sidebar block approach
-rw-r--r--modules/gallery/helpers/block_manager.php4
-rw-r--r--modules/gallery/libraries/Theme_View.php3
-rw-r--r--modules/image_block/helpers/image_block_block.php2
-rw-r--r--modules/info/helpers/info_block.php39
-rw-r--r--modules/info/helpers/info_installer.php32
-rw-r--r--modules/info/helpers/info_theme.php10
-rw-r--r--modules/info/module.info2
7 files changed, 76 insertions, 16 deletions
diff --git a/modules/gallery/helpers/block_manager.php b/modules/gallery/helpers/block_manager.php
index c5320922..87563b32 100644
--- a/modules/gallery/helpers/block_manager.php
+++ b/modules/gallery/helpers/block_manager.php
@@ -60,12 +60,12 @@ class block_manager_Core {
return $blocks;
}
- static function get_html($location) {
+ static function get_html($location, $theme) {
$active = self::get_active($location);
$result = "";
foreach ($active as $id => $desc) {
if (method_exists("$desc[0]_block", "get")) {
- $block = call_user_func(array("$desc[0]_block", "get"), $desc[1]);
+ $block = call_user_func(array("$desc[0]_block", "get"), $desc[1], $theme);
$block->id = $id;
$result .= $block;
}
diff --git a/modules/gallery/libraries/Theme_View.php b/modules/gallery/libraries/Theme_View.php
index 493bca16..5a16236e 100644
--- a/modules/gallery/libraries/Theme_View.php
+++ b/modules/gallery/libraries/Theme_View.php
@@ -157,7 +157,7 @@ class Theme_View_Core extends Gallery_View {
* Print out the sidebar.
*/
public function sidebar_blocks() {
- return block_manager::get_html("site.sidebar");
+ return block_manager::get_html("site.sidebar", $this);
}
/**
@@ -183,7 +183,6 @@ class Theme_View_Core extends Gallery_View {
case "photo_top":
case "resize_bottom":
case "resize_top":
- case "sidebar_blocks":
case "sidebar_bottom":
case "sidebar_top":
case "thumb_bottom":
diff --git a/modules/image_block/helpers/image_block_block.php b/modules/image_block/helpers/image_block_block.php
index f7aefc43..261e5848 100644
--- a/modules/image_block/helpers/image_block_block.php
+++ b/modules/image_block/helpers/image_block_block.php
@@ -22,7 +22,7 @@ class image_block_block_Core {
return array("random_image" => t("Random Image"));
}
- static function get($block_id) {
+ static function get($block_id, $theme) {
$block = new Block();
switch ($block_id) {
case "random_image":
diff --git a/modules/info/helpers/info_block.php b/modules/info/helpers/info_block.php
new file mode 100644
index 00000000..558c32f1
--- /dev/null
+++ b/modules/info/helpers/info_block.php
@@ -0,0 +1,39 @@
+<?php defined("SYSPATH") or die("No direct script access.");
+/**
+ * Gallery - a web based photo album viewer and editor
+ * Copyright (C) 2000-2009 Bharat Mediratta
+ *
+ * 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; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+class info_block_Core {
+ static function get_site_list() {
+ return array("metadata" => t("Metadata"));
+ }
+
+ static function get($block_id, $theme) {
+ $block = new Block();
+ switch ($block_id) {
+ case "metadata":
+ if ($theme->item()) {
+ $block = new Block();
+ $block->css_id = "gMetadata";
+ $block->title = $theme->item()->is_album() ? t("Album Info") : t("Photo Info");
+ $block->content = new View("info_block.html");
+ }
+ break;
+ }
+ return $block;
+ }
+} \ No newline at end of file
diff --git a/modules/info/helpers/info_installer.php b/modules/info/helpers/info_installer.php
new file mode 100644
index 00000000..d77908d0
--- /dev/null
+++ b/modules/info/helpers/info_installer.php
@@ -0,0 +1,32 @@
+<?php defined("SYSPATH") or die("No direct script access.");
+/**
+ * Gallery - a web based photo album viewer and editor
+ * Copyright (C) 2000-2009 Bharat Mediratta
+ *
+ * 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; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+class info_installer {
+ static function install() {
+ block_manager::add("site.sidebar", "info", "metadata");
+ module::set_version("info", 2);
+ }
+
+ static function upgrade($version) {
+ if ($version == 1) {
+ block_manager::add("site.sidebar", "info", "metadata");
+ module::set_version("info", 2);
+ }
+ }
+}
diff --git a/modules/info/helpers/info_theme.php b/modules/info/helpers/info_theme.php
index 4bf894ad..8b8602a1 100644
--- a/modules/info/helpers/info_theme.php
+++ b/modules/info/helpers/info_theme.php
@@ -18,16 +18,6 @@
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
*/
class info_theme_Core {
- static function sidebar_blocks($theme) {
- if ($theme->item()) {
- $block = new Block();
- $block->css_id = "gMetadata";
- $block->title = $theme->item()->is_album() ? t("Album Info") : t("Photo Info");
- $block->content = new View("info_block.html");
- return $block;
- }
- }
-
static function thumb_info($theme, $item) {
$results = "";
if ($item->view_count) {
diff --git a/modules/info/module.info b/modules/info/module.info
index e352213c..5f84cbb9 100644
--- a/modules/info/module.info
+++ b/modules/info/module.info
@@ -1,3 +1,3 @@
name = "Info"
description = "Display extra information about photos and albums"
-version = 1
+version = 2