Add script to force delete a user, in case of duplicates

Signed-off-by: Yohann D'ANELLO <ynerant@crans.org>
This commit is contained in:
Yohann D'ANELLO 2021-02-22 11:54:23 +01:00
parent b597a6ac5b
commit d5a9bf175f
Signed by: ynerant
GPG Key ID: 3A75C55819C8CF85
3 changed files with 5 additions and 3 deletions

View File

@ -223,7 +223,8 @@ class Transaction(PolymorphicModel):
# Check that the amounts stay between big integer bounds # Check that the amounts stay between big integer bounds
diff_source, diff_dest = self.validate() diff_source, diff_dest = self.validate()
if not self.source.is_active or not self.destination.is_active: if not (hasattr(self, '_force_save') and self._force_save) \
and (not self.source.is_active or not self.destination.is_active):
raise ValidationError(_("The transaction can't be saved since the source note " raise ValidationError(_("The transaction can't be saved since the source note "
"or the destination note is not active.")) "or the destination note is not active."))
@ -271,7 +272,7 @@ class RecurrentTransaction(Transaction):
) )
def clean(self): def clean(self):
if self.template.destination != self.destination: if self.template.destination != self.destination and not (hasattr(self, '_force_save') and self._force_save):
raise ValidationError( raise ValidationError(
_("The destination of this transaction must equal to the destination of the template.")) _("The destination of this transaction must equal to the destination of the template."))
return super().clean() return super().clean()

View File

@ -43,4 +43,5 @@ def delete_transaction(instance, **_kwargs):
""" """
if not hasattr(instance, "_no_signal"): if not hasattr(instance, "_no_signal"):
instance.valid = False instance.valid = False
instance._force_save = True
instance.save() instance.save()

@ -1 +1 @@
Subproject commit dbe7bf65917df40b0ce476f357d04726e20b406f Subproject commit 8ec7d68a169c1072aec427925f3bf2fd54eab5a3