ó
‡“¬fc           @   sO  d  d l  m Z m Z d  d l 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 m Z d  d l m Z m Z m Z m Z d  d	 l m Z d  d
 l m Z m Z m Z m Z d  d l Z e d „  ƒ Z e d „  ƒ Z e e d „  ƒ ƒ Z e d „  ƒ Z  e d „  ƒ Z! e d „  ƒ Z" e d „  ƒ Z# d S(   iÿÿÿÿ(   t   rendert   get_object_or_404(   t   HttpResponseRedirectt   Http404(   t   reverse(   t   messages(   t   csrf_exempt(   t   members_only(   t   date(   t   CPDSubmissionFormt   CPDSubmissionEvidenceFormt   CPDReflectionFormt   CPDNLSubmissionForm(   t   Member(   t   CPDSubmissiont   CPDSubmissionYeart   CPDSubmissionEvidencet   CPDCategoryNc   	      C   sr  t  t d |  j ƒ} t j j d | d t ƒ } t j j d | d t ƒ } t j	 ƒ  } | j
 d k r~ t | j d d ƒ } n t | j d d d ƒ } y t j j d | d | ƒ } Wny t j k
 r1| j
 d k rô t | j d d d ƒ } n t | j d d ƒ } t d | d	 | d | ƒ } | j ƒ  n Xt j j d | d
 | ƒ } t |  d i | d 6| d 6| d 6ƒ S(   Nt   usert   membert   approvedi	   i   t
   start_datei   i   t   end_datet   start_date__lts    members/cpd/cpd-submissions.htmlt   cpd_submissionst   pending_submissionst   previous_years(   R   R   R   R   t   objectst   filtert   Truet   FalseR   t   todayt   montht   yearR   t   gett   DoesNotExistt   saveR    (	   t   requestR   R   R   R   R   t   current_yearR   R   (    (    s6   /var/www/svtgbi.org/svtgbi/modules/cpd/accountviews.pyR      s(    c         C   s¤  t  t d |  j ƒ} t ƒ  } t d d ƒ } t ƒ  } t } t } t j j	 ƒ  } t
 d d ƒ } | g }	 |  j rct |  j |  j ƒ } t |  j |  j d d ƒ} t |  j ƒ } t }
 t } |  j j d ƒ r=t } | j ƒ  r4| j ƒ  r4| j d t ƒ } | | _ | j ƒ  t |  j d | ƒ} | j ƒ  qØt }
 n› | j ƒ  rÒ| j ƒ  rÒ| j d t ƒ } | | _ | j j | _ | j j | _ | j j | _ t | _ | j ƒ  t |  j d | ƒ} | j ƒ  n t }
 |
 sÆ|  j j d ƒ } g  }	 d	 } xÇ | D]¼ } |  j j d
 | ƒ rt
 |  j |  j d d | ƒ} | j d t ƒ } | | _ | | _ | j ƒ  t
 d d | ƒ } |	 j | ƒ n& t }
 t
 d d | ƒ } |	 j | ƒ | d	 } qWn  |
 s=|  j j d ƒ rt j d |  d | ƒ t  j! |  d ƒ n& t j" d |  d | ƒ t  j! |  d ƒ t# t$ d ƒ ƒ S| rP| j% ƒ  n  t  j& |  d ƒ n  t' |  d i | d 6| d 6| d 6| d 6| d 6|	 d 6| d 6ƒ S(   NR   t   prefixt   nlt   file_1t
   not_listedt   committ   instancet   filesi   s   file_%s-files   file_%sR%   t   cpd_submissions“   Your CPD Submission has been uploaded. Your evidence will be reviewed by the CPD admin, you will be emailed once your submission has been approved.s&   Your CPD Submission has been uploaded.t   account_cpd_submissionss2   Please make sure you enter all fields to continue.s   members/cpd/submit-cpd.htmlt   cpd_categoriest   cpd_submission_formt   cpd_nl_submission_formt   cpd_reflection_formt
   file_formst   submission_item_id((   R   R   R   R	   R   R   R   R   R   t   allR
   t   POSTt   FILESR"   R   t   is_validR$   R   t   cpd_itemt   categoryt   cpd_categoryt
   cpd_pointst   points_valuet   namet   activity_nameR   t   getlistt
   submissiont   ordert   appendt   emailst   cpd_record_submitted_pendingR   t   successt   cpd_record_submittedR   R   t   deletet   errorR    (   R%   R   R1   R2   R3   R*   R5   R0   t	   file_formR4   t   errorsR.   t   posted_filest
   file_ordert   posted_filet   submitted_filet   new_file_form(    (    s6   /var/www/svtgbi.org/svtgbi/modules/cpd/accountviews.pyt
   submit_cpd7   sŒ    					
			
		
c         C   s  t  t d |  j ƒ} t  t d | d | ƒ} | j sB | j ƒ  rb t j |  d ƒ t t	 d ƒ ƒ St
 d d ƒ } | g } |  j rá|  j j d ƒ } d	 } t } xó | D]ë }	 |  j j d
 |	 ƒ rct
 |  j |  j d d |	 ƒ} | j ƒ  r@| j d t ƒ }
 | |
 _ | |
 _ |
 j ƒ  t
 d d |	 ƒ } | j | ƒ q‰t
 d d |	 ƒ } | j | ƒ n& t } t
 d d |	 ƒ } | j | ƒ | d	 } q¨ W| s½t j |  d ƒ t t	 d ƒ ƒ Sx! | j ƒ  D] } | j ƒ  qÊWn  t |  d i | d 6| d 6ƒ Sd  S(   NR   t   idR   s?   Sorry, this submission already has evidence associated with it.R/   R'   R)   R-   i   s   file_%s-files   file_%sR+   s    Your Evidence has been uploaded.s   members/cpd/add-evidence.htmlR.   R4   (   R   R   R   R   t   evidencet   get_evidenceR   t   warningR   R   R
   R7   RA   R   R8   R"   R9   R$   RB   RC   RD   R   RG   RI   R    (   R%   t   submission_idR   R.   RK   R4   RM   RN   RL   RO   RP   RQ   t   file(    (    s6   /var/www/svtgbi.org/svtgbi/modules/cpd/accountviews.pyt   add_evidence    sB    				
c         C   sf   d d l  m } t t d |  j ƒ} t t d | d | ƒ} | j r\ | |  | j d t ƒSt ‚ d  S(   Niÿÿÿÿ(   t
   serve_fileR   RS   R   t   save_as(	   t   filetransfers.apiRZ   R   R   R   R   RT   R   R   (   R%   RW   RZ   R   RB   (    (    s6   /var/www/svtgbi.org/svtgbi/modules/cpd/accountviews.pyt   download_evidence×   s    	c         C   sD   t  t d |  j ƒ} t  t d | d | ƒ} t |  d i | d 6ƒ S(   NR   RS   R   s    members/cpd/view-reflection.htmlRB   (   R   R   R   R   R    (   R%   RW   R   RB   (    (    s6   /var/www/svtgbi.org/svtgbi/modules/cpd/accountviews.pyt   view_reflectionå   s    c         C   sf   d d l  m } t t d |  j ƒ} t t d | d | ƒ} | j r\ | |  | j d t ƒSt ‚ d  S(   Niÿÿÿÿ(   RZ   R   RS   t   submission__memberR[   (	   R\   RZ   R   R   R   R   RX   R   R   (   R%   t   evidence_idRZ   R   RT   (    (    s6   /var/www/svtgbi.org/svtgbi/modules/cpd/accountviews.pyt   download_submission_evidenceî   s    	c         C   s   t  t d |  j ƒ} t  t d | d | ƒ} y | j ƒ  t j |  d ƒ Wn! t k
 rn t j |  d ƒ n Xt	 t
 d ƒ ƒ S(   NR   RS   R   s   Submission has been removed.s(   Sorry, could not remove your submission.R/   (   R   R   R   R   RI   R   RG   t	   ExceptionRJ   R   R   (   R%   RW   R   R.   (    (    s6   /var/www/svtgbi.org/svtgbi/modules/cpd/accountviews.pyt   remove_submissionü   s    
($   t   django.shortcutsR    R   t   django.httpR   R   t   django.core.urlresolversR   t   django.contribR   t   django.views.decorators.csrfR   t   modules.core.decoratorsR   t   datetimeR   t   formsR	   R
   R   R   t   modules.members.modelsR   t   modelsR   R   R   R   RE   R   RR   RY   R]   R^   Ra   Rc   (    (    (    s6   /var/www/svtgbi.org/svtgbi/modules/cpd/accountviews.pyt   <module>   s$   "" i6	