Minor Fix

This commit is contained in:
yasirarism 2023-04-30 20:56:19 +07:00 committed by GitHub
parent 4e9db698bf
commit 62d5dbe1a5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 58 additions and 50 deletions

View file

@ -5,7 +5,7 @@
"invalid_lockdur": "Invalid time duration. Use proper format.\nExample: 6h (for 6 hours), 10m for 10 minutes.", "invalid_lockdur": "Invalid time duration. Use proper format.\nExample: 6h (for 6 hours), 10m for 10 minutes.",
"schedule_already_on": "Already a schedule is running in this chat. Disable it using `-d` flag.", "schedule_already_on": "Already a schedule is running in this chat. Disable it using `-d` flag.",
"nmd_enable_success": "Successfully enabled nightmode in this chat.\nGroup will be locked at {st} and will be opened after {lockdur} everyday.", "nmd_enable_success": "Successfully enabled nightmode in this chat.\nGroup will be locked at {st} and will be opened after {lockdur} everyday.",
"nmd_cb": "🔖 Hai, Aku {bname} dibuat menggunakan Framework Pyrogram v{ver} dan Python 3.10.\n\nMau buat bot seperti ini? Yuuk belajar di @botindonesia\nOwner: @YasirArisM", "nmd_cb": "🔖 Hai, Aku {bname} dibuat menggunakan Framework Pyrogram v{ver} dan Python v{pyver}.\n\nMau buat bot seperti ini? Yuuk belajar di @botindonesia\nOwner: @YasirArisM",
"nmd_off_not_admin": "#NIGHTMODE_FAIL\nFailed to turn off nightmode at `{chat_id}`, since {bname} is not an admin in chat `{chat_id}`", "nmd_off_not_admin": "#NIGHTMODE_FAIL\nFailed to turn off nightmode at `{chat_id}`, since {bname} is not an admin in chat `{chat_id}`",
"nmd_off_not_present": "#NIGHTMODE_FAIL\nFailed to turn off nightmode at `{chat_id}`, since {bname} is not present in chat `{chat_id}`. Removed group from list.", "nmd_off_not_present": "#NIGHTMODE_FAIL\nFailed to turn off nightmode at `{chat_id}`, since {bname} is not present in chat `{chat_id}`. Removed group from list.",
"nmd_off_err": "#NIGHTMODE_FAIL\nFailed to turn off nightmode at `{chat_id}`\nERROR: `{e}`", "nmd_off_err": "#NIGHTMODE_FAIL\nFailed to turn off nightmode at `{chat_id}`\nERROR: `{e}`",

View file

@ -5,7 +5,7 @@
"invalid_lockdur": "Durasi waktu tidak valid. Gunakan format yang tepat.\nContoh: 6j (selama 6 jam), 10m selama 10 menit.", "invalid_lockdur": "Durasi waktu tidak valid. Gunakan format yang tepat.\nContoh: 6j (selama 6 jam), 10m selama 10 menit.",
"schedule_already_on": "Sudah ada jadwal yang berjalan di obrolan ini. Nonaktifkan menggunakan tanda `-d`.", "schedule_already_on": "Sudah ada jadwal yang berjalan di obrolan ini. Nonaktifkan menggunakan tanda `-d`.",
"nmd_enable_success": "Berhasil mengaktifkan mode malam dalam obrolan ini.\nGrup akan dikunci pada {st} dan akan dibuka setelah {lockdur} setiap hari.", "nmd_enable_success": "Berhasil mengaktifkan mode malam dalam obrolan ini.\nGrup akan dikunci pada {st} dan akan dibuka setelah {lockdur} setiap hari.",
"nmd_cb": "🔖 Hai, Saya {bname} dibuat menggunakan Framework Pyrogram v{ver} dan Python 3.10.\n\nMau buat bot seperti ini? Yuuk belajar di @botindonesia\nOwner: @YasirArisM", "nmd_cb": "🔖 Hai, Saya {bname} dibuat menggunakan Framework Pyrogram v{ver} dan Python v{pyver}.\n\nMau buat bot seperti ini? Yuuk belajar di @botindonesia\nOwner: @YasirArisM",
"nmd_off_not_admin": "#NIGHTMODE_FAIL\nGagal mematikan mode malam di `{chat_id}`, karena {bname} bukan admin di obrolan `{chat_id}`", "nmd_off_not_admin": "#NIGHTMODE_FAIL\nGagal mematikan mode malam di `{chat_id}`, karena {bname} bukan admin di obrolan `{chat_id}`",
"nmd_off_not_present": "#NIGHTMODE_FAIL\nGagal mematikan mode malam di `{chat_id}`, karena {bname} tidak ada di obrolan `{chat_id}`. Menghapus grup dari daftar.", "nmd_off_not_present": "#NIGHTMODE_FAIL\nGagal mematikan mode malam di `{chat_id}`, karena {bname} tidak ada di obrolan `{chat_id}`. Menghapus grup dari daftar.",
"nmd_off_err": "#NIGHTMODE_FAIL\nGagal mematikan mode malam di `{chat_id}`\nERROR: `{e}`", "nmd_off_err": "#NIGHTMODE_FAIL\nGagal mematikan mode malam di `{chat_id}`\nERROR: `{e}`",

View file

@ -5,7 +5,7 @@
"invalid_lockdur": "Suwene wektu ora bener. Gunakake format sing bener.\nConto: 6h (6 jam), 10m kanggo 10 menit.", "invalid_lockdur": "Suwene wektu ora bener. Gunakake format sing bener.\nConto: 6h (6 jam), 10m kanggo 10 menit.",
"schedule_already_on": "Wis ana jadwal ing obrolan iki. Pateni nganggo gendéra `-d`.", "schedule_already_on": "Wis ana jadwal ing obrolan iki. Pateni nganggo gendéra `-d`.",
"nmd_enable_success": "Kasil ngaktifake mode wengi ing obrolan iki.\nGrup bakal dikunci ing {st} lan bakal dibukak sawise {lockdur} saben dina.", "nmd_enable_success": "Kasil ngaktifake mode wengi ing obrolan iki.\nGrup bakal dikunci ing {st} lan bakal dibukak sawise {lockdur} saben dina.",
"nmd_cb": "🔖 Hai, Aku {bname} digawe nganggo Framework Pyrogram v{ver} lan Python 3.10.\n\nMau gawe bot kaya iki? Yuuk belajar di @botindonesia\nOwner: @YasirArisM", "nmd_cb": "🔖 Hai, Aku {bname} digawe nganggo Framework Pyrogram v{ver} lan Python v{pyver}.\n\nMau gawe bot kaya iki? Yuuk belajar di @botindonesia\nOwner: @YasirArisM",
"nmd_off_not_admin": "#NIGHTMODE_FAIL\nGagal mateni nightmode ing `{chat_id}`, amarga {bname} dudu admin ing chat `{chat_id}`", "nmd_off_not_admin": "#NIGHTMODE_FAIL\nGagal mateni nightmode ing `{chat_id}`, amarga {bname} dudu admin ing chat `{chat_id}`",
"nmd_off_not_present": "#NIGHTMODE_FAIL\nGagal mateni nightmode ing `{chat_id}`, amarga {bname} ora ana ing chat `{chat_id}`. Dibusak grup saka dhaptar.", "nmd_off_not_present": "#NIGHTMODE_FAIL\nGagal mateni nightmode ing `{chat_id}`, amarga {bname} ora ana ing chat `{chat_id}`. Dibusak grup saka dhaptar.",
"nmd_off_err": "#NIGHTMODE_FAIL\nGagal mateni nightmode ing `{chat_id}`\nERROR: `{e}`", "nmd_off_err": "#NIGHTMODE_FAIL\nGagal mateni nightmode ing `{chat_id}`\nERROR: `{e}`",

View file

@ -29,7 +29,11 @@ def ratelimiter(func: Callable) -> Callable:
return return
elif isinstance(update, CallbackQuery): elif isinstance(update, CallbackQuery):
try:
await update.answer(warning_message, show_alert=True) await update.answer(warning_message, show_alert=True)
except QueryIdInvalid:
warned_users[userid] = 1
return
warned_users[userid] = 1 warned_users[userid] = 1
return return

View file

@ -19,6 +19,7 @@ import pyrogram
from inspect import iscoroutinefunction from inspect import iscoroutinefunction
from typing import Optional, Callable, Union from typing import Optional, Callable, Union
from pyrogram.errors import QueryIdInvalid
from enum import Enum from enum import Enum
from ..utils import patch, patchable, PyromodConfig from ..utils import patch, patchable, PyromodConfig
@ -268,7 +269,10 @@ class CallbackQueryHandler:
if (permissive_listener and not listener) and permissive_listener["unallowed_click_alert"]: if (permissive_listener and not listener) and permissive_listener["unallowed_click_alert"]:
alert = permissive_listener["unallowed_click_alert"] if type(permissive_listener["unallowed_click_alert"]) == str else PyromodConfig.unallowed_click_alert_text alert = permissive_listener["unallowed_click_alert"] if type(permissive_listener["unallowed_click_alert"]) == str else PyromodConfig.unallowed_click_alert_text
try:
await query.answer(alert) await query.answer(alert)
except QueryIdInvalid:
return False
return False return False
filters = listener["filters"] if listener else self.filters filters = listener["filters"] if listener else self.filters

