import os from os import environ import dj_database_url import otree.settings # 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'] AWS_ACCESS_KEY_ID = environ.get('AWS_ACCESS_KEY_ID') AWS_SECRET_ACCESS_KEY = environ.get('AWS_SECRET_ACCESS_KEY') SESSION_CONFIG_DEFAULTS = { 'real_world_currency_per_point': 1.00, 'participation_fee': 1.00, 'doc': "", 'mturk_hit_settings': 'mturk_hit_settings', } SESSION_CONFIGS = [ { 'name': 'survey', 'display_name': "Survey", 'num_demo_participants': 4, 'app_sequence': ['stage1_new2','Mturk3_Round_2', 'Mturk2_Round_2','Mturk2_Round_3', 'Mturk2_Round_4', 'Mturk2_Round_5' , 'Mturk2_Round_6', 'Mturk2_Round_7', 'Mturk2_Round_8', 'Mturk2_Round_9', 'Mturk2_Round_10', 'Mturk2_Round_11', 'Mturk2_Round_12', 'Mturk2_Round_13', 'Mturk2_Round_14', 'Mturk2_Round_15', 'Mturk2_Round_16', 'Mturk3_debriefing'], }, ] # see the end of this file for the inactive session configs # ISO-639 code # for example: de, fr, ja, ko, zh-hans LANGUAGE_CODE = 'en' # e.g. EUR, GBP, CNY, JPY REAL_WORLD_CURRENCY_CODE = 'USD' USE_POINTS = False ROOMS = [ { 'name': 'econ101', 'display_name': 'Econ 101 class', 'participant_label_file': '_rooms/econ101.txt', }, { 'name': 'live_demo', 'display_name': 'Room for live demo (no participant labels)', }, ] # AUTH_LEVEL: # this setting controls which parts of your site are freely accessible, # and which are password protected: # - If it's not set (the default), then the whole site is freely accessible. # - If you are launching a study and want visitors to only be able to # play your app if you provided them with a start link, set it to STUDY. # - If you would like to put your site online in public demo mode where # anybody can play a demo version of your game, but not access the rest # of the admin interface, set it to DEMO. # for flexibility, you can set it in the environment variable OTREE_AUTH_LEVEL AUTH_LEVEL = environ.get('OTREE_AUTH_LEVEL') ADMIN_USERNAME = 'admin' # for security, best to set admin password in an environment variable ADMIN_PASSWORD = environ.get('OTREE_ADMIN_PASSWORD') # the environment variable OTREE_PRODUCTION controls whether Django runs in # DEBUG mode. If OTREE_PRODUCTION==1, then DEBUG=False #if environ.get('OTREE_PRODUCTION') not in {None, '', '0'}: # DEBUG = False #else: #DEBUG = True # Consider '', None, and '0' to be empty/false DEBUG = (environ.get('OTREE_PRODUCTION') in {None, '', '0'}) DEMO_PAGE_INTRO_HTML = """ Here are various games implemented with oTree. These games are open source, and you can modify them as you wish. """ # don't share this with anybody. SECRET_KEY = '*lp9r1897r^(vxsmbfnocp+pdh2r09z-ih#skdc3m^)jkc4bry' # if an app is included in SESSION_CONFIGS, you don't need to list it here INSTALLED_APPS = ['otree', 'otreeutils'] mturk_hit_settings = { 'keywords': ['Survey', 'Study', 'Research'], 'title': 'survey', 'description': 'Answer some simple questions (~20min, earn up to $4.00.)', 'frame_height': 500, 'preview_template': 'global/MTurkPreview.html', 'minutes_allotted_per_assignment': 200, 'expiration_hours': 1 * 8, 'grant_qualification_id': '3YBZ4ZTBD0242CNLLVWZM0ZL2AIW4O',# to prevent retakes 'qualification_requirements': [ { 'QualificationTypeId': "3YBZ4ZTBD0242CNLLVWZM0ZL2AIW4O", 'Comparator': "DoesNotExist", }, { 'QualificationTypeId': "00000000000000000071", 'Comparator': "EqualTo", 'LocaleValues': [{'Country': "US"}] }, ] } SENTRY_DSN = environ.get('SENTRY_DSN')