from otree.api import Currency as c, currency_range from ._builtin import Page, WaitPage from .models import Constants class HoltLaury(Page): form_model = 'player' form_fields = ['d0', 'd1', 'd2', 'd3', 'd4', 'd5', 'd6', 'd7', 'd8', 'd9'] #def before_next_page(self): # self.player.set_payoff() def error_message(self, values): if values["d0"] is None or values["d1"] is None or values["d2"] is None or values["d3"] is None or \ values["d4"] is None or values["d5"] is None or values["d6"] is None or values["d7"] is None or \ values["d8"] is None or values["d9"] is None: return "Please make decision for every line before proceed." class ResultsWaitPage(WaitPage): def after_all_players_arrive(self): for p in self.group.get_players(): p.set_payoff() class Results(Page): def vars_for_template(self): return { 'picked_line': self.player.picked_d + 1, 'prob_1': self.player.picked_d*10, 'prob_2': 100-self.player.picked_d*10, 'decision': self.player.decision==1, 'payoff': self.player.payoff, } class ACTION_starting_page(Page): pass class starting_page(Page): pass page_sequence = [ ACTION_starting_page, #starting_page, HoltLaury, ResultsWaitPage, Results ]