
    Ih                     4   d dl mZmZmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlZd dlmZ d dlmZ  ed	e      Zej%                  d
dg      ed               Zej%                  ddg      ed               Zej%                  ddg      ed               Zy)    )	Blueprintrequestjsonify)Image)User)datetime)ceilN)ObjectId)jwt_requiredimage_routesz/get-image-detailPOST)methodsc                  (   t        t        dd       } t        j                  dk(  r?t        j                         xs i }|j	                  d      }|st        ddd      dfS 	 t        j                  t        |            j                         }|rt        j                  j                  d
d      j                  d      dz   }|j                         j                         }||d   z   |d<   t!        |j#                               D ]$  \  }}t%        |t              st'        |      ||<   & d|v rt'        |d         |d<   |d= t        dd|d      dfS t        ddd      dfS t        ddd      dfS # t        $ r t        dd	d      dfcY S w xY w)Nuser_idr   image_idFzEnter image idstatusmessage  idzInvalid image idhttp://https:////public/images/uploads/image_idr   TzFetching the image information)r   r   images   No data found yet  Unauthorized method.  )getattrr   methodget_jsongetr   r   objectsr
   first	Exceptionhost_urlreplacerstripto_mongoto_dictlistitems
isinstancestr)r   datar   	image_objbase_url
image_dictkvs           //var/www/html/eduruby.in/routes/image_routes.pyget_single_imager;      s    gy$/G~~!'R88J' +   
	();<BBDI ''//	:FMMcRSllH"++-557J"*Z-@"@Jw Z--/0 +1a*$'FJqM+ 
"#&z%'8#9
4 u%;$  	  .   
 -
   	?  	-   	s   "-E5 5FFz/get-imagesc            
         t        t        dd       } t        j                  dk7  rt        ddd      dfS t        j                         xs i }| } | st        ddd      dfS t        j                  | 	      j                         }|st        dd
d      dfS |j                  }t        |j                  dd            }t        |j                  dd            }|dz
  |z  }t        j                  |      j                  d      }|j                         }t        ||      }|j                  |      j!                  |      }	|	st        ddd      dfS t        j"                  j%                  dd      j'                  d      dz   }
g }|	D ]  }|j)                         }|j*                  }t-        |t.              r|j1                  d      |d<   |j2                  r|j2                  j5                  d      ng }|D cg c]  }|
|z   	 c}|d<   |j                  d      xs d|d<   |j                  d      xs d|d<   |dk(  rC|r|j1                  d       nd}|r|j1                  d!      nd}||d"<   ||d#<   d$|d%<   d&|d'<   d&|d(<   |j7                  |        t9        ||z        }t        d)d*|||||d+d,      d-fS c c}w ).Nr   r   Fr"   r   r#   zEnter user idr   r   zUser not found.r!   page   per_page
   )r   z-idr      r   r   r   r   z%d %b %Ycreated_date,r   title subject_topicTeacherz%d/%m/%Yz%I:%M %p	quiz_date	quiz_timezNot Yet Assignedr   r   	attempted	completedTzFetching the images list)current_pager?   total_itemstotal_pages)r   r   r   
paginationr   )r$   r   r%   r   r&   r   r(   r)   	user_typeintr'   r   order_bycountmaxskiplimitr+   r,   r-   to_jsonrB   r2   r   strftimer   splitappendr	   )r   r4   userrP   r=   r?   offsetimages_querytotal_imagesimages_listr6   formatted_imagesimgimg_dict
created_dt	img_filesirH   rI   rN   s                       r:   get_images_listrf   B   s    gy$/G~~%4JKLcQQ#DG %ODEsJJ <<7#))+D%4EFGLLI txx"#D488J+,HQh("F ==.77>L%%'L,)H##F+11(;K%4GHI3NN ''	:>EEcJKddH *;;= %%
j(+'1':'::'FH^$ -0IICIIOOC(2	3<=aX\= %LL17R$,LL$A$GR!	!;E
++J72I;E
++J72I$-H[!$-H[!!3HX$%H[!$%H[!)3*6 |h./K-"  '&	
	
 
 	
 
' >s   ;J>z/submit-imagec                  r   t        t        dd       } t        j                  dk7  rt        ddd      dfS t        j                  xs i }|j                  d      }|j                  d      }|j                  d	      }|st        dd
d      dfS |st        ddd      dfS |st        ddd      dfS t        j                  |      j                  dddd      j                         }|r?|j                  ||       |j                          t        dd||j                  d      dfS t        ddd      dfS )Nr   r   Fr"   r   r#   pathrD   rF   z
Enter pathr   zEnter titlezEnter subject/topic)output_filer   r   extracted_textrB   )
set__titleset__subject_topicTz/Image uploaded and text extracted successfully.)r   r   ri   rj   r   r    rA   )r$   r   r%   r   jsonr'   r   r(   onlyr)   updatereloadrj   )r   r4   rh   rD   rF   image_records         r:   submit_imagerr      sj    gy$/G~~-
   	
 <<2D88FDHHWEHH_-M %LABCGG%MBCSHH%4IJKSPP ==T277g'eg  uOH*99	
 
  	 *
   	    )flaskr   r   r   models.imager   models.userr   r   mathr	   osbsonr
   utils.jwt_servicer   __name__r   router;   rf   rr    rs   r:   <module>r~      s    - -     	  *2'&:2  ;2h MF84O  5Ob OfX6)  7)rs   