import os
import sys
from hydrogram import Client, filters
from hydrogram.types import Message
from base import  Bot, CHANNEL_ID, SUDO
from base.utils.workflows import softsub_workflow, hardsub_workflow, softsub_to_hardsub_workflow, quality_workflow

@Bot.on_message((filters.document | filters.video), group=1)
async def get_file(_: Client, update: Message):
   chat_id = update.sender_chat.id
   if chat_id == CHANNEL_ID:
      caption = update.caption
      try:
         file_name = update.video.file_name
         file_id = update.video.file_id
      except:
         file_name = update.document.file_name
         file_id = update.document.file_id
      request_type = caption.split(',')[0]
      if request_type in ['Persian SoftSub','English SoftSub']:
         _, request_id = caption.split(',')
         softsub_workflow(int(request_id), file_name, file_id)
      elif request_type in ['Persian HardSub','English HardSub']:
         _, request_id = caption.split(',')
         hardsub_workflow(int(request_id), file_name, file_id)
      elif request_type in ['Convert to Persian HardSub','Convert to English HardSub']:
         _, request_id = caption.split(',')
         softsub_to_hardsub_workflow(int(request_id), file_name, file_id)
      elif request_type == 'Convert Quality':
         _, request_id, movieo_file_id = caption.split(',')
         quality_workflow(int(request_id), int(movieo_file_id), file_name, file_id)
   else:
      caption = update.caption
      try:
         file_id = update.video.file_id
      except:
         file_id = update.document.file_id
      if caption.split(',')[0] == 'send to':
         user_id = int(caption.split(',')[1])
         caption = caption.split(',')[2]
         await _.send_video(user_id, file_id, caption)



