Implement last login
This commit is contained in:
parent
4e9483eb2a
commit
4547df4d4c
@ -34,6 +34,8 @@ class LdapUser(Model):
|
|||||||
phone = ldap_fields.CharField(db_column='telephoneNumber', blank=True)
|
phone = ldap_fields.CharField(db_column='telephoneNumber', blank=True)
|
||||||
mobile_phone = ldap_fields.CharField(db_column='mobile', blank=True)
|
mobile_phone = ldap_fields.CharField(db_column='mobile', blank=True)
|
||||||
photo = ldap_fields.ImageField(db_column='photo')
|
photo = ldap_fields.ImageField(db_column='photo')
|
||||||
|
last_login = ldap_fields.DateTimeField(db_column='authTimestamp', blank=True)
|
||||||
|
|
||||||
# photo = ldap_fields.ImageField(db_column='jpegPhoto')
|
# photo = ldap_fields.ImageField(db_column='jpegPhoto')
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
|
|||||||
@ -41,8 +41,8 @@ def protect_cross_realm_user_access(view_func):
|
|||||||
@login_required
|
@login_required
|
||||||
@is_realm_admin
|
@is_realm_admin
|
||||||
def realm_user(request, realm_id):
|
def realm_user(request, realm_id):
|
||||||
realm_obj = Realm.objects.get(id=realm_id)
|
realm = Realm.objects.get(id=realm_id)
|
||||||
LdapUser.base_dn = realm_obj.ldap_base_dn
|
LdapUser.base_dn = realm.ldap_base_dn
|
||||||
realm_users = LdapUser.objects.all()
|
realm_users = LdapUser.objects.all()
|
||||||
user_wrappers = []
|
user_wrappers = []
|
||||||
for user in realm_users:
|
for user in realm_users:
|
||||||
@ -54,7 +54,7 @@ def realm_user(request, realm_id):
|
|||||||
user_wrappers.append({'user': user, 'active': False})
|
user_wrappers.append({'user': user, 'active': False})
|
||||||
except ObjectDoesNotExist:
|
except ObjectDoesNotExist:
|
||||||
user_wrappers.append({'user': user, 'active': False})
|
user_wrappers.append({'user': user, 'active': False})
|
||||||
return render(request, 'realm/realm_user.jinja2', {'realm': realm_obj, 'realm_user': user_wrappers})
|
return render(request, 'realm/realm_user.jinja2', {'realm': realm, 'realm_user': user_wrappers})
|
||||||
|
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
|
|||||||
@ -35,6 +35,7 @@
|
|||||||
<th scope="col">Vorname</th>
|
<th scope="col">Vorname</th>
|
||||||
<th scope="col">Nachname</th>
|
<th scope="col">Nachname</th>
|
||||||
<th scope="col">Aktiv</th>
|
<th scope="col">Aktiv</th>
|
||||||
|
<th scope="col">Letzer Login</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@ -49,6 +50,13 @@
|
|||||||
<td class="text-center">{% if user.active %}
|
<td class="text-center">{% if user.active %}
|
||||||
<i class="fas fa-check-circle text-success"></i><span class="d-none">-</span>{% else %}
|
<i class="fas fa-check-circle text-success"></i><span class="d-none">-</span>{% else %}
|
||||||
<i class="far fa-times-circle text-warning"></i><span class="d-none">+</span>{% endif %}</td>
|
<i class="far fa-times-circle text-warning"></i><span class="d-none">+</span>{% endif %}</td>
|
||||||
|
<td class="text-center">
|
||||||
|
{% if user.user.last_login %}
|
||||||
|
{{ user.user.last_login.strftime('%Y-%m-%d') }}
|
||||||
|
{% else %}
|
||||||
|
<i class="far fa-times-circle text-danger"></i><span class="d-none">+</span>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|||||||
@ -16,7 +16,9 @@
|
|||||||
<li class="list-group-item">Vorname: {{ user.first_name }}</li>
|
<li class="list-group-item">Vorname: {{ user.first_name }}</li>
|
||||||
<li class="list-group-item">Nachname: {{ user.last_name }}</li>
|
<li class="list-group-item">Nachname: {{ user.last_name }}</li>
|
||||||
<li class="list-group-item">Email: {{ user.email }}</li>
|
<li class="list-group-item">Email: {{ user.email }}</li>
|
||||||
<li class="list-group-item">Passwort: <a href="{{ url('realm-user-password-reset', args = [realm.id, user.dn]) }}" class="float-right">Nutzerpasswort zurücksetzen</a></li>
|
<li class="list-group-item">Passwort: <a
|
||||||
|
href="{{ url('realm-user-password-reset', args = [realm.id, user.dn]) }}" class="float-right">Nutzerpasswort
|
||||||
|
zurücksetzen</a></li>
|
||||||
{# <li class="list-group-item">Telefon: {{ user.phone }}</li>#}
|
{# <li class="list-group-item">Telefon: {{ user.phone }}</li>#}
|
||||||
{# <li class="list-group-item">Mobiltelefon: {{ user.mobile_phone }}</li>#}
|
{# <li class="list-group-item">Mobiltelefon: {{ user.mobile_phone }}</li>#}
|
||||||
<li class="list-group-item">Gruppen:
|
<li class="list-group-item">Gruppen:
|
||||||
@ -31,6 +33,12 @@
|
|||||||
<a href="{{ url('realm-user-group-update', args=[realm.id, user.dn]) }}" class="float-right">
|
<a href="{{ url('realm-user-group-update', args=[realm.id, user.dn]) }}" class="float-right">
|
||||||
Gruppen zuweisen</a>
|
Gruppen zuweisen</a>
|
||||||
</li>
|
</li>
|
||||||
|
<li class="list-group-item">Zuletzt eingeloggt:
|
||||||
|
{% if user.last_login %}
|
||||||
|
{{ user.last_login.strftime('%d.%m.%Y') }}
|
||||||
|
{% else %}
|
||||||
|
<i class="far fa-times-circle text-danger"></i><span class="d-none">+</span>
|
||||||
|
{% endif %}</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="d-flex mt-3">
|
<div class="d-flex mt-3">
|
||||||
<a href="{{ url('realm-user-update', args = [realm.id, user.dn]) }}" class="btn btn-primary mr-auto p-2">
|
<a href="{{ url('realm-user-update', args = [realm.id, user.dn]) }}" class="btn btn-primary mr-auto p-2">
|
||||||
|
|||||||
Reference in New Issue
Block a user