Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so dont bother with any of their useless mail servers here and just use oauth login instead. Thank the nice Russians for causing that. :)

Paste

Pasted as Plain Text by count12 ( 14 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 = app.wsgifunc()
app.add_processor(auth_app_processor)

 

Revise this Paste

Children: 56457
Your Name: Code Language: