Revision 5f75e534

b/admin/static/main.js
2 2
	$('table.id-sorted').tablesorter({ sortList: [[0, 0]] });
3 3

  
4 4
	$('tr.row-template').hide();
5
	$('div.alert-message').hide();
5 6
});
6 7

  
7 8
$('.add-row').live('click', function() {
......
15 16
$('.delete-row').live('click', function() {
16 17
	$(this).parents('tr').remove();
17 18
});
19

  
20
$('.needs-confirm').live('click', function() {
21
	$('div.alert-message').show('fast');
22
	$('div.actions').hide('fast');
23
	return false;
24
});
25

  
26
$('.alert-close').live('click', function() {
27
	$('div.alert-message').hide('fast');
28
	$('div.actions').show('fast');
29
	return false;
30
});
31

  
b/admin/templates/users_info.html
74 74
    <button type="submit" class="btn primary">Save Changes</button>
75 75
    <button type="reset" class="btn">Reset</button>
76 76
        &nbsp;&nbsp;
77
    <a class="btn danger" href="/admin/users/{{ user.id }}/delete">Delete User</a>
77
    <a class="btn danger needs-confirm" href="/admin/users/{{ user.id }}/delete">Delete User</a>
78 78
  </div>
79
</form>
80 79

  
80
  <div class="alert-message block-message error">
81
    <p><strong>WARNING:</strong> Deleting a user is a very destructive operation. Any objects with foreign keys pointing to this user will be deleted as well.</p>
82
    <div class="alert-actions">
83
      <a class="btn danger" href="/admin/users/{{ user.id }}/delete">Delete</a>
84
      <a class="btn alert-close">Cancel</a>
85
    </div>
86
  </div>
87
</form>
81 88
{% endblock body %}
b/admin/urls.py
22 22
    (r'^/users/invite/?$', 'users_invite'),
23 23
    (r'^/users/(\d+)/?$', 'users_info'),
24 24
    (r'^/users/(\d+)/modify/?$', 'users_modify'),
25
    (r'^/users/(\d+)/delete/?$', 'users_delete'),
25 26
)
26 27

  
27 28
urlpatterns += patterns('',
b/admin/views.py
7 7

  
8 8
from synnefo.db import models
9 9
from synnefo.invitations.invitations import add_invitation, send_invitation
10
from synnefo.logic import backend
10
from synnefo.logic import backend, users
11 11

  
12 12

  
13 13
def render(template, tab, **kwargs):
......
178 178
    user.max_invitations = int(invitations) if invitations else None
179 179
    user.save()
180 180
    return redirect(users_info, user.id)
181

  
182
def users_delete(request, user_id):
183
    user = models.SynnefoUser.objects.get(id=user_id)
184
    users.delete_user(user)
185
    return redirect(users_list)

Also available in: Unified diff