from otree.api import Currency as c, currency_range from ._builtin import Page, WaitPage from .models import Constants class Introduction(Page): def is_displayed(self): return self.round_number == 1 def vars_for_template(self): self.group.set_scores() self.player.capital() return dict(temp=self.player.task_1_score) class Investment(Page): form_model = 'player' form_fields = ['development_investment'] def vars_for_template(self): self.group.set_scores() return dict(temp=self.player.task_1_score) class ResultsFailure(Page): def is_displayed(self): return self.player.development_investment == 0 and self.round_number != self.subsession.success def vars_for_template(self): self.player.capital() self.player.balance_of_payments() class ResultsSuccess(Page): def is_displayed(self): return self.round_number == self.subsession.success def vars_for_template(self): self.player.capital() self.player.balance_of_payments() self.player.set_payoffs() player_in_all_rounds = self.player.in_all_rounds() def app_after_this_page(player, upcoming_apps): return upcoming_apps[0] class StopInvesting(Page): def is_displayed(self): return self.player.development_investment == 1 def vars_for_template(self): self.player.capital() self.player.balance_of_payments() player_in_all_rounds = self.player.in_all_rounds() def app_after_this_page(player, upcoming_apps): return 'my_questionnaire' page_sequence = [Introduction, Investment, ResultsFailure, ResultsSuccess, StopInvesting]