from otree.api import Currency as c, currency_range from ._builtin import Page, WaitPage from .models import Constants class IBA(Page): def is_displayed(self): return self.participant.vars['infodraw_b'] == 1 and self.participant.vars['offer_b'] >= self.participant.vars['WTP_drawn_b'] class IBE(Page): def is_displayed(self): return self.participant.vars['infodraw_b'] == 2 and self.participant.vars['offer_b'] >= self.participant.vars['WTP_drawn_b'] class IBH(Page): def is_displayed(self): return self.participant.vars['infodraw_b'] == 3 and self.participant.vars['offer_b'] >= self.participant.vars['WTP_drawn_b'] class ICA(Page): def is_displayed(self): return self.participant.vars['infodraw_c'] == 1 and self.participant.vars['offer_c'] >= self.participant.vars['WTP_drawn_c'] class ICE(Page): def is_displayed(self): return self.participant.vars['infodraw_c'] == 2 and self.participant.vars['offer_c'] >= self.participant.vars['WTP_drawn_c'] class ICH(Page): def is_displayed(self): return self.participant.vars['infodraw_c'] == 3 and self.participant.vars['offer_c'] >= self.participant.vars['WTP_drawn_c'] class Info_refused_beef(Page): def is_displayed(self): return self.participant.vars['offer_b'] < self.participant.vars['WTP_drawn_b'] class Info_refused_croc(Page): def is_displayed(self): return self.participant.vars['offer_c'] < self.participant.vars['WTP_drawn_c'] # Accessing participant variables for template class WTP_results(Page): def vars_for_template(self): a = self.participant.vars['info_draw_b_string'] b = self.participant.vars['info_draw_c_string'] c = self.participant.vars['offer_b'] d = self.participant.vars['offer_c'] e = self.participant.vars['aor_b'] f = self.participant.vars['aor_c'] g = self.participant.vars['WTP_drawn_b'] h = self.participant.vars['WTP_drawn_c'] return dict( a=a, b=b, c=c, d=d, e=e, f=f, g=g, h=h, ) page_sequence = [WTP_results, IBA, IBH, IBE, Info_refused_beef, ICA, ICE, ICH, Info_refused_croc]