Make PrivateChannel.__str__ more useful for groups.
Also demote is_private to a property instead of a slot.
This commit is contained in:
		| @@ -294,7 +294,7 @@ class PrivateChannel(Hashable): | ||||
|     +-----------+-------------------------------------------------+ | ||||
|     | hash(x)   | Returns the channel's hash.                     | | ||||
|     +-----------+-------------------------------------------------+ | ||||
|     | str(x)    | Returns the string "Direct Message with <User>" | | ||||
|     | str(x)    | Returns a string representation of the channel  | | ||||
|     +-----------+-------------------------------------------------+ | ||||
|  | ||||
|     Attributes | ||||
| @@ -320,13 +320,12 @@ class PrivateChannel(Hashable): | ||||
|         :attr:`ChannelType.group` then this is always ``None``. | ||||
|     """ | ||||
|  | ||||
|     __slots__ = ['id', 'is_private', 'recipients', 'type', 'owner', 'icon', 'name', 'me'] | ||||
|     __slots__ = ['id', 'recipients', 'type', 'owner', 'icon', 'name', 'me'] | ||||
|  | ||||
|     def __init__(self, me, **kwargs): | ||||
|         self.recipients = [User(**u) for u in kwargs['recipients']] | ||||
|         self.id = kwargs['id'] | ||||
|         self.me = me | ||||
|         self.is_private = True | ||||
|         self.type = ChannelType(kwargs['type']) | ||||
|         self._update_group(**kwargs) | ||||
|  | ||||
| @@ -336,8 +335,21 @@ class PrivateChannel(Hashable): | ||||
|         self.name = kwargs.get('name') | ||||
|         self.owner = utils.find(lambda u: u.id == owner_id, self.recipients) | ||||
|  | ||||
|     @property | ||||
|     def is_private(self): | ||||
|         return True | ||||
|  | ||||
|     def __str__(self): | ||||
|         return 'Direct Message with {0.name}'.format(self.user) | ||||
|         if self.type is ChannelType.private: | ||||
|             return 'Direct Message with {0.name}'.format(self.user) | ||||
|  | ||||
|         if self.name: | ||||
|             return self.name | ||||
|  | ||||
|         if len(self.recipients) == 0: | ||||
|             return 'Unnamed' | ||||
|  | ||||
|         return ', '.join(map(lambda x: x.name, self.recipients)) | ||||
|  | ||||
|     @property | ||||
|     def user(self): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user