def form_valid(self, form): if not self.invite and self.invite.type == 'join': raise Http404('No invite found.') user = self.invite.user # Update user from form data user.email = form.cleaned_data['email'] user.first_name = form.cleaned_data['firstname'] user.last_name= form.cleaned_data['lastname'] user.set_password(form.cleaned_data['password']) user.save() # Auto login valid_user = authenticate(email=user.email, password=form.cleaned_data['password']) if valid_user is not None: auth_login(self.request, valid_user) # Subscribe user to mailing all subscribe_mailing.delay(user, 'all') # Mark invite as used self.invite.use() return super(ActivateUser, self).form_valid(form)
def form_valid(self, form): # Create user user = Athlete.objects.create_user(form.cleaned_data['username'], form.cleaned_data['email'], form.cleaned_data['password'], last_login=datetime.now()) user.first_name = form.cleaned_data['firstname'] user.last_name = form.cleaned_data['lastname'] user.build_avatar() user.save() # Auto login valid_user = authenticate(email=user.email, password=form.cleaned_data['password']) if valid_user is not None: auth_login(self.request, valid_user) # When an invite is used, redirect to club creation # Otherwise, display club list url_name = self.invite and 'club-create' or 'club-list' # Subscribe user to mailing all subscribe_mailing.delay(user, 'all') return HttpResponseRedirect(reverse(url_name))
def post(self, *args, **kwargs): self.object_list = self.get_queryset() self.get_object() # load objects # Add member action = self.request.POST['action'] member = self.club.clubmembership_set.get(trainers=self.request.user, pk=self.request.POST['member']) if action == 'add': self.group.members.add(member) # Add to mailing list if self.group.mailing_list: subscribe_mailing.delay(member.user, self.group.mailing_list) elif action == 'remove': self.group.members.remove(member) # Remove from mailing list if self.group.mailing_list: unsubscribe_mailing.delay(member.user, self.group.mailing_list) return self.render_to_response(self.get_context_data())
def post(self, *args, **kwargs): self.object_list = self.get_queryset() self.get_object() # load objects # Add member action = self.request.POST['action'] member = self.club.clubmembership_set.get( trainers=self.request.user, pk=self.request.POST['member']) if action == 'add': self.group.members.add(member) # Add to mailing list if self.group.mailing_list: subscribe_mailing.delay(member.user, self.group.mailing_list) elif action == 'remove': self.group.members.remove(member) # Remove from mailing list if self.group.mailing_list: unsubscribe_mailing.delay(member.user, self.group.mailing_list) return self.render_to_response(self.get_context_data())