Example #1
0
 def has_connection(self, player):
     """
     Checks so this player is actually listening
     to this channel.
     """
     # also handle object.player calls
     player, typ = identify_object(player)
     if typ == 'object':
         player = player.player
         player, typ = identify_object(player)
     if player and not typ == "player":
         logger.log_errmsg("Channel.has_connection received object of type '%s'. It only accepts players/characters." % typ)
         return
     # do the check
     return PlayerChannelConnection.objects.has_player_connection(player, self)
Example #2
0
 def remove_receiver(self, obj):
     "Remove a single recevier"
     obj, typ = identify_object(obj)
     if typ == 'player':
         self.db_receivers_players.remove(obj)
     elif typ == 'object':
         self.db_receivers_objects.remove(obj)
     else:
         raise ValueError
     self.save()
Example #3
0
 def remove_receiver(self, obj):
     "Remove a single recevier"
     obj, typ = identify_object(obj)
     if typ == 'player':
         self.db_receivers_players.remove(obj)
     elif typ == 'object':
         self.db_receivers_objects.remove(obj)
     else:
         raise ValueError
     self.save()
Example #4
0
 def __hide_from_set(self, value):
     "Setter. Allows for self.hide_from = value. Will append to hiders"
     obj, typ = identify_object(value)
     if typ == "player":
         self.db_hide_from_players.add(obj)
     elif typ == "object":
         self.db_hide_from_objects.add(obj)
     elif typ == "channel":
         self.db_hide_from_channels.add(obj)
     else:
         raise ValueError
     self.save()
Example #5
0
 def __hide_from_set(self, value):
     "Setter. Allows for self.hide_from = value. Will append to hiders"
     obj, typ = identify_object(value)
     if typ == "player":
         self.db_hide_from_players.add(obj)
     elif typ == "object":
         self.db_hide_from_objects.add(obj)
     elif typ == "channel":
         self.db_hide_from_channels.add(obj)
     else:
         raise ValueError
     self.save()
Example #6
0
 def remove_sender(self, value):
     "Remove a single sender or a list of senders"
     for val in make_iter(value):
         obj, typ = identify_object(val)
         if typ == 'player':
             self.db_sender_players.remove(obj)
         elif typ == 'object':
             self.db_sender_objects.remove(obj)
         elif isinstance(obj, basestring):
             self.db_sender_external = obj
         else:
             raise ValueError(obj)
         self.save()
Example #7
0
 def remove_sender(self, value):
     "Remove a single sender or a list of senders"
     for val in make_iter(value):
         obj, typ = identify_object(val)
         if typ == 'player':
             self.db_sender_players.remove(obj)
         elif typ == 'object':
             self.db_sender_objects.remove(obj)
         elif isinstance(obj, basestring):
             self.db_sender_external = obj
         else:
             raise ValueError(obj)
         self.save()
Example #8
0
 def __receivers_set(self, value):
     "Setter. Allows for self.receivers = value. This appends a new receiver to the message."
     for val in (v for v in make_iter(value) if v):
         obj, typ = identify_object(val)
         if typ == 'player':
             self.db_receivers_players.add(obj)
         elif typ == 'object':
             self.db_receivers_objects.add(obj)
         elif not obj:
             return
         else:
             raise ValueError
         self.save()
Example #9
0
 def __senders_set(self, value):
     "Setter. Allows for self.sender = value"
     for val in (v for v in make_iter(value) if v):
         obj, typ = identify_object(val)
         if typ == 'player':
             self.db_sender_players.add(obj)
         elif typ == 'object':
             self.db_sender_objects.add(obj)
         elif isinstance(typ, basestring):
             self.db_sender_external = obj
         elif not obj:
             return
         else:
             raise ValueError(obj)
         self.save()
Example #10
0
 def __senders_set(self, value):
     "Setter. Allows for self.sender = value"
     for val in (v for v in make_iter(value) if v):
         obj, typ = identify_object(val)
         if typ == 'player':
             self.db_sender_players.add(obj)
         elif typ == 'object':
             self.db_sender_objects.add(obj)
         elif isinstance(typ, basestring):
             self.db_sender_external = obj
         elif not obj:
             return
         else:
             raise ValueError(obj)
         self.save()
Example #11
0
 def __receivers_set(self, value):
     """
     Setter. Allows for self.receivers = value.
     This appends a new receiver to the message.
     """
     for val in (v for v in make_iter(value) if v):
         obj, typ = identify_object(val)
         if typ == 'player':
             self.db_receivers_players.add(obj)
         elif typ == 'object':
             self.db_receivers_objects.add(obj)
         elif not obj:
             return
         else:
             raise ValueError
         self.save()