def save(self, *args, **kwargs): if not ( self.subject and isinstance(self.subject, basestring) and self.body and isinstance(self.body, basestring) ): raise Exception("Invalid parameters") if not self.id or self.__original_subject != self.subject: self.is_subject_masked, self.subject_masked = valid_and_mask_text(self.subject) self.is_subject_masked = not self.is_subject_masked if not self.id or self.__original_body != self.body: self.is_body_masked, self.body_masked = valid_and_mask_text(self.body) self.is_body_masked = not self.is_body_masked if self.id and self.__original_is_archived != self.is_archived: self.archived_at = datetime.now() if self.id and self.__original_is_verified != self.is_verified: self.verified_at = datetime.now() self.last_edit_at = self.edit_at or datetime.now() self.edit_at = datetime.now() super(English, self).save(*args, **kwargs)
def valid_text(text): valid, _ = valid_and_mask_text(text) return valid