from ._builtin import Page, WaitPage from otree.api import Currency as c, currency_range from .models import Constants class ResultsWaitPage(WaitPage): # after_all_players_arrive = 'random_round' wait_for_all_groups = True class ResultsTask1(Page): def vars_for_template(self): print(self.participant.vars) self.player.id_random = int(self.participant.vars['id_random']) self.player.task1_supergroup = str(self.participant.vars['task1_supergroup']) self.player.task2_supergroup = str(self.participant.vars['task2_supergroup']) # self.player.cq1_n1 = int(self.participant.vars['cq1_n1']) self.player.cq1_n2 = int(self.participant.vars['cq1_n2']) self.player.cq1_n3 = int(self.participant.vars['cq1_n3']) self.player.cq1_n4 = int(self.participant.vars['cq1_n4']) self.player.cq1_n5 = int(self.participant.vars['cq1_n5']) self.player.cq2_n1 = int(self.participant.vars['cq2_n1']) self.player.cq2_n2 = int(self.participant.vars['cq2_n2']) self.player.cq2_n3 = int(self.participant.vars['cq2_n3']) self.player.cq2_n4 = int(self.participant.vars['cq2_n4']) self.player.cq2_n5 = int(self.participant.vars['cq2_n5']) self.player.cq2_n6 = int(self.participant.vars['cq2_n6']) self.player.cq2_n7 = int(self.participant.vars['cq2_n7']) # self.player.task1_payoff_int = int(self.participant.vars['task1_payoff_int']) self.player.task1_relevant_choice = int(self.participant.vars['task1_relevant_choice']) self.player.task1_decisive_choice = int(self.participant.vars['task1_decisive_choice']) self.player.task1_relevant_choice_type = self.participant.vars['task1_relevant_choice_type'] self.player.task1_decisive_choice_type = self.participant.vars['task1_decisive_choice_type'] self.player.task1_decisive_choice_type_partner = self.participant.vars['task1_decisive_choice_type_partner'] # self.player.task2_payoff_cum_int_m1 = self.player.participant.vars['task2_payoff_cum_int_m1'] self.player.task2_payoff_cum_int_m2 = self.player.participant.vars['task2_payoff_cum_int_m2'] self.player.task2_payoff_cum_int_m3 = self.player.participant.vars['task2_payoff_cum_int_m3'] self.player.task2_payoff_cum_int_m4 = self.player.participant.vars['task2_payoff_cum_int_m4'] self.player.task2_payoff_cum_int_m5 = self.player.participant.vars['task2_payoff_cum_int_m5'] self.player.task2_payoff_cum_int_m6 = self.player.participant.vars['task2_payoff_cum_int_m6'] self.player.task2_payoff_cum_int_m7 = self.player.participant.vars['task2_payoff_cum_int_m7'] self.player.task2_payoff_cum_int_m8 = self.player.participant.vars['task2_payoff_cum_int_m8'] self.player.task2_payoff_cum_int_m9 = self.player.participant.vars['task2_payoff_cum_int_m9'] self.player.task2_payoff_cum_int_m10 = self.player.participant.vars['task2_payoff_cum_int_m10'] self.player.task2_payoff_cum_int_m11 = self.player.participant.vars['task2_payoff_cum_int_m11'] self.player.task2_payoff_cum_int_m12 = self.player.participant.vars['task2_payoff_cum_int_m12'] self.player.task2_payoff_cum_int_m13 = self.player.participant.vars['task2_payoff_cum_int_m13'] self.player.task2_payoff_cum_int_m14 = self.player.participant.vars['task2_payoff_cum_int_m14'] self.player.task2_payoff_cum_int_m15 = self.player.participant.vars['task2_payoff_cum_int_m15'] # self.player.task2_m1_length = self.player.participant.vars['task2_m1_length'] self.player.task2_m2_length = self.player.participant.vars['task2_m2_length'] self.player.task2_m3_length = self.player.participant.vars['task2_m3_length'] self.player.task2_m4_length = self.player.participant.vars['task2_m4_length'] self.player.task2_m5_length = self.player.participant.vars['task2_m5_length'] self.player.task2_m6_length = self.player.participant.vars['task2_m6_length'] self.player.task2_m7_length = self.player.participant.vars['task2_m7_length'] self.player.task2_m8_length = self.player.participant.vars['task2_m8_length'] self.player.task2_m9_length = self.player.participant.vars['task2_m9_length'] self.player.task2_m10_length = self.player.participant.vars['task2_m10_length'] self.player.task2_m11_length = self.player.participant.vars['task2_m11_length'] self.player.task2_m12_length = self.player.participant.vars['task2_m12_length'] self.player.task2_m13_length = self.player.participant.vars['task2_m13_length'] self.player.task2_m14_length = self.player.participant.vars['task2_m14_length'] self.player.task2_m15_length = self.player.participant.vars['task2_m15_length'] # if self.player.randomly_selected_match == 1: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m1 if self.player.randomly_selected_match == 2: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m2 if self.player.randomly_selected_match == 3: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m3 if self.player.randomly_selected_match == 4: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m4 if self.player.randomly_selected_match == 5: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m5 if self.player.randomly_selected_match == 6: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m6 if self.player.randomly_selected_match == 7: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m7 if self.player.randomly_selected_match == 8: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m8 if self.player.randomly_selected_match == 9: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m9 if self.player.randomly_selected_match == 10: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m10 if self.player.randomly_selected_match == 11: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m11 if self.player.randomly_selected_match == 12: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m12 if self.player.randomly_selected_match == 13: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m13 if self.player.randomly_selected_match == 14: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m14 if self.player.randomly_selected_match == 15: self.player.task2_payoff_int = self.player.task2_payoff_cum_int_m15 # self.participant.vars['task1_payoff_int'] = self.player.task1_payoff_int self.participant.vars['task2_payoff_int'] = self.player.task2_payoff_int # self.player.task1_payoff_eur = self.player.task1_payoff_int*self.player.conversion_rate_eur self.player.task1_payoff_eur_to_show = round(self.player.task1_payoff_eur, ndigits=2) self.player.task2_payoff_eur = self.player.task2_payoff_int * self.player.conversion_rate_eur self.player.task2_payoff_eur_to_show = round(self.player.task2_payoff_eur, ndigits=2) # self.player.task1_payoff_final = self.player.task1_payoff_eur_to_show self.player.task1_payoff_final_to_show = round(self.player.task1_payoff_final, ndigits=2) self.player.task2_payoff_final = self.player.task2_payoff_eur_to_show self.player.task2_payoff_final_to_show = round(self.player.task2_payoff_final, ndigits=2) self.participant.vars['task1_payoff_final_PD'] = self.player.task1_payoff_final self.participant.vars['task2_payoff_final_PD'] = self.player.task2_payoff_final print(self.participant.vars) me = self.player return dict( relevant_uncond=me.task1_relevant_choice == 1, relevant_cond=me.task1_relevant_choice == 0, relevant_choice_type=me.task1_relevant_choice_type, my_decision_type=me.task1_decisive_choice_type, ) class ResultsTask2(Page): def vars_for_template(self): self.player.task1_payoff_final = self.player.task1_payoff_eur_to_show self.player.task1_payoff_final_to_show = round(self.player.task1_payoff_final, ndigits=2) self.player.task2_payoff_final = self.player.task2_payoff_eur_to_show self.player.task2_payoff_final_to_show = round(self.player.task2_payoff_final, ndigits=2) me = self.player return dict( relevant_uncond=me.task1_relevant_choice == 1, relevant_cond=me.task1_relevant_choice == 0, relevant_choice_type=me.task1_relevant_choice_type, my_decision_type=me.task1_decisive_choice_type, ) page_sequence = [ ResultsWaitPage, ResultsTask1, ResultsTask2 ]