o
    i                     @   s   d dl mZmZmZmZ d dlmZ d dlZd dlZeeZ	i Z
dd Ze	ddd Ze	jd	d
gddd Ze	jdd
gddd Ze	jdd
gddd Zedkr_e	jdddd dS dS )    )Flaskrender_templaterequestjsonify)datetimeNc                 C   s6   t j| t jt jdd}| \}}|d|d S )NT)stdoutstderrshellzutf-8)
subprocessPopenPIPEcommunicatedecode)commandprocessr   r    r   %/var/www/html/ChannelSelection/app.pyrun_command
   s   r   /c                   C   s   t dS )Nz
index.html)r   r   r   r   r   index   s   r   z/run-scriptPOST)methodsc                  C   sT   t jd} dddddddd	}| |v r"||  }t|}td
|iS tddidfS )Nscript_namez&bash /media/Beinchannels/Bein_Batch.shzbash /media/OSN/OSN_Batch.shz&python3 /media/EPG-MTV-LiveHDScript.pyzbash /media/run_RehostWeekly.shzbash /media/run_translation.shz$bash /media/run_translationWeekly.shz!python3 /media/GeoNews/GeoNews.py)
Bein_Batch	OSN_BatchEPG_MTV_LiveHDRehostWeeklyTranslationTranslationWeeklyGeoNewsoutputerrorzInvalid script name  )r   formgetr   r   )r   script_commandsr   r    r   r   r   
run_script   s   
r&   z/uploadc               
   C   s   t jd } t jd}tjd| j}| | d| d| d| d| d| d	| d
| d| d| d	}||v rQ|| }t	|}t
d|iS t
ddidfS )Nfilechannelz&/var/www/html/ChannelSelection/uploadszpython3 /media/GeoEPG/B.py z!python3 /media/GeoKahaniEPG/B.py z"python3 /media/HumNews/HumNews.py z"python3 /media/365News/365News.py z$python3 /media/AAN_TV_EPG/AAN_TV.py z4python3 /media/SetEntertainment/SetEntertainment.py z"python3 /media/AAJNews/AAJNews.py z"python3 /media/AAJ_Ent/AAJ_Ent.py z$python3 /media/GreenEnt/GreenEnt.py )	GeoEnt	GeoKahaniHumNews365News
AAN_TV_EPGSetEntertainmentAAJNewsAAJ_EntGreenEntr    r!   zInvalid channel selectedr"   )r   filesr#   r$   ospathjoinfilenamesaver   r   )r'   r(   	file_pathconversion_commandsr   r    r   r   r   upload_file)   s&   

r:   z/run-script-with-datec               
   C   s   t  } | d}| d}|stddidfS |dkr&t|dd}n|}d	| d
| d| d| d| d| d| d| d| d	}||v ra|| }t|}td|iS tddidfS )Nr   dater!   zDate is requiredr"   HumTV_Batchz%Y-%m-%dz%Y%m%dz-python3 /media/PTVSports/PTVhtlmTOXMLDate.py z python3 /media/AAJEnt/AAJEnt.py z(python3 /media/ExpressENT/ExpressEnt.py z6python3 /media/InternationalNews/InternationalNews.py zpython3 /media/Urdu1/Urdu1.py z$python3 /media/PTVWorld/PTVWorld.py z"python3 /media/PTVNews/PTVNews.py z"python3 /media/PTVHome/PTVHome.py z!bash /media/HumTV/HumTV_Batch.sh )	PTVhtlmTOXMLDateAAJEnt
ExpressEntInternationalNewsUrdu1PTVWorldPTVNewsPTVHomer<   r    z2Invalid script name or script does not accept date)r   get_jsonr$   r   r   strptimestrftimer   )datar   r;   formatted_datescript_commands_with_dater   r    r   r   r   run_script_with_dateG   s.   

rK   __main__Tz0.0.0.0i  )debughostport)flaskr   r   r   r   r   r
   r3   __name__apprunning_processesr   router   r&   r:   rK   runr   r   r   r   <module>   s$    



$