Commit c184fe5a authored by Romain Loth's avatar Romain Loth

debug DB format changes related

parent 923da642
......@@ -26,6 +26,7 @@ $lab_list=array();
// ajout des scholars
$loop = 0;
// NB this array was prepared in print_directory or print_scholar_directory
foreach ($scholars as $scholar) {
......
......@@ -107,7 +107,7 @@ HERE_QUERY;
arsort($scholar_array);
$scholar_id_array=array_keys($scholar_array);
var_dump($scholar_id_array)."<br/>" ;
// var_dump($scholar_id_array)."<br/>" ;
// liste des chercheurs
$scholars = array();
......
......@@ -76,6 +76,39 @@ def connect_db(config=REALCONFIG):
db="comex_shared"
)
def doors_uid_to_luid(doors_uid):
"""
Find corresponding luid
"""
db = connect_db()
db_c = db.cursor()
stmt = """
SELECT luid FROM scholars
WHERE doors_uid = "%s"
""" % doors_uid
n_rows = db_c.execute(stmt)
luid = None
if n_rows > 1:
db.close()
raise ValueError("non unique doors_uid %s" % doors_uid)
elif n_rows == 1:
luid = db_c.fetchone()[0]
db.close()
return luid
return connect(
host=config['SQL_HOST'],
port=int(config['SQL_PORT']),
user="root", # POSS change db ownership to a comexreg user
passwd="very-safe-pass",
db="comex_shared"
)
def get_field_aggs(a_field, hapax_threshold=int(REALCONFIG['HAPAX_THRESHOLD'])):
"""
Use case: api/aggs?field=a_field
......
......@@ -43,7 +43,7 @@ if __package__ == 'services':
from services.user import User, login_manager, doors_login, UCACHE
from services.text import keywords
from services.tools import restparse, mlog, re_hash, REALCONFIG
from services.db import connect_db, get_or_create_tokitems, save_pairs_sch_tok, delete_pairs_sch_tok, get_or_create_affiliation, save_scholar, get_field_aggs
from services.db import connect_db, get_or_create_tokitems, save_pairs_sch_tok, delete_pairs_sch_tok, get_or_create_affiliation, save_scholar, get_field_aggs, doors_uid_to_luid
from services.db_to_tina_api.extractDataCustom import MyExtractor as MySQL
else:
# when this script is run directly
......@@ -51,7 +51,7 @@ else:
from user import User, login_manager, doors_login, UCACHE
from text import keywords
from tools import restparse, mlog, re_hash, REALCONFIG
from db import connect_db, get_or_create_tokitems, save_pairs_sch_tok, delete_pairs_sch_tok, get_or_create_affiliation, save_scholar, get_field_aggs
from db import connect_db, get_or_create_tokitems, save_pairs_sch_tok, delete_pairs_sch_tok, get_or_create_affiliation, save_scholar, get_field_aggs, doors_uid_to_luid
from db_to_tina_api.extractDataCustom import MyExtractor as MySQL
# ============= app creation ============
......@@ -255,15 +255,16 @@ def login():
pwd = request.form['password']
# we do our doors request here server-side to avoid MiM attack on result
uid = doors_login(email, pwd, config)
doors_uid = doors_login(email, pwd, config)
luid = doors_uid_to_luid(doors_uid)
if uid:
login_ok = login_user(User(uid))
if luid:
login_ok = login_user(User(luid))
mlog('INFO', 'login of %s was %s' % (uid, str(login_ok)))
mlog('INFO', 'login of %s was %s' % (luid, str(login_ok)))
# TODO check cookie
# login_ok = login_user(User(uid), remember=True)
# login_ok = login_user(User(luid), remember=True)
# -------------
# creates REMEMBER_COOKIE_NAME
# which is itself bound to session cookie
......@@ -407,6 +408,8 @@ def register():
# dbg
# mlog("DEBUG", str(captcha_verifhash))
clean_records = {}
if captcha_userhash != captcha_verifhash:
mlog("INFO", "pb captcha rejected")
form_accepted = False
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment