from otree.api import Currency as c, currency_range from ._builtin import Page, WaitPage from .models import Constants class Quiz_intro(Page): form_model = 'player' def is_displayed(self): return self.participant.vars["Passed"] == 0 class Q1(Page): form_model = 'player' form_fields = ['Q1'] def is_displayed(self): return self.participant.vars["Passed"] == 0 class Q1_result(Page): form_model = 'player' def is_displayed(self): return self.participant.vars["Passed"] == 0 def before_next_page(self): if self.player.Q1 == 1: self.player.Q1_correct = self.player.Q1 class Q2(Page): form_model = 'player' form_fields = ['Q2'] def is_displayed(self): return self.participant.vars["Passed"] == 0 class Q2_result(Page): form_model = 'player' def is_displayed(self): return self.participant.vars["Passed"] == 0 class Q3(Page): form_model = 'player' form_fields = ['Q3'] def is_displayed(self): return self.participant.vars["Passed"] == 0 class Q3_result(Page): form_model = 'player' def is_displayed(self): return self.participant.vars["Passed"] == 0 class Q4(Page): form_model = 'player' form_fields = ['Q4'] def is_displayed(self): return self.participant.vars["Passed"] == 0 class Q4_result(Page): form_model = 'player' def is_displayed(self): return self.participant.vars["Passed"] == 0 class Q5(Page): form_model = 'player' form_fields = ['Q5'] def is_displayed(self): return self.participant.vars["Passed"] == 0 class Q5_result(Page): form_model = 'player' def is_displayed(self): return self.participant.vars["Passed"] == 0 def before_next_page(self): if self.player.Q5 == 1: self.player.Q5_correct = self.player.Q5 class Q6(Page): form_model = 'player' form_fields = ['Q6'] def is_displayed(self): return self.participant.vars["Passed"] == 0 class Q6_result(Page): form_model = 'player' def is_displayed(self): return self.participant.vars["Passed"] == 0 def before_next_page(self): if self.player.Q6 == 1: self.player.Q6_correct = self.player.Q6 self.player.correct = self.player.Q2 + self.player.Q3 + self.player.Q4 + self.player.Q1_correct + self.player.Q5_correct + self.player.Q6_correct class Quiz_result_fail(Page): form_model = 'player' def is_displayed(self): return self.player.correct < 5 and self.participant.vars["Passed"] == 0 def before_next_page(self): self.player.Passed = 0 self.participant.vars['Passed'] = 0 class Quiz_result_success(Page): form_model = 'player' def is_displayed(self): return self.player.correct >= 5 and self.participant.vars["Passed"] == 0 def before_next_page(self): self.player.Passed = 1 self.participant.vars['Passed'] = 1 page_sequence = [Quiz_intro, Q1, Q1_result, Q2, Q2_result, Q3, Q3_result, Q4, Q4_result, Q5, Q5_result, Q6, Q6_result, Quiz_result_fail, Quiz_result_success]