Created
July 10, 2015 18:44
-
-
Save alextalha/64f83c8d15e099e8bb1e to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <?php | |
| /** | |
| * Static content controller. | |
| * | |
| * This file will render views from views/pages/ | |
| * | |
| * PHP 5 | |
| * | |
| * CakePHP(tm) : Rapid Development Framework (http://cakephp.org) | |
| * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org) | |
| * | |
| * Licensed under The MIT License | |
| * For full copyright and license information, please see the LICENSE.txt | |
| * Redistributions of files must retain the above copyright notice. | |
| * | |
| * @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org) | |
| * @link http://cakephp.org CakePHP(tm) Project | |
| * @package app.Controller | |
| * @since CakePHP(tm) v 0.2.9 | |
| * @license http://www.opensource.org/licenses/mit-license.php MIT License | |
| */ | |
| namespace App\Controller; | |
| use App\Controller\AppController; | |
| /** | |
| * Static content controller | |
| * | |
| * Override this controller by placing a copy in controllers directory of an application | |
| * | |
| * @package app.Controller | |
| * @link http://book.cakephp.org/2.0/en/controllers/pages-controller.html | |
| */ | |
| class PagesController extends AppController { | |
| /** | |
| * This controller does not use a model | |
| * | |
| * @var array | |
| */ | |
| public $uses = array(); | |
| /** | |
| * Displays a view | |
| * | |
| * @param mixed What page to display | |
| * @return void | |
| * @throws NotFoundException When the view file could not be found | |
| * or MissingViewException in debug mode. | |
| */ | |
| public function display() { | |
| $path = func_get_args(); | |
| $count = count($path); | |
| if (!$count) { | |
| return $this->redirect('/'); | |
| } | |
| $page = $subpage = $title_for_layout = null; | |
| if (!empty($path[0])) { | |
| $page = $path[0]; | |
| } | |
| if (!empty($path[1])) { | |
| $subpage = $path[1]; | |
| } | |
| if (!empty($path[$count - 1])) { | |
| $title_for_layout = Inflector::humanize($path[$count - 1]); | |
| } | |
| $this->set(compact('page', 'subpage', 'title_for_layout')); | |
| try { | |
| $this->render(implode('/', $path)); | |
| } catch (MissingViewException $e) { | |
| if (Configure::read('debug')) { | |
| throw $e; | |
| } | |
| throw new NotFoundException(); | |
| } | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment