def form_valid(self, form): # create a new user for this sponsor try: sp = transaction.savepoint() user = User(username = form.cleaned_data["sponsorUsername"]) baseContact = form.cleaned_data["sponsorContact"] user.first_name = baseContact.contactPersonFirstname user.last_name = baseContact.contactPersonSurname user.email = baseContact.contactPersonEmail user.save() profile = UserProfile(user = user) profile.authToken = id_generator(24) profile.save() sponsoring = Sponsoring() sponsoring.owner = user sponsoring.contact = baseContact sponsoring.package = form.cleaned_data["sponsorPackage"] sponsoring.adminComment = form.cleaned_data["internalComment"] sponsoring.save() self.object = sponsoring transaction.savepoint_commit(sp) except Exception as e: transaction.savepoint_rollback(sp) raise e return HttpResponseRedirect(self.get_success_url())
def process_job(self): try: user = User.objects.get(pk=self.kwargs["pk"]) except User.DoesNotExist: raise Http404 try: up = UserProfile.objects.get(user=user) except UserProfile.DoesNotExist: up = UserProfile(user=user) up.authToken = id_generator(24) up.save() return True