from os import environ from shared.role import Role SESSION_CONFIGS = [ dict( name="self_serving_bias_rec", display_name="Part 1 - Receiver", app_sequence=["intro1", "real_effort", "survey", "game_results", "dropout"], num_demo_participants=12, roles=Role.RECEIVER, ), dict( name="self_serving_bias_dic", display_name="Part 1 - Dictator", app_sequence=[ "intro1", "real_effort", "game_results", "intro2", "allocation", "post_experiment_survey", "survey", "dropout", ], num_demo_participants=12, roles=Role.DICTATOR, ), dict( name="self_serving_bias_skip_intro_rec", display_name="Part 1 - Receiver - Skip intro", app_sequence=["real_effort", "survey", "game_results", "dropout"], num_demo_participants=12, roles=Role.RECEIVER, ), dict( name="self_serving_bias_skip_intro_dic", display_name="Part 1 - Dictator - Skip intro", app_sequence=[ "real_effort", "game_results", "intro2", "allocation", "post_experiment_survey", "survey", "dropout", ], num_demo_participants=12, roles=Role.DICTATOR, ), dict( name="self_serving_bias_survey_only_rec", display_name="Part 1 - Receiver - Survey only", app_sequence=["survey"], num_demo_participants=12, roles=Role.RECEIVER, ), dict( name="self_serving_bias_survey_only_dic", display_name="Part 1 - Dictator - Survey only", app_sequence=["survey"], num_demo_participants=12, roles=Role.DICTATOR, ), dict( name="self_serving_bias_rec_intro_only", display_name="Part 1 - Receiver - Intro only", app_sequence=["intro1"], num_demo_participants=12, roles=Role.RECEIVER, ), ] # 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.5, doc="") PARTICIPANT_FIELDS = [ "is_dropout", "dropout_msg", "reward_group", "wait_page_arrival", "total_reward", # Sum of all rewards gained in real effort task "rewards", # A list of reward per round "reward_group_comm_partner", # the reward group the participants looks for in a communciation partner "previous_comm_partners", # id_in_session of each communication partner they were matched with "previous_acc_partners", # receiver_id of each receiver they had as Allocation partner "previous_third_party_partners", # receiver_id of each receiver they had as Third Party couple "spent", # A list of allocations per round made to their account partner "kept", # A list of allocations per round made to themselves "paid_round", # The round number they are paid in "display_info", # A dict of display information like name, profile_picture "is_paid", # Determines whether a participant should receive the participation fee, i.e. they passed the real effort game ] SESSION_FIELDS = [ "params", # for real effort tasks "reward_group_cycle", # cycles through they possible Reward groups "receivers", # saves display information of a receiver, keyed by receiver_id "id_gen", # generates the next ID when called next(id_gen) ] # 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 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 = "5877325280841"