Guest User

Untitled

a guest
Jul 14th, 2018
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.02 KB | None | 0 0
  1. import cgi
  2. import hashlib
  3. import uuid
  4.  
  5. import database
  6.  
  7. def sha256(data):
  8.     return hashlib.sha256(data).hexdigest()
  9.  
  10. class User(object):
  11.     banned=-1
  12.     guest=0
  13.     member=10
  14.     mod=20
  15.     admin=30
  16.     def __init__(self):
  17.         self.username='Guest'
  18.         self.session=uuid.uuid4()
  19.         self.level=User.guest
  20.         self.userid=0
  21.         create_session()
  22.    
  23.     def __init__(self,session):
  24.         r=database.query("SELECT * FROM sessions WHERE id='%s';"%session)
  25.         if len(r)==0:
  26.             self.username='Guest'
  27.             self.session=uuid.uuid4()
  28.             self.level=User.guest
  29.             self.userid=0
  30.             create_session()
  31.             return
  32.         r=r[0]
  33.         self.session=session
  34.         self.userid=r["user"]
  35.         if userid==0:
  36.             self.username='Guest'
  37.             self.session=uuid.uuid4()
  38.             self.level=User.guest
  39.             self.userid=0
  40.             create_session()
  41.             return
  42.         r=database.query("SELECT * FROM users WHERE id='%s';"%self.userid)
  43.         r=r[0]
  44.         self.username=r["username"]
  45.         self.level=r["access"]
  46.         create_session()
  47.    
  48.     def login(self,username,password):
  49.         password=sha256(password)
  50.         r=database.query("SELECT * FROM users WHERE username='%s' AND password='%s';"%(database.escape(username),password))
  51.         if len(r)==0:
  52.             return False
  53.         r=r[0]
  54.         self.username=r["username"]
  55.         self.level=r["access"]
  56.         self.userid=r["id"]
  57.         database.query("UPDATE sessions SET username='%s' WHERE id='%s';"%(self.username))
  58.         database.query("UPDATE sessions SET user='%s' WHERE id='%s';"%(self.userid))
  59.         database.query("UPDATE sessions SET access='%s' WHERE id='%s';"%(self.level))
  60.         return True
  61.    
  62.     def logout(self):
  63.         if self.session!="" and self.level!=0:
  64.         database.query("UPDATE sessions SET username='%s' WHERE id='Guest';")
  65.         database.query("UPDATE sessions SET user='%s' WHERE id='0';")
  66.         database.query("UPDATE sessions SET access='%s' WHERE id='0';")
  67.         return True
  68.        
  69.     def create_session(self):
  70.         database.query("INSERT INTO sessions (id,user,expire,username,history,cmd,cmddata) VALUES('%s',%s,'%s','%s','%s','','','');"%(self.session,self.userid,time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime()),self.username,self.level)
Add Comment
Please, Sign In to add comment