Dramatic performance optimitations clean sessions in startup request

This commit is contained in:
Antonio de la Rosa 2016-08-03 05:30:38 +02:00
parent a04a9e1e86
commit 793b7a040f
3 changed files with 51 additions and 9 deletions

View file

@ -66,16 +66,26 @@ if hasattr(config, 'format_time'):
if hasattr(config, 'timezone'):
timezone=config.timezone
@hook('before_request')
#@hook('before_request')
def set_timezone():
environ['TZ']=environ.get('TZ', timezone)
if environ['TZ']!=timezone:
environ['TZ']=timezone
time.tzset()
def set_timezone_session():
s=get_session()
timezone_local=timezone
if s!=None:
timezone_local=s.get('timezone', timezone)
if 'timezone' in s:
timezone_local=s['timezone']
#timezone_local=s.get('timezone', timezone)
environ['TZ']=environ.get('TZ', timezone_local)

View file

@ -5,6 +5,7 @@ from settings import config, modules
from beaker.middleware import SessionMiddleware
from mimetypes import guess_type
from paramecio.cromosoma.webmodel import WebModel
from paramecio.citoplasma.datetime import set_timezone
from itsdangerous import JSONWebSignatureSerializer
from paramecio.citoplasma.keyutils import create_key_encrypt, create_key_encrypt_256, create_key
#from paramecio.citoplasma.sessions import generate_session
@ -180,6 +181,8 @@ if config.debug==False:
def error404(error):
return 'Error: page not found'
set_timezone()
def run_app(app):
run(app=app, host=config.host, server=config.server_used, port=config.port, debug=config.debug, reloader=config.reloader)

View file

@ -44,6 +44,25 @@ module_admin=path.dirname(__file__)
env=env_theme(__file__)
# Preload modules
#Load menu
menu=get_menu(config_admin.modules_admin)
#arr_admin_modules={for k, in menu}
#d = {key: value[1] for (key, value) in menu.items()}
"""
d={}
for k, v in menu.items():
if k[:1]!='/':
d[k]=v[1]
print(d)
"""
@get('/'+config.admin_folder)
@get('/'+config.admin_folder+'/<module>')
@post('/'+config.admin_folder+'/<module>')
@ -87,10 +106,6 @@ def home(module='', submodule=''):
if c>0:
if s['privileges']==2:
#Load menu
menu=get_menu(config_admin.modules_admin)
#pass
if module in menu:
@ -117,7 +132,7 @@ def home(module='', submodule=''):
print("-"*60)
return "No exists admin module"
#args={'t': t, 'connection': connection}
content_index=new_module.admin(t=t, connection=connection)
@ -164,6 +179,8 @@ def home(module='', submodule=''):
s['login']=1
s['privileges']=arr_user['privileges']
s.save()
redirect(make_url(config.admin_folder))
else:
@ -220,6 +237,8 @@ def login():
s['csrf_token']=create_key_encrypt()
s.save()
return {'error': 1, 'csrf_token': s['csrf_token']}
else:
@ -264,7 +283,7 @@ def login():
response.set_cookie('remember_login', random_text, path="/", expires=timestamp, secret=key_encrypt)
#else:
#print(user_admin.query_error)
#s.save()
s.save()
return {'error': 0}
else:
@ -283,12 +302,16 @@ def login():
s['csrf_token']=create_key_encrypt()
s.save()
return {'error': 1, 'csrf_token': s['csrf_token']}
else:
s=get_session()
s['csrf_token']=create_key_encrypt()
s.save()
return {'error': 1, 'csrf_token': s['csrf_token']}
@ -341,6 +364,8 @@ def register():
#error['password_repeat']=I18n.lang('common', 'password_no_match', 'Passwords doesn\'t match')
s.save()
return error
else:
@ -412,6 +437,8 @@ def send_password():
s['csrf_token']=create_key_encrypt()
s.save()
return {'email': user_admin.fields['email'].txt_error, 'error': 1, 'csrf_token': s['csrf_token']}
else:
@ -501,4 +528,6 @@ def check_code_token():
s['csrf_token']=create_key_encrypt()
s.save()
return {'token': 'Error: token is not valid', 'error': 1, 'csrf_token': s['csrf_token']}