Clean up the combined javascript change and refactor out the

Gallery_View base class from Theme_View and Admin_View.

1) Move all the theme specific jquery stuff from gallery_theme::head()
and admin_head() into the theme files.  Use $theme->script() as
appropriate.

2) Get rid of the extra boolean on $theme->url() that we were using so
that we could call $theme->script($theme->url(...)) -- add
$theme->theme_script() instead (poorly named, but still clearer than
what we had before)

3) Fix the bug that combined scripts didn't work at all in the admin
theme.

4) Get rid of $theme->display() in favor of new View(...)
This commit is contained in:
Bharat Mediratta
2009-06-28 19:45:11 -07:00
parent 228962f0e8
commit c4f991bb7d
6 changed files with 128 additions and 97 deletions

View File

@@ -17,9 +17,7 @@
* 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_View_Core extends View {
private $theme_name = null;
class Admin_View_Core extends Gallery_View {
/**
* Attempts to load a view and pre-load view data.
*
@@ -46,15 +44,6 @@ class Admin_View_Core extends View {
$this->set_global("user", user::active());
}
public function url($path, $absolute_url=false) {
$arg = "themes/{$this->theme_name}/$path";
return $absolute_url ? url::abs_file($arg) : url::file($arg);
}
public function display($page_name, $view_class="View") {
return new $view_class($page_name);
}
public function admin_menu() {
$menu = Menu::factory("root");
gallery_menu::admin($menu, $this);
@@ -109,6 +98,10 @@ class Admin_View_Core extends View {
}
}
if ($function == "admin_head") {
array_unshift($blocks, $this->combine_script());
}
if (Session::instance()->get("debug")) {
if ($function != "admin_head") {
array_unshift(