Пример #1
0
def registration_view(request):
    form = RegistrationForm(request.POST)
    if request.POST:
        if form.is_valid():
            if request.POST['password'] < 6:
                return HttpResponseForbidden(
                    'The password must be at least 6 characters.')
            if len(UserEx.objects.filter(email=request.POST['email'])) > 0:
                return HttpResponseForbidden(
                    'The email address is already in use.')
            new_user = UserEx.objects.create_user(
                username=request.POST['email'],
                email=request.POST['email'],
                password=request.POST['password'],
                facebook_name=request.POST['first_name'] + ' ' +
                request.POST['last_name'],
                picture='http://www.gravatar.com/avatar/' +
                hashlib.md5(str(request.POST['email']).lower()).hexdigest() +
                '?s=100&d=identicon&r=G')
            new_user.is_active = 0
            new_user.save()
            if isinstance(new_user, UserEx):
                send_activation_email(new_user)
                return HttpResponse({'success': True})
            else:
                return HttpResponseForbidden(
                    'An error has occurred, please contact us.')
        else:
            return HttpResponseForbidden()
Пример #2
0
    def register(self, request, **kwargs):
        self.method_check(request, allowed=['post'])
        try:
            req = json.loads(request.body)
            if any(
                    x not in req for x in
                ['full_name', 'username', 'password', 'password_verification'
                 ]):
                raise BadRequest(
                    'You have a missing parameter in your request.')
            full_name = req['full_name']
            username = req['username']
            password = req['password']
            password_verification = req['password_verification']

            #try:
            #    validate_email(username)
            #except ValidationError:
            #    return self.create_response(request, {'success': False,
            #                                          'reason': 'Please enter a valid email address.'})

            if UserEx.objects.filter(email=username).exists():
                return self.create_response(
                    request, {
                        'success': False,
                        'reason': 'The email address is already registered.'
                    })
            if password != password_verification:
                return self.create_response(
                    request, {
                        'success': False,
                        'reason': 'The passwords do not match.'
                    })
            else:
                new_user = UserEx.objects.create_user(
                    username=username,
                    email=username,
                    password=password,
                    facebook_name=full_name,
                    picture='http://www.gravatar.com/avatar/' +
                    hashlib.md5(str(username).lower()).hexdigest() +
                    '?s=100&d=identicon&r=G')
                new_user.is_active = 0
                new_user.save()
                if isinstance(new_user, UserEx):
                    send_activation_email(new_user)
                    return self.create_response(request, {'success': True})
                else:
                    return self.create_response(request, {'success': False})
        except (ValueError, KeyError):
            raise BadRequest('Your JSON is invalid')
Пример #3
0
    def register(self, request, **kwargs):
        self.method_check(request, allowed=['post'])
        try:
            req = json.loads(request.body)
            if any(x not in req for x in ['full_name', 'username', 'password', 'password_verification']):
                raise BadRequest('You have a missing parameter in your request.')
            full_name = req['full_name']
            username = req['username']
            password = req['password']
            password_verification = req['password_verification']

            #try:
            #    validate_email(username)
            #except ValidationError:
            #    return self.create_response(request, {'success': False,
            #                                          'reason': 'Please enter a valid email address.'})

            if UserEx.objects.filter(email=username).exists():
                return self.create_response(request, {'success': False,
                                                      'reason': 'The email address is already registered.'})
            if password != password_verification:
                return self.create_response(request, {'success': False,
                                                      'reason': 'The passwords do not match.'})
            else:
                new_user = UserEx.objects.create_user(username=username, email=username, password=password,
                                                      facebook_name=full_name,
                                                      picture='http://www.gravatar.com/avatar/' +
                                                              hashlib.md5(str(username).lower()).hexdigest() +
                                                              '?s=100&d=identicon&r=G')
                new_user.is_active = 0
                new_user.save()
                if isinstance(new_user, UserEx):
                    send_activation_email(new_user)
                    return self.create_response(request, {'success': True})
                else:
                    return self.create_response(request, {'success': False})
        except (ValueError, KeyError):
            raise BadRequest('Your JSON is invalid')
Пример #4
0
def registration_view(request):
    form = RegistrationForm(request.POST)
    if request.POST:
        if form.is_valid():
            if request.POST['password'] < 6:
                return HttpResponseForbidden('The password must be at least 6 characters.')
            if len(UserEx.objects.filter(email=request.POST['email'])) > 0:
                return HttpResponseForbidden('The email address is already in use.')
            new_user = UserEx.objects.create_user(username=request.POST['email'], email=request.POST['email'],
                                                  password=request.POST['password'],
                                                  facebook_name=request.POST['first_name'] + ' ' + request.POST['last_name'],
                                                  picture='http://www.gravatar.com/avatar/' +
                                                        hashlib.md5(str(request.POST['email']).lower()).hexdigest() +
                                                        '?s=100&d=identicon&r=G')
            new_user.is_active = 0
            new_user.save()
            if isinstance(new_user, UserEx):
                send_activation_email(new_user)
                return HttpResponse({'success': True})
            else:
                return HttpResponseForbidden('An error has occurred, please contact us.')
        else:
            return HttpResponseForbidden()