def register(request, event=None): if request.user.is_authenticated(): messages.error(request, 'You cannot be logged in when registering.') return redirect('root', event=event) else: if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): cleaned = form.cleaned_data # Create user user = SiteUser( username=cleaned['username'].lower(), nickname=cleaned['username'].lower(), first_name=cleaned['first_name'], last_name=cleaned['last_name'], email=cleaned['email'].lower(), date_of_birth=cleaned['date_of_birth'], zip_code=cleaned['zip_code'], address=cleaned['address'], phone=cleaned['phone'], skype=cleaned['skype'], steam=cleaned['steam'], town=cleaned['town'], country=cleaned['country'], # image=cleaned['image'], ) user.set_password(cleaned['password']) user.is_active = False user.save() user.setNameNotRetard() # Create the registration token token = uuid.uuid4().hex rt = RegisterToken(user=user, token=token) rt.save() email_message = u""" Du har registrert en konto på dfektlan.no. For å bruke denne kontoen må du aktivere den. Du kan aktivere den ved å besøke linken under. http://%s/%s/auth/verify/%s/ Aktiveringslinken er kun aktiv i 24 timer, etter dette vil du måtte bruke Reset Password for å få en ny link. """ % (request.META['HTTP_HOST'], event, token) send_mail('Verify your account', email_message, settings.REGISTER_FROM_MAIL, [user.email, ]) messages.success(request, 'Registration successful. Check your email for verification instructions.') return redirect('root', event=event) else: form = RegisterForm(request.POST, auto_id=True) else: form = RegisterForm() return render(request, 'auth/register.html', {'form': form, 'event': event, })
def register(request): if request.user.is_authenticated(): messages.error(request, _(u'You cannot be logged in when registering.')) return HttpResponseRedirect('/') else: if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): cleaned = form.cleaned_data # Create user user = User( username=cleaned['desired_username'], first_name=cleaned['first_name'], last_name=cleaned['last_name'], email=cleaned['email'], ) user.set_password(cleaned['password']) user.is_active = False user.save() # Create userprofile up = UserProfile( user=user, nick=cleaned['desired_username'], date_of_birth=cleaned['date_of_birth'], zip_code=cleaned['zip_code'], address=cleaned['address'], phone=cleaned['phone'], ) up.save() # Create the registration token token = uuid.uuid4().hex rt = RegisterToken(user=user, token=token) rt.save() email_message = create_verify_message(request.META['HTTP_HOST'], token) send_mail(_(u'Verify your account'), email_message, settings.STUDLAN_FROM_MAIL, [user.email,], fail_silently=False) messages.success(request, _(u'Registration successful. Check your email for verification instructions.')) return HttpResponseRedirect('/') else: form = RegisterForm(request.POST, auto_id=True, error_class=InlineSpanErrorList) else: form = RegisterForm() return render(request, 'auth/register.html', {'form': form, })
def direct_register(request): if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): cleaned = form.cleaned_data lan = LAN.objects.filter(end_date__gte=datetime.now())[0] if not lan: messages.error(request, u'No upcoming LAN was found.') return HttpResponseRedirect('/auth/direct_register') # Create user user = User( username=cleaned['desired_username'], first_name=cleaned['first_name'], last_name=cleaned['last_name'], email=cleaned['email'], ) user.set_password(cleaned['password']) user.is_active = True user.save() # Create userprofile up = UserProfile( user=user, nick=cleaned['desired_username'], date_of_birth=cleaned['date_of_birth'], zip_code=cleaned['zip_code'], address=cleaned['address'], phone=cleaned['phone'], ) up.save() attendee = Attendee(lan=lan, user=user) attendee.save() messages.success(request, _(u'Registration successful.')) return HttpResponseRedirect('/auth/direct_register') else: form = RegisterForm(request.POST, auto_id=True, error_class=InlineSpanErrorList) else: form = RegisterForm() lan = LAN.objects.filter(end_date__gte=datetime.now())[0] return render(request, 'auth/direct_register.html', {'form': form, 'lan': lan})
def register(request): if request.user.is_authenticated(): messages.error(request, _(u'You cannot be logged in when registering.')) return HttpResponseRedirect('/') else: if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): cleaned = form.cleaned_data # Create user user = User( username=cleaned['desired_username'], first_name=cleaned['first_name'], last_name=cleaned['last_name'], email=cleaned['email'], ) user.set_password(cleaned['password']) user.is_active = False user.save() # Create userprofile up = UserProfile( user=user, nick=cleaned['desired_username'], date_of_birth=cleaned['date_of_birth'], zip_code=cleaned['zip_code'], address=cleaned['address'], phone=cleaned['phone'], ) up.save() # Create the registration token token = uuid.uuid4().hex rt = RegisterToken(user=user, token=token) rt.save() link = request.build_absolute_uri(reverse('auth_verify', args=[token])) context = { 'link': link, } txt_message = render_to_string('auth/email/verify_account.txt', context, request).strip() html_message = render_to_string('auth/email/verify_account.html', context, request).strip() send_mail( subject=_(u'Verify your account'), from_email=settings.STUDLAN_FROM_MAIL, recipient_list=[user.email], message=txt_message, html_message=html_message, ) messages.success(request, _(u'Registration successful. Check your email for verification instructions.')) return HttpResponseRedirect('/') else: form = RegisterForm(request.POST, auto_id=True, error_class=InlineSpanErrorList) else: form = RegisterForm() return render(request, 'auth/register.html', {'form': form})
def direct_register(request, lan_id): lan = get_object_or_404(LAN, id=lan_id) if lan.is_ended(): messages.error(request, _(u'The LAN is ended, arrivals can\'t be changed.')) return redirect('/') if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): cleaned = form.cleaned_data # Create user user = User( username=cleaned['desired_username'], first_name=cleaned['first_name'], last_name=cleaned['last_name'], email=cleaned['email'], ) user.set_password(cleaned['password']) user.is_active = True user.save() # Create userprofile up = UserProfile( user=user, nick=cleaned['desired_username'], date_of_birth=cleaned['date_of_birth'], zip_code=cleaned['zip_code'], address=cleaned['address'], phone=cleaned['phone'], ) up.save() attendee = Attendee(lan=lan, user=user) attendee.save() messages.success(request, _(u'Registration successful.')) return redirect('/auth/direct_register') else: form = RegisterForm(request.POST, auto_id=True, error_class=InlineSpanErrorList) else: form = RegisterForm() breadcrumbs = ( (lan, lan.get_absolute_url()), (_(u'Manual Registration'), ''), ) context = { 'breadcrumbs': breadcrumbs, 'lan': lan, 'form': form, } return render(request, 'auth/direct_register.html', context)
def direct_register(request): lan = LAN.objects.filter(end_date__gte=datetime.now()).first() if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): cleaned = form.cleaned_data if lan is None: messages.error(request, _(u'No upcoming LAN was found.')) return HttpResponseRedirect('/auth/direct_register') # Create user user = User( username=cleaned['desired_username'], first_name=cleaned['first_name'], last_name=cleaned['last_name'], email=cleaned['email'], ) user.set_password(cleaned['password']) user.is_active = True user.save() # Create userprofile up = UserProfile( user=user, nick=cleaned['desired_username'], date_of_birth=cleaned['date_of_birth'], zip_code=cleaned['zip_code'], address=cleaned['address'], phone=cleaned['phone'], ) up.save() attendee = Attendee(lan=lan, user=user) attendee.save() messages.success(request, _(u'Registration successful.')) return HttpResponseRedirect('/auth/direct_register') else: form = RegisterForm(request.POST, auto_id=True, error_class=InlineSpanErrorList) else: form = RegisterForm() return render(request, 'auth/direct_register.html', {'form': form, 'lan': lan})
def register(request): log = logging.getLogger(__name__) if request.user.is_authenticated: messages.error( request, _('Registrering av ny konto krever at du er logget ut.')) return HttpResponseRedirect('/') else: if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): cleaned = form.cleaned_data # Create user user = User( username=cleaned['username'], first_name=cleaned['first_name'].title(), last_name=cleaned['last_name'].title(), ) # Set remaining fields user.phone_number = cleaned['phone'] user.address = cleaned['address'].title() user.zip_code = cleaned['zip_code'] # Store password properly user.set_password(cleaned['password']) # Users need to be manually activated user.is_active = False user.save() # Set email address email = Email( user=user, email=cleaned['email'].lower(), ) email.primary = True email.save() # Create the registration token token = uuid.uuid4().hex try: rt = RegisterToken(user=user, email=email.email, token=token) rt.save() log.info('Successfully registered token for %s' % request.user) except IntegrityError as ie: log.error('Failed to register token for "%s" due to "%s"' % (request.user, ie)) email_context = {} verify_url = reverse('auth_verify', args=(token, )) email_context['verify_url'] = request.build_absolute_uri( verify_url) message = render_to_string('auth/email/welcome_tpl.txt', email_context) try: send_mail(_('Verifiser din konto'), message, settings.DEFAULT_FROM_EMAIL, [ email.email, ]) except SMTPException: messages.error( request, 'Det oppstod en kritisk feil, epostadressen er ugyldig!' ) return redirect('home') messages.success( request, _('Registreringen var vellykket. Se tilsendt epost for verifiseringsinstrukser.' )) return HttpResponseRedirect('/') else: form = RegisterForm(request.POST, auto_id=True) else: form = RegisterForm() return render(request, 'auth/register.html', { 'form': form, })
def register(request): log = logging.getLogger(__name__) if request.user.is_authenticated: messages.error( request, _("Registrering av ny konto krever at du er logget ut.")) return HttpResponseRedirect("/") else: if request.method == "POST": form = RegisterForm(request.POST) if form.is_valid(): cleaned = form.cleaned_data # Create user user = User( username=cleaned["username"], first_name=cleaned["first_name"].title(), last_name=cleaned["last_name"].title(), ) # Set remaining fields user.phone_number = cleaned["phone"] user.address = cleaned["address"].title() user.zip_code = cleaned["zip_code"] # Store password properly user.set_password(cleaned["password"]) # Users need to be manually activated user.is_active = False user.save() # Set email address email = Email(user=user, email=cleaned["email"].lower()) email.primary = True email.save() # Create the registration token token = uuid.uuid4().hex try: rt = RegisterToken(user=user, email=email.email, token=token) rt.save() log.info("Successfully registered token for %s" % request.user) except IntegrityError as ie: log.error('Failed to register token for "%s" due to "%s"' % (request.user, ie)) email_context = {} verify_url = reverse("auth_verify", args=(token, )) email_context["verify_url"] = request.build_absolute_uri( verify_url) message = render_to_string("auth/email/welcome_tpl.txt", email_context) try: send_mail( _("Verifiser din konto"), message, settings.DEFAULT_FROM_EMAIL, [email.email], ) except SMTPException: messages.error( request, "Det oppstod en kritisk feil, epostadressen er ugyldig!", ) return redirect("home") messages.success( request, _("Registreringen var vellykket. Se tilsendt epost for verifiseringsinstrukser." ), ) return HttpResponseRedirect("/") else: form = RegisterForm(request.POST, auto_id=True) else: form = RegisterForm() return render(request, "auth/register.html", {"form": form})