def signout(request, message_template_name='lutefisk/signout_message.html', extra_context=None): """ TODO: """ logout(request) messages.add_message(request, messages.SUCCESS, render_to_string(message_template_name, extra_context), fail_silently=True) return redirect(utils.get_site_url())
def signin(request, template_name='lutefisk/signin_form.html', message_template_name='lutefisk/signin_fail_message.html', redirect_field_name=REDIRECT_FIELD_NAME, redirect_signin_function=utils.signin_redirect, extra_context=None): """ TODO: """ if not extra_context: extra_context = dict() if request.method == 'POST': data = request.POST else: data = None form = forms.AuthenticationForm(data=data) if data is not None: if form.is_valid(): identification = form.cleaned_data['identification'] password = form.cleaned_data['password'] user = authenticate(identification=identification, password=password) if user.is_active: login(request, user) remember_me = form.cleaned_data['remember_me'] if remember_me: request.session.set_expiry(settings.LUTEFISK_REMEMBER_ME_DAYS[1] * 86400) else: request.session.set_expiry(0) redirect_to = redirect_signin_function(request.REQUEST.get(redirect_field_name), user) return redirect(redirect_to) else: extra_context['EMAIL'] = user.email messages.add_message(request, messages.ERROR, render_to_string(message_template_name, extra_context), fail_silently=True) return redirect(utils.get_site_url()) extra_context['form'] = form extra_context['next'] = request.REQUEST.get(redirect_field_name) return direct_to_template(request, template_name, extra_context=extra_context)
def signup(request, template_name='lutefisk/signup_form.html', message_template_name='lutefisk/signup_message.html', success_url=None, extra_context=None): """ TODO: """ if not extra_context: extra_context = dict() if request.method == 'POST': data = request.POST else: data = None form = forms.SignupForm(data=data) if data is not None: if form.is_valid(): user = form.save() signals.signup_complete.send(sender=None, user=user) if success_url: redirect_to = success_url else: redirect_to = utils.get_site_url() extra_context['EMAIL'] = form.cleaned_data['email'] messages.add_message(request, messages.SUCCESS, render_to_string(message_template_name, extra_context), fail_silently=True) if request.user.is_authenticated(): logout(request) return redirect(redirect_to) extra_context['form'] = form return direct_to_template(request, template_name, extra_context=extra_context)
def password_reset(request, template_name='lutefisk/password_reset_form.html', message_template_name='lutefisk/password_reset_message.html', email_template_name='lutefisk/emails/password_reset_message.txt', success_url=None, extra_context=None): """ TODO: """ if not extra_context: extra_context = dict() if request.method == 'POST': data = request.POST else: data = None form = forms.PasswordResetForm(data=data) if data is not None: if form.is_valid(): form.save(email_template_name=email_template_name) extra_context['EMAIL'] = form.cleaned_data['email'] messages.add_message(request, messages.SUCCESS, render_to_string(message_template_name, extra_context), fail_silently=True) if success_url: redirect_to = success_url else: redirect_to = utils.get_site_url() return redirect(redirect_to) extra_context['form'] = form return direct_to_template(request, template_name, extra_context=extra_context)