from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range, ) author = 'Robin Musolff' doc = """ Your app description """ class Constants(BaseConstants): name_in_url = 'political_survey' players_per_group = None num_rounds = 4 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): statement = models.StringField() frame = models.StringField() answer = models.IntegerField(choices=[[1, 'überhaupt nicht'], [2, 'eher nicht'], [3, 'neutral'], [4, 'eher ja'], [5, 'vollkommen']], widget=widgets.RadioSelectHorizontal, label="") realized_bool = models.BooleanField() realized_stage = models.IntegerField() iban = models.StringField() age = models.IntegerField(blank=True, label="") gender = models.StringField(blank=True, choices=[['Male', 'Männlich'], ['Female', 'Weiblich'], ['Diverse', 'Divers'], ['Other', 'Keines der genannten']], label='', widget=widgets.RadioSelectHorizontal) education = models.StringField(blank=True, choices=[['Kein Abschluss', 'Kein Abschluss'], ['Hauptschulabschluss', 'Hauptschulabschluss'], ['Realschulabschluss', 'Realschulabschluss'], ['(Fach)Hochschulreife', '(Fach)Hochschulreife'], ['Bachelor', 'Bachelor'], ['Master', 'Master'], ['PhD', 'PhD']], label='', widget=widgets.RadioSelectHorizontal) occupation = models.StringField(blank=True, choices=[['Berufstätig', 'Berufstätig'], ['Studierend', 'Studierend'], ['in Ausbildung', 'in Ausbildung'], ['Arbeitslos', 'Arbeitslos']], label='', widget=widgets.RadioSelectHorizontal) studyfield = models.StringField(blank=True, label='') income = models.IntegerField(blank=True, label='') motive = models.LongStringField(blank=True, label="Bitte beschreiben Sie kurz, auf welcher Grundlage Sie in der heutigen Studie Umverteilungsentscheidungen getroffen haben (z.B. Angleichung der Vermögen, Einkommen, relativen Zuwächsen, etc).") no_gender = models.BooleanField(initial=False, blank=True) no_age = models.BooleanField(initial=False, blank=True) no_education = models.BooleanField(initial=False, blank=True) no_occupation = models.BooleanField(initial=False, blank=True) no_studyfield = models.BooleanField(initial=False, blank=True) no_income = models.BooleanField(initial=False, blank=True) #progress stuff progress = models.IntegerField()