from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range, ) author = 'Marlene Bargou' doc = """ 17 Gruppen maximal; 34 Teilnehmer """ class Constants(BaseConstants): name_in_url = 'main' players_per_group = None num_rounds = 1 password = 6304 dropout_password = 0 lab_code = '2021-03-' comprehension_error = 'Sie haben eine falsche Antwort eingegeben. Bitte überlegen Sie noch einmal.' negotiation_time = 60 * 30 zoom_links = [ {'link': 'https://tum-conf.zoom.us/j/61226891513?pwd=TXk3OTUvaWRzZ0FHR3NYbHBFcjBxdz09', 'password': '893801'}, {'link': 'https://zoom.us/j/96469624374?pwd=Zk1tdmZGUStMOXpacC9adjVUb2N2QT09', 'password': '54Cg2n'}, {'link': 'https://tum-conf.zoom.us/j/68473165616?pwd=dkxKNE9HTWFRTisyWW45Zm5rdlF2Zz09', 'password': '089026'}, {'link': 'https://tum-conf.zoom.us/j/69506700491?pwd=TDYrL0ZWSGZIWEtWbjZyL0xCN3Q4Zz09', 'password': '105058'}, {'link': 'https://tum-conf.zoom.us/j/69454130245?pwd=SnFQMVdqVHVFTFpmbkZpaldVbkFOQT09', 'password': '988970'}, {'link': 'https://tum-conf.zoom.us/j/61382804790?pwd=MGVEaldtRXlaaGp3MGVPUnpiYXJyQT09', 'password': '155182'}, {'link': 'https://zoom.us/j/99327696854?pwd=YU81d3lxV0gxUjZqb3R2U2hERisxdz09', 'password': 'Gnaf4K'}, {'link': 'https://zoom.us/j/93232479407?pwd=ZlZMckpqTFVyVDdKNXhYQWw1RG5pdz09', 'password': '0ZzUhY'}, {'link': 'https://zoom.us/j/92159546534?pwd=MmY5dWVLd0ZmYXRub1dVWVFTakFIZz09', 'password': 'Mb07fH'}, {'link': 'https://zoom.us/j/92793861941?pwd=K244MWttTTdFd1NwMUkvc3hoMmwvZz09', 'password': '5LGJy2'}, {'link': 'https://zoom.us/j/95076570086?pwd=RTJnaGRZZzVQWmdDcGJoVTAvZ2RNdz09', 'password': 'xHPKe0'}, {'link': 'https://zoom.us/j/93575587202?pwd=N1h4cG14VUxpQTRBRjlZMmRjSUk2UT09', 'password': 'w6BbFF'}, {'link': 'https://zoom.us/j/98892990261?pwd=RTBaL29TbEZkWnlWMW5oNDh1Rko0Zz09', 'password': '1hQe4s'}, {'link': 'https://zoom.us/j/92998933877?pwd=cUQ5U0J1a3MvbWRGOGZZOEdyM1Z4Zz09', 'password': 'r7A5fz'}, {'link': 'https://zoom.us/j/96938747308?pwd=VW9FaXlkRmtSbFY5dFVhakF0UHVnUT09', 'password': '64JnX3'}, {'link': 'https://zoom.us/j/93673430278?pwd=QjQ1KzVGMzJrT3RpYit6VlNzS2dVZz09', 'password': '5j6QJ5'}, {'link': 'https://zoom.us/j/94934981788?pwd=U1dsVXRmM0NGNCtoZnZxSGtjYVBJQT09', 'password': 'ZKP9Qq'}] class Subsession(BaseSubsession): def creating_session(self): players = self.get_players() treatment = self.session.config['name'] # prevent playing with more than 34 players if len(players) > (len(Constants.zoom_links) * 2 + 1): raise Exception( 'You cannot start a session with more than 17 groups (34/35 players). There are not enough Zoom-Rooms.') # set codes for p in players: code = Constants.lab_code code += self.session.code + "-" + p.participant.code p.code = code # put Treatment Name in data p.treatment = treatment # set groups if self.session.config['gender'] != 'mw': matrix = [] for i in range(0, (len(players) - 1), 2): group = [players[i].id_in_subsession, players[i + 1].id_in_subsession] matrix.append(group) if len(players) % 2 != 0: matrix.append([players[-1].id_in_subsession]) self.set_group_matrix(matrix) def set_new_groups(self): players = self.get_players() bewerber = [] vorgesetzte = [] matrix = [] treatment = self.session.config['gender'] # filter players for dropouts/vorgesetzte/bewerber for p in players: if p.drop: matrix.append([p.id_in_subsession]) continue if treatment == 'mw': if p.gender == 'w': bewerber.append(p) else: vorgesetzte.append(p) else: if p.id_in_group == 1: bewerber.append(p) else: vorgesetzte.append(p) # match bewerber/vorgesetzte in one group while bewerber and vorgesetzte: b = bewerber.pop(0) v = vorgesetzte.pop(0) b.exp_role = 'bewerber' v.exp_role = 'vorgesetzter' matrix.insert(0, [b.id_in_subsession, v.id_in_subsession]) # handle leftover participants for p in vorgesetzte + bewerber: matrix.append([p.id_in_subsession]) p.is_leftover = True p.drop = True p.payoff = 4 self.set_group_matrix(matrix) print(matrix) class Group(BaseGroup): agreed = models.BooleanField() attempt = models.IntegerField(initial=0) def make_likert_fields(label): return models.IntegerField( choices=[[1, ""], [2, ""], [3, ""], [4, ""], [5, ""], [6, ""], [7, ""]], label=label, widget=widgets.RadioSelect ) def make_field(label): return models.IntegerField( choices=range(1, 8), label=label ) class Player(BasePlayer): treatment = models.StringField() code = models.StringField() gender = models.StringField( choices=[['w', 'weiblich'], ['m', 'männlich']], label="" ) exp_role = models.StringField() zoom_code = models.IntegerField( label="" ) is_dropout = models.BooleanField(initial=False) is_leftover = models.BooleanField(initial=False) show_interrupts = models.BooleanField(initial=False) drop = models.BooleanField(initial=False) opened_zoom = models.BooleanField(initial=False) use_paypal = models.BooleanField(initial=False, label="Wollen Sie sich über PayPal auszahlen lassen?") comprehension1 = models.StringField() comprehension2 = models.StringField(choices=['gar keine', '4 €', '8 €']) comprehension3 = models.StringField() comprehension4 = models.StringField() negotiation_time = models.StringField() negotiation_result = models.FloatField(blank=True, initial=None) msg_history = models.StringField(initial="") flag_history = models.StringField() # NEW QUESTIONS Competent_other = make_field("Wie kompetent stufen Sie Ihren Verhandlungspartner ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe meinen Verhandlungspartner als sehr unkompetent ein“ und 7 bedeutet „Ich stufe meinen Verhandlungspartner als sehr kompetent ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Competent_self = make_field("Wie kompetent stufen Sie sich ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe mich als sehr unkompetent ein“ und 7 bedeutet „Ich stufe mich als sehr kompetent ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Competent_self_by_other = make_field("Was schätzen Sie – Als wie kompetent stuft Ihr Verhandlungspartner Sie ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Mein Verhandlungspartner stuft mich als sehr unkompetent ein“ und 7 bedeutet „Mein Verhandlungspartner stuft mich als sehr kompetent ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Competent_own_background = make_field("Wie kompetent stufen Sie Ihren Bildschirmhintergrund ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe meinen Bildschirmhintergrund als sehr unkompetent ein“ und 7 bedeutet „Ich stufe meinen Bildschirmhintergrund als sehr kompetent ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Competent_other_background = make_field("Wie kompetent stufen Sie den Bildschirmhintergrund Ihres Verhandlungspartners ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe den Bildschirmhintergrund meines Verhandlungspartners als sehr unkompetent ein“ und 7 bedeutet „Ich stufe den Bildschirmhintergrund meines Verhandlungspartners als sehr kompetent ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Competent_own_background_by_other = make_field("Was schätzen Sie - Wie kompetent stuft Ihr Verhandlungspartner Ihren Bildschirmhintergrund ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Mein Verhandlungspartner stuft meinen Bildschirmhintergrund als sehr unkompetent ein“ und 7 bedeutet „Mein Verhandlungspartner stuft meinen Bildschirmhintergrund als sehr kompetent ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_other = make_field("Wie professionell stufen Sie Ihren Verhandlungspartner ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe meinen Verhandlungspartner als sehr unprofessionell ein“ und 7 bedeutet „Ich stufe meinen Verhandlungspartner als sehr professionell ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_self = make_field("Wie professionell stufen Sie sich ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe mich als sehr unprofessionell ein“ und 7 bedeutet „Ich stufe mich als sehr professionell ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_self_by_other = make_field("Was schätzen Sie – Als wie professionell stuft Ihr Verhandlungspartner Sie ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Mein Verhandlungspartner stuft mich als sehr unprofessionell ein“ und 7 bedeutet „Mein Verhandlungspartner stuft mich als sehr professionell ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_own_background = make_field("Wie professionell stufen Sie Ihren Bildschirmhintergrund ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe meinen Bildschirmhintergrund als sehr unprofessionell ein“ und 7 bedeutet „Ich stufe meinen Bildschirmhintergrund als sehr professionell ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_other_background = make_field("Wie professionell stufen Sie den Bildschirmhintergrund Ihres Verhandlungspartners ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe den Bildschirmhintergrund meines Verhandlungspartners als sehr unprofessionell ein“ und 7 bedeutet „Ich stufe den Bildschirmhintergrund meines Verhandlungspartners als sehr professionell ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_own_background_by_other = make_field("Was schätzen Sie - Wie professionell stuft Ihr Verhandlungspartner Ihren Bildschirmhintergrund ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Mein Verhandlungspartner stuft meinen Bildschirmhintergrund als sehr unprofessionell ein“ und 7 bedeutet „Mein Verhandlungspartner stuft meinen Bildschirmhintergrund als sehr professionell ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") sympathetic_other = make_field("Wie sympathisch stufen Sie Ihren Verhandlungspartner ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe meinen Verhandlungspartner als sehr unsympathisch ein“ und 7 bedeutet „Ich stufe meinen Verhandlungspartner als sehr sympathisch ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") sympathetic_self = make_field("Wie sympathisch stufen Sie sich ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe mich als sehr unsympathisch ein“ und 7 bedeutet „Ich stufe mich als sehr sympathisch ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") sympathetic_self_by_other = make_field("Was schätzen Sie – Als wie sympathisch stuft Ihr Verhandlungspartner Sie ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Mein Verhandlungspartner stuft mich als sehr unsympathisch ein“ und 7 bedeutet „Mein Verhandlungspartner stuft mich als sehr sympathisch ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") sympathetic_own_background = make_field("Wie sympathisch stufen Sie Ihren Bildschirmhintergrund ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe meinen Bildschirmhintergrund als sehr unsympathisch ein“ und 7 bedeutet „Ich stufe meinen Bildschirmhintergrund als sehr sympathisch ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") sympathetic_other_background = make_field("Wie sympathisch stufen Sie den Bildschirmhintergrund Ihres Verhandlungspartners ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich stufe den Bildschirmhintergrund meines Verhandlungspartners als sehr unsympathisch ein“ und 7 bedeutet „Ich stufe den Bildschirmhintergrund meines Verhandlungspartners als sehr sympathisch ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") sympathetic_own_background_by_other = make_field("Was schätzen Sie - Wie sympathisch stuft Ihr Verhandlungspartner Ihren Bildschirmhintergrund ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Mein Verhandlungspartner stuft meinen Bildschirmhintergrund als sehr unsympathisch ein“ und 7 bedeutet „Mein Verhandlungspartner stuft meinen Bildschirmhintergrund als sehr sympathisch ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Performance_other = make_field("Wie stufen Sie die Leistung Ihres Verhandlungspartners ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Die Leistung meines Verhandlungspartners war sehr schlecht“ und 7 bedeutet „Die Leistung meines Verhandlungspartners war sehr gut“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Performance_self = make_field("Wie stufen Sie Ihre Leistung ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Meine Leistung war sehr schlecht“ und 7 bedeutet „Meine Leistung war sehr gut“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Performance_self_by_other = make_field("Was schätzen Sie – Wie stuft Ihr Verhandlungspartner Ihre Leistung ein? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Mein Verhandlungspartner stuft meine Leistung als sehr schlecht ein“ und 7 bedeutet „Mein Verhandlungspartner stuft meine Leistung als sehr gut ein“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") # background image questions Sympathetic_background_white = make_field("Wie sympathisch finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht sympathisch“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr sympathisch“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_background_white = make_field("Wie professionell finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht professionell“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr professionell“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") competent_background_white = make_field("Wie kompetent finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht kompetent“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr kompetent“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") likeable_background_white = make_field("Wie gut gefällt Ihnen der Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Der Bildschirmhintergrund gefällt mir überhaupt nicht“ und 7 bedeutet „Der Bildschirmhintergrund gefällt mir sehr gut“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Sympathetic_background_livingroom = make_field( "Wie sympathisch finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht sympathisch“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr sympathisch“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_background_livingroom = make_field( "Wie professionell finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht professionell“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr professionell“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") competent_background_livingroom = make_field( "Wie kompetent finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht kompetent“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr kompetent“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") likeable_background_livingroom = make_field( "Wie gut gefällt Ihnen der Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Der Bildschirmhintergrund gefällt mir überhaupt nicht“ und 7 bedeutet „Der Bildschirmhintergrund gefällt mir sehr gut“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Sympathetic_background_landscape = make_field( "Wie sympathisch finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht sympathisch“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr sympathisch“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_background_landscape = make_field( "Wie professionell finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht professionell“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr professionell“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") competent_background_landscape = make_field( "Wie kompetent finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht kompetent“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr kompetent“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") likeable_background_landscape = make_field( "Wie gut gefällt Ihnen der Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Der Bildschirmhintergrund gefällt mir überhaupt nicht“ und 7 bedeutet „Der Bildschirmhintergrund gefällt mir sehr gut“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Sympathetic_background_library = make_field( "Wie sympathisch finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht sympathisch“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr sympathisch“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_background_library = make_field( "Wie professionell finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht professionell“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr professionell“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") competent_background_library = make_field( "Wie kompetent finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht kompetent“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr kompetent“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") likeable_background_library = make_field( "Wie gut gefällt Ihnen der Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Der Bildschirmhintergrund gefällt mir überhaupt nicht“ und 7 bedeutet „Der Bildschirmhintergrund gefällt mir sehr gut“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Sympathetic_background_plants = make_field( "Wie sympathisch finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht sympathisch“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr sympathisch“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_background_plants = make_field( "Wie professionell finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht professionell“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr professionell“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") competent_background_plants = make_field( "Wie kompetent finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht kompetent“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr kompetent“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") likeable_background_plants = make_field( "Wie gut gefällt Ihnen der Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Der Bildschirmhintergrund gefällt mir überhaupt nicht“ und 7 bedeutet „Der Bildschirmhintergrund gefällt mir sehr gut“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Sympathetic_background_company_logo = make_field( "Wie sympathisch finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht sympathisch“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr sympathisch“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_background_company_logo = make_field( "Wie professionell finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht professionell“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr professionell“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") competent_background_company_logo = make_field( "Wie kompetent finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht kompetent“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr kompetent“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") likeable_background_company_logo = make_field( "Wie gut gefällt Ihnen der Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Der Bildschirmhintergrund gefällt mir überhaupt nicht“ und 7 bedeutet „Der Bildschirmhintergrund gefällt mir sehr gut“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") Sympathetic_background_moonscape = make_field( "Wie sympathisch finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht sympathisch“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr sympathisch“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") professional_background_moonscape = make_field( "Wie professionell finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht professionell“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr professionell“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") competent_background_moonscape = make_field( "Wie kompetent finden Sie den Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich finde den Bildschirmhintergrund überhaupt nicht kompetent“ und 7 bedeutet „Ich finde den Bildschirmhintergrund sehr kompetent“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") likeable_background_moonscape = make_field( "Wie gut gefällt Ihnen der Bildschirmhintergrund, der oben eingeblendet wird? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Der Bildschirmhintergrund gefällt mir überhaupt nicht“ und 7 bedeutet „Der Bildschirmhintergrund gefällt mir sehr gut“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") similarity_with_other = make_field("Ganz intuitiv geschätzt - Wie ähnlich sind Sie der anderen Person, mit der Sie verhandelt haben? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet „Ich bin der anderen Person überhaupt nicht ähnlich“ und 7 bedeutet „Ich bin der anderen Person sehr ähnlich“. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") virtual_or_real_background = models.StringField( label="Hatte Ihr Verhandlungspartner einen virtuellen oder einen realen Bildschirmhintergrund bei der Verhandlung?", choices=["virtueller Bildschirmhintergrund", "realer Bildschirmhintergrund"], widget=widgets.RadioSelectHorizontal ) # OLD QUESTIONS comfortableness = models.IntegerField(choices=range(1, 8), label="Wie wohl haben Sie sich mit Ihrem Hintergrundbild bei der Verhandlung gefühlt? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet 'Ich habe mich sehr unwohl mit meinem Hintergrundbild gefühlt' und 7 bedeutet 'Ich habe mich sehr wohl mit meinem Hintergrundbild gefühlt'. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen. Mit dem Begriff 'Hintergrundbild 'ist gemeint, was Ihr Verhandlungspartner - abgesehen von Ihnen – gesehen hat (also z.B. eine Pflanze, die bei Ihnen im Raum stand).") own_bg_choice = models.StringField(choices=["Ja, ich hätte das Hintergrundbild selbst auch gewählt", "Nein, ich hätte ein anderes Hintergrundbild gewählt", "ich bin mir nicht sicher"], label="Hätten Sie das Hintergrundbild selbst auch gewählt? Bitte wählen Sie Ihre Antwort aus folgendem Dropdown-Menu aus.") own_bg_positive = models.IntegerField(choices=range(1, 8), label="Hat Ihr Hintergrundbild Ihrer Meinung nach positiv oder negativ auf Ihren Verhandlungspartner gewirkt? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet 'mein Hintergrundbild hat meiner Meinung nach sehr negativ auf meinen Verhandlungspartner gewirkt' und 7 bedeutet 'mein Hintergrundbild hat meiner Meinung nach sehr positiv auf meinen Verhandlungspartner gewirkt'. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") other_bg_positive = models.IntegerField(choices=range(1, 8), label="Hat das Hintergrundbild Ihres Verhandlungspartners positiv oder negativ auf Sie gewirkt? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet 'das Hintergrundbild meines Verhandlungspartners hat sehr negativ auf mich gewirkt' und 7 bedeutet 'das Hintergrundbild meines Verhandlungspartners hat sehr positiv auf mich gewirkt'. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") own_bg_effect = models.StringField(choices=[ "Ja, das Hintergrundbild hatte meiner Meinung nach einen Einfluss auf das Ergebnis, und zwar dass es den Lohn gesteigert hat.", "Ja, das Hintergrundbild hatte meiner Meinung nach einen Einfluss auf das Ergebnis, und zwar dass es den Lohn gesenkt hat.", "Nein, das Hintergrundbild hatte meiner Meinung nach keinen Einfluss auf das Ergebnis."]) other_bg_effect = models.StringField(choices=[ "Ja, das Hintergrundbild hatte meiner Meinung nach einen Einfluss auf das Ergebnis, und zwar dass es den Lohn gesteigert hat.", "Ja, das Hintergrundbild hatte meiner Meinung nach einen Einfluss auf das Ergebnis, und zwar dass es den Lohn gesenkt hat.", "Nein, das Hintergrundbild hatte meiner Meinung nach keinen Einfluss auf das Ergebnis."]) other_sympathetic = models.IntegerField(choices=range(1, 8), label="War Ihnen die Person, mit der Sie verhandelt haben sympathisch oder unsympathisch? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet 'Die Person, mit der ich verhandelt habe, war mir sehr unsympathisch' und 7 bedeutet 'Die Person, mit der ich verhandelt habe, war mir sehr sympathisch'. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") self_sympathetic = models.IntegerField(choices=range(1, 8), label="Denken Sie, das Sie Ihrem Verhandlungspartner sympathisch oder unsympathisch waren? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet 'Ich denke, dass ich meinem Verhandlungspartner sehr unsympathisch war' und 7 bedeutet 'Ich denke, dass ich meinem Verhandlungspartner sehr sympathisch war'. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") confidence = models.IntegerField(choices=range(1, 8), label="Wie selbstbewusst waren Sie bei der Verhandlung? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet 'Ich war überhaupt nicht selbstbewusst bei der Verhandlung' und 7 bedeutet 'Ich war sehr selbstbewusst bei der Verhandlung'. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") other_attractive = models.IntegerField(choices=range(1, 8), label="Fanden Sie die Person, mit der Sie verhandelt haben attraktiv? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet 'Ich fand meinen Verhandlungspartner überhaupt nicht attraktiv' und 7 bedeutet 'Ich fand meinen Verhandlungspartner sehr attraktiv'. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") other_trustworthy = models.IntegerField(choices=range(1, 8), label="Wie vertrauenswürdig fanden Sie ihren Verhandlungspartner? Bitte bewerten Sie anhand folgender Skala wobei 1 bedeutet 'Ich fand meinen Verhandlungspartner überhaupt nicht vertrauenswürdig' und 7 bedeutet 'Ich fand meinen Verhandlungspartner sehr vertrauenswürdig'. Mit den Zahlen zwischen 1 und 7 können Sie Ihr Ergebnis abstufen.") wifi_connection = models.StringField( choices=["Die Internetverbindung war stabil und es gab keine technischen Probleme.", "Die Internetverbindung war teilweise instabil. Es gab einige technische Probleme.", "Die Internetverbindung war größtenteils instabil und es gab große technische Probleme."], label="War Ihre Internetverbindung während des gesamten Experiments stabil oder gab es technische Probleme?") wifi_interrupt = models.IntegerField(min=0, label="Sie haben angegeben, dass Ihre Internetverbindung instabil war. Bitte notieren Sie, wie viele Sekunden die Verbindung ungefähr unterbrochen war.") camera = models.StringField(choices=["Die Kamera war stabil und es gab keine technischen Probleme.", "Die Kamera war teilweise instabil. Es gab einige technische Probleme.", "Die Kamera war größtenteils instabil und es gab große technische Probleme."], label="War Ihre Kamera während des gesamten Experiments stabil oder gab es technische Probleme?") camera_interrupt = models.IntegerField(min=0, label="Sie haben angegeben, dass Sie Probleme mit Ihrer Kamera hatten. Bitte notieren Sie, wie viele Sekunden die Verbindung ungefähr unterbrochen war.") microphone = models.StringField(choices=["Das Mikrofon war stabil und es gab keine technischen Probleme.", "Das Mikrofon war teilweise instabil. Es gab einige technische Probleme.", "Das Mikrofon war größtenteils instabil und es gab große technische Probleme."], label="War Ihr Mikrofon während des gesamten Experiments stabil oder gab es technische Probleme?") microphone_interrupt = models.IntegerField(min=0, label="Sie haben angegeben, dass Sie Probleme mit Ihrem Mikrofon hatten. Bitte notieren Sie, wie viele Sekunden die Verbindung ungefähr unterbrochen war.") know_partner = models.StringField( choices=["Nein, ich kannte meinen Verhandlungspartner noch nicht vor dem Experiment", "Ja, ich kannte meinen Verhandlungspartner schon vor dem Experiment"], label="Kannten Sie Ihren Verhandlungspartner schon vor dem Experiment?") birthyear = models.IntegerField(min=1920, max=2021, label="Was ist Ihr Geburtsjahr?") gender2 = models.StringField(choices=["weiblich", "männlich"], label="Was ist Ihr Geschlecht?") language = models.StringField( choices=["Grundkenntnisse", "Gute Kenntnisse", "Sehr gute Kenntnisse", "Fließend", "Verhandlungssicher", "Muttersprache"], label="Wie gut beherrschen Sie die deutsche Sprache?") experience_exp = models.StringField(choices=["0", "1–5", "6–10", "> 10"], label="An wie vielen Experimenten von experimenTUM haben Sie vorher ungefähr teilgenommen?") grade_maths = models.StringField( choices=["1.0–1.3", "1.4–1.7", "1.8–2.1", "2.2-2.5", "2.6-2.9", "3.0-3.3", "3.4-3.7", "3.8-4.0", "> 4.0"], label="Was war Ihre Abiturnote im Fach Mathematik?") faculty = models.StringField(choices=["Architektur", "Bau-/Vermessungswesen", "Chemie", "Education", "E-Technik", "Informatik", "Maschinenwesen", "Mathematik", "Medizin", "Physik", "Sport", "Wirtschaft", "Weihenstephan", "anderer"], label="An welcher Fakultät studieren Sie?") degree = models.StringField(choices=["Bachelor", "Master", "Anderer Abschluss"], label="Welchen Abschluss streben Sie aktuell an?") semester = models.IntegerField(choices=range(1, 11), label="In welchem Semester Ihres aktuellen Studiengangs befinden Sie sich?") risk_aversion = models.IntegerField(choices=range(1, 11), label="Wie schätzen Sie sich persönlich ein: Sind Sie im Allgemeinen ein risikobereiter Mensch oder versuchen Sie, Risiken zu vermeiden? Antworten Sie bitte anhand des folgenden Dropdown-Menu, wobei der Wert 0 bedeutet 'gar nicht risikobereit' und der Wert 10 bedeutet 'sehr risikobereit'. Mit den Werten zwischen 1 und 10 können Sie Ihre Meinung abstufen.") inequity_aversion = models.StringField(choices=["Verteilung A", "Verteilung B", "Verteilung C"], label="Angenommen Sie wären Person 2. Für welche Verteilungsmöglichkeit würden Sie sich entscheiden, wenn Sie die angegebenen €-Beträge der entsprechenden Verteilung nach Ihrer Entscheidung erhalten würden?") reciprocity_q1 = make_likert_fields('Wenn mir jemand einen Gefallen tut, bin ich bereit, dies zu erwidern.') reciprocity_q2 = make_likert_fields( 'Wenn mir schweres Unrecht zuteil wird, werde ich mich um jeden Preis bei der nächsten Gelegenheit dafür rächen.') reciprocity_q3 = make_likert_fields( 'Wenn mich jemand in eine schwierige Lage bringt, werde ich das Gleiche mit ihm machen.') reciprocity_q4 = make_likert_fields( 'Ich strenge mich besonders an, um jemandem zu helfen, der mir früher schon mal geholfen hat.') reciprocity_q5 = make_likert_fields( 'Wenn mich jemand beleidigt, werde ich mich ihm gegenüber auch beleidigend verhalten.') reciprocity_q6 = make_likert_fields( 'Ich bin bereit, Kosten auf mich zu nehmen, um jemandem zu helfen, der mir früher einmal geholfen hat.') big_five_q1 = make_likert_fields('Ich bin jemand, der gründlich arbeitet.') big_five_q2 = make_likert_fields('Ich bin jemand, der kommunikativ, gesprächig ist.') big_five_q3 = make_likert_fields('Ich bin jemand, der manchmal etwas grob zu anderen ist.') big_five_q4 = make_likert_fields('Ich bin jemand, der originell ist, neue Ideen einbringt.') big_five_q5 = make_likert_fields('Ich bin jemand, der sich oft Sorgen macht.') big_five_q6 = make_likert_fields('Ich bin jemand, der verzeihen kann.') big_five_q7 = make_likert_fields('Ich bin jemand, der eher faul ist.') big_five_q8 = make_likert_fields('Ich bin jemand, der aus sich herausgehen kann, gesellig ist.') big_five_q9 = make_likert_fields('Ich bin jemand, der künstlerische Erfahrungen schätzt.') big_five_q10 = make_likert_fields('Ich bin jemand, der leicht nervös wird.') big_five_q11 = make_likert_fields('Ich bin jemand, der Aufgaben wirksam und effizient erledigt.') big_five_q12 = make_likert_fields('Ich bin jemand, der zurückhaltend ist.') big_five_q13 = make_likert_fields('Ich bin jemand, der rücksichtsvoll und freundlich mit anderen umgeht.') big_five_q14 = make_likert_fields('Ich bin jemand, der eine lebhafte Phantasie, Vorstellungen hat.') big_five_q15 = make_likert_fields('Ich bin jemand, der entspannt ist, mit Stress gut umgehen kann.') tech_acc_q1 = make_likert_fields( 'Angenommen ich habe Zugang zu neuen technischen Geräten und Systemen, würde ich diese benutzen.') tech_acc_q2 = make_likert_fields( 'Vorausgesetzt ich habe Zugang zu neuen technischen Geräten, würde ich diese benutzen.') tech_acc_q3 = make_likert_fields( 'Der Gebrauch von technischen Geräten/Systemen verbessert die Leistung in meinem Job.') tech_acc_q4 = make_likert_fields( 'Der Gebrauch von technischen Geräten/Systemen in meinem Job erhöht meine Produktivität.') tech_acc_q5 = make_likert_fields( 'Der Gebrauch von technischen Geräten/Systemen verbessert die Effektivität in meinem Job.') tech_acc_q6 = make_likert_fields('Ich empfinde die Geräte/Systeme als nützlich in meinem Job.') tech_acc_q7 = make_likert_fields('In meinem Job ist der Gebrauch von technischen Systemen/Geräten wichtig.') tech_acc_q8 = make_likert_fields('In meinem Job ist der Gebrauch von technischen Systemen/Geräten relevant.') tech_acc_q9 = make_likert_fields('Die technischen Systeme/Geräte bewirken eine hohe Qualität.') tech_acc_q10 = make_likert_fields('Ich sehe keine Probleme bei der Qualität der technischen Systeme/Geräte.') tech_acc_q11 = make_likert_fields( 'Ich habe keine Probleme damit, anderen Menschen von den Folgen der technischen Systeme/Geräte zu erzählen.') tech_acc_q12 = make_likert_fields( 'Ich bin der Meinung, dass ich anderen Menschen die Konsequenzen des Gebrauchs der technischen Systeme/Geräte kommunizieren kann.') tech_acc_q13 = make_likert_fields('Die Folgen des Gebrauchs der technischen Systeme/Geräte sind mir klar.') tech_acc_q14 = make_likert_fields( 'Ich hätte Probleme damit, zu erklären warum der Gebrauch der technischen Systeme/Geräte nützlich oder nicht nützlich ist.') locuscontr_q1 = make_likert_fields('Wie mein Leben verläuft, hängt von mir selbst ab.') locuscontr_q2 = make_likert_fields('Im Vergleich mit anderen habe ich nicht das erreicht, was ich verdient habe.') locuscontr_q3 = make_likert_fields( 'Was man im Leben erreicht, ist in erster Linie eine Frage von Schicksal oder Glück.') locuscontr_q4 = make_likert_fields( 'Wenn man sich sozial oder politisch engagiert, kann man die sozialen Verhältnisse beeinflussen.') locuscontr_q5 = make_likert_fields('Ich mache häufig die Erfahrung, dass andere über mein Leben bestimmen.') locuscontr_q6 = make_likert_fields('Erfolg muss man sich hart erarbeiten.') locuscontr_q7 = make_likert_fields( 'Wenn ich im Leben auf Schwierigkeiten stoße, zweifle ich oft an meinen Fähigkeiten.') locuscontr_q8 = make_likert_fields( 'Welche Möglichkeiten ich im Leben habe, wird von den sozialen Umständen bestimmt.') locuscontr_q9 = make_likert_fields('Wichtiger als alle Anstrengungen sind die Fähigkeiten, die man mitbringt.') locuscontr_q10 = make_likert_fields('Ich habe wenig Kontrolle über die Dinge, die in meinem Leben passieren.') # NEW QUESTIONS perceived_competence_q1 = make_likert_fields('Ich bin in der Lage, Aufgaben zu Ende zu bringen.') perceived_competence_q2 = make_likert_fields('Ich kann auch die schwierigsten Aufgaben bewältigen.') perceived_competence_q3 = make_likert_fields('Ich nehme gerne herausfordernde Aufgaben an.') perceived_competence_q4 = make_likert_fields('Ich fühle mich gut dabei, schwierige Aufgaben zu bewältigen.') def comprehension1_choices(self): if self.id_in_group == 2: # vorgesetzter return ['< 3500 €', '< 3750 €', '< 4000 €'] else: # bewerber return ['> 3500 €', '> 3750 €', '> 4000 €'] def comprehension3_choices(self): if self.id_in_group == 2: return ['Ich muss das Gehalt meines Mitarbeiters so verhandeln, dass es möglichst gering ist.', 'Ich muss das Gehalt meines Mitarbeiters so verhandeln, dass es möglichst hoch ist.', 'Ich sollte mich mit meinem Mitarbeiter nicht auf einen Lohn einigen.'] else: return ['Ich muss mein Gehalt so verhandeln, dass es möglichst gering ist.', 'Ich muss mein Gehalt so verhandeln, dass es möglichst hoch ist.', 'Ich sollte mich mit meinem Vorgesetzten nicht auf einen Lohn einigen.'] def comprehension4_choices(self): if self.id_in_group == 2: return ['3500€', '4000€', '4500€'] else: return ['3000€', '3500€', '4000€'] def comprehension1_error_message(self, value): if self.id_in_group == 2: if value != '< 3500 €': return Constants.comprehension_error else: if value != '> 4000 €': return Constants.comprehension_error def comprehension2_error_message(self, value): if value != '4 €': return Constants.comprehension_error def comprehension4_error_message(self, value): if self.id_in_group == 2: if value != '4500€': return Constants.comprehension_error else: if value != '3000€': return Constants.comprehension_error def comprehension3_error_message(self, value): if self.id_in_group == 2: if value != 'Ich muss das Gehalt meines Mitarbeiters so verhandeln, dass es möglichst gering ist.': return Constants.comprehension_error else: if value != 'Ich muss mein Gehalt so verhandeln, dass es möglichst hoch ist.': return Constants.comprehension_error def zoom_code_error_message(self, value): if value != Constants.password and value != Constants.dropout_password: return 'Das Passwort ist falsch.' def live_results(self, result): others = self.get_others_in_group() group = self.group my_id = self.id_in_group if result == 1: # load history msg = self.msg_history if msg is not None: response = dict(msg=msg, flag=self.flag_history) return {my_id: response} elif len(others) == 1: partner = others[0] partner_id = partner.id_in_group self.negotiation_result = result if result == (-1): # 'could not agree' if group.agreed is not False: msg_me = 'Ihr Verhandlungpartner muss noch bestätigen, dass Sie sich nicht einigen konnten. Bitte warten Sie.' msg_partner = 'Ihr Verhandlungspartner hat angegeben, dass Sie sich nicht einigen konnten. Bitte bestätigen Sie dies, indem sie auch einen Haken setzen. Sollte das ein Irrtum sein, können Sie einfach fortfahren und neue Eingaben tätigen.' flag_me = 'primary' flag_partner = 'warning' # to history in database self.msg_history = msg_me partner.msg_history = msg_partner self.flag_history = flag_me partner.flag_history = flag_partner # to javascript response_me = dict(msg=msg_me, flag=flag_me) response_partner = dict(msg=msg_partner, flag=flag_partner) group.agreed = False return {my_id: response_me, partner_id: response_partner} else: msg = 'Ihr Verhandlungspartner und Sie haben bestätigt, dass Sie sich nicht einigen konnten. Sie können nun fortfahren.' flag = 'success' # to history in database self.msg_history = msg partner.msg_history = msg self.flag_history = flag partner.flag_history = flag # to javascript response = dict(msg=msg, flag=flag) return {0: response} if (self.get_others_in_group()[0].negotiation_result is None) or not ( 3000 <= self.get_others_in_group()[0].negotiation_result <= 4500): if group.attempt <= 1: msg_me = 'Ihr Verhandlungspartner hat noch keine Eingabe getätigt. Bitte warten Sie.' msg_partner = 'Ihr Verhandlunspartner hat eine Eingabe getätigt. Tätigen Sie nun Ihre.' flag = 'primary' self.msg_history = msg_me partner.msg_history = msg_partner self.flag_history = flag partner.flag_history = flag response_me = dict(msg=msg_me, flag=flag) response_other = dict(msg=msg_partner, flag=flag) else: msg_me = 'Ihr Verhandlungspartner hat noch keine weitere Eingabe getätigt. Bitte warten Sie.' msg_partner = 'Ihr Verhandlunspartner hat eine weitere Eingabe getätigt. Tätigen Sie nun Ihre.' flag = 'primary' self.msg_history = msg_me partner.msg_history = msg_partner self.flag_history = flag partner.flag_history = flag response_me = dict(msg=msg_me, flag=flag) response_other = dict(msg=msg_partner, flag=flag) return {my_id: response_me, partner_id: response_other} elif result == self.get_others_in_group()[0].negotiation_result: msg = 'Ihr Verhandlungspartner und Sie haben dieselbe Eingabe gemacht. Sie können nun fortfahren.' flag = 'success' self.msg_history = msg partner.msg_history = msg self.flag_history = flag partner.flag_history = flag response = dict(msg=msg, flag=flag) group.agreed = True group.attempt += 1 return {0: response} else: msg = 'Ihr Verhandlungspartner und Sie haben nicht dieselbe Eingabe gemacht. Bitte versuchen Sie es erneut.' flag = 'danger' self.msg_history = msg partner.msg_history = msg self.flag_history = flag partner.flag_history = flag response = dict(msg=msg, flag=flag) self.negotiation_result = None partner.negotiation_result = None group.attempt += 1 return {0: response}