Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
[email protected] webmail now available. Want one? Go here.
Cannot use outlook/hotmail/live here to register as they blocking our mail servers. #microsoftdeez
Obey the Epel!

Paste

Pasted as Plain Text by utek ( 11 years ago )
#!/usr/bin/python

import os


import web

urls = (
 '/', 'index',
 '/login', 'Login',
 '/logout', 'Logout',
 '/add', 'add', 
 '/secure','Secure', 
     )

render=web.template.render('/var/www/pvperformance/test/templates/', base='layout')
mrender=web.template.render('/var/www/pvperformance/test/templates/' )
db=web.database(dbn='sqlite',db='/var/www/pvperformance/test/users.db')



app = web.application(urls, globals()) 
# application = app.wsgifunc() 
session = web.session.Session(app, 
               web.session.DiskStore('/var/www/pvperformance/test/sessions'), 
               initializer={'count': 0}) 



class index:
 def GET(self):
  return render.index() 


class Secure:
 def GET(self):
  return """
   <html>Hello %s 
   <hr>
   <a href="/logout">Log me out</a></html>
   """ % web.ctx.username   


class Login:

 def GET(self):
  return """
  <html>
  <form acti method="post">
  <input type="text" name="username">
  <input type="submit" value="Login">
  </form>
  </html>
  """

 def POST(self):
  # only set cookie if user login succeeds
  name = web.input(username=None).username
  if name:
   web.setcookie('username', name)
  raise web.seeother('/secure')


class Logout:

 def GET(self):
  web.setcookie('username', '', expires=-1)
  raise web.seeother('/login')


# Auth Processor
def auth_app_processor(handle):
 path = web.ctx.path
 web.ctx.username = name = web.cookies(username=None).username
 if not name and path != '/login':
  raise web.seeother('/login')
 return handle()

app.add_processor(auth_app_processor)
application = app.wsgifunc()

 

Revise this Paste

Parent: 56456
Your Name: Code Language: