from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup ) from otree.db.models import ForeignKey from slider_task.models import BaseSlider, SliderPlayer author = 'Eveline Vandewal' doc = """ Part 5: Questionnaire """ class Constants(BaseConstants): name_in_url = 'RECI1_Part5' players_per_group = None num_rounds = 1 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(SliderPlayer): reciprocity = models.StringField() colors_reversed = models.IntegerField() question1a = models.IntegerField( choices=[1, 2, 3, 4, 5, 6, 7], widget=widgets.RadioSelect ) question1b = models.IntegerField( choices=[1, 2, 3, 4, 5, 6, 7], widget=widgets.RadioSelect ) question2a = models.IntegerField( choices=[1, 2, 3, 4, 5, 6, 7], widget=widgets.RadioSelect ) question2b = models.IntegerField( choices=[1, 2, 3, 4, 5, 6, 7], widget=widgets.RadioSelect ) question3a = models.IntegerField( choices=[1, 2, 3, 4, 5, 6, 7], widget=widgets.RadioSelect ) question3b = models.IntegerField( choices=[1, 2, 3, 4, 5, 6, 7], widget=widgets.RadioSelect ) selected_part = models.IntegerField() sliders = models.IntegerField() age = models.IntegerField() gender = models.IntegerField( blank=True, choices=[ [1, 'Female'], [2, 'Male'], [3, 'Other'] ], widget=widgets.RadioSelect ) nationality = models.StringField() study = models.StringField() course = models.IntegerField( choices=[ [1, 'Yes'], [2, 'No'] ], widget=widgets.RadioSelect ) question6 = models.IntegerField() question7 = models.IntegerField( choices=[ [1, 'Yes'], [2, 'No'] ], widget=widgets.RadioSelect ) question8 = models.IntegerField( choices=[1, 2, 3, 4, 5, 6, 7], widget=widgets.RadioSelect ) question9 = models.IntegerField( choices=[1, 2, 3, 4, 5, 6, 7], widget=widgets.RadioSelect ) question10 = models.IntegerField( choices=[1, 2, 3, 4, 5, 6, 7], widget=widgets.RadioSelect ) question11 = models.IntegerField( choices=[1, 2, 3, 4, 5, 6, 7], widget=widgets.RadioSelect ) question12 = models.IntegerField( choices=[ [1, 'Yes'], [2, 'No'] ], widget=widgets.RadioSelect ) question13 = models.IntegerField( choices=[ [1, 'Yes'], [2, 'No'] ], widget=widgets.RadioSelect ) question14 = models.IntegerField( blank=True, choices=[ [1, 'Yes'], [2, 'No'] ], widget=widgets.RadioSelect ) first_name = models.StringField() last_name = models.StringField() address = models.StringField() city = models.StringField() country = models.StringField() dob = models.StringField() iban = models.StringField() email = models.StringField(blank=True) end_time = models.StringField() class Slider(BaseSlider): player = ForeignKey( Player, on_delete=models.CASCADE )