from otree.api import * import pandas as pd from ..utilities import * from .Constants import * from .Functions import get_random_nicknames class Introduction(Page): timeout_seconds = 60 @staticmethod def is_displayed(self): return self.round_number == 1 def before_next_page(player, timeout_happened): # Read questions from file # Each of the following variables contain a list of pandas dataframes of easy, medium and hard questions # Reading CSVs US_history_easy, US_history_medium, US_history_hard = read_csv_file(US_HISTORY_PATH) geography_easy, geography_medium, geography_hard = read_csv_file(GEOGRAPHY_PATH) literature_easy, literature_medium, literature_hard = read_csv_file(LITERATURE_PATH) pop_culture_easy, pop_culture_medium, pop_culture_hard = read_csv_file(POP_CULTURE_PATH) science_easy, science_medium, science_hard = read_csv_file(SCIENCE_PATH) # Dataframe to dictionary US_history_easy_str, US_history_medium_str, US_history_hard_str = US_history_easy.to_json(orient = 'records'), \ US_history_medium.to_json(orient = 'records'), US_history_hard.to_json(orient = 'records') geography_easy_str, geography_medium_str, geography_hard_str = geography_easy.to_json(orient = 'records'), \ geography_medium.to_json(orient = 'records'), geography_hard.to_json(orient = 'records') literature_easy_str, literature_medium_str, literature_hard_str = literature_easy.to_json(orient = 'records'), \ literature_medium.to_json(orient = 'records'), literature_hard.to_json(orient = 'records') pop_culture_easy_str, pop_culture_medium_str, pop_culture_hard_str = pop_culture_easy.to_json(orient = 'records'), \ pop_culture_medium.to_json(orient = 'records'), pop_culture_hard.to_json(orient = 'records') science_easy_str, science_medium_str, science_hard_str = science_easy.to_json(orient = 'records'), \ science_medium.to_json(orient = 'records'), science_hard.to_json(orient = 'records') # Save dicts to session var player.session.vars['US_history_easy'] = US_history_easy_str player.session.vars['US_history_medium'] = US_history_medium_str player.session.vars['US_history_hard'] = US_history_hard_str player.session.vars['geography_easy'] = geography_easy_str player.session.vars['geography_medium'] = geography_medium_str player.session.vars['geography_hard'] = geography_hard_str player.session.vars['literature_easy'] = literature_easy_str player.session.vars['literature_medium'] = literature_medium_str player.session.vars['literature_hard'] = literature_hard_str player.session.vars['pop_culture_easy'] = pop_culture_easy_str player.session.vars['pop_culture_medium'] = pop_culture_medium_str player.session.vars['pop_culture_hard'] = pop_culture_hard_str player.session.vars['science_easy'] = science_easy_str player.session.vars['science_medium'] = science_medium_str player.session.vars['science_hard'] = science_hard_str # Save score to session var init_score = player.group.score print(f'init_score: {init_score}') player.session.vars['score'] = init_score