def is_info(fun):
def decorated():
if session.is_info is None:
entrant = db(db.a_persons.WEB_ID == auth.user_id).select(
db.a_persons.FILE_CODE0, db.a_persons.F, db.a_persons.I, db.a_persons.O,
db.a_persons.id,
db.a_persons.BIRTHDAY, db.a_persons.GENDER, db.a_persons.BIRTHPLACE, db.a_persons.GRADUATION_LEVEL,
db.a_persons.COUNTRY, db.a_persons.REGION, db.a_persons.ADR_INDEX, db.a_persons.ADR_DISTRICT,
db.a_persons.ADR_LOC_TYPE, db.a_persons.ADR_TOWN, db.a_persons.ADR_STREET_TYPE, db.a_persons.ADR_STREET,
db.a_persons.ADR_HOUSE, db.a_persons.ADR_BUILDING, db.a_persons.ADR_FLAT, db.a_persons.PHONE,
db.a_persons.NEED_HOSTEL, db.a_persons.PREP_COURSE, db.a_persons.ARMY, db.a_persons.EXTRA,
db.a_persons.WORK_EXP, db.a_persons.PASS_ID, db.a_persons.GRADUATION_YEAR, db.a_persons.EDU_REGION,
db.a_persons.LANGUAGE).first()
if entrant is None:
redirect(URL('user', 'index', args=['logout']))
session.is_info = True
session.myvar = auth.user_id
session.is_info = True
session.file_code = entrant.FILE_CODE0
session.middle_name = entrant.O
session.birthday = entrant.BIRTHDAY
session.sex = entrant.GENDER
session.birthplace = entrant.BIRTHPLACE
session.country = entrant.COUNTRY
session.region = entrant.REGION
session.adr_index = entrant.ADR_INDEX
session.adr_district = entrant.ADR_DISTRICT
session.adr_loc_type = entrant.ADR_LOC_TYPE
session.adr_town = entrant.ADR_TOWN
session.adr_street_type = entrant.ADR_STREET_TYPE
session.adr_street = entrant.ADR_STREET
session.adr_house = entrant.ADR_HOUSE
session.adr_building = entrant.ADR_BUILDING
session.adr_flat = entrant.ADR_FLAT
session.phone = entrant.PHONE
session.need_hostel = entrant.NEED_HOSTEL
session.prep_course = entrant.PREP_COURSE
session.army = entrant.ARMY
session.extra = entrant.EXTRA
session.work_exp = entrant.WORK_EXP
session.pass_id = entrant.PASS_ID
session.graduation_level = entrant.GRADUATION_LEVEL
session.graduation_year = entrant.GRADUATION_YEAR
session.edu_region = entrant.EDU_REGION
session.language = entrant.LANGUAGE
return fun()
else:
return fun()
return decorated