from otree.api import * from .Constants import * import time class DiscussionPage2(Page): # AI answer + discussin + answer + confidence form_model = 'player' form_fields = ['group_answer', 'group_confidence'] def is_displayed(player): player.page_pass_time = int(time.time()) + C.DISCUSSION_PAGE_MIN_TIME return True def error_message(player, values): if time.time()< player.page_pass_time: return f" You need to stay on this page for {player.page_pass_time - int(time.time())} more seconds" def vars_for_template(self): selected_question = self.group.get_selected_question() return { 'ai_answer': self.group.ai_answer, 'ai_confidence': self.group.ai_confidence, 'question' : selected_question['Question'], 'category' : self.group.category_choice, 'difficulty' : self.group.difficulty_choice, } def before_next_page(player, timeout_happened): group = player.group selected_question = group.get_selected_question() player_answer = player.get_group_answer_display() if player_answer.lower() == selected_question['Answer'].lower(): player.correct_answer_selected = True else: player.correct_answer_selected = False