View file

@ -41,8 +41,8 @@ async def currency(self: Client, ctx: Message):
last_update = data["time_last_update_utc"] last_update = data["time_last_update_utc"]
except KeyError: except KeyError:
return await ctx.reply_msg("<code>Invalid response from api !</i>") return await ctx.reply_msg("<code>Invalid response from api !</i>")
await ctx.reply_msg(f"**CURRENCY EXCHANGE RATE RESULT:**\n\n`{amount}` **{base_code}** = `{round(conversion_result)}` **{target_code}**\n<b>Rate Today</b> = `{round(conversion_rate)}`\n<b>Last Update:</b> {last_update}") await ctx.reply_msg(f"**CURRENCY EXCHANGE RATE RESULT:**\n\n`{format(amount, ",")}` **{base_code}** = `{format(conversion_result, ",")}` **{target_code}**\n<b>Rate Today</b> = `{format(conversion_rate, ",")}`\n<b>Last Update:</b> {last_update}")
except: except Exception as err:
await ctx.reply_msg("Failed convert currency, maybe you give wrong currency format or api down.") await ctx.reply_msg("Failed convert currency, maybe you give wrong currency format or api down.")
else: else:
await ctx.reply_msg("<code>This seems to be some alien currency, which I can't convert right now.. (⊙_⊙;)</code>") await ctx.reply_msg("<code>This seems to be some alien currency, which I can't convert right now.. (⊙_⊙;)</code>")

View file

