ó
]Wc           @   s‚  d  d l  m Z m Z d  d l m Z m Z m Z 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 m Z d  d l m Z d  d l m Z d  d	 l m Z d  d
 l Td  d
 l Td  d l m Z e d „  ƒ Z e d „  ƒ Z e d „  ƒ Z e d „  ƒ Z e d „  ƒ Z  e d „  ƒ Z! e d „  ƒ Z" e d „  ƒ Z# e d „  ƒ Z$ e d „  ƒ Z% d S(   iÿÿÿÿ(   t   render_to_responset   get_object_or_404(   t   RequestContextt   loadert   Context(   t   HttpResponseRedirectt   Http404t   HttpResponse(   t   reverse(   t   messages(   t   Site(   t   login_requiredt   permission_required(   t   slugify(   t   EmailMultiAlternatives(   t   *(   t   staff_member_requiredc         K   s‰   d | k r | d } n t  } t j j d t ƒ j d ƒ } t j j d t ƒ j d ƒ } t d i | d 6| d 6| d 6d t |  ƒ ƒS(	   Nt
   input_namet   parent__isnullt   namet   folder__isnulls#   admin/file_manager/images/main.htmlt   folderst   imagest   context_instance(	   t   Falset   ImageFoldert   objectst   filtert   Truet   order_byt   ImageR    R   (   t   requestt   kwargsR   R   R   (    (    s.   /var/www/ygc/file_manager/images/adminviews.pyt   main   s    c         K   sÐ   d | k r | d } n t  } t ƒ  } |  j r© t |  j ƒ } | j ƒ  r© | j ƒ  | r„ t t d d | g ƒd |  j d ƒ St t d ƒ d |  j d ƒ Sq© n  t d i | d 6| d 6d	 t	 |  ƒ ƒS(
   NR   t   admin_image_uploadert   argst   ?t   QUERY_STRINGt   admin_cke_image_uploaders)   admin/file_manager/images/new-folder.htmlt   formR   (
   R   t   CreateFolderFormt   POSTt   is_validt   saveR   R   t   METAR    R   (   R   R    R   R'   (    (    s.   /var/www/ygc/file_manager/images/adminviews.pyt
   new_folder   s    		
(%c         K   s  d | k r | d } n t  } t ƒ  } |  j rß t |  j |  j ƒ } | j ƒ  rß ym | j ƒ  } t j |  d ƒ | rŸ t t	 d d | g ƒd |  j
 d ƒ St t	 d ƒ d |  j
 d ƒ SWqÜ t j |  d ƒ qÜ Xqß n  t d	 i | d 6| d
 6d t |  ƒ ƒS(   NR   s   Image UploadedR"   R#   R$   R%   R&   s   Could not upload images*   admin/file_manager/images/upload-file.htmlR'   R   (   R   t   ImageUploadFormR)   t   FILESR*   R+   R	   t   successR   R   R,   t   errorR    R   (   R   R    R   R'   t   image(    (    s.   /var/www/ygc/file_manager/images/adminviews.pyt   upload_file3   s     		(#c         K   s¦   d | k r | d } n t  } t t d | d ƒ} t j j d | ƒ j d ƒ } t j j d | ƒ j d ƒ } t d i | d 6| d 6| d 6| d	 6d
 t |  ƒ ƒS(   NR   t   idt	   folder_idt   parentR   t   folders%   admin/file_manager/images/folder.htmlt   sub_foldersR   R   (	   R   R   R   R   R   R   R   R    R   (   R   R    R   R7   R8   R   (    (    s.   /var/www/ygc/file_manager/images/adminviews.pyR7   M   s    c         K   s  d | k r | d } n t  } t t d | d ƒ} t ƒ  } |  j rì t |  j ƒ } | j ƒ  rì | j d t  ƒ } | | _ | j ƒ  | r» t t	 d d | | j
 g ƒd |  j d ƒ St t	 d	 d | j
 g ƒd |  j d ƒ Sqì n  t d
 i | d 6| d 6| d 6d t |  ƒ ƒS(   NR   R4   R5   t   committ   admin_image_folderR#   R$   R%   t   admin_cke_image_folders-   admin/file_manager/images/new-sub-folder.htmlR7   R'   R   (   R   R   R   R(   R)   R*   R+   R6   R   R   R4   R,   R    R   (   R   R    R   R7   R'   R-   (    (    s.   /var/www/ygc/file_manager/images/adminviews.pyt   new_sub_folder[   s    			
.1c         K   sN  d | k r | d } n t  } t t d | d ƒ} t ƒ  } |  j r t |  j |  j ƒ } | j ƒ  r y˜ | j d t  ƒ } | | _ | j ƒ  t	 j
 |  d ƒ | rÔ t t d d | | j g ƒd |  j d	 ƒ St t d
 d | j g ƒd |  j d	 ƒ SWqt	 j |  d ƒ qXq n  t d i | d 6| d 6| d 6d t |  ƒ ƒS(   NR   R4   R5   R9   s   Image UploadedR:   R#   R$   R%   R;   s   Could not upload images1   admin/file_manager/images/upload-file-folder.htmlR7   R'   R   (   R   R   R   R.   R)   R/   R*   R+   R7   R	   R0   R   R   R4   R,   R1   R    R   (   R   R    R   R7   R'   R2   (    (    s.   /var/www/ygc/file_manager/images/adminviews.pyt   upload_file_foldert   s&    			
./c         K   s¡  d | k r | d } n t  } t t d | d ƒ} t d | ƒ } | rª | j rƒ t d d | | j j g ƒd |  j d } qû t d	 d | g ƒd |  j d } nQ | j rà t d
 d | j j g ƒd |  j d } n t d ƒ d |  j d } |  j rst |  j |  j	 d | ƒ} | j
 ƒ  rsy( | j ƒ  t j |  d ƒ t | ƒ SWqpt j |  d ƒ qpXqsn  t d i | d 6| d 6| d 6d t |  ƒ ƒS(   NR   R4   t   file_idt   instanceR:   R#   R$   R%   R"   R;   R&   s   Image Updateds   Could not update images)   admin/file_manager/images/edit-image.htmlR'   R2   R   (   R   R   R   R.   R7   R   R4   R,   R)   R/   R*   R+   R	   R0   R   R1   R    R   (   R   R    R   R2   R'   t   redirect_url(    (    s.   /var/www/ygc/file_manager/images/adminviews.pyt	   edit_file‘   s,    	0'	-	
c         K   s.  d | k r | d } n t  } t t d | d ƒ} | r› | j rt t d d | | j j g ƒd |  j d } qì t d d | g ƒd |  j d } nQ | j rÑ t d	 d | j j g ƒd |  j d } n t d
 ƒ d |  j d } y | j ƒ  t j	 |  d ƒ Wn t j
 |  d ƒ n Xt | ƒ S(   NR   R4   R>   R:   R#   R$   R%   R"   R;   R&   s   Image deleteds   Could not delete image(   R   R   R   R7   R   R4   R,   t   deleteR	   R0   R1   R   (   R   R    R   R2   R@   (    (    s.   /var/www/ygc/file_manager/images/adminviews.pyt   delete_file·   s"    	0'	-
c         K   s¨  d | k r | d } n t  } t t d | d ƒ} t d | ƒ } | rª | j rƒ t d d | | j j g ƒd |  j d } qû t d	 d | g ƒd |  j d } nQ | j rà t d
 d | j j g ƒd |  j d } n t d ƒ d |  j d } |  j rst |  j |  j	 d | ƒ} | j
 ƒ  rsy( | j ƒ  t j |  d ƒ t | ƒ SWqpt j |  d ƒ qpXqsn  t d i | d 6| d 6| d 6t d 6d t |  ƒ ƒS(   NR   R4   R5   R?   R:   R#   R$   R%   R"   R;   R&   s   Folder updateds   Could not update folders*   admin/file_manager/images/edit-folder.htmlR7   R'   t   fileR   (   R   R   R   R(   R6   R   R4   R,   R)   R/   R*   R+   R	   R0   R   R1   R    RD   R   (   R   R    R   R7   R'   R@   (    (    s.   /var/www/ygc/file_manager/images/adminviews.pyt   edit_folderÔ   s,    	0'	-	
c         K   s.  d | k r | d } n t  } t t d | d ƒ} | r› | j rt t d d | | j j g ƒd |  j d } qì t d d | g ƒd |  j d } nQ | j rÑ t d	 d | j j g ƒd |  j d } n t d
 ƒ d |  j d } y | j ƒ  t j	 |  d ƒ Wn t j
 |  d ƒ n Xt | ƒ S(   NR   R4   R5   R:   R#   R$   R%   R"   R;   R&   s   Folder Deleteds   Could not delete folder(   R   R   R   R6   R   R4   R,   RB   R	   R0   R1   R   (   R   R    R   R7   R@   (    (    s.   /var/www/ygc/file_manager/images/adminviews.pyt   delete_folderû   s"    	0'	-
N(&   t   django.shortcutsR    R   t   django.templateR   R   R   t   django.httpR   R   R   t   django.core.urlresolversR   t   django.contribR	   t   django.contrib.sites.modelsR
   t   django.contrib.auth.decoratorsR   R   t   django.template.defaultfiltersR   t   django.core.mailR   t   file_manager.modelst   formst%   django.contrib.admin.views.decoratorsR   R!   R-   R3   R7   R<   R=   RA   RC   RE   RF   (    (    (    s.   /var/www/ygc/file_manager/images/adminviews.pyt   <module>   s,   

&'