from ast import Num from otree.api import * from settings import SESSION_CONFIG_DEFAULTS, SESSION_CONFIGS author= "Nathaniel Lawrence, LEMMA, Université Panthéon-Assas" doc = """ Presents final results for the session. """ ### Define constants here, in all-caps class C(BaseConstants): NAME_IN_URL = 'session' PLAYERS_PER_GROUP = None NUM_ROUNDS = 1 NUM_QUESTIONS = 9 + 1 CONVERSION_FACTOR = SESSION_CONFIG_DEFAULTS['conversion_factor'] CORRECT_ANSWER_FEE = cu(SESSION_CONFIG_DEFAULTS['correct_answer_fee'] * CONVERSION_FACTOR) class Subsession(BaseSubsession): pass class Group(BaseGroup): pass ### define the questions a player must answer here class Player(BasePlayer): ## Session indices day = models.IntegerField() app_sequence = models.IntegerField() inf_sequence = models.IntegerField() intervention = models.IntegerField() # PAGES class Results(Page): ## Session's final results @staticmethod def vars_for_template(player: Player): return dict( finalSavings='[SAVINGS ACCOUNT BALANCE PRESENTED HERE]', final_results='[ADDITIONAL REMUNERATION EARNED PRESENTED HERE]' ) class Final_Results(Page): @staticmethod def is_displayed(player: Player): return player.session.config['day'] == '4' ## Session's final results @staticmethod def vars_for_template(player: Player): return dict( selected_savings_game_round='[RANDOMLY CHOSEN ROUND]', selected_finalSavings='[SAVINGS ACCOUNT BALANCE PRESENTED HERE]', selected_final_results='[ADDITIONAL REMUNERATION EARNED PRESENTED HERE]' ) page_sequence = [Results, Final_Results]