summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2009-01-13 10:53:06 +0000
committerBharat Mediratta <bharat@menalto.com>2009-01-13 10:53:06 +0000
commit35a529cd86a453b8d46ef9933b12e95021926dba (patch)
tree33af0342ec3d69e475a425778ef736ca1ae53f51 /core
parent5f17ae4f02c22a42c4de53831c8c23d22c869820 (diff)
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.
Diffstat (limited to 'core')
-rw-r--r--core/controllers/admin_themes.php39
-rw-r--r--core/helpers/core_installer.php4
-rw-r--r--core/libraries/Theme_View.php2
-rw-r--r--core/views/admin_themes.html.php82
4 files changed, 60 insertions, 67 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 <b>{{theme_name}}</b>",
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 <b>{{theme_name}}</b>",
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 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<script type="text/javascript">
- var load_url = '<?= url::site("admin/themes/__TYPE__") ?>';
- var load = function(type) {
- $("#gThemePane").load(load_url.replace('__TYPE__', type));
- }
-
var select_url = "<?= url::site("admin/themes/choose") ?>";
select = function(type, id) {
$.post(select_url, {"type": type, "id": id, "csrf": '<?= access::csrf_token() ?>'},
function() { load(type) });
}
</script>
+
<div id="gAdminThemes">
<h1> <?= t("Theme Administration") ?> </h1>
- <div id="gThemeTabs">
- <?= $menu ?>
- </div>
+ <p>
+ <?= t("Gallery allows you to choose a theme for your site, as well as a theme for the administration interface. Click a theme to preview and activate it.") ?>
+ </p>
+
+ <div id="gSiteTheme">
+ <h2> <?= t("Site theme") ?> </h2>
+ <div class="gBlock selected">
+ <img src="<?= url::file("themes/{$site}/thumbnail.png") ?>"
+ alt="<?= $themes[$active]->name ?>" />
+ <h3> <?= $themes[$site]->name ?> </h3>
+ <p>
+ <?= $themes[$site]->description ?>
+ </p>
+ </div>
- <div id="gThemePane">
- <h1> <?= $title ?> </h1>
- <div id="gSelectedTheme">
- <h2> <?= t("Selected theme") ?> </h2>
+ <h2> <?= t("Available site themes") ?> </h2>
+ <div id="gAvailableSiteThemes">
+ <? foreach ($themes as $id => $info): ?>
+ <? if (!$info->site) continue ?>
+ <? if ($id == $site) continue ?>
<div class="gBlock">
- <img src="<?= url::file("themes/{$active}/thumbnail.png") ?>"
- alt="<?= $themes[$active]->name ?>" />
- <h3> <?= $themes[$active]->name ?> </h3>
- <p>
- <?= $themes[$active]->description ?>
- </p>
+ <a href="<?= url::site("admin/themes/preview/site/$id") ?>" class="gDialogLink" title="<?= t("Theme Preview: {{theme_name}}", array("theme_name" => $info->name)) ?>">
+ <img src="<?= url::file("themes/{$id}/thumbnail.png") ?>"
+ alt="<?= $info->name ?>" />
+ <h3> <?= $info->name ?> </h3>
+ <p>
+ <?= $info->description ?>
+ </p>
+ </a>
</div>
+ <? endforeach ?>
+ </div>
+ </div>
+
+ <div id="gAdminTheme">
+ <h2> <?= t("Admin theme") ?> </h2>
+ <div class="gBlock selected">
+ <img src="<?= url::file("themes/{$admin}/thumbnail.png") ?>"
+ alt="<?= $themes[$admin]->name ?>" />
+ <h3> <?= $themes[$admin]->name ?> </h3>
+ <p>
+ <?= $themes[$admin]->description ?>
+ </p>
</div>
- <div id="gAvailableThemes">
- <h2> <?= t("Available themes") ?> </h2>
- <p><?= t("Change the look of your Gallery with one of the following available themes. Click to preview and activate.") ?></p>
+ <h2> <?= t("Available admin themes") ?> </h2>
+ <div id="gAvailableAdminThemes">
<? foreach ($themes as $id => $info): ?>
- <? if (!$info->$type) continue ?>
- <? if ($id == $active) continue ?>
+ <? if (!$info->admin) continue ?>
+ <? if ($id == $admin) continue ?>
<div class="gBlock">
- <a href="<?= url::site("admin/themes/preview/$type/$id") ?>" class="gDialogLink" title="<?= t("Theme Preview: {{theme_name}}", array("theme_name" => $info->name)) ?>">
- <h3> <?= $info->name ?> </h3>
- <img src="<?= url::file("themes/{$id}/thumbnail.png") ?>"
- alt="<?= $info->name ?>" />
- <p>
- <?= $info->description ?>
- </p>
+ <a href="<?= url::site("admin/themes/preview/admin/$id") ?>" class="gDialogLink" title="<?= t("Theme Preview: {{theme_name}}", array("theme_name" => $info->name)) ?>">
+ <img src="<?= url::file("themes/{$id}/thumbnail.png") ?>"
+ alt="<?= $info->name ?>" />
+ <h3> <?= $info->name ?> </h3>
+ <p>
+ <?= $info->description ?>
+ </p>
</a>
</div>
<? endforeach ?>