|
@@ -68,8 +68,8 @@ class InvoiceDetailInlineReadOnly(admin.StackedInline):
|
|
return False
|
|
return False
|
|
|
|
|
|
def get_readonly_fields(self, request, obj=None):
|
|
def get_readonly_fields(self, request, obj=None):
|
|
- if self.declared_fieldsets:
|
|
|
|
- result = flatten_fieldsets(self.declared_fieldsets)
|
|
|
|
|
|
+ if self.get_fieldsets(request, obj):
|
|
|
|
+ result = flatten_fieldsets(self.get_fieldsets(request, obj))
|
|
else:
|
|
else:
|
|
result = list(set(
|
|
result = list(set(
|
|
[field.name for field in self.opts.local_fields] +
|
|
[field.name for field in self.opts.local_fields] +
|
|
@@ -130,8 +130,8 @@ class InvoiceAdmin(admin.ModelAdmin):
|
|
Si la facture est validée, passe tous les champs en readonly
|
|
Si la facture est validée, passe tous les champs en readonly
|
|
"""
|
|
"""
|
|
if obj and obj.validated:
|
|
if obj and obj.validated:
|
|
- if self.declared_fieldsets:
|
|
|
|
- ro_fields = flatten_fieldsets(self.declared_fieldsets)
|
|
|
|
|
|
+ if self.get_fieldsets(request, obj):
|
|
|
|
+ return flatten_fieldsets(self.get_fieldsets(request, obj))
|
|
else:
|
|
else:
|
|
ro_fields = list(set(
|
|
ro_fields = list(set(
|
|
[field.name for field in self.opts.local_fields] +
|
|
[field.name for field in self.opts.local_fields] +
|
|
@@ -251,7 +251,7 @@ class PaymentAdmin(admin.ModelAdmin):
|
|
# If payment already started to be allocated or already have a member
|
|
# If payment already started to be allocated or already have a member
|
|
if obj and (obj.amount_already_allocated() != 0 or obj.member != None):
|
|
if obj and (obj.amount_already_allocated() != 0 or obj.member != None):
|
|
# All fields are readonly
|
|
# All fields are readonly
|
|
- return flatten_fieldsets(self.declared_fieldsets)
|
|
|
|
|
|
+ return flatten_fieldsets(self.get_fieldsets(request, obj))
|
|
else:
|
|
else:
|
|
return self.readonly_fields
|
|
return self.readonly_fields
|
|
|
|
|