summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2008-11-25 02:17:53 +0000
committerBharat Mediratta <bharat@menalto.com>2008-11-25 02:17:53 +0000
commitdcf3693b3ebcb75436da7df5d2171891357703aa (patch)
tree9d67c2613072f974d3a6b6c39b82647b9a84773b /core
parent85bdb606bf56a71b4b02fa353129b6c2cfe2b527 (diff)
Add theme debugging. Activate it in the [info] tab in the
scaffolding, then browse around your Gallery3 to see where you can add visible elements via modules.
Diffstat (limited to 'core')
-rw-r--r--core/controllers/welcome.php4
-rw-r--r--core/libraries/Theme.php24
-rw-r--r--core/views/welcome.html.php11
3 files changed, 24 insertions, 15 deletions
diff --git a/core/controllers/welcome.php b/core/controllers/welcome.php
index 9f42c1c4..e4473f06 100644
--- a/core/controllers/welcome.php
+++ b/core/controllers/welcome.php
@@ -252,8 +252,8 @@ class Welcome_Controller extends Template_Controller {
url::redirect("welcome");
}
- public function profiler() {
- Session::instance()->set("use_profiler", $this->input->get("use_profiler", false));
+ public function session($key) {
+ Session::instance()->set($key, $this->input->get("value", false));
$this->auto_render = false;
url::redirect("welcome");
}
diff --git a/core/libraries/Theme.php b/core/libraries/Theme.php
index df657ad1..68c48587 100644
--- a/core/libraries/Theme.php
+++ b/core/libraries/Theme.php
@@ -62,7 +62,6 @@ class Theme_Core {
*/
public function __call($function, $args) {
switch ($function) {
- case "admin":
case "head":
case "page_top":
case "page_bottom":
@@ -80,23 +79,26 @@ class Theme_Core {
case "photo_top":
case "photo_blocks":
case "photo_bottom":
- if (empty($this->block_helpers[$function])) {
- foreach (module::get_list() as $module) {
- $helper_class = "{$module->name}_block";
- if (method_exists($helper_class, $function)) {
- $this->block_helpers[$function][] = $helper_class;
- }
- }
- }
+ // @todo: restrict access to this option
+ $debug = Session::instance()->get("debug", false);
$blocks = array();
- if (!empty($this->block_helpers[$function])) {
- foreach ($this->block_helpers[$function] as $helper_class) {
+ foreach (module::get_list() as $module) {
+ $helper_class = "{$module->name}_block";
+ if (method_exists($helper_class, $function)) {
$blocks[] = call_user_func_array(
array($helper_class, $function),
array_merge(array($this), $args));
}
}
+ if ($debug) {
+ if ($function != "head") {
+ array_unshift(
+ $blocks, "<div class=\"gAnnotatedThemeBlock gAnnotatedThemeBlock_$function\">" .
+ "<div class=\"title\">$function</div>");
+ $blocks[] = "</div>";
+ }
+ }
return implode("\n", $blocks);
default:
diff --git a/core/views/welcome.html.php b/core/views/welcome.html.php
index c9277efd..7b34927f 100644
--- a/core/views/welcome.html.php
+++ b/core/views/welcome.html.php
@@ -239,9 +239,16 @@
<? endif ?>
<li> Profiling:
<? if (Session::instance()->get("use_profiler", false)): ?>
- <b>on</b> <?= html::anchor("welcome/profiler?use_profiler=0", "off") ?>
+ <b>on</b> <?= html::anchor("welcome/session/profiler?value=0", "off") ?>
<? else: ?>
- <?= html::anchor("welcome/profiler?use_profiler=1", "on") ?> <b>off</b>
+ <?= html::anchor("welcome/session/profiler?value=1", "on") ?> <b>off</b>
+ <? endif ?>
+ </li>
+ <li> Debug:
+ <? if (Session::instance()->get("debug", false)): ?>
+ <b>on</b> <?= html::anchor("welcome/session/debug?value=0", "off") ?>
+ <? else: ?>
+ <?= html::anchor("welcome/session/debug?value=1", "on") ?> <b>off</b>
<? endif ?>
</li>
</ul>