from otree.api import Currency as c, currency_range from ._builtin import Page, WaitPage from .models import Constants class welcome(Page): def is_displayed(self): return self.player.round_number == 1 def before_next_page(self): self.player.device_type = user_agent = self.request.META['HTTP_USER_AGENT'] self.player.is_mobile = False for substring in ['Mobi', 'Android', 'iPad']: if substring in user_agent: self.player.is_mobile = True class RealTask(Page): def is_displayed(self): return self.player.round_number == 1 #class Choice(Page): # form_model = 'player' # form_fields = ['choose_to_work'] class SliderTask(Page): timeout_seconds = 180 form_model = 'player' form_fields = ['s1', 's2', 's3', 's4', 's5', 's6', 's7', 's8', 's9', 's10', 's11', 's12', 's13', 's14', 's15', 's16', 's17', 's18', 's19', 's20', 's21', 's22', 's23', 's24', 's25', 's26', 's27', 's28', 's29', 's30', 's31', 's32'] class RealTask2(Page): pass timeout_seconds = 60 def before_next_page(self): self.player.set_payoffs() class Slider_Result(Page): pass timeout_seconds = 60 class motives(Page): form_model = 'player' form_fields = ['motive_1', 'motive_2', 'motive_3', 'motive_4', 'motive_5', 'motive_6', 'motive_7', 'motive_8','motive_9','motive_10'] def is_displayed(self): return self.player.round_number == Constants.num_rounds page_sequence = [welcome, RealTask, SliderTask, RealTask2, Slider_Result, motives]