apps: considérer les comptes sans OU comme des agents

This commit is contained in:
Benjamin Dauvergne 2017-11-13 10:58:45 +01:00
parent a4a44ad4b1
commit d8410facef
1 changed files with 27 additions and 28 deletions

View File

@ -137,35 +137,34 @@ class AppConfig(django.apps.AppConfig):
del form.fields['creation_mode']
del form.fields['creation_partner']
del form.fields['creation_domain']
if form.instance.ou:
if form.instance.ou.slug == 'usagers':
form.fields['email'].required = True
del form.fields['username']
for field_name in ['password1', 'password2', 'is_superuser', 'validated',
'validation_context', 'validation_date']:
if field_name in form.fields:
del form.fields[field_name]
else:
for field_name in form.fields:
if field_name not in ['username',
'first_name',
'last_name',
'email',
'is_superuser',
'generate_password']:
del form.fields[field_name]
form.fields['email'].required = True
if form.instance.ou and form.instance.ou.slug == 'usagers':
form.fields['email'].required = True
del form.fields['username']
for field_name in ['password1', 'password2', 'is_superuser', 'validated',
'validation_context', 'validation_date']:
if field_name in form.fields:
del form.fields[field_name]
else:
for field_name in form.fields:
if field_name not in ['username',
'first_name',
'last_name',
'email',
'is_superuser',
'generate_password']:
del form.fields[field_name]
form.fields['email'].required = True
def generate_new_edit_save(old_save):
def edit_save(*args, **kwargs):
response = old_save(*args, **kwargs)
models.Journal.objects.create(
actor=form.request.user,
subject=form.instance,
message='modification des données')
return response
return edit_save
form.save = generate_new_edit_save(form.save)
def generate_new_edit_save(old_save):
def edit_save(*args, **kwargs):
response = old_save(*args, **kwargs)
models.Journal.objects.create(
actor=form.request.user,
subject=form.instance,
message='modification des données')
return response
return edit_save
form.save = generate_new_edit_save(form.save)
# Si un compte est validé, on interdit la modification des attributs coeurs
if form.instance.attributes.validated:
for field_name in form.fields: