from otree.api import * c = cu doc = 'Chen, D.L., Schonger, M., Wickens, C., 2016. oTree - An open-source platform for laboratory, online and field experiments. Journal of Behavioral and Experimental Finance, vol 9: 88-97.\n\nStanford IRB Protocol 68188: Populism and the Failure of Anti-Corruption Reforms in Post-Democratized Latin America. Approved 03-23-2023, no expiration, Expedited category 7, minimal risk.' class C(BaseConstants): NAME_IN_URL = 'EncuestaInicial' PLAYERS_PER_GROUP = 2 NUM_ROUNDS = 1 ENDOWMENT = cu(100) class Subsession(BaseSubsession): pass class Group(BaseGroup): kept = models.CurrencyField(label='Me quedaré con', min=0) def set_payoffs(group: Group): p1 = group.get_player_by_id(1) p2 = group.get_player_by_id(2) p1.payoff = group.kept p2.payoff = C.ENDOWMENT - group.kept class Player(BasePlayer): Universidad = models.StringField(choices=[['UABC', 'UABC'], ['SDSU', 'SDSU'], ['Otra', 'Otra']], label='¿En qué universidad estás estudiando?') Edad = models.IntegerField(label='¿Qué edad tienes?', min=18) Experiencia = models.FloatField(choices=[[1, 'Primero'], [2, 'Segundo'], [3, 'Tercero'], [4, 'Cuarto'], [5, 'Quinto']], label='¿Qué año de la universidad estás cursando?', max=5, min=1) Genero = models.StringField(choices=[['Masculino', 'Masculino'], ['Femenino', 'Femenino'], ['No binario', 'No binario'], ['Prefiero no decirlo', 'Prefiero no decirlo']], label='¿Con qué género te defines?') Pais = models.StringField(choices=[['México', 'México'], ['Estados Unidos', 'Estados Unidos'], ['Prefiero no decirlo', 'Prefiero no decirlo']], label='¿En qué lado de la frontera vives normalmente (o sea donde duermes y pasas la mayor parte del tiempo)?') Nacimiento = models.StringField(choices=[['México', 'México'], ['Estados Unidos', 'Estados Unidos'], ['Otro', 'Otro país'], ['Prefiero no decirlo', 'Prefiero no decirlo']], label='¿En qué país naciste?') Padres = models.StringField(choices=[['Ambos en México', 'Ambos en México'], ['Ambos en Estados Unidos', 'Ambos en Estados Unidos'], ['Uno(a) en México y el(la) otro(a) en Estados Unidos', 'Uno(a) en México y el(la) otro(a) en Estados Unidos'], ['Otra combinación', 'Otra combinación'], ['Prefiero no decirlo', 'Prefiero no decirlo']], label='¿En qué país nacieron tus padres?') Etnia = models.StringField(choices=[['Afromexicano(a), negro(a) o afrodescendiente', 'Afromexicano(a), negro(a) o afrodescendiente'], ['Indígena o pueblo originario', 'Indígena o pueblo originario'], ['Ninguno', 'Ninguno'], ['Prefiero no decirlo', 'Prefiero no decirlo']], label='¿Por tus antepasados y de acuerdo a tus costumbres, tradiciones o cultura, te consideras afromexicano(a) o indígena?') Consent = models.BooleanField(choices=[[True, 'Yes'], [False, 'No']], label='Si aceptas participar, pasa a la siguiente pantalla') NivelEstudios = models.StringField(choices=[['Licenciatura', 'Licenciatura'], ['Maestría', 'Maestría'], ['Otro', 'Otro']], label='¿Qué nivel de estudios universitarios estás cursando?') Disciplina = models.StringField(blank=True, label='¿Qué programa (licenciatura o maestría) estás cursando?') Promedio = models.FloatField(label='¿Qué promedio de calificaciones llevas hasta ahora?', max=10, min=5) class Consentimiento(Page): form_model = 'player' form_fields = ['Consent'] class Sociodemo(Page): form_model = 'player' form_fields = ['Universidad', 'NivelEstudios', 'Disciplina', 'Experiencia', 'Promedio', 'Edad', 'Genero', 'Etnia', 'Pais', 'Nacimiento', 'Padres'] class Respuestas(Page): form_model = 'player' class Familiarizarse(Page): form_model = 'player' page_sequence = [Consentimiento, Sociodemo, Respuestas, Familiarizarse]