@ -155,7 +155,6 @@ async def imdb_search_id(kueri, message):
) )
buttons.add(*BTN) buttons.add(*BTN)
msg = await k.edit_caption(msg, reply_markup=buttons) msg = await k.edit_caption(msg, reply_markup=buttons)
try:
await msg.wait_for_click( await msg.wait_for_click(
from_user_id=message.from_user.id, from_user_id=message.from_user.id,
timeout=30 timeout=30
@ -163,7 +162,7 @@ async def imdb_search_id(kueri, message):
except ListenerTimeout: except ListenerTimeout:
await msg.edit_caption("😶‍🌫️ Waktu Habis. Task Telah Dibatalkan!") await msg.edit_caption("😶‍🌫️ Waktu Habis. Task Telah Dibatalkan!")
except Exception as err: except Exception as err:
await k.edit_caption(f"Ooppss, gagal mendapatkan daftar judul di IMDb. Mungkin terkena rate limit atau down.\n\n<b>ERROR:</b> <code>{err}</code>") await msg.edit_caption(f"Ooppss, gagal mendapatkan daftar judul di IMDb. Mungkin terkena rate limit atau down.\n\n<b>ERROR:</b> <code>{err}</code>")
async def imdb_search_en(kueri, message): async def imdb_search_en(kueri, message):
@ -212,7 +211,6 @@ async def imdb_search_en(kueri, message):
) )
buttons.add(*BTN) buttons.add(*BTN)
msg = await k.edit_caption(msg, reply_markup=buttons) msg = await k.edit_caption(msg, reply_markup=buttons)
try:
await msg.wait_for_click( await msg.wait_for_click(
from_user_id=message.from_user.id, from_user_id=message.from_user.id,
timeout=30 timeout=30
@ -220,7 +218,7 @@ async def imdb_search_en(kueri, message):
except ListenerTimeout: except ListenerTimeout:
await msg.edit_caption("😶‍🌫️ Timeout. Task Has Been Cancelled!") await msg.edit_caption("😶‍🌫️ Timeout. Task Has Been Cancelled!")
except Exception as err: except Exception as err:
await k.edit_caption(f"Failed when requesting movies title. Maybe got rate limit or down.\n\n<b>ERROR:</b> <code>{err}</code>") await msg.edit_caption(f"Failed when requesting movies title. Maybe got rate limit or down.\n\n<b>ERROR:</b> <code>{err}</code>")
@app.on_callback_query(filters.regex("^imdbcari")) @app.on_callback_query(filters.regex("^imdbcari"))
@ -265,7 +263,6 @@ async def imdbcari(self: Client, query: CallbackQuery):
) )
buttons.add(*BTN) buttons.add(*BTN)
msg = await query.message.edit_caption(msg, reply_markup=buttons) msg = await query.message.edit_caption(msg, reply_markup=buttons)
try:
await msg.wait_for_click( await msg.wait_for_click(
from_user_id=int(uid), from_user_id=int(uid),
timeout=30 timeout=30
@ -273,7 +270,7 @@ async def imdbcari(self: Client, query: CallbackQuery):
except ListenerTimeout: except ListenerTimeout:
await msg.edit_caption("😶‍🌫️ Waktu Habis. Task Telah Dibatalkan!") await msg.edit_caption("😶‍🌫️ Waktu Habis. Task Telah Dibatalkan!")
except Exception as err: except Exception as err:
await query.message.edit_caption(f"Ooppss, gagal mendapatkan daftar judul di IMDb. Mungkin terkena rate limit atau down.\n\n<b>ERROR:</b> <code>{err}</code>") await msg.edit_caption(f"Ooppss, gagal mendapatkan daftar judul di IMDb. Mungkin terkena rate limit atau down.\n\n<b>ERROR:</b> <code>{err}</code>")
else: else:
if query.from_user.id != int(uid): if query.from_user.id != int(uid):
return await query.answer("⚠️ Access Denied!", True) return await query.answer("⚠️ Access Denied!", True)
@ -311,7 +308,6 @@ async def imdbcari(self: Client, query: CallbackQuery):
) )
buttons.add(*BTN) buttons.add(*BTN)
msg = await query.message.edit_caption(msg, reply_markup=buttons) msg = await query.message.edit_caption(msg, reply_markup=buttons)
try:
await msg.wait_for_click( await msg.wait_for_click(
from_user_id=int(uid), from_user_id=int(uid),
timeout=30 timeout=30
@ -319,7 +315,7 @@ async def imdbcari(self: Client, query: CallbackQuery):
except ListenerTimeout: except ListenerTimeout:
await msg.edit_caption("😶‍🌫️ Timeout. Task Has Been Cancelled!") await msg.edit_caption("😶‍🌫️ Timeout. Task Has Been Cancelled!")
except Exception as err: except Exception as err:
await query.message.edit_caption(f"Failed when requesting movies title. Maybe got rate limit or down.\n\n<b>ERROR:</b> <code>{err}</code>") await msg.edit_caption(f"Failed when requesting movies title. Maybe got rate limit or down.\n\n<b>ERROR:</b> <code>{err}</code>")
@app.on_callback_query(filters.regex("^imdbres_id")) @app.on_callback_query(filters.regex("^imdbres_id"))

View file

@ -151,7 +151,10 @@ async def command_karma(_, message):
) )
if not karma_dicc: if not karma_dicc:
return await m.edit("No karma in DB for this chat.") return await m.edit("No karma in DB for this chat.")
try:
userdb = await get_user_id_and_usernames(app) userdb = await get_user_id_and_usernames(app)
except AttributeError:
return
karma = {} karma = {}
for user_idd, karma_count in karma_arranged.items(): for user_idd, karma_count in karma_arranged.items():
if limit > 15: if limit > 15:

View file

@ -1,4 +1,5 @@
import re import re
import platform
from datetime import datetime, timedelta from datetime import datetime, timedelta
import pytz import pytz
@ -177,4 +178,4 @@ async def nightmode_handler(c, msg, strings):
@ratelimiter @ratelimiter
@use_chat_lang() @use_chat_lang()
async def callbackanightmd(c, q, strings): async def callbackanightmd(c, q, strings):
await q.answer(strings("nmd_cb").format(bname=c.me.first_name, ver=__version__), show_alert=True) await q.answer(strings("nmd_cb").format(bname=c.me.first_name, ver=__version__, pyver=platform.python_version()), show_alert=True)

View file

