from otree.api import Currency as c, currency_range from ._builtin import Page, WaitPage from .models import Constants class Welcome(Page): form_model = 'player' form_fields = ['mturk_id', 'female', 'age', 'education', 'employment', 'experience', 'state', 'income', 'ethnicity'] def error_message(self, values): print('values is', values) everyone = self.subsession.get_players() everyone_id = [p.mturk_id for p in everyone] if values['mturk_id'] in everyone_id: return 'You can only participate once. This MTurk ID has been used before in this study.' class Attention(Page): form_model = 'player' form_fields = ['attention'] def before_next_page(self): self.player.participant.vars['mturk_id'] = self.player.mturk_id if self.player.attention != 3: self.player.no_attention = True class Introduction(Page): def app_after_this_page(self, upcoming_apps): if self.player.treatment == 0: return "BaNu_b_intro" else: return "BaNu_n_intro" page_sequence = [Welcome, Attention, Introduction]