206,210c206
<         
<         if self.has_change_permission(request, obj):
<             return self.readonly_fields     
<         
<         return flatten_fieldsets(self.declared_fieldsets)
---
>         return self.readonly_fields
284,294d279
<         
<     def has_view_permission(self, request, obj=None):
<         """
<         Returns True if the given request has permission to add an object.
<         Can be overriden by the user in subclasses.
<         """
<         opts = self.opts
<         
<         return request.user.has_perm(opts.app_label + '.view_%s' % opts.object_name.lower())  
<         #must add a method to opts
<         #return request.user.has_perm(opts.app_label + '.' + opts.has_view_permission())        
367,368c352
<                 if not (inline.has_view_permission(request) or
<                         inline.has_add_permission(request) or
---
>                 if not (inline.has_add_permission(request) or
668,677d651
<         
<     def get_list_editable(self, request):
<         """
<         Return a sequence containing the fields to be edited on the
<         changelist.
<         """
<         if self.has_change_permission(request):
<             return self.list_editable
<         
<         return ()
1044,1046c1018,1020
<         
<         if not self.has_view_permission(request, obj):
<             raise PermissionDenied          
---
> 
>         if not self.has_change_permission(request, obj):
>             raise PermissionDenied
1060,1063d1033
<             
<             if not self.has_change_permission(request, obj):
<                 raise PermissionDenied            
<             
1091,1094d1060
<             
<             if not self.has_view_permission(request, obj):
<                 raise PermissionDenied                   
<             
1144,1145c1110
<         
<         if not self.has_view_permission(request, None):
---
>         if not self.has_change_permission(request, None):
1147,1149d1111
<             
<         if not self.has_change_permission(request, None) and request.method == "POST":
<             raise PermissionDenied            
1153d1114
<         list_editable = self.get_list_editable(request)
1166c1127
<                 self.list_per_page, self.list_max_show_all, list_editable,
---
>                 self.list_per_page, self.list_max_show_all, self.list_editable,
1368,1371d1328
<         
<         if not self.has_view_permission(request, obj):
<             raise PermissionDenied
<         
