* @copyright Copyright (c) 2010 Christopher Han * @package GitPHP * @subpackage Controller */ class GitPHP_Controller_Tag extends GitPHP_ControllerBase { /** * Initialize controller */ public function Initialize() { parent::Initialize(); if (!empty($this->params['output']) && ($this->params['output'] == 'jstip')) $this->DisableLogging(); } /** * Gets the template for this controller * * @return string template filename */ protected function GetTemplate() { if (isset($this->params['output']) && ($this->params['output'] == 'jstip')) { return 'tagtip.tpl'; } return 'tag.tpl'; } /** * Gets the cache key for this controller * * @return string cache key */ protected function GetCacheKey() { return isset($this->params['tag']) ? sha1($this->params['tag']) : ''; } /** * Gets the name of this controller's action * * @param boolean $local true if caller wants the localized action name * @return string action name */ public function GetName($local = false) { if ($local && $this->resource) { return $this->resource->translate('tag'); } return 'tag'; } /** * Loads data for this template */ protected function LoadData() { $head = $this->GetProject()->GetHeadCommit(); $this->tpl->assign('head', $head); $tag = $this->GetProject()->GetTagList()->GetTag($this->params['tag']); $this->tpl->assign("tag", $tag); } }