Spaces:
Build error
Build error
# ===================================================================== # | |
# Copyright (c) 2022 Itz-fork # | |
# # | |
# This program is distributed in the hope that it will be useful, # | |
# but WITHOUT ANY WARRANTY; without even the implied warranty of # | |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # | |
# See the GNU General Public License for more details. # | |
# # | |
# You should have received a copy of the GNU General Public License # | |
# along with this program. If not, see <http://www.gnu.org/licenses/> # | |
# ===================================================================== # | |
from os.path import basename | |
from pykeyboard import InlineKeyboard | |
from unzipper.client.caching import STRINGS | |
from unzipper.helpers_nexa.utils import read_json_sync | |
from pyrogram.types import InlineKeyboardMarkup, InlineKeyboardButton | |
class Unzipper_Buttons: | |
def __init__(self) -> None: | |
pass | |
async def make_button(self, text: str, *args, **kwargs): | |
""" | |
Create pyrogram InlineKeyboardMarkup object with 1 button | |
""" | |
return InlineKeyboardMarkup([ | |
[InlineKeyboardButton(text, *args, **kwargs)] | |
]) | |
async def make_files_keyboard(self, files: list, user_id: int, chat_id: int, inlude_files: bool = True): | |
i_kbd = InlineKeyboard(row_width=2) | |
data = [InlineKeyboardButton(STRINGS["buttons"]["upload_all"], f"ext_a|{user_id}|{chat_id}"), InlineKeyboardButton( | |
STRINGS["buttons"]["cancel"], "cancel_dis")] | |
if inlude_files: | |
for num, file in enumerate(files): | |
# Stop iterating if file count is 90 | |
if num >= 90: | |
break | |
data.append( | |
InlineKeyboardButton(f"{num} - {basename(file)}".encode( | |
"utf-8").decode("utf-8"), f"ext_f|{user_id}|{chat_id}|{num}") | |
) | |
i_kbd.add(*data) | |
return i_kbd | |
START = InlineKeyboardMarkup([[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["help"], callback_data="helpcallback"), | |
InlineKeyboardButton( | |
STRINGS["buttons"]["about"], callback_data="aboutcallback") | |
]]) | |
HELP = InlineKeyboardMarkup([ | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["help_extract"], callback_data="extracthelp"), | |
InlineKeyboardButton( | |
STRINGS["buttons"]["help_upload"], callback_data="upmodhelp") | |
], | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["help_thumbnail"], callback_data="thumbhelp"), | |
InlineKeyboardButton( | |
STRINGS["buttons"]["help_backup"], callback_data="backuphelp") | |
], | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["help_langs"], callback_data="langhelp") | |
], | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["back"], callback_data="megoinhome") | |
] | |
]) | |
HELP_BACK = InlineKeyboardMarkup( | |
[[InlineKeyboardButton(STRINGS["buttons"]["back_to_help_menu"], callback_data="helpcallback")]]) | |
EXTRACT_FILE = InlineKeyboardMarkup([ | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["extract_file"], callback_data="extract_file|tg_file|no_pass") | |
], | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["extract_file_pass"], callback_data="extract_file|tg_file|with_pass") | |
], | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["cancel"], callback_data="cancel_dis") | |
] | |
]) | |
EXTRACT_URL = InlineKeyboardMarkup([ | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["extract_url"], callback_data="extract_file|url|no_pass"), | |
], | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["extract_url_pass"], callback_data="extract_file|url|with_pass") | |
], | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["cancel"], callback_data="cancel_dis") | |
] | |
]) | |
CLEAN = InlineKeyboardMarkup([ | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["clean"], callback_data="cancel_dis") | |
], | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["no_cancel"], callback_data="nobully") | |
] | |
]) | |
BACKUP = InlineKeyboardMarkup( | |
[[InlineKeyboardButton("Gofile.io", callback_data="cloudbackup|gofile"), ]]) | |
SETTINGS_GOFILE = InlineKeyboardMarkup([ | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["gofile_set"], callback_data="gf_setting-set"), | |
InlineKeyboardButton( | |
STRINGS["buttons"]["gofile_del"], callback_data="gf_setting-del") | |
], | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["gofile_get"], callback_data="gf_setting-get") | |
] | |
]) | |
UPLOAD_MODE = InlineKeyboardMarkup([ | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["as_doc"], callback_data="set_mode|doc") | |
], | |
[ | |
InlineKeyboardButton( | |
STRINGS["buttons"]["as_vid"], callback_data="set_mode|video") | |
] | |
]) | |
LANGUAGES = InlineKeyboardMarkup([[InlineKeyboardButton( | |
v, f"set_lang|{k}")] for k, v in read_json_sync("unzipper/localization/languages.json", True)]) | |
BACK = InlineKeyboardMarkup( | |
[[InlineKeyboardButton(STRINGS["buttons"]["back"], callback_data="megoinhome")]]) | |