From 32818ab19a0b7c94ec27fe328afee0e312e17d94 Mon Sep 17 00:00:00 2001 From: Alexander Makarov Date: Wed, 26 Dec 2012 17:34:27 +0400 Subject: [PATCH] added getter and setter for application title to web Controller --- framework/web/Controller.php | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/framework/web/Controller.php b/framework/web/Controller.php index a6fb782..ca26731 100644 --- a/framework/web/Controller.php +++ b/framework/web/Controller.php @@ -22,6 +22,8 @@ use yii\base\HttpException; */ class Controller extends \yii\base\Controller { + private $_pageTitle; + /** * Returns the request parameters that will be used for action parameter binding. * Default implementation simply returns an empty array. @@ -45,4 +47,29 @@ class Controller extends \yii\base\Controller { throw new HttpException(400, \Yii::t('yii', 'Your request is invalid.')); } + + /** + * @return string the page title. Defaults to the controller name and the action name. + */ + public function getPageTitle() + { + if($this->_pageTitle !== null) { + return $this->_pageTitle; + } + else { + $name = ucfirst(basename($this->id)); + if($this->action!==null && strcasecmp($this->action->id,$this->defaultAction)) + return $this->_pageTitle=\Yii::$application->name.' - '.ucfirst($this->action->id).' '.$name; + else + return $this->_pageTitle=\Yii::$application->name.' - '.$name; + } + } + + /** + * @param string $value the page title. + */ + public function setPageTitle($value) + { + $this->_pageTitle = $value; + } } \ No newline at end of file