from os import environ # if you set a property in SESSION_CONFIG_DEFAULTS, it will be inherited by all configs # in SESSION_CONFIGS, except those that explicitly override it. # the session config can be accessed from methods in your apps as self.session.config, # e.g. self.session.config['participation_fee'] SESSION_CONFIG_DEFAULTS = dict( real_world_currency_per_point=1.00, participation_fee=0.00, doc="" ) SESSION_CONFIGS = [ { 'name': 'PS', 'display_name': "Pre-Screening Survey", 'num_demo_participants': 1, 'experiment': "PS", # keep at "PS" 'est_time': 12, 'num_parts': 1, 'participation_fee': 1.2, # must be paid in prolific 'average_earnings': 1.2, # wont be shown as long as it is identical to the participation fee 'app_sequence': ['Start', 'MFQ', 'End'], }, { 'name': 'REE', 'display_name': "Rule Elicitation Experiment", 'num_demo_participants': 1, 'experiment': "REE", # keep at "REE" 'est_time': 6, 'num_parts': 1, 'participation_fee': 0.7, # must be paid in prolific 'average_earnings': 0.7, # wont be shown as long as it is identical to the participation fee 'RFT_blue_bonus': 0.05, # Should be 0.05 'RFT_yellow_bonus': 0.10, # Should be 0.10 'app_sequence': ['Start', 'RE', 'End'], }, { 'name': 'BE', 'display_name': "Behavioral Experiment", 'num_demo_participants': 1, 'experiment': "BE", # keep at "BE" 'treatment': "LIVE", # "IND", "COM", "LIVE" 'est_time': 11, 'num_parts': 3, 'participation_fee': 1.6, # must be paid in prolific 'ITG_bonus': 0.5, 'RFT_blue_bonus': 0.05, # Should be 0.05 'RFT_yellow_bonus': 0.10, # Should be 0.10 'average_earnings': 3.5, # wont be shown as long as it is identical to the participation fee 'app_sequence': ['Start', 'ITG', 'GI', 'RFT', 'End'], }, { 'name': 'NEE', 'display_name': "Norm Elicitation Experiment", 'num_demo_participants': 1, 'experiment': "NEE", # keep at "NEE" 'treatment': "LIVE", # "IND", "COM", "LIVE" 'est_time': 17, 'num_parts': 2, 'participation_fee': 1.6, # must be paid in prolific 'ITG_bonus': 0.5, 'NE_bonus': 2, 'RFT_blue_bonus': 0.05, # Should be 0.05 'RFT_yellow_bonus': 0.10, # Should be 0.10 'average_earnings': 2.7, # wont be shown as long as it is identical to the participation fee 'app_sequence': ['Start', 'ITG', 'NE', 'End'], }, { 'name': 'Start_test', 'display_name': "Demo - Start", 'num_demo_participants': 1, 'experiment': "BE", # "PS", "REE", "BE", "NEE" 'est_time': 1, 'num_parts': 1, 'participation_fee': 1, 'average_earnings': 2, 'app_sequence': ['Start'], }, { 'name': 'MFQ_test', 'display_name': "Demo - Moral Foundations Questionaire", 'num_demo_participants': 1, 'app_sequence': ['MFQ'], }, { 'name': 'RE_test', 'display_name': "Demo - Rule Elicitation", 'num_demo_participants': 1, 'RFT_blue_bonus': 0.05, # Should be 0.05 'RFT_yellow_bonus': 0.10, # Should be 0.10 'app_sequence': ['RE'], }, { 'name': 'ITG_test', 'display_name': "Demo - Introduction to Group", 'num_demo_participants': 1, 'treatment': "LIVE", # "IND", "COM", "LIVE" 'ITG_bonus': 0.5, 'app_sequence': ['ITG'], }, { 'name': 'GI_test', 'display_name': "Demo - Inclusion of Ingroup in the Self", 'num_demo_participants': 1, 'app_sequence': ['GI'], }, { 'name': 'RFT_test', 'display_name': "Demo - Rule Following Task", 'num_demo_participants': 1, 'RFT_blue_bonus': 0.05, # Should be 0.05 'RFT_yellow_bonus': 0.10, # Should be 0.10 'app_sequence': ['RFT'], }, { 'name': 'NE_test', 'display_name': "Demo - Norm Elicitation", 'num_demo_participants': 1, 'NE_bonus': 2, 'RFT_blue_bonus': 0.05, # Should be 0.05 'RFT_yellow_bonus': 0.10, # Should be 0.10 'app_sequence': ['NE'], }, { 'name': 'End_test', 'display_name': "Demo - Conclusion", 'num_demo_participants': 1, 'experiment': "PS", # "PS", "REE", "BE", "NEE" 'participation_fee': 1, 'RFT_blue_bonus': 0.05, # Should be 0.05 'RFT_yellow_bonus': 0.10, # Should be 0.10 'NE_bonus': 2, 'app_sequence': ['load', 'End'], }, ] # ISO-639 code # for example: de, fr, ja, ko, zh-hans LANGUAGE_CODE = 'en' # e.g. EUR, GBP, CNY, JPY REAL_WORLD_CURRENCY_CODE = 'GBP' USE_POINTS = False ROOMS = [] ADMIN_USERNAME = 'admin' # for security, best to set admin password in an environment variable ADMIN_PASSWORD = environ.get('OTREE_ADMIN_PASSWORD') DEMO_PAGE_INTRO_HTML = """ """ SECRET_KEY = '5vs5yrd^ExvDkAgNom#v' # if an app is included in SESSION_CONFIGS, you don't need to list it here INSTALLED_APPS = ['otree']