Exemple #1
0
def login(req, username, password):

    user = dms.username.get_by_id(username)
    if user and user.username==username:
        if user.password == password:
            if not sessions.has_key(username):
                sessions.add(username, req.connection.remote_addr[0])
    
            # establish random 20 character session_id.
            # 
            chars = string.letters + string.digits
            session_id = ''
            for x in range(20):
                session_id += whrandom.choice(chars)
            user.session_id = session_id
            user.save()
                    
            log(3, 'setting cookie')
            req.headers_out['Set-Cookie']='lampadas=' + session_id + '; path=/; expires=Wed, 09-Nov-2030 23:59:00 GMT'
            uri = URI('home' + referer_lang_ext(req))
            uri.base = '../../'
            return page_factory.page(uri)
        else:
            return "Wrong password"
    else:
        return "User not found"
Exemple #2
0
def logout(req, username):
    sessions.delete(username)

    user = dms.username.get_by_id(username)
    user.session_id = ''
    user.save()

    log(3, 'clearing cookie')
    req.headers_out['Set-Cookie']='lampadas=foo; path=/; expires=Wed, 09-Nov-1980 23:59:00 GMT'
    uri = URI('home' + referer_lang_ext(req))
    uri.base = '../../'
    return page_factory.page(uri)
Exemple #3
0
def handler(req):

    log(3, 'handling request: ' + req.uri)
    uri = URI(req.uri)

    filename = config.file_dir + uri.path + '/' + uri.filename
    filename = filename.replace('//', '/')
    filename = filename.replace('//', '/')
    filename = filename.replace('//', '/')
    log(3, 'looking for file ' + filename)

    if os.path.isfile(filename):
        send_File(req, filename)
    else:
        log(3, 'Sending dynamic page: ' + req.uri)
        session = sessions.get_session(req)
        send_HTML(req, page_factory.page(uri))
    return apache.OK