Mercurial > kallithea
comparison rhodecode/controllers/admin/repos.py @ 3154:0226b6d6b2b5 beta
Use common function for generation of grid data
- admin grid now has dedicated edit button, and uses changeset_cache
- some small improvements to grid
- all other datatables use this
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Wed, 09 Jan 2013 01:59:43 +0100 |
parents | 144128efc6ab |
children | cd50d1b5f35b 11b005b2d5e8 |
comparison
equal
deleted
inserted
replaced
3153:8046d1979674 | 3154:0226b6d6b2b5 |
---|---|
133 | 133 |
134 c.repos_list = Repository.query()\ | 134 c.repos_list = Repository.query()\ |
135 .order_by(func.lower(Repository.repo_name))\ | 135 .order_by(func.lower(Repository.repo_name))\ |
136 .all() | 136 .all() |
137 | 137 |
138 repos_data = [] | 138 repos_data = RepoModel().get_repos_as_dict(repos_list=c.repos_list, |
139 total_records = len(c.repos_list) | 139 admin=True) |
140 | 140 #json used to render the grid |
141 _tmpl_lookup = rhodecode.CONFIG['pylons.app_globals'].mako_lookup | 141 c.data = json.dumps(repos_data) |
142 template = _tmpl_lookup.get_template('data_table/_dt_elements.html') | |
143 | |
144 quick_menu = lambda repo_name: (template.get_def("quick_menu") | |
145 .render(repo_name, _=_, h=h, c=c)) | |
146 repo_lnk = lambda name, rtype, private, fork_of: ( | |
147 template.get_def("repo_name") | |
148 .render(name, rtype, private, fork_of, short_name=False, | |
149 admin=True, _=_, h=h, c=c)) | |
150 | |
151 repo_actions = lambda repo_name: (template.get_def("repo_actions") | |
152 .render(repo_name, _=_, h=h, c=c)) | |
153 | |
154 for repo in c.repos_list: | |
155 repos_data.append({ | |
156 "menu": quick_menu(repo.repo_name), | |
157 "raw_name": repo.repo_name.lower(), | |
158 "name": repo_lnk(repo.repo_name, repo.repo_type, | |
159 repo.private, repo.fork), | |
160 "desc": repo.description, | |
161 "owner": repo.user.username, | |
162 "action": repo_actions(repo.repo_name), | |
163 }) | |
164 | |
165 c.data = json.dumps({ | |
166 "totalRecords": total_records, | |
167 "startIndex": 0, | |
168 "sort": "name", | |
169 "dir": "asc", | |
170 "records": repos_data | |
171 }) | |
172 | 142 |
173 return render('admin/repos/repos.html') | 143 return render('admin/repos/repos.html') |
174 | 144 |
175 @HasPermissionAnyDecorator('hg.admin', 'hg.create.repository') | 145 @HasPermissionAnyDecorator('hg.admin', 'hg.create.repository') |
176 def create(self): | 146 def create(self): |