# -*- coding: utf-8 -*-# This program is free software: you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation, either version 3 of the License, or# (at your option) any later version.## This program is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the# GNU General Public License for more details.## You should have received a copy of the GNU General Public License# along with this program. If not, see <http://www.gnu.org/licenses/>."""rhodecode.controllers.tags~~~~~~~~~~~~~~~~~~~~~~~~~~Tags controller for rhodecode:created_on: Apr 21, 2010:author: marcink:copyright: (c) 2013 RhodeCode GmbH.:license: GPLv3, see LICENSE for more details."""importloggingfrompylonsimporttmpl_contextascfromrhodecode.lib.authimportLoginRequired,HasRepoPermissionAnyDecoratorfromrhodecode.lib.baseimportBaseRepoController,renderfromrhodecode.lib.compatimportOrderedDictlog=logging.getLogger(__name__)classTagsController(BaseRepoController):def__before__(self):super(TagsController,self).__before__()@LoginRequired()@HasRepoPermissionAnyDecorator('repository.read','repository.write','repository.admin')defindex(self):c.repo_tags=OrderedDict()tags=[(name,c.rhodecode_repo.get_changeset(hash_))for \
name,hash_inc.rhodecode_repo.tags.items()]ordered_tags=sorted(tags,key=lambdax:x[1].date,reverse=True)forname,cs_taginordered_tags:c.repo_tags[name]=cs_tagreturnrender('tags/tags.html')