Changeset 3486
- Timestamp:
- 07/29/06 11:00:23 (2 years ago)
- Files:
-
- django/branches/per-object-permissions/django/contrib/admin/media/js/row_level_permission.js (added)
- django/branches/per-object-permissions/django/contrib/admin/row_level_perm_manipulator.py (added)
- django/branches/per-object-permissions/django/contrib/admin/templates/admin/change_form.html (modified) (1 diff)
- django/branches/per-object-permissions/django/contrib/admin/templates/admin/row_level_permission.html (added)
- django/branches/per-object-permissions/django/contrib/admin/templatetags/row_level_permission.py (added)
- django/branches/per-object-permissions/django/contrib/admin/urls.py (modified) (2 diffs)
- django/branches/per-object-permissions/django/contrib/admin/utils.py (modified) (1 diff)
- django/branches/per-object-permissions/django/contrib/admin/views/main.py (modified) (1 diff)
- django/branches/per-object-permissions/django/contrib/admin/views/row_level_permissions.py (added)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/branches/per-object-permissions/django/contrib/admin/templates/admin/change_form.html
r3464 r3486 65 65 {% endif %} 66 66 </div> 67 </form></div> 67 </form> 68 69 {% if rlp_form_list %} 70 {% include "admin/row_level_permission.html" %} 71 {% endif %} 72 73 </div> 68 74 {% endblock %} django/branches/per-object-permissions/django/contrib/admin/urls.py
r3247 r3486 29 29 ('^doc/templates/(?P<template>.*)/$', 'django.contrib.admin.views.doc.template_detail'), 30 30 31 #Row level permissions 32 ('^auth/row_level_permission/(?P<ct_id>\d+)/(?P<rlp_id>\d+)/(?P<hash>\w+)/delete/(?P<ajax>.*)$', 'django.contrib.admin.views.row_level_permissions.delete_row_level_permission'), 33 ('^auth/row_level_permission/(?P<ct_id>\d+)/(?P<rlp_id>\d+)/(?P<hash>\w+)/change/(?P<ajax>.*)$', 'django.contrib.admin.views.row_level_permissions.change_row_level_permission'), 34 ('^auth/row_level_permission/add/(?P<ct_id>\d+)/(?P<obj_id>\d+)/(?P<ajax>.*)$', 'django.contrib.admin.views.row_level_permissions.add_row_level_permission'), 35 31 36 # Add/change/delete/history 32 37 ('^([^/]+)/([^/]+)/$', 'django.contrib.admin.views.main.change_list'), … … 37 42 ) 38 43 44 39 45 del i18n_view django/branches/per-object-permissions/django/contrib/admin/utils.py
r3464 r3486 101 101 for name, urlbase in ROLES.items(): 102 102 create_reference_role(name, urlbase) 103 104 #Based off work by Ian Holsman 105 #http://svn.zyons.python-hosting.com/trunk/zilbo/common/utils/misc.py 106 def verify_objref_hash( content_type_id, object_id, hash ): 107 import sha 108 from django.conf import settings 109 hash_match = sha.new("%s/%s" % (content_type_id, object_id) + settings.SECRET_KEY).hexdigest() 110 if hash == hash_match: 111 return True 112 else: 113 return False django/branches/per-object-permissions/django/contrib/admin/views/main.py
r3464 r3486 392 392 'original': manipulator.original_object, 393 393 'is_popup': request.REQUEST.has_key('_popup'), 394 'is_row_level_perm': model._meta.row_level_permissions, 394 395 }) 396 397 if model._meta.row_level_permissions: 398 from django.contrib.admin.row_level_perm_manipulator import AddRLPManipulator, ChangeRLPManipulator 399 model_instance = manipulator.original_object 400 model_ct = ContentType.objects.get_for_model(model) 401 rlp_list = model_instance.row_level_permissions.order_by('owner_ct', 'owner_id') 402 rlp_errors = rlp_new_data = {} 403 add_rlp_manip = AddRLPManipulator(model_instance, model_ct) 404 edit_rlp_manip = ChangeRLPManipulator(model_ct) 405 new_rlp_form = forms.FormWrapper(add_rlp_manip, rlp_new_data, rlp_errors) 406 rlp_form_list = [] 407 for r in rlp_list: 408 owner_val = str(r.owner_ct)+"-"+str(r.owner_id) 409 data = {'id':r.id, 'owner':owner_val, 'perm':r.permission.id, 'negative':r.negative} 410 rlp_form_list.append({'form':forms.FormWrapper(edit_rlp_manip, data, rlp_errors), 'rlp':r}) 411 rlp_context = {'new_rlp_form':new_rlp_form, 'rlp_form_list':rlp_form_list,} 412 c.update(rlp_context) 413 395 414 return render_change_form(model, manipulator, c, change=True) 396 415 change_stage = staff_member_required(never_cache(change_stage))
