from . import models from ._builtin import Page, WaitPage from otree.api import Currency as c, currency_range from .models import Constants import random class consent(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class code2(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class code(Page): def is_displayed(self): return self.subsession.round_number == 1 form_model = models.Player form_fields = ['subjectid'] pass class instructionpage(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage0(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage1(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage2(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage3(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage4(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage4b(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage5(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage6(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage7(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage8(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage9(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpagepractice(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpagepractice2(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpagepractice3(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class resultpractice(Page): def vars_for_template(self): return self.player.set_payoffs() class Contributepractice(Page): form_model = models.Player form_fields = ['contribution'] class instructionpage10(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage10b(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage11(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage11b(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage12(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage12a(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage12b(Page): def is_displayed(self): return self.subsession.round_number == 1 timeout_seconds = 9 pass class instructionpage12c(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage12d(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage12e(Page): def is_displayed(self): return self.subsession.round_number == 1 timeout_seconds = 4 pass class instructionpage13(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage13b (Page): def is_displayed(self): return self.subsession.round_number == 1 pass class instructionpage14(Page): def vars_for_template(self): return dict(earning1=self.player.decision1, earning2=self.player.decision2, earning3=self.player.decision3, earning4=self.player.control1, earning5=self.player.control2, earning6=self.player.control3,) class transition1(Page): timeout_seconds = 5 class transition2c(Page): timeout_seconds = 3 class Comprehension0(Page): def is_displayed(self): return self.subsession.round_number == 1 form_model = models.Player form_fields = ['newcheck', 'newcheck2'] def error_message(self, values): if values["newcheck"] != 'Remove up to 60 points from any Group Member.' or values["newcheck2"] != 'Person 3': self.player.s1q1attempt += 1 return 'At least one answer is wrong, please try again.' pass class Comprehension1(Page): def is_displayed(self): return self.subsession.round_number == 1 form_model = models.Player form_fields = ['newcheck3'] def error_message(self, values): if values["newcheck3"] != 'Green': self.player.s1q2attempt += 1 return 'Incorrect answer, please read the instruction carefully.' pass class Comprehension1b(Page): def is_displayed(self): return self.subsession.round_number == 1 form_model = models.Player form_fields = ['q1', 'q2','q3','q4','q5','q6'] pass class transition2(Page): timeout_seconds = 3 class transition4(Page): timeout_seconds = 6 class Contribute(Page): form_model = models.Player form_fields = ['decision1'] class Contribute2(Page): form_model = models.Player form_fields = ['decision2'] class Contribute3(Page): form_model = models.Player form_fields = ['decision3'] class Contribute4(Page): form_model = models.Player form_fields = ['control1'] class Contribute5(Page): form_model = models.Player form_fields = ['control2'] class Contribute6(Page): form_model = models.Player form_fields = ['control3'] class transition2b(Page): def is_displayed(self): return self.subsession.round_number == 1 pass class transition3(Page): pass class SimpleWaitPage(WaitPage): def vars_for_template(self): self.group.set_payoffs() body_text = "Waiting for other group members." pass page_sequence = [ consent, code, code2, Comprehension1, Comprehension1b, instructionpage, instructionpage0, instructionpage1, instructionpage2, instructionpage3, instructionpage4, instructionpage4b, instructionpage5, instructionpage6, instructionpage7, instructionpage8, instructionpage9, instructionpagepractice, Contributepractice, instructionpagepractice2, #SimpleWaitPage, resultpractice, instructionpagepractice3, instructionpage10, transition1, transition2, Contribute, transition2b, transition1, transition2, Contribute2, transition2b, transition1, transition2, Contribute3, transition2b, instructionpage10b, instructionpage11, instructionpage11b, instructionpage12, instructionpage12a, instructionpage12b, instructionpage12c, instructionpage12d, instructionpage12e, instructionpage13, Comprehension0, instructionpage13b, transition2, Contribute4, transition2c, transition2b, Contribute5, transition2c, transition2b, Contribute6, transition2c, transition4, instructionpage14, transition3, ]