Esempio n. 1
0
def register(request):
    if request.method == "POST":
        username = request.POST["email"].replace(".", "").replace("_", "").replace("-", "").split("@")[0]
        while True:
            try:
                User.objects.get(username=username)
                username += str(random.randint(0, 9))
            except User.DoesNotExist:
                break
        d = {
            "username": username,
            "email": request.POST["email"],
            "csrfmiddlewaretoken": request.POST["csrfmiddlewaretoken"],
            "password1": request.POST["password1"],
            "password2": request.POST["password2"],
        }
        form = RegistrationFormUniqueEmail(data=d)
        if form.is_valid():
            new_user = form.save()
            messages.add_message(
                request,
                messages.SUCCESS,
                "Registro feito com sucesso, por favor verifique seu email para continuar com o processo de associação.",
            )
            return HttpResponseRedirect("/")
    else:
        form = RegistrationFormUniqueEmail()
    return render_to_response("register.html", {"form": form}, context_instance=RequestContext(request))
Esempio n. 2
0
def sign_up(request):
    view = RegistrationView()
    form = RegistrationFormUniqueEmail(request.POST)

    if form.is_valid():
        user = view.register(request, form)
        response_data = {'result': 'success',
                         'username': user.username,
                         'guest': False}
        return Response(data=response_data,
                        status=status.HTTP_200_OK)
    else:
        errors = []
        if 'username' not in form.cleaned_data:
            errors.append("Username is invalid or already in use")
        if 'password1' not in form.cleaned_data:
            errors.append("Password must be specified")
        if 'password2' not in form.cleaned_data or \
           form.cleaned_data['password1'] != form.cleaned_data['password2']:
            errors.append("Passwords do not match")
        if 'email' not in form.cleaned_data:
            errors.append("Email is invalid or already in use")

        if len(errors) == 0:
            errors.append("Invalid data submitted")

        response_data = {"errors": errors}
        return Response(data=response_data,
                        status=status.HTTP_400_BAD_REQUEST)
Esempio n. 3
0
def sign_up(request):
    view = RegistrationView()
    form = RegistrationFormUniqueEmail(request.POST)

    if form.is_valid():
        user = view.register(request, form)
        response_data = {
            'result': 'success',
            'username': user.username,
            'guest': False
        }
        return Response(data=response_data, status=status.HTTP_200_OK)
    else:
        errors = []
        if 'username' not in form.cleaned_data:
            errors.append("Username is invalid or already in use")
        if 'password1' not in form.cleaned_data:
            errors.append("Password must be specified")
        if 'password2' not in form.cleaned_data or \
           form.cleaned_data['password1'] != form.cleaned_data['password2']:
            errors.append("Passwords do not match")
        if 'email' not in form.cleaned_data:
            errors.append("Email is invalid or already in use")

        if len(errors) == 0:
            errors.append("Invalid data submitted")

        response_data = {"errors": errors}
        return Response(data=response_data, status=status.HTTP_400_BAD_REQUEST)
Esempio n. 4
0
def create_endpoint(request):
    form = RegistrationFormUniqueEmail(request.data)
    if form.is_valid():
        if Site._meta.installed:
            site = Site.objects.get_current()
        else:
            site = RequestSite(request)

        new_user_instance = form.save()

        new_user = RegistrationProfile.objects.create_inactive_user(
            new_user=new_user_instance,
            site=site,
            send_email=SEND_ACTIVATION_EMAIL,
            request=request,
        )
        signals.user_registered.send(sender=form.__class__,
                                     user=new_user,
                                     request=request)
        serializer = UserSerializer(new_user, many=False)

        try:
            headers = {'Location': serializer.data[api_settings.URL_FIELD_NAME]}
        except (TypeError, KeyError):
            headers = {}

        return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers)
    else:
        return Response(form.errors, status=status.HTTP_400_BAD_REQUEST)
Esempio n. 5
0
def registration(request, form, auth_form):
    if request.user.is_authenticated():
        return HttpResponseRedirect("/")

    if request.POST.get('Register', None):
        form = RegistrationFormUniqueEmail(request.POST)
        if form.is_valid() and request.POST.get('tos', None):
            cleaned = form.cleaned_data
            reg_view = RegistrationView()
            try:
                reg_view.register(request, **cleaned)
                return render_to_response("registration/registration_complete.html", locals())
            except ValueError:
                return render_to_response("registration/registration_closed.html")
        else:
            if not request.POST.get('tos', None):
                form.errors.update({"rules": _("Agreement with terms is required")})

    if request.POST.get('Login', None):
        auth_form = AuthenticationForm(request, data=request.POST)
        if auth_form.is_valid():
            user = authenticate(email=request.POST.get("username", ""), password=request.POST.get("password", ""))
            login(request, user)
            try:
                cabinet = Cabinet.objects.get(user=user.pk)
            except ObjectDoesNotExist:
                cabinet = Cabinet(user=user, create_user=user)
                cabinet.save()

            return HttpResponseRedirect(request.GET.get('next', '/'))

    return render_to_response("centerpokupok/Registr/registr.html", locals(), context_instance=RequestContext(request))
