from telegram.ext import CommandHandler
from bot.helper.mirror_utils.upload_utils.gdriveTools import GoogleDriveHelper
from bot.helper.telegram_helper.message_utils import *
from bot.helper.telegram_helper.filters import CustomFilters
from bot.helper.telegram_helper.bot_commands import BotCommands
from bot.helper.ext_utils.bot_utils import new_thread
from bot import dispatcher
@new_thread
def cloneNode(update,context):
args = update.message.text.split(" ",maxsplit=1)
if update.message.from_user.username:
uname = f"@{update.message.from_user.username}"
else:
uname = f'{update.message.from_user.first_name}'
if uname is not None:
cc = f'\n\ncc: {uname}'
if len(args) > 1:
link = args[1]
msg = sendMessage(f"Cloning: {link}",context.bot,update)
gd = GoogleDriveHelper()
result, button = gd.clone(link)
deleteMessage(context.bot,msg)
if button == "":
sendMessage(result,context.bot,update)
else:
sendMarkup(result + cc,context.bot,update,button)
else:
sendMessage("Provide G-Drive Shareable Link to Clone.",context.bot,update)
clone_handler = CommandHandler(BotCommands.CloneCommand,cloneNode,filters=CustomFilters.authorized_chat | CustomFilters.authorized_user)
dispatcher.add_handler(clone_handler)