Beispiel #1
0
def register_new_user(request):

    login = ''
    password = ''
    _ = request.translate
    dbsession = request.db
    try:
        login = request.params['username']
        password = request.params['password']
        email = request.params['email']
        vorname = request.params['vorname'] 
        nachname = request.params['nachname']
        
        if not login or not password or not email or not vorname or not nachname:
            raise WrongUserRegistrationData('Missing user registration information.')
        
        if 'form.submitted' in request.params:
            # check if there is already a user with the same login registered in the database
            if not Users.by_username(login, dbsession):
                # register new user in the databse
                newUser = Users(login=login, password=password, email=email, vorname=vorname, nachname=nachname)
                dbsession.add(newUser)
    
                # define response header
                #userName = newUser.vorname+' '+newUser.nachname
                headers = remember(request, login)
                # get target url and route to it
                target_url = request.route_url('home_login',_query={'georef':'on'})
                transaction.commit()
                return HTTPFound(location = target_url, headers = headers)
        
    except WrongUserRegistrationData:
        raise 
    except:
        raise InternalAuthentificationError('Internal server error while trying to register user. Please try again or contact the page administrator.')
 def createTestUser(cls):
     newUser = Users(login=login,
                     password=password,
                     email=email,
                     vorname=vorname,
                     nachname=nachname)
     cls.dbsession.add(newUser)
     cls.user = newUser