From 35a529cd86a453b8d46ef9933b12e95021926dba Mon Sep 17 00:00:00 2001 From: Bharat Mediratta Date: Tue, 13 Jan 2009 10:53:06 +0000 Subject: Change admin/themes to show both styles of themes side by side. This eliminates the menu, which is kind of clunky. While I'm at it, let's call the "regular" themes a "site theme" so we have "site" and "admin" themes. --- core/controllers/admin_themes.php | 39 +++--------------- core/helpers/core_installer.php | 4 +- core/libraries/Theme_View.php | 2 +- core/views/admin_themes.html.php | 82 +++++++++++++++++++++++-------------- themes/admin_default/css/screen.css | 67 +++++++++++++++++++++++------- themes/admin_default/theme.info | 2 +- themes/default/theme.info | 2 +- 7 files changed, 115 insertions(+), 83 deletions(-) diff --git a/core/controllers/admin_themes.php b/core/controllers/admin_themes.php index 6f2eeaf7..8d810bb7 100644 --- a/core/controllers/admin_themes.php +++ b/core/controllers/admin_themes.php @@ -19,43 +19,14 @@ */ class Admin_Themes_Controller extends Admin_Controller { public function index() { - $this->regular(); - } - - public function regular() { $view = new Admin_View("admin.html"); $view->content = new View("admin_themes.html"); - $view->content->menu = $this->_get_menu(); - $view->content->title = _("Regular Themes"); - $view->content->type = "regular"; - $view->content->active = module::get_var("core", "active_theme"); + $view->content->admin = module::get_var("core", "active_admin_theme"); + $view->content->site = module::get_var("core", "active_site_theme"); $view->content->themes = $this->_get_themes(); print $view; } - public function admin() { - $view = new Admin_View("admin.html"); - $view->content = new View("admin_themes.html"); - $view->content->menu = $this->_get_menu(); - $view->content->title = _("Admin Themes"); - $view->content->type = "admin"; - $view->content->active = module::get_var("core", "active_admin_theme"); - $view->content->themes = $this->_get_themes(); - print $view; - } - - private function _get_menu() { - return Menu::factory("root") - ->append(Menu::factory("link") - ->id("regular") - ->label(t("Regular Theme")) - ->url(url::site("admin/themes/regular"))) - ->append(Menu::factory("link") - ->id("admin") - ->label(t("Admin Theme")) - ->url(url::site("admin/themes/admin"))); - } - private function _get_themes() { $themes = array(); foreach (scandir(THEMEPATH) as $theme_name) { @@ -94,13 +65,13 @@ class Admin_Themes_Controller extends Admin_Controller { module::set_var("core", "active_admin_theme", $theme_name); message::success(t("Successfully changed your site theme to {{theme_name}}", array("theme_name" => $info->name))); - } else if ($type == "regular" && $info->regular) { - module::set_var("core", "active_theme", $theme_name); + } else if ($type == "site" && $info->site) { + module::set_var("core", "active_site_theme", $theme_name); message::success(t("Successfully changed your admin theme to {{theme_name}}", array("theme_name" => $info->name))); } - url::redirect("admin/themes/$type"); + url::redirect("admin/themes"); } public function edit_form($theme_name) { diff --git a/core/helpers/core_installer.php b/core/helpers/core_installer.php index c45c497c..20edd47d 100644 --- a/core/helpers/core_installer.php +++ b/core/helpers/core_installer.php @@ -190,7 +190,7 @@ class core_installer { $root->save(); access::add_item($root); - module::set_var("core", "active_theme", "default"); + module::set_var("core", "active_site_theme", "default"); module::set_var("core", "active_admin_theme", "admin_default"); module::set_var("core", "page_size", 9); module::set_var("core", "thumb_size", 200); @@ -224,7 +224,7 @@ class core_installer { "missing_graphics_toolkit"); } - // Instantiate default themes (regular and admin) + // Instantiate default themes (site and admin) foreach (array("default", "admin_default") as $theme_name) { $theme_info = new ArrayObject(parse_ini_file(THEMEPATH . $theme_name . "/theme.info"), ArrayObject::ARRAY_AS_PROPS); diff --git a/core/libraries/Theme_View.php b/core/libraries/Theme_View.php index 64023aa6..38e8e056 100644 --- a/core/libraries/Theme_View.php +++ b/core/libraries/Theme_View.php @@ -32,7 +32,7 @@ class Theme_View_Core extends View { public function __construct($name, $page_type) { parent::__construct($name); - $this->theme_name = module::get_var("core", "active_theme"); + $this->theme_name = module::get_var("core", "active_site_theme"); if (user::active()->admin) { $this->theme_name = Input::instance()->get("theme", $this->theme_name); } diff --git a/core/views/admin_themes.html.php b/core/views/admin_themes.html.php index 5e10a803..e9266831 100644 --- a/core/views/admin_themes.html.php +++ b/core/views/admin_themes.html.php @@ -1,50 +1,72 @@ +

-
- -
+

+ +

+ +
+

+
+ " + alt="name ?>" /> +

name ?>

+

+ description ?> +

+
-
-

-
-

+

+
+ $info): ?> + site) continue ?> + + +
+
+ +
+

+
+ " + alt="name ?>" /> +

name ?>

+

+ description ?> +

-
-

-

+

+
$info): ?> - $type) continue ?> - + admin) continue ?> + diff --git a/themes/admin_default/css/screen.css b/themes/admin_default/css/screen.css index 06ebc582..ce5f471e 100644 --- a/themes/admin_default/css/screen.css +++ b/themes/admin_default/css/screen.css @@ -107,26 +107,18 @@ margin-right: 1em; } -#gAdminThemes #gSelectedTheme img { - float: left; - margin-right: 1em; -} - -#gAdminThemes #gSelectedTheme div.gBlock, #gAdminGraphics #gSelectedToolkit div.gBlock { width: 700px; height: 140px; background: #cfc; } -#gAdminGraphics .gBlock, -#gAdminThemes .gBlock { +#gAdminGraphics .gBlock { background: #fff; padding: 1em; } -#gAdminGraphics #gAvailableToolkits .gBlock, -#gAdminThemes #gAvailableThemes .gBlock { +#gAdminGraphics #gAvailableToolkits .gBlock { clear: none; cursor: pointer; float: left; @@ -145,16 +137,63 @@ cursor: default !important; } -#gAdminGraphics #gAvailableToolkits .gBlock:hover, -#gAdminThemes #gAvailableThemes .gBlock:hover { +#gAdminGraphics #gAvailableToolkits .gBlock:hover { background: #eee; } -#gAdminGraphics a, -#gAdminThemes a { +#gAdminGraphics a { color: #333; } #gAdminGraphics #gAvailableToolkits .gBlock { cursor: pointer; } + + +#gAdminThemes #gAdminTheme, +#gAdminThemes #gSiteTheme { + width: 400px; + float: left; +} + +#gAdminThemes #gAdminTheme { + padding-left: 40px; +} + + +#gAdminThemes #gSelectedTheme img { + float: left; + margin-right: 1em; +} + +#gAdminThemes .selected { + background: #cfc !important; +} + +#gAdminThemes .gBlock { + width: 328px; + height: 140px; + background: #fff; + padding: 1em; + text-align: center; +} + +#gAdminThemes .gBlock { + clear: none; + cursor: pointer; + float: left; + text-align: center; + width: 328px; + height: 200px; +} + +#gAvailableSiteThemes .gBlock:hover, +#gAvailableAdminThemes .gBlock:hover { + background: #eee; +} + +#gAdminThemes a { + color: #333; + text-decoration: none; +} + diff --git a/themes/admin_default/theme.info b/themes/admin_default/theme.info index 59fe88f4..d21b0ff5 100644 --- a/themes/admin_default/theme.info +++ b/themes/admin_default/theme.info @@ -3,4 +3,4 @@ description = A crisp Site Administration theme with soft colors and drop down m version = 1 author = Gallery Team admin = 1 -regular = 0 +site = 0 diff --git a/themes/default/theme.info b/themes/default/theme.info index 30817e28..71e8a740 100644 --- a/themes/default/theme.info +++ b/themes/default/theme.info @@ -2,5 +2,5 @@ name = Gallery Default description = A crisp and distinctive theme that uses large fonts and icons for easy navigation and an enjoyable browsing experience. version = 1 author = Gallery Team -regular = 1 +site = 1 admin = 0 -- cgit v1.2.3