function activate($themeid) { $theme = Themes::find($themeid); if ($theme->active) { return Redirect::to('themes/manage')->withMessage($this->notifyView(Lang::get('messages.no_change'), 'warning')); } else { $themes = Themes::all(); foreach ($themes as $atheme) { if ($atheme->id != $theme->id) { $atheme->active = 0; $atheme->save(); } else { Event::fire('backend.themes.activate', array($atheme)); $atheme->active = 1; $atheme->save(); } } } return Redirect::to('themes/manage')->withMessage($this->notifyView(Lang::get('messages.theme_activated'))); }
} Session::put('install.database', $database); return Response::redirect('metadata'); })); /* Metadata */ Route::get('metadata', array('before' => 'check', 'main' => function () { // check we have a database if (!Session::get('install.database')) { Notify::error('Please enter your database details'); return Response::redirect('database'); } // windows users may return a \ so we replace it with a / $vars['site_path'] = str_replace('\\', '/', dirname(dirname($_SERVER['SCRIPT_NAME']))); $vars['themes'] = Themes::all(); return Layout::create('metadata', $vars); })); Route::post('metadata', array('before' => 'check', 'main' => function () { $metadata = Input::get(array('site_name', 'site_description', 'site_path', 'theme', 'rewrite')); $validator = new Validator($metadata); $validator->check('site_name')->is_max(4, 'Please enter a site name'); $validator->check('site_description')->is_max(4, 'Please enter a site description'); $validator->check('site_path')->is_max(1, 'Please enter a site path'); $validator->check('theme')->is_max(1, 'Please select a site theme'); if ($errors = $validator->errors()) { Input::flash(); Notify::error($errors); return Response::redirect('metadata'); } Session::put('install.metadata', $metadata);
|-------------------------------------------------------------------------- | Application & Route Filters |-------------------------------------------------------------------------- | | Below you will find the "before" and "after" events for the application | which may be used to do any work before or after a request into your | application. Here you may also register your custom route filters. | */ App::before(function ($request) { Commoner::observe(); //change the hash so no malware uses it Config::set('cms.installation_hash', ''); $addonsNotInstalled = $addonsInstalled = $themesNotInstalled = $themesInstalled = array(); $addons = Addons::all(); $themes = Themes::all(); foreach ($addons as $addon) { if ($addon->installed == 1) { ClassLoader::addDirectories(array(public_path() . "/addons/{$addon->addon_name}/controllers", public_path() . "/addons/{$addon->addon_name}/models", public_path() . "/addons/{$addon->addon_name}/helpers")); } } foreach ($themes as $theme) { if ($theme->installed == 1) { $themesInstalled[] = $theme->theme_name; if ($theme->active == 1) { Config::set('cms.theme', $theme->theme_name); //include the functions file include_once public_path() . "/layouts/frontend/{$theme->theme_name}/func.php"; } } else { $themesNotInstalled[] = $theme->theme_name;