@ -348,7 +348,7 @@ async def getSame(msg, query, current_page, strings):
sdata.append({"url": url, "title": title, "sta": sta, "rate": rate}) sdata.append({"url": url, "title": title, "sta": sta, "rate": rate})
if not sdata: if not sdata:
await msg.edit_msg(strings("no_result"), del_in=5) await msg.edit_msg(strings("no_result"), del_in=5)
return None, None, 0 return None, None
SCRAP_DICT[msg.id] = [split_arr(sdata, 10), query] SCRAP_DICT[msg.id] = [split_arr(sdata, 10), query]
try: try:
index = int(current_page - 1) index = int(current_page - 1)
@ -478,7 +478,10 @@ async def melong_s(client, message, strings):
keyboard.row(InlineButton(strings("ex_data"), user_id=message.from_user.id)) keyboard.row(InlineButton(strings("ex_data"), user_id=message.from_user.id))
keyboard.row(*btn) keyboard.row(*btn)
keyboard.row(InlineButton(strings("cl_btn"), f"close#{message.from_user.id}")) keyboard.row(InlineButton(strings("cl_btn"), f"close#{message.from_user.id}"))
try:
await pesan.edit_msg(melongres, disable_web_page_preview=True, reply_markup=keyboard) await pesan.edit_msg(melongres, disable_web_page_preview=True, reply_markup=keyboard)
except Exception as err:
await pesan.edit_msg(f"<b>ERROR:</b> {err}", disable_web_page_preview=True, reply_markup=keyboard)
# Savefilm21 CMD # Savefilm21 CMD
@ -881,10 +884,9 @@ async def savefilm21_scrap(_, callback_query, strings):
soup = BeautifulSoup(html.text, "lxml") soup = BeautifulSoup(html.text, "lxml")
res = soup.find_all(class_="button button-shadow") res = soup.find_all(class_="button button-shadow")
res = "".join(f"{i.text}\n{i['href']}\n\n" for i in res) res = "".join(f"{i.text}\n{i['href']}\n\n" for i in res)
await callback_query.message.edit_msg(strings("res_scrape").format(link=link, kl=res), reply_markup=keyboard)
except Exception as err: except Exception as err:
await callback_query.message.edit_msg(f"ERROR: {err}", reply_markup=keyboard) await callback_query.message.edit_msg(f"ERROR: {err}", reply_markup=keyboard)
return
await callback_query.message.edit_msg(strings("res_scrape").format(link=link, kl=res), reply_markup=keyboard)
# Scrape Link Download Movieku.CC # Scrape Link Download Movieku.CC
@ -920,7 +922,7 @@ async def muviku_scrap(_, message, strings):
@use_chat_lang() @use_chat_lang()
async def melong_scrap(_, callback_query, strings): async def melong_scrap(_, callback_query, strings):
if callback_query.from_user.id != int(callback_query.data.split("#")[3]): if callback_query.from_user.id != int(callback_query.data.split("#")[3]):
return await callback_query.answer(strings("uauth"), True) return await callback_query.answer(strings("unauth"), True)
idlink = int(callback_query.data.split("#")[2]) idlink = int(callback_query.data.split("#")[2])
message_id = int(callback_query.data.split("#")[4]) message_id = int(callback_query.data.split("#")[4])
CurrentPage = int(callback_query.data.split("#")[1]) CurrentPage = int(callback_query.data.split("#")[1])
@ -939,10 +941,9 @@ async def melong_scrap(_, callback_query, strings):
hardsub = ep.findPrevious("div") hardsub = ep.findPrevious("div")
softsub = ep.findNext("div") softsub = ep.findNext("div")
rep += f"{hardsub}\n{softsub}" rep += f"{hardsub}\n{softsub}"
await callback_query.message.edit_msg(strings("res_scrape").format(link=link, kl=rep), reply_markup=keyboard)
except Exception as err: except Exception as err:
await callback_query.message.edit_msg(f"ERROR: {err}", reply_markup=keyboard) await callback_query.message.edit_msg(f"ERROR: {err}", reply_markup=keyboard)
return
await callback_query.message.edit_msg(strings("res_scrape").format(link=link, kl=rep), reply_markup=keyboard)
# Scrape DDL Link Gomov # Scrape DDL Link Gomov
@ -971,10 +972,9 @@ async def gomov_dl(_, callback_query, strings):
title = i.find("a").text title = i.find("a").text
link = i.find("a")["href"] link = i.find("a")["href"]
hasil += f"\n{title}\n{link}\n" hasil += f"\n{title}\n{link}\n"
await callback_query.message.edit_msg(strings("res_scrape").format(link=link, kl=hasil), reply_markup=keyboard)
except Exception as err: except Exception as err:
await callback_query.message.edit_msg(f"ERROR: {err}", reply_markup=keyboard) await callback_query.message.edit_msg(f"ERROR: {err}", reply_markup=keyboard)
return
await callback_query.message.edit_msg(strings("res_scrape").format(link=link, kl=hasil), reply_markup=keyboard)
@app.on_callback_query(filters.create(lambda _, __, query: "lendriveextract#" in query.data)) @app.on_callback_query(filters.create(lambda _, __, query: "lendriveextract#" in query.data))