File: //proc/676643/root/usr/local/CyberCP/aiScanner/__pycache__/scheduled_views.cpython-310.pyc
o
��h&0 � @ s� d dl mZmZ d dlmZ d dlmZ d dlmZ d dl m
Z
d dlZeddg�d d
� �Zeddg�dd
� �Z
eedg�dd� ��Zedg�dd� �ZdS )� )�render�redirect)�JsonResponse)�csrf_exempt)�require_http_methods)�
loadLoginPageN�GET�POSTc
C s� �z�| j d }ddlm} ddlm} ddlm} |jj|d�}|� |�}| j
dkr�|d dkr6|j�� }n|�|�}|jj
|d
�}g } |D ]^}
| �i d|
j�d|
j�d
|
j�d|
j�d|
j�d|
j�d��d|
j�d|
j�d|
j�d|
jr{|
j�� nd�d|
jr�|
j�� nd�d|
j�d|
j�d|
j�d|
j�d|
j �d|
j!�� �� qFt"d| d��W S | j
d k�r�t#�$| j%�}g d!�}|D ]}
|
|vs�||
s�t"d"d#|
� �d$�� W S q�t&|d
t'�r�t(|d
�dkr�t"d"d%d$��W S |d dk�rdd&l)m*} t+|jj
|d'�j,d(dd)��}t+|d
�}|�-|��st"d"d*d$��W S dd+l.m.} z|�/|d d��0� }W n t1�yA t"d"d,d$�� Y W S w |||d |d |d ||�dd�|�dd�|�dd"�|�dd�d-� }|�2|d
� |�d��ry|�3|d � |d d.k�r�d|v �r�t4|d �|_n|d d/v �r�d|v �r�t4|d �|_|�5� t"d|jd0��W S W dS t6�y� t"d"d1d$�� Y S t7�y� } zt"d"t8|�d$��W Y d}~S d}~ww )2zManage scheduled scans�userIDr ��
Administrator� ��
ScheduledScan��
ACLManager��pkr �admin)� admin__in�id�name�domains� frequency� scan_type�time_of_day�%H:%M�day_of_week�day_of_month�status�last_runN�next_run�email_notifications�notification_emails�notify_on_threats�notify_on_completion�notify_on_failure�
created_atT)�success�scheduled_scansr )r r r r r FzMissing required field: �r( �errorz$At least one domain must be selected)�Websites)r �domain)�flatz6You do not have access to some of the selected domains)�datetimezInvalid time format) r r r r r r"