def registration(request): """Registration view""" if request.method == 'POST': form = RegistrationForm(request.POST) if form.is_valid(): username = form.cleaned_data['username'] name = form.cleaned_data['name'] surname = form.cleaned_data['surname'] email = form.cleaned_data['email'] password = form.cleaned_data['repeat_password'] ssh_public_key = form.cleaned_data['ssh_public_key'] studies_year = form.cleaned_data['studies_year'] if not username: username = strip_polish_letters(name[0] + surname).lower() user = TemporaryUser(username=username, name=name, surname=surname, email=email, password=password, ssh_public_key=ssh_public_key, studies_year=studies_year, confirmed=False, confirmation_link=generate_confirmation_link()) user.save() send_confirmation_mail(user) form = LogInForm() return render_to_response('invitation.html', {'confirmed': 4, 'form': form}, context_instance=RequestContext(request)) else: form = RegistrationForm() return render_to_response('registration.html', {'form': form,}, context_instance=RequestContext(request))
def clean_username(self): """Checking if there is no user with the same login in case wthe user provide username""" username = self.cleaned_data.get("username") if user_exist(username): self._errors["username"] = self.error_class(["Taki user już istnieje. Wybierz inny login"]) return strip_polish_letters(username)
def clean_surname(self): """Checking if there is no user with the same login""" name = self.cleaned_data.get("name") surname = self.cleaned_data.get("surname") username = name[0] + surname if user_exist(strip_polish_letters(username)): self._errors["username"] = self.error_class([u"Taki użytkownik już istnieje. Wybierz inny login"]) return surname