def before_questionnaire_request(): metadata = get_metadata(current_user) if not metadata: raise NoTokenException(401) logger.bind(tx_id=metadata['tx_id']) values = request.view_args if check_multiple_survey(metadata, values): raise MultipleSurveyError logger.bind(eq_id=values['eq_id'], form_type=values['form_type'], ce_id=values['collection_id']) logger.info('questionnaire request', method=request.method, url_path=request.full_path) session_store = get_session_store() session_data = session_store.session_data language_code = request.args.get('language_code') if language_code: session_data.language_code = language_code session_store.save() g.schema = load_schema_from_session_data(session_data)
def before_post_submission_request(): session_store = get_session_store() if not session_store or not session_store.session_data: raise NoTokenException(401) session_data = session_store.session_data g.schema = load_schema_from_session_data(session_data) logger.bind(tx_id=session_data.tx_id) values = request.view_args logger.bind(eq_id=values['eq_id'], form_type=values['form_type']) logger.info('questionnaire request', method=request.method, url_path=request.full_path) metadata_from_session_data = { 'tx_id': session_data.tx_id, 'eq_id': session_data.eq_id, 'form_type': session_data.form_type, } if check_multiple_survey(metadata_from_session_data, values): raise NoTokenException(401)