from otree.api import * from otree.settings import settings import time doc = """ Transition page from bot public good game to eliciting communication plans """ class C(BaseConstants): NAME_IN_URL = 'waiting_page_for_results' PLAYERS_PER_GROUP = None NUM_ROUNDS = 1 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): pass #start_time_CollectID = models.FloatField() #time_spent_CollectID = models.FloatField() # #prolific_id = models.StringField(label ="") # FUNCTIONS # PAGES class WaitingPageResults(Page): @staticmethod def vars_for_template(player: Player): completion_link = player.session.config['completion_link'] total_pages = settings.TOTAL_PAGES_treatment_structured_com_NL current_index = player.participant._index_in_pages - 1 progress_percent = int(current_index / total_pages * 100) return {'progress_percent': progress_percent, 'total_pages': total_pages, 'current_index': current_index, 'completion_link' : completion_link} # class CollectID(Page): # form_model = 'player' # form_fields = ['prolific_id'] # @staticmethod # def vars_for_template(player: Player): # if player.field_maybe_none('start_time_CollectID') is None: # player.start_time_CollectID = time.time() # # # total_pages = settings.TOTAL_PAGES_treatment_structured_com_NL # current_index = player.participant._index_in_pages - 1 # progress_percent = int(current_index / total_pages * 100) # return {'progress_percent': progress_percent, 'total_pages': total_pages, 'current_index': current_index} # # # @staticmethod # def before_next_page(player: Player, timeout_happened=False): # player.time_spent_CollectID = time.time() - player.start_time_CollectID page_sequence = [WaitingPageResults] #CollectID,