Mercurial > public > src > rhodecode
changeset 2765:cc8d7d450d15 beta
No more raw html inside users controller.
We use cool mako Template features
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Thu, 26 Jul 2012 22:01:41 +0200 |
parents | 91c442a489bb |
children | c525d7e641a6 |
files | rhodecode/controllers/admin/users.py rhodecode/templates/admin/users/users.html rhodecode/templates/data_table/_dt_elements.html |
diffstat | 3 files changed, 41 insertions(+), 22 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/controllers/admin/users.py Thu Jul 26 15:36:44 2012 +0200 +++ b/rhodecode/controllers/admin/users.py Thu Jul 26 22:01:41 2012 +0200 @@ -40,6 +40,7 @@ AuthUser from rhodecode.lib.base import BaseController, render +import rhodecode from rhodecode.model.db import User, Permission, UserEmailMap from rhodecode.model.forms import UserForm from rhodecode.model.user import UserModel @@ -72,34 +73,33 @@ users_data = [] total_records = len(c.users_list) - grav_tmpl = """<div class="gravatar"><img alt="gravatar" src="%s"/> </div>""" - usr_tmpl = """<a href="%s">%s</a>""" % (h.url('edit_user', id='__ID__'), '%s') - usr_tmpl = usr_tmpl.replace('__ID__', '%s') - edit_tmpl = ''' - <form action="/_admin/users/%s" method="post"> - <div style="display:none"> - <input name="_method" type="hidden" value="%s"> - </div> - <input class="delete_icon action_button" id="remove_user_%s" - name="remove_" onclick="return confirm('%s');" - type="submit" value="delete"> - </form> - ''' + _tmpl_lookup = rhodecode.CONFIG['pylons.app_globals'].mako_lookup + template = _tmpl_lookup.get_template('data_table/_dt_elements.html') + + grav_tmpl = lambda user_email, size: ( + template.get_def("user_gravatar") + .render(user_email, size, _=_, h=h)) + + user_lnk = lambda user_id, username: ( + template.get_def("user_name") + .render(user_id, username, _=_, h=h)) + + user_actions = lambda user_id, username: ( + template.get_def("user_actions") + .render(user_id, username, _=_, h=h)) + for user in c.users_list: users_data.append({ - "gravatar": grav_tmpl % h.gravatar_url(user.email, 24), + "gravatar": grav_tmpl(user. email, 24), "raw_username": user.username, - "username": usr_tmpl % (user.user_id, user.username), + "username": user_lnk(user.user_id, user.username), "firstname": user.name, "lastname": user.lastname, "last_login": h.fmt_date(user.last_login), "active": h.bool2icon(user.active), "admin": h.bool2icon(user.admin), "ldap": h.bool2icon(bool(user.ldap_dn)), - "action": edit_tmpl % (user.user_id, _('delete'), - user.user_id, - _('Confirm to delete this user: %s') % user.username - ), + "action": user_actions(user.user_id, user.username), }) c.data = json.dumps({
--- a/rhodecode/templates/admin/users/users.html Thu Jul 26 15:36:44 2012 +0200 +++ b/rhodecode/templates/admin/users/users.html Thu Jul 26 22:01:41 2012 +0200 @@ -140,9 +140,6 @@ clearTimeout(filterTimeout); filterTimeout = setTimeout(updateFilter,600); }); - - - </script> </%def>
--- a/rhodecode/templates/data_table/_dt_elements.html Thu Jul 26 15:36:44 2012 +0200 +++ b/rhodecode/templates/data_table/_dt_elements.html Thu Jul 26 22:01:41 2012 +0200 @@ -2,6 +2,12 @@ ## usage: ## <%namespace name="dt" file="/data_table/_dt_elements.html"/> +<%def name="repo_actions(repo_name)"> + ${h.form(h.url('repo', repo_name=repo_name),method='delete')} + ${h.submit('remove_%s' % repo_name,_('delete'),class_="delete_icon action_button",onclick="return confirm('"+_('Confirm to delete this repository: %s') % repo_name+"');")} + ${h.end_form()} +</%def> + <%def name="quick_menu(repo_name)"> <ul class="menu_items hidden"> <li style="border-top:1px solid #003367;margin-left:18px;padding-left:-99px"></li> @@ -87,3 +93,19 @@ %endif </div> </%def> + +<%def name="user_gravatar(email, size=24)"> + <div class="gravatar"><img alt="gravatar" src="${h.gravatar_url(email, size)}"/> </div> +</%def> + +<%def name="user_actions(user_id, username)"> + ${h.form(h.url('delete_user', id=user_id),method='delete')} + ${h.submit('remove_',_('delete'),id="remove_user_%s" % user_id, + class_="delete_icon action_button",onclick="return confirm('"+_('Confirm to delete this user: %s') % username+"');")} + ${h.end_form()} +</%def> + +<%def name="user_name(user_id, username)"> + ${h.link_to(username,h.url('edit_user', id=user_id))} +</%def> +