from ._builtin import Page from .models import Constants, Slider from slider_task.pages import SliderTaskPage # Temporary: # import random class Start(Page): def before_next_page(self): # Temporary: # if (self.player.id_in_group % 2) != 0: # self.player.reciprocity = "Positive" # Temporary: # if (self.player.id_in_group % 2) == 0: # self.player.reciprocity = "Negative" # Temporary: # self.player.participant.vars['reciprocity'] = self.player.reciprocity # Temporary: # self.player.colors_reversed = random.randint(0, 1) # self.player.participant.vars['colors_reversed'] = self.player.colors_reversed self.player.reciprocity = self.participant.vars.get('reciprocity') self.player.colors_reversed = self.participant.vars.get('colors_reversed') class Questionnaire(Page): form_model = 'player' form_fields = ['question1a', 'question1b', 'question2a', 'question2b', 'question3a', 'question3b'] def before_next_page(self): if self.player.id_in_group == 1: self.player.selected_part = 2 self.player.sliders = 0 if self.player.id_in_group == 2: self.player.selected_part = 1 self.player.sliders = 0 class Feedback(Page): def before_next_page(self): self.player.prepare_sliders(num=self.player.sliders, min=0, max=100) class Sliders(SliderTaskPage): Constants = Constants Slider = Slider def is_displayed(self): return self.player.sliders != 0 class Demographics(Page): form_model = 'player' form_fields = ['age', 'gender', 'nationality', 'study', 'course', 'question6', 'question7', 'question8', 'question9', 'question10', 'question11', 'question12', 'question13', 'question14'] class PaymentInformation(Page): form_model = 'player' form_fields = ['first_name', 'last_name', 'address', 'city', 'country', 'dob', 'iban', 'email', 'end_time'] class End(Page): pass page_sequence = [ Start, Questionnaire, Feedback, Sliders, Demographics, PaymentInformation, End ]