Esempio n. 6
0
def register(request):
    form = RegistrationFormUniqueEmail(request.POST or None)
    if form.is_valid():
        reg_backend = RegistrationBackend()
        new_user = reg_backend.register(request, **form.cleaned_data)
        new_user.is_active = True
        new_user.save()
        # login
        new_user.backend = 'django.contrib.auth.backends.ModelBackend'
        auth.login(request, new_user)
        next_page = request.GET.get(REDIRECT_FIELD_NAME,
                                    settings.LOGIN_REDIRECT_URL)
        return redirect(next_page)

    if request.is_ajax():
        return render_popup(
            request, 'account/register.html', {
                'base': 'base_form.html',
                'form_url': reverse('account_register'),
                'form': form
            })
    else:
        return render(request, 'account/register.html', {
            'base': 'base.html',
            'form': form
        })
Esempio n. 7
0
def register(request):
    if request.method == 'POST':
        form = RegistrationFormUniqueEmail(data=request.POST, files=request.FILES)
        if form.is_valid():
            new_user = form.save()
            messages.add_message(request, messages.SUCCESS, 'Registro feito com sucesso, por favor verifique seu email para continuar com o processo de associação.')
            return HttpResponseRedirect('/')
    else: 
        form = RegistrationFormUniqueEmail()
    return render_to_response('register.html', {'form': form}, context_instance=RequestContext(request))
Esempio n. 8
0
def register_home(request):
    loginform = AuthenticationForm()
    if request.method == "POST":  # If the form registration has been submitted
        form = RegistrationFormUniqueEmail(request.POST)
        if form.is_valid():
            usr, em, pw = form.cleaned_data["username"], form.cleaned_data["email"], form.cleaned_data["password1"]
            user = RegistrationView.register(RegistrationView, request=request, username=usr, email=em, password1=pw)
            return HttpResponseRedirect("/playlist")
        else:
            return render(request, "home.html", {"regform": form, "anchor": "register", "loginform": loginform})
    else:
        form = RegistrationFormUniqueEmail()
        return render(request, "home.html", {"regform": form, "loginform": loginform})
Esempio n. 9
0
def sign_up(request):
    view = RegistrationView()
    form = RegistrationFormUniqueEmail(request.POST)

    if form.is_valid():
        from_beekeepers = ('app.beescape.org' in request.get_host() or
                           'beekeepers' in request.GET)
        user = view.register(request, form)
        origin_app = \
            UserProfile.BEEKEEPERS if from_beekeepers else \
            UserProfile.POLLINATION

        UserProfile.objects.create(
            user=user,
            origin_app=origin_app
        )

        response_data = {'result': 'success',
                         'username': user.username,
                         'guest': False}
        return Response(data=response_data,
                        status=status.HTTP_200_OK)
    else:
        errors = []
        if 'username' not in form.cleaned_data:
            errors.append("Username is invalid or already in use")
        if 'password1' not in form.cleaned_data:
            errors.append("Password must be specified")
        if 'password2' not in form.cleaned_data or \
           form.cleaned_data['password1'] != form.cleaned_data['password2']:
            errors.append("Passwords do not match")
        if 'email' not in form.cleaned_data:
            errors.append("Email is invalid or already in use")

        if len(errors) == 0:
            errors.append("Invalid data submitted")

        response_data = {"errors": errors}
        return Response(data=response_data,
                        status=status.HTTP_400_BAD_REQUEST)
Esempio n. 10
0
def register(request):
    form = RegistrationFormUniqueEmail(request.POST or None)
    if form.is_valid():
        reg_backend = RegistrationBackend()
        new_user = reg_backend.register(request, **form.cleaned_data)
        new_user.is_active = True
        new_user.save()
        # login
        new_user.backend='django.contrib.auth.backends.ModelBackend'
        auth.login(request, new_user)
        next_page = request.GET.get(REDIRECT_FIELD_NAME, settings.LOGIN_REDIRECT_URL)
        return redirect(next_page)

    if request.is_ajax():
        return render_popup(request, 'account/register.html', {
            'base': 'base_form.html',
            'form_url': reverse('account_register'),
            'form': form
        })
    else:
        return render(request, 'account/register.html', {
            'base': 'base.html',
            'form': form
        })