def clean_activation(self): errors = plan_validation(self.user) if not errors['required_to_activate']: plan_validation(self.user, on_activation=True) self.activate() else: self.deactivate() return errors
def validate_plan(self, plan): validation_errors = plan_validation(self.request.user, plan) if validation_errors['required_to_activate'] or validation_errors['other']: messages.error(self.request, _( "The selected plan is insufficient for your account. " "Your account will not be activated or will not work fully after completing this order." "<br><br>Following limits will be exceeded: <ul><li>%(reasons)s</ul>") % { 'reasons': '<li>'.join(chain(validation_errors['required_to_activate'], validation_errors['other'])), })