from ._builtin import Page, WaitPage from otree.api import Currency as c, currency_range from .models import Constants class InstructionsPart1andCQ(Page): form_model = 'player' form_fields = ['cq1_n1', 'cq1_n2', 'cq1_n3', 'cq1_n4', 'cq1_n5', 'cq1_n6'] def before_next_page(self): if self.player.cq1_n2 == 1: self.player.cq1_n2_to_show = 'Tutti i round giocati (secondo il tasso conversione: 3 gettoni = 1 Euro)' else: self.player.cq1_n2_to_show = 'Solo un round, selezionato casualmente (secondo il tasso conversione: 3 gettoni = 1 Euro)' # if self.player.cq1_n4 == 1: self.player.cq1_n4_to_show = 'Io, posso decidere liberamente quale delle due scatole voglio aprire per prima.' else: self.player.cq1_n4_to_show = 'Il computer determina casualmente quale delle due scatole aprire per prima' # if self.player.cq1_n5 == 1: self.player.cq1_n5_to_show = 'Nessuno, aprire la seconda scatola non ha costi.' elif self.player.cq1_n5 == 2: self.player.cq1_n5_to_show = 'Aprire la seconda scatola costa 1 o 5 gettoni, il computer determina casualmente \ (con uguale probabilità) qual è il costo all’inizio di ciascun round ' else: self.player.cq1_n5_to_show = 'Aprire la seconda scatola costa 1 o 5 gettoni, il computer determina casualmente \ (con uguale probabilità) qual è il costo all’inizio della Parte 1 e il costo è lo stesso per tutti i round.' # if self.player.cq1_n6 == 1: self.player.cq1_n6_to_show = 'All’inizio di ciascun round, il computer seleziona uno dei nove scenari possibili casualmente.\n \ Lo stesso scenario avrà una probabilità di essere ri-selezionato inferiore nei round successivi.' elif self.player.cq1_n5 == 2: self.player.cq1_n6_to_show = 'All’inizio della Parte 1, il computer seleziona uno dei nove scenari possibili casualmente e \n \ lo scenario rimane lo stesso per tutti i round.' else: self.player.cq1_n6_to_show = 'All’inizio di ciascun round, il computer seleziona uno dei nove scenari possibili casualmente.\n \ Lo stesso scenario avrà la stessa una probabilità di essere ri-selezionato nei round successivi.' # # class InstructionsPart1a(Page): # pass # # # class InstructionsPart1b(Page): # pass # # # class InstructionsPart1c(Page): # pass # # # class InstructionsPart1CQ(Page): # form_model = 'player' # form_fields = ['cq1_n1', 'cq1_n2', 'cq1_n3', 'cq1_n4', 'cq1_n5', 'cq1_n6'] # # def before_next_page(self): # if self.player.cq1_n2 == 1: # self.player.cq1_n2_to_show = 'Tutti i round giocati (secondo il tasso conversione: 3 gettoni = 1 Euro)' # else: # self.player.cq1_n2_to_show = 'Solo un round, selezionato casualmente (secondo il tasso conversione: 3 gettoni = 1 Euro)' # # # if self.player.cq1_n4 == 1: # self.player.cq1_n4_to_show = 'Io, posso decidere liberamente quale delle due scatole voglio aprire per prima.' # else: # self.player.cq1_n4_to_show = 'Il computer determina casualmente quale delle due scatole aprire per prima' # # # if self.player.cq1_n5 == 1: # self.player.cq1_n5_to_show = 'Nessuno, aprire la seconda scatola non ha costi.' # elif self.player.cq1_n5 == 2: # self.player.cq1_n5_to_show = 'Aprire la seconda scatola costa 1 o 5 gettoni, il computer determina casualmente \ # (con uguale probabilità) qual è il costo all’inizio di ciascun round ' # else: # self.player.cq1_n5_to_show = 'Aprire la seconda scatola costa 1 o 5 gettoni, il computer determina casualmente \ # (con uguale probabilità) qual è il costo all’inizio della Parte 1 e il costo è lo stesso per tutti i round.' # # # if self.player.cq1_n6 == 1: # self.player.cq1_n6_to_show = 'All’inizio di ciascun round, il computer seleziona uno dei nove scenari possibili casualmente.\ # Lo stesso scenario avrà una probabilità di essere ri-selezionato inferiore nei round successivi.' # elif self.player.cq1_n5 == 2: # self.player.cq1_n6_to_show = 'All’inizio della Parte 1, il computer seleziona uno dei nove scenari possibili casualmente e \ # lo scenario rimane lo stesso per tutti i round.' # else: # self.player.cq1_n6_to_show = 'All’inizio di ciascun round, il computer seleziona uno dei nove scenari possibili casualmente.\ # Lo stesso scenario avrà la stessa una probabilità di essere ri-selezionato nei round successivi.' # # # # class InstructionsPart1CQSolutions(Page): form_model = 'player' form_fields = ['re_read_instructions'] def vars_for_template(self): return dict( cq1_n1_ok=self.player.cq1_n1 == self.player.cq1_n1_solution, cq1_n2_ok=self.player.cq1_n2 == self.player.cq1_n2_solution, cq1_n3_ok=self.player.cq1_n3 == self.player.cq1_n3_solution, cq1_n4_ok=self.player.cq1_n4 == self.player.cq1_n4_solution, cq1_n5_ok=self.player.cq1_n5 == self.player.cq1_n5_solution, cq1_n6_ok=self.player.cq1_n6 == self.player.cq1_n6_solution, re_read_instructions=self.player.re_read_instructions ) class InstructionsPart1reread(Page): def is_displayed(self): if self.player.re_read_instructions == 1: return True else: return False class InstructionsPart1Recap(Page): def before_next_page(self): self.participant.vars['cq1_n1'] = self.player.cq1_n1 self.participant.vars['cq1_n2'] = self.player.cq1_n2 self.participant.vars['cq1_n2_to_show'] = self.player.cq1_n2_to_show self.participant.vars['cq1_n3'] = self.player.cq1_n3 self.participant.vars['cq1_n4'] = self.player.cq1_n4 self.participant.vars['cq1_n4_to_show'] = self.player.cq1_n4_to_show self.participant.vars['cq1_n5'] = self.player.cq1_n5 self.participant.vars['cq1_n5_to_show'] = self.player.cq1_n5_to_show self.participant.vars['cq1_n6'] = self.player.cq1_n6 self.participant.vars['cq1_n6_to_show'] = self.player.cq1_n6_to_show page_sequence = [ InstructionsPart1andCQ, InstructionsPart1CQSolutions, InstructionsPart1reread, InstructionsPart1Recap ]