Skip to content

Commit 2b568af

Browse files
committed
Refactor Poll.
Move PollAnswer into poll.py and rename it to PollOption
1 parent f8de518 commit 2b568af

5 files changed

Lines changed: 25 additions & 47 deletions

File tree

pyrogram/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
Location, Message, MessageEntity, Dialog, Dialogs, Photo, PhotoSize, Sticker, User, UserStatus,
3333
UserProfilePhotos, Venue, Animation, Video, VideoNote, Voice, CallbackQuery, Messages, ForceReply,
3434
InlineKeyboardButton, InlineKeyboardMarkup, KeyboardButton, ReplyKeyboardMarkup, ReplyKeyboardRemove,
35-
Poll, PollAnswer
35+
Poll
3636
)
3737
from .client import (
3838
Client, ChatAction, ParseMode, Emoji,

pyrogram/client/types/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
from .messages_and_media import (
3232
Audio, Contact, Document, Animation, Location, Photo, PhotoSize,
3333
Sticker, Venue, Video, VideoNote, Voice, UserProfilePhotos,
34-
Message, Messages, MessageEntity, Poll, PollAnswer
34+
Message, Messages, MessageEntity, Poll
3535
)
3636
from .user_and_chats import (
3737
Chat, ChatMember, ChatMembers, ChatPhoto,

pyrogram/client/types/messages_and_media/__init__.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
from .photo import Photo
2828
from .photo_size import PhotoSize
2929
from .poll import Poll
30-
from .poll_answer import PollAnswer
3130
from .sticker import Sticker
3231
from .user_profile_photos import UserProfilePhotos
3332
from .venue import Venue

pyrogram/client/types/messages_and_media/poll.py

Lines changed: 23 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -20,49 +20,60 @@
2020

2121
import pyrogram
2222
from pyrogram.api import types
23-
from .poll_answer import PollAnswer
2423
from ..pyrogram_type import PyrogramType
2524

2625

26+
class PollOption(PyrogramType):
27+
def __init__(self,
28+
*,
29+
client: "pyrogram.client.ext.BaseClient",
30+
text: str,
31+
voters: int):
32+
super().__init__(client)
33+
34+
self.text = text
35+
self.voters = voters
36+
37+
2738
class Poll(PyrogramType):
2839
def __init__(self,
2940
*,
3041
client: "pyrogram.client.ext.BaseClient",
3142
id: int,
3243
closed: bool,
3344
question: str,
34-
answers: List[PollAnswer],
35-
answer_chosen: int = None,
45+
options: List[PollOption],
46+
option_chosen: int = None,
3647
total_voters: int):
3748
super().__init__(client)
3849

3950
self.id = id
4051
self.closed = closed
4152
self.question = question
42-
self.answers = answers
43-
self.answer_chosen = answer_chosen
53+
self.options = options
54+
self.option_chosen = option_chosen
4455
self.total_voters = total_voters
4556

4657
@staticmethod
4758
def _parse(client, media_poll: types.MessageMediaPoll) -> "Poll":
4859
poll = media_poll.poll
4960
results = media_poll.results.results
5061
total_voters = media_poll.results.total_voters
51-
answer_chosen = None
62+
option_chosen = None
5263

53-
answers = []
64+
options = []
5465

5566
for i, answer in enumerate(poll.answers):
56-
voters = None
67+
voters = 0
5768

5869
if results:
5970
result = results[i]
6071
voters = result.voters
6172

6273
if result.chosen:
63-
answer_chosen = i
74+
option_chosen = i
6475

65-
answers.append(PollAnswer(
76+
options.append(PollOption(
6677
text=answer.text,
6778
voters=voters,
6879
client=client
@@ -72,8 +83,8 @@ def _parse(client, media_poll: types.MessageMediaPoll) -> "Poll":
7283
id=poll.id,
7384
closed=poll.closed,
7485
question=poll.question,
75-
answers=answers,
76-
answer_chosen=answer_chosen,
86+
options=options,
87+
option_chosen=option_chosen,
7788
total_voters=total_voters,
7889
client=client
7990
)

pyrogram/client/types/messages_and_media/poll_answer.py

Lines changed: 0 additions & 32 deletions
This file was deleted.

0 commit comments

Comments
 (0)