From b9c119d46d55d6a7728b3d5874e690e915f0144f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jean-Michel=20Nirgal=20Vourg=C3=A8re?= Date: Fri, 13 May 2011 10:00:16 +0000 Subject: [PATCH] In user list, show icons with flag_showhidden permission --- bin/djais/models.py | 1 + bin/djais/templatetags/ais_extras.py | 14 +++++++++++--- www_templates/users.html | 11 ++--------- www_templates/users_tree.html | 2 +- 4 files changed, 15 insertions(+), 13 deletions(-) diff --git a/bin/djais/models.py b/bin/djais/models.py index 397e310..c9537bd 100644 --- a/bin/djais/models.py +++ b/bin/djais/models.py @@ -34,6 +34,7 @@ class User(models.Model): creation_datetime = models.DateTimeField(auto_now_add=True) phone = models.CharField(max_length=20, blank=True) access_datetime = models.DateTimeField(blank=True, null=True) + flag_allowhidden = models.BooleanField(default=False) class Meta: db_table = u'user' ordering = ('id',) diff --git a/bin/djais/templatetags/ais_extras.py b/bin/djais/templatetags/ais_extras.py index dc9c90a..684a600 100644 --- a/bin/djais/templatetags/ais_extras.py +++ b/bin/djais/templatetags/ais_extras.py @@ -11,8 +11,12 @@ def sqlmmsi_to_strmmsi(txt): return unicode(mmsi_to_strmmsi(txt)) @register.filter -def format_user_tree(user, indentlevel=0): +def format_user_tree(user, requestuser=None, indentlevel=0): result = u" "*indentlevel*8 + "%s" % (escape(user.login), escape(user.name)) + #{%comment%}{% if auser.father %}sponsor: {{ auser.father }}{% endif %}{%endcomment%} + if requestuser and requestuser.flag_allowhidden: + if user.flag_allowhidden: + result += u' ' if not user.password_hash: result += " Account disabled: No password" if user.admin_ok: @@ -21,6 +25,10 @@ def format_user_tree(user, indentlevel=0): change password - delete account """ % (escape(user.login), escape(user.login)) result += "
\n" - for child in user.children: - result = result + format_user_tree(child, indentlevel+1) + try: + children = user.children + except AttributeError: + children = () + for child in children: + result = result + format_user_tree(child, requestuser, indentlevel+1) return result diff --git a/www_templates/users.html b/www_templates/users.html index 3e58137..aa17202 100644 --- a/www_templates/users.html +++ b/www_templates/users.html @@ -1,4 +1,5 @@ {% extends "base.html" %} +{% load ais_extras %} {% block tab_active_user %} id=tabactive{% endblock %} @@ -17,15 +18,7 @@ User accounts
{% block userlist %} {% for auser in users %} -{{ auser.name }} -{%comment%}{% if auser.father %}sponsor: {{ auser.father }}{% endif %}{%endcomment%} -{% if auser.password_hash %}{% else %}Account disabled: No password{% endif %} -{% if auser.admin_ok %} - -change password - delete account - -{% endif %} -
+{{ auser|format_user_tree:request.user|safe }} {% endfor %} {% endblock %}
diff --git a/www_templates/users_tree.html b/www_templates/users_tree.html index 4eb3075..fea4d82 100644 --- a/www_templates/users_tree.html +++ b/www_templates/users_tree.html @@ -2,7 +2,7 @@ {% load ais_extras %} {% block userlist %} -{{ root|format_user_tree|safe }} +{{ root|format_user_tree:request.user|safe }} {% endblock %} {% block showtree %} -- 2.30.2