Added new session system, more simple
This commit is contained in:
parent
79a7f2291d
commit
4bebd7a6c4
10 changed files with 172 additions and 55 deletions
|
|
@ -44,7 +44,6 @@ class GetPostFiles:
|
|||
#Clean csrf_token
|
||||
|
||||
s['csrf_token']=''
|
||||
s.save()
|
||||
|
||||
|
||||
else:
|
||||
|
|
|
|||
|
|
@ -1,6 +1,17 @@
|
|||
from hashlib import sha512
|
||||
from hashlib import sha512, sha256
|
||||
from base64 import b64encode
|
||||
from os import urandom
|
||||
|
||||
def create_key_encrypt(n=10):
|
||||
|
||||
return sha512(urandom(n)).hexdigest()
|
||||
|
||||
def create_key_encrypt_256(n=10):
|
||||
|
||||
return sha256(urandom(n)).hexdigest()
|
||||
|
||||
def create_key(n=10):
|
||||
|
||||
rand_bytes=urandom(n)
|
||||
|
||||
return b64encode(rand_bytes).decode('utf-8')
|
||||
|
|
|
|||
|
|
@ -92,8 +92,6 @@ class SimpleList:
|
|||
self.order_by=self.order_defaults[ order_k ]
|
||||
|
||||
self.s['order']=order_k
|
||||
|
||||
self.s.save()
|
||||
|
||||
def obtain_field_search(self):
|
||||
|
||||
|
|
@ -115,8 +113,6 @@ class SimpleList:
|
|||
self.change_order[field_k]=1
|
||||
else:
|
||||
self.change_order[field_k]=0
|
||||
|
||||
self.s.save()
|
||||
|
||||
self.order_field=self.s['order_field']
|
||||
|
||||
|
|
@ -182,5 +178,9 @@ class SimpleList:
|
|||
|
||||
self.model.yes_reset_conditions=True
|
||||
|
||||
return self.t.load_template('utils/list.phtml', simplelist=self, list=list_items, pages=pages)
|
||||
listing=self.t.load_template('utils/list.phtml', simplelist=self, list=list_items, pages=pages)
|
||||
|
||||
list_items.close()
|
||||
|
||||
return listing
|
||||
|
||||
|
|
|
|||
|
|
@ -266,8 +266,6 @@ def set_flash_message(message):
|
|||
|
||||
s['flash']=message
|
||||
|
||||
s.save()
|
||||
|
||||
def show_flash_message():
|
||||
|
||||
message=""
|
||||
|
|
@ -281,8 +279,6 @@ def show_flash_message():
|
|||
|
||||
s['flash']=''
|
||||
|
||||
s.save()
|
||||
|
||||
return message
|
||||
|
||||
standard_t=ptemplate(__file__)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
#!/usr/bin/python3
|
||||
|
||||
from bottle import request
|
||||
from itsdangerous import JSONWebSignatureSerializer
|
||||
from paramecio.citoplasma.keyutils import create_key_encrypt, create_key_encrypt_256, create_key
|
||||
from bottle import request, response
|
||||
|
||||
try:
|
||||
|
||||
|
|
@ -10,14 +12,91 @@ except:
|
|||
|
||||
class config:
|
||||
cookie_name='paramecio_session'
|
||||
key_encrypt=create_key_encrypt_256(30)
|
||||
|
||||
|
||||
class ParamecioSession:
|
||||
|
||||
def __init__(self):
|
||||
self.session=request.environ.get(config.cookie_name)
|
||||
#self.token=request.get_cookie(config.cookie_name)
|
||||
|
||||
def get(self, name, default_value):
|
||||
|
||||
if not name in self.session:
|
||||
self.session[name]=default_value
|
||||
request.environ[config.cookie_name]=self.session
|
||||
request.environ[config.cookie_name]['save']=True
|
||||
|
||||
return self.session[name]
|
||||
|
||||
def __getitem__(self, key):
|
||||
|
||||
return self.session[key]
|
||||
|
||||
def __setitem__(self, key, value):
|
||||
|
||||
self.session[key]=value
|
||||
request.environ[config.cookie_name]=self.session
|
||||
request.environ[config.cookie_name]['save']=True
|
||||
|
||||
def __delitem__(self, key):
|
||||
|
||||
del self.session[key]
|
||||
request.environ[config.cookie_name]=self.session
|
||||
request.environ[config.cookie_name]['save']=True
|
||||
|
||||
def __contains__(self, key):
|
||||
|
||||
if key in self.session:
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
def __iter__(self):
|
||||
return self.session
|
||||
|
||||
def __str__(self):
|
||||
return self.session.__str__()
|
||||
|
||||
def keys(self):
|
||||
return self.session.keys()
|
||||
|
||||
|
||||
|
||||
def generate_session():
|
||||
|
||||
random_text=create_key_encrypt_256(30)
|
||||
response.set_cookie(config.cookie_name, random_text)
|
||||
request.environ[config.cookie_name]={'token': random_text}
|
||||
|
||||
def get_session():
|
||||
|
||||
if config.cookie_name in request.environ:
|
||||
|
||||
return ParamecioSession()
|
||||
else:
|
||||
return None
|
||||
|
||||
"""
|
||||
try:
|
||||
|
||||
return request.environ.get(config.cookie_name)
|
||||
# Check if session was loaded, if loaded, get cache
|
||||
|
||||
#return request.environ.get(config.cookie_name)
|
||||
code_session=request.get_cookie(config.cookie_name)
|
||||
|
||||
try:
|
||||
|
||||
#with fopen(config.session_opts['session.data_dir']) as signed_session:
|
||||
pass
|
||||
|
||||
|
||||
except:
|
||||
|
||||
return {}
|
||||
|
||||
except:
|
||||
|
||||
return {}
|
||||
"""
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue