Changeset 3627
- Timestamp:
- 08/20/06 17:17:01 (2 years ago)
- Files:
-
- django/branches/per-object-permissions/django/contrib/admin/templatetags/adminapplist.py (modified) (1 diff)
- django/branches/per-object-permissions/django/contrib/admin/templatetags/admin_list.py (modified) (1 diff)
- django/branches/per-object-permissions/django/contrib/admin/views/main.py (modified) (5 diffs)
- django/branches/per-object-permissions/django/contrib/auth/models.py (modified) (1 diff)
- django/branches/per-object-permissions/django/db/models/options.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/branches/per-object-permissions/django/contrib/admin/templatetags/adminapplist.py
r3625 r3627 28 28 if m._meta.admin: 29 29 if not m._meta.admin.hidden: 30 #perms = { 31 #'add': user.has_perm("%s.%s" % (app_label, m._meta.get_add_permission())), 32 #'change': user.has_perm("%s.%s" % (app_label, m._meta.get_change_permission())), 33 #'delete': user.has_perm("%s.%s" % (app_label, m._meta.get_delete_permission())), 34 #} 35 30 36 31 perms = { 37 32 'add': user.contains_permission("%s.%s" % (app_label, m._meta.get_add_permission()), m), django/branches/per-object-permissions/django/contrib/admin/templatetags/admin_list.py
r3464 r3627 105 105 first = True 106 106 pk = cl.lookup_opts.pk.attname 107 if not cl.opts.admin.show_all_rows: 108 if not cl.user.has_perm(cl.opts.app_label + "." + cl.opts.get_change_permission(), object=result): 109 return 110 cl.result_count = cl.result_count +1 107 111 for field_name in cl.lookup_opts.admin.list_display: 108 112 row_class = '' django/branches/per-object-permissions/django/contrib/admin/views/main.py
r3625 r3627 434 434 if related.opts.admin: 435 435 p = '%s.%s' % (related.opts.app_label, related.opts.get_delete_permission()) 436 if not user.has_perm(p ):436 if not user.has_perm(p, object=related): 437 437 perms_needed.add(related.opts.verbose_name) 438 438 # We don't care about populating deleted_objects now. … … 465 465 if related.opts.admin and has_related_objs: 466 466 p = '%s.%s' % (related.opts.app_label, related.opts.get_delete_permission()) 467 if not user.has_perm(p ):467 if not user.has_perm(p, object=related): 468 468 perms_needed.add(rel_opts_name) 469 469 for related in opts.get_all_related_many_to_many_objects(): … … 494 494 if related.opts.admin and has_related_objs: 495 495 p = '%s.%s' % (related.opts.app_label, related.opts.get_change_permission()) 496 if not user.has_perm(p ):496 if not user.has_perm(p, object=related): 497 497 perms_needed.add(related.opts.verbose_name) 498 498 … … 563 563 self.lookup_opts = self.opts 564 564 self.manager = self.opts.admin.manager 565 self.user = request.user 565 566 566 567 # Get search parameters from the query string. … … 645 646 result_list = () 646 647 647 self.result_count = result_count 648 if self.opts.admin.show_all_rows: 649 self.result_count = result_count 650 else: 651 self.result_count = 0 648 652 self.full_result_count = full_result_count 649 653 self.result_list = result_list django/branches/per-object-permissions/django/contrib/auth/models.py
r3624 r3627 374 374 backend.quote_name('negative'), backend.quote_name('owner_ct_id'), 375 375 backend.quote_name('model_ct_id')) 376 print sql376 377 377 cursor.execute(sql, [self.id, ContentType.objects.get_for_model(Group).id, ct.id]) 378 378 count = int(cursor.fetchone()[0]) django/branches/per-object-permissions/django/db/models/options.py
r3622 r3627 204 204 date_hierarchy=None, save_as=False, ordering=None, search_fields=None, 205 205 save_on_top=False, list_select_related=False, manager=None, list_per_page=100, 206 grant_change_row_level_perm=False, grant_delete_row_level_perm=False, hidden=False): 206 grant_change_row_level_perm=False, grant_delete_row_level_perm=False, hidden=False, 207 show_all_rows=True): 207 208 self.fields = fields 208 209 self.js = js or [] … … 220 221 self.grant_delete_row_level_perm=grant_delete_row_level_perm 221 222 self.hidden = hidden 223 self.show_all_rows = show_all_rows 222 224 223 225 def get_field_sets(self, opts):
