1"""Provide the InboxToggleableMixin class."""
2from ....const import API_PATH
3
4
5class InboxToggleableMixin(object):
6    """Interface for classes that can optionally receive inbox replies."""
7
8    def disable_inbox_replies(self):
9        """Disable inbox replies for the item.
10
11        Example usage:
12
13        .. code:: python
14
15           comment = reddit.comment('dkk4qjd')
16           comment.disable_inbox_replies()
17
18           submission = reddit.submission('8dmv8z')
19           submission.disable_inbox_replies()
20
21        See also :meth:`~.enable_inbox_replies`
22
23        """
24        self._reddit.post(
25            API_PATH["sendreplies"], data={"id": self.fullname, "state": False}
26        )
27
28    def enable_inbox_replies(self):
29        """Enable inbox replies for the item.
30
31        Example usage:
32
33        .. code:: python
34
35           comment = reddit.comment('dkk4qjd')
36           comment.enable_inbox_replies()
37
38           submission = reddit.submission('8dmv8z')
39           submission.enable_inbox_replies()
40
41        See also :meth:`~.disable_inbox_replies`
42
43        """
44        self._reddit.post(
45            API_PATH["sendreplies"], data={"id": self.fullname, "state": True}
46        )
47