public function choose($type, $theme_name) { access::verify_csrf(); $info = theme::get_info($theme_name); if ($type == "admin" && $info->admin) { module::set_var("gallery", "active_admin_theme", $theme_name); message::success(t("Successfully changed your admin theme to <b>%theme_name</b>", array("theme_name" => $info->name))); } else { if ($type == "site" && $info->site) { module::set_var("gallery", "active_site_theme", $theme_name); message::success(t("Successfully changed your Gallery theme to <b>%theme_name</b>", array("theme_name" => $info->name))); } } url::redirect("admin/themes"); }
/** * Attempts to load a view and pre-load view data. * * @throws Kohana_Exception if the requested view cannot be found * @param string $name view name * @param string $page_type page type: collection, item, or other * @param string $page_subtype page sub type: album, photo, tags, etc * @param string $theme_name view name * @return void */ public function __construct($name, $page_type, $page_subtype) { parent::__construct($name); $this->theme_name = module::get_var("gallery", "active_site_theme"); if (identity::active_user()->admin) { $theme_name = Input::instance()->get("theme"); if ($theme_name && file_exists(THEMEPATH . $theme_name) && strpos(realpath(THEMEPATH . $theme_name), THEMEPATH) == 0) { $this->theme_name = $theme_name; } } $this->item = null; $this->tag = null; $this->set_global(array("theme" => $this, "theme_info" => theme::get_info($this->theme_name), "user" => identity::active_user(), "page_type" => $page_type, "page_subtype" => $page_subtype, "page_title" => null)); if (module::get_var("gallery", "maintenance_mode", 0)) { if (identity::active_user()->admin) { message::warning(t("This site is currently in maintenance mode. Visit the <a href=\"%maintenance_url\">maintenance page</a>", array("maintenance_url" => url::site("admin/maintenance")))); } else { message::warning(t("This site is currently in maintenance mode.")); } } }