from otree.api import * c = cu doc = '' class C(BaseConstants): NAME_IN_URL = 'emailpage' PLAYERS_PER_GROUP = None NUM_ROUNDS = 1 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): enter_draw = models.BooleanField() lottery_email = models.StringField(blank=True) email_consent = models.BooleanField(initial=False) task1_tickets = models.IntegerField(initial=0) task2_tickets = models.IntegerField(initial=0) class MyPage(Page): form_model = 'player' form_fields = ['enter_draw', 'lottery_email', 'email_consent'] @staticmethod def is_displayed(player: Player): return player.participant.vars.get('group') == 'Group 1' @staticmethod def vars_for_template(player: Player): task1_tickets = player.participant.vars.get('task1_total_bank', 0) task2_tickets = player.participant.vars.get('task2_total_bank', 0) player.task1_tickets = task1_tickets player.task2_tickets = task2_tickets return { 'task1_tickets': task1_tickets, 'task2_tickets': task2_tickets, } page_sequence = [MyPage]