diff options
| author | Bharat Mediratta <bharat@menalto.com> | 2008-11-05 05:20:20 +0000 |
|---|---|---|
| committer | Bharat Mediratta <bharat@menalto.com> | 2008-11-05 05:20:20 +0000 |
| commit | b82332192a7420cce045612014ad6f54b02974c3 (patch) | |
| tree | 7fae26a41040c0f7af6caddbfacb8c8db6250502 /core/libraries | |
| parent | f7560a7e8b15abdd549e4c59bbb39c6416844d9e (diff) | |
The carousel block is now off into its own module. The
sidebar.html.php file loops over $theme->blocks() which in turn calls
carousel::block() which uses the Block object to create a standard
block UI. Hooray!
Diffstat (limited to 'core/libraries')
| -rw-r--r-- | core/libraries/Block.php | 32 | ||||
| -rw-r--r-- | core/libraries/Theme.php | 16 |
2 files changed, 46 insertions, 2 deletions
diff --git a/core/libraries/Block.php b/core/libraries/Block.php new file mode 100644 index 00000000..25a0689b --- /dev/null +++ b/core/libraries/Block.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-2008 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 Block_Core { + public $id = null; + public $title = null; + public $content = null; + + public function __toString() { + $v = new View("block.html"); + $v->id = $this->id; + $v->title = $this->title; + $v->content = $this->content; + return $v->__toString(); + } +} diff --git a/core/libraries/Theme.php b/core/libraries/Theme.php index 924e978c..04032b20 100644 --- a/core/libraries/Theme.php +++ b/core/libraries/Theme.php @@ -17,18 +17,30 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -class theme_Core { +class Theme_Core { private $theme_name = null; + private $template = null; - public function __construct($theme_name) { + public function __construct($theme_name, $template) { $this->theme_name = $theme_name; + $this->template = $template; } public function url($path) { return url::base() . "themes/{$this->theme_name}/$path"; } + public function item() { + return $this->template->item; + } + public function display($page_name, $view_class="View") { return new $view_class($page_name); } + + public function blocks() { + /** @todo: this needs to be made data-driven */ + $blocks = array('carousel' => carousel::block($this)); + return $blocks; + } } |
