Beispiel #1
0
def user_register_validator(form, values):
    exception = Invalid(form, 'There was a problem with your submission')
    if values['password'] != values['confirm_password']:
        exception['confirm_password'] = '******'

    user = User.objects(name=values['name'])
    if user:
        exception['name'] = 'You have to choose a unique name'

    user = User.objects(email=values['email'])
    if user:
        exception['email'] = 'Email already exists in our database'

    if exception.children:
        raise exception
Beispiel #2
0
    def user_inner_validator(form, values):
        exception = Invalid(form, 'There was a problem with your submission')

        if values['password'] and values['password'] != values['confirm_password']:
            exception['confirm_password'] = '******'

        user = User.objects(name=values['name'])
        if user and values['name'] != current_user.name:
                exception = unique_exception(exception, 'name')

        user = User.objects(email=values['email'])
        if user and values['email'] != current_user.email:
                exception = unique_exception(exception, 'email')

        if exception.children:
            raise exception
Beispiel #3
0
def admin_user_create(request):
    schema = UserRegisterSchema(validator=user_register_validator)
    form = Form(schema, buttons=('submit',))

    if 'submit' in request.POST:
        controls = request.POST.items()

        try:
            values = form.validate(controls)
            user = User.from_data(values)
            user.tzoffset = values['tzoffset']
            user.save()

            return HTTPFound(location=request.route_url('admin_user'))

        except ValidationFailure, e:
            form_render = e.render()
Beispiel #4
0
def register(request):

    schema = UserFormSchema(validator=user_register_validator)
    form = Form(schema, buttons=('submit',))

    userid = authenticated_userid(request)
    if userid:
        return HTTPFound(location='/')

    if 'submit' in request.POST:
        controls = request.POST.items()

        try:
            values = form.validate(controls)

            user = User.from_data(values)
            user.tzoffset = values['tzoffset']
            user.save()

            headers = remember(request, str(user.id))
            return HTTPFound(location='/', headers=headers)

        except ValidationFailure, e:
            form_render = e.render()
Beispiel #5
0
def add_user_to_request(event):
    request = event.request
    userid = authenticated_userid(request)
    if (userid):
        request.user = User.objects().with_id(userid)
Beispiel #6
0
def admin_user(request):
    return {
        'users': User.objects()
    }