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'] import os # import redis from pathlib import Path # r = redis.from_url(os.environ.get("REDIS_URL")) SESSION_CONFIG_DEFAULTS = dict( real_world_currency_per_point=1.00, participation_fee=0.00, doc="" ) SESSION_CONFIGS = [ # # Pilot # dict( # name='observable_fewWTP', # display_name="observable_fewWTP", # num_demo_participants=2, # app_sequence=['observable_fewWTP','questionnaire'], # ), # # Pilot # dict( # name='Communication_fewWTP', # display_name="Communication_fewWTP", # num_demo_participants=2, # app_sequence=['Communication_fewWTP', 'questionnaire'], # ), # # Pilot # dict( # name='Reputation_fewWTP', # display_name="Reputation_fewWTP", # num_demo_participants=2, # app_sequence=['Reputation_fewWTP', 'questionnaire'], # ), # # # Original design: 10 obs + 10 obs # dict( # name='observable', # display_name='OB', # num_demo_participants=2, # app_sequence=['observable','questionnaire'], # ), # # Original design: 10 conceal + 10 communication # dict( # name='concealed_communication', # display_name='CC', # num_demo_participants=2, # app_sequence=['concealed_communication', 'questionnaire'], # ), # # Original design: 10 conceal + 10 reputation # dict( # name='concealed_reputation', # display_name='CR', # num_demo_participants=2, # app_sequence=['concealed_reputation', 'questionnaire'], # ), # Pilot 2: 20 rounds of observable conditions # dict( # name='observable_20', # display_name='Observable', # num_demo_participants=2, # app_sequence=['observable_20', 'questionnaire'], # ), # # Pilot 2: 20 rounds of concealed conditions # dict( # name='concealed_20', # display_name='Concealed', # num_demo_participants=2, # app_sequence=['concealed_20', 'questionnaire'], # ), # # dict( # name='communication_20', # display_name='Communication', # num_demo_participants=2, # app_sequence=['communication_20', 'questionnaire'], # ), # # dict( # name='reputation_20', # display_name='Reputation', # num_demo_participants=2, # app_sequence=['reputation_20', 'questionnaire'], # ), # dict( # name='observable_altruism', # display_name='obs_al', # num_demo_participants=2, # app_sequence=['observable_altruism', 'questionnaire'], # ), # dict( # name='concealed_altruism', # display_name='concealed_al', # num_demo_participants=2, # app_sequence=['concealed_altruism', 'questionnaire'], # ), # # dict( # name='reputation_altruism', # display_name='reputation_al', # num_demo_participants=2, # app_sequence=['reputation_altruism', 'questionnaire'], # ), # # dict( # name='communication_altruism', # display_name='communication_al', # num_demo_participants=2, # app_sequence=['communication_altruism', 'questionnaire'], # ), dict( name='online_study', display_name='online_study', num_demo_participants=1, app_sequence=['online_study', 'online_questionnaire'], ) ] # 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 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 = '123456' DEMO_PAGE_INTRO_HTML = """ Here are some oTree games. """ # don't share this with anybody. SECRET_KEY = 'y=5wu&u3rpj$$6y1)*yff+6ev*_$dh=#v@ywr$9m#k=y9e51x_' INSTALLED_APPS = ['otree', 'django.contrib.staticfiles'] STATIC_URL = '/static/' # 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']),