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=0.003, participation_fee=1.00, doc="" ) SESSION_CONFIGS = [ {'name': 'condition1', 'display_name': "High Threat High Justice Failure (Full)", 'num_demo_participants': 1, 'app_sequence': ['hthj1','hthj2','hthj3' ] }, {'name': 'condition2', 'display_name': "High Threat Low Justice Failure (Full)", 'num_demo_participants': 1, 'app_sequence': ['stage1','karlstage1round1','karlstage1round2','karlstage1round3','htlj1','htlj2','htlj3' ] }, {'name': 'condition3', 'display_name': "Low Threat High Justice Failure (Full)", 'num_demo_participants': 1, 'app_sequence': ['stage1', 'karlstage1round1', 'karlstage1round2', 'karlstage1round3', 'lthj1', 'lthj2', 'lthj3' ] }, {'name': 'condition4', 'display_name': "Low Threat Low Justice Failure (Full)", 'num_demo_participants': 1, 'app_sequence': ['stage1', 'karlstage1round1', 'karlstage1round2', 'karlstage1round3', 'ltlj1', 'ltlj2', 'ltlj3' ] }, {'name': 'condition5', 'display_name': "High Threat High Justice Failure (Short)", 'num_demo_participants': 1, 'app_sequence': ['hthj1','hthj2','hthj3' ] }, {'name': 'condition6', 'display_name': "High Threat Low Justice Failure (Short)", 'num_demo_participants': 1, 'app_sequence': ['htlj1','htlj2','htlj3' ] }, {'name': 'condition7', 'display_name': "Low Threat High Justice Failure (Short)", 'num_demo_participants': 1, 'app_sequence': ['lthj1','lthj2','lthj3' ] }, {'name': 'condition8', 'display_name': "Low Threat Low Justice Failure (Short)", 'num_demo_participants': 1, 'app_sequence': ['ltlj1','ltlj2','ltlj3' ] }, {'name': 'condition9', 'display_name': "testlink", 'num_demo_participants': 350, 'app_sequence': ['fourparty' ] }, {'name': 'pretest', 'display_name': "pretestjustice", 'num_demo_participants': 10, 'app_sequence': ['VISpretest' ] }, {'name': 'formal_session', 'display_name': "Formal_Session_Full", 'num_demo_participants': 8, 'app_sequence': ['s1test', 's2atest','s2btest','s3','s4atest','s4btest','s5atest','s5btest'] }, {'name': 'formal_session2', 'display_name': "Short Version (05.25)", 'num_demo_participants': 8, 'app_sequence': ['s1test','s2atest','s3','s4atest','s4btest','s5atest','s5btest'] }, {'name': 'testRNR', 'display_name': "RNRdom", 'num_demo_participants': 1, 'app_sequence': ['r1' ] }, {'name': 'testRNR2', 'display_name': "RNRndom", 'num_demo_participants': 3, 'app_sequence': ['r2' ] }, {'name': 'bslink', 'display_name': "MDSvigilante", 'num_demo_participants': 1, 'app_sequence': ['mturk2' ] }, {'name': 'testgame1', 'display_name': "dom2b", 'num_demo_participants': 1, 'app_sequence': ['r3' ] }, {'name': 'testgame2', 'display_name': "nondom2b", 'num_demo_participants': 1, 'app_sequence': ['r4' ] }, {'name': 'testgam3e', 'display_name': "control2b", 'num_demo_participants': 1, 'app_sequence': ['r5' ] }, {'name': 'testgame4', 'display_name': "dom2c", 'num_demo_participants': 1, 'app_sequence': ['r6' ] }, { 'name': 'realefforttask4', 'display_name': 'Real Effort Task - Decoding', 'num_demo_participants': 1, 'app_sequence': ['realefforttask'], 'task': 'Decoding', 'task_params': {'dict_length': 10, 'task_len': 5}, }, {'name': 'testgame6', 'display_name': "2dnond", 'num_demo_participants': 1, 'app_sequence': ['twodnond' ] }, {'name': 'testgame7', 'display_name': "2edom", 'num_demo_participants':1, 'app_sequence': ['twoedom' ] }, ] # 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 = True POINTS_DECIMAL_PLACES = 2 ROOMS = [ dict( name='econ101', display_name='Econ 101 class', participant_label_file='_rooms/econ101.txt', ), dict(name='live_demo', display_name='Room for live demo (no participant labels)'), ] ADMIN_USERNAME = 'admin' # for security, best to set admin password in an environment variable ADMIN_PASSWORD = environ.get('OTREE_ADMIN_PASSWORD') DEBUG = (environ.get('OTREE_PRODUCTION') in {None, '', '0'}) DEMO_PAGE_INTRO_HTML = """ Here are some oTree games. """ # don't share this with anybody. SECRET_KEY = '0-hs^-h*o5h(pkd*=*ntr1!_mok&ikoeemxvezf8qev9ntvxl(' INSTALLED_APPS = ['otree'] # inactive session configs # dict(name='trust', display_name="Trust Game", num_demo_participants=2, app_sequence=['trust', 'payment_info']), # dict(name='prisoner', display_name="Prisoner's Dilemma", num_demo_participants=2, # app_sequence=['prisoner', 'payment_info']), # dict(name='volunteer_dilemma', display_name="Volunteer's Dilemma", num_demo_participants=3, # app_sequence=['volunteer_dilemma', 'payment_info']), # dict(name='cournot', display_name="Cournot Competition", num_demo_participants=2, app_sequence=[ # 'cournot', 'payment_info' # ]), # dict(name='dictator', display_name="Dictator Game", num_demo_participants=2, # app_sequence=['dictator', 'payment_info']), # dict(name='matching_pennies', display_name="Matching Pennies", num_demo_participants=2, app_sequence=[ # 'matching_pennies', # ]), # dict(name='traveler_dilemma', display_name="Traveler's Dilemma", num_demo_participants=2, # app_sequence=['traveler_dilemma', 'payment_info']), # dict(name='bargaining', display_name="Bargaining Game", num_demo_participants=2, # app_sequence=['bargaining', 'payment_info']), # dict(name='common_value_auction', display_name="Common Value Auction", num_demo_participants=3, # app_sequence=['common_value_auction', 'payment_info']), # dict(name='bertrand', display_name="Bertrand Competition", num_demo_participants=2, app_sequence=[ # 'bertrand', 'payment_info' # ]), # dict(name='public_goods_simple', display_name="Public Goods (simple version from tutorial)", # num_demo_participants=3, app_sequence=['public_goods_simple', 'payment_info']), # dict(name='trust_simple', display_name="Trust Game (simple version from tutorial)", num_demo_participants=2, # app_sequence=['trust_simple']),