1 Commits

Author SHA1 Message Date
AlberLC
9e5f7a81ff Add user who pressed the button 2022-05-26 05:45:16 +02:00
2 changed files with 4 additions and 3 deletions

View File

@@ -311,10 +311,10 @@ class FlanaBot(MultiBot, ABC):
# ---------------------------------------------- # # ---------------------------------------------- #
async def _on_button_press(self, message: Message): async def _on_button_press(self, message: Message):
await self._accept_button_event(message) await self._accept_button_event(message)
if message.author.is_admin is False: if not message.button_pressed_user.is_admin:
return return
match message.last_button_pressed: match message.button_pressed_text:
case WeatherEmoji.ZOOM_IN.value: case WeatherEmoji.ZOOM_IN.value:
buttons_message_type = ButtonsMessageType.WEATHER buttons_message_type = ButtonsMessageType.WEATHER
message.weather_chart.zoom_in() message.weather_chart.zoom_in()
@@ -335,7 +335,7 @@ class FlanaBot(MultiBot, ABC):
buttons_message_type = ButtonsMessageType.WEATHER buttons_message_type = ButtonsMessageType.WEATHER
trace_metadata_name = WeatherEmoji(emoji).name.lower() trace_metadata_name = WeatherEmoji(emoji).name.lower()
message.weather_chart.trace_metadatas[trace_metadata_name].show = not message.weather_chart.trace_metadatas[trace_metadata_name].show message.weather_chart.trace_metadatas[trace_metadata_name].show = not message.weather_chart.trace_metadatas[trace_metadata_name].show
case _ if 'auto_' in (config := message.last_button_pressed.split()[1]): case _ if 'auto_' in (config := message.button_pressed_text.split()[1]):
buttons_message_type = ButtonsMessageType.CONFIG buttons_message_type = ButtonsMessageType.CONFIG
message.chat.config[config] = not message.chat.config[config] message.chat.config[config] = not message.chat.config[config]
message.save() message.save()

View File

@@ -13,6 +13,7 @@ from flanabot.models.weather_chart import WeatherChart
@dataclass(eq=False) @dataclass(eq=False)
class Message(MultiBotMessage): class Message(MultiBotMessage):
author: User = None author: User = None
button_pressed_user: User = None
mentions: Iterable[User] = field(default_factory=list) mentions: Iterable[User] = field(default_factory=list)
chat: Chat = None chat: Chat = None
replied_message: Message = None replied_message: Message = None