
    cf	                     R   d dl Zd dlZd dlZd dlZd dlmZ d dlmZ d dl	m
Z
 d dlmZ d                     eedd                    Z eed	g           Zd
edz   fdedz   fdedz   fdedz   fdedz   fdedz   fgZeez   Zh dZd Z e            Zd Zd Zd Zd Zd Zd Zd ZdS )    N)settings)slugify)	force_str)import_stringz{}/file-icons/CKEDITOR_FILEICONS_PATHz/static/ckeditorCKEDITOR_FILEICONSz\.pdf$zpdf.pngz\.doc$|\.docx$|\.odt$zdoc.pngz\.txt$ztxt.pngz\.ppt$zppt.pngz\.xls$zxls.pngz.*zfile.png>   .gif.jpg.png.jpegc                  X     t          t          t          dd                                S )NCKEDITOR_STORAGE_BACKENDz(django.core.files.storage.DefaultStorage)r   getattrr        I/var/www/html/env/lib/python3.11/site-packages/ckeditor_uploader/utils.pyget_storage_classr   #   s8    =&6	
 	
    r   c                 n    t           j                            |           \  }}t          |          }||z   S )zSlugify filename)ospathsplitextget_slugified_name)filenamenameext	slugifieds       r   slugify_filenamer   0   s2      **ID#"4((Is?r   c                 @    t          |           }|pt                      S )N)r   get_random_string)r   r   s     r   r   r   7   s!    !!I+)+++r   c                  l    d                     t          j        t          j        dz  d                    S )N    )joinrandomsamplestringascii_lowercaser   r   r   r   r   <   s(    776=!7!!;Q??@@@r   c                 h    t           D ])\  }}t          j        || t          j                  r|c S *dS )zD
    Return the path to a file icon that matches the file name.
    N)r   researchI)	file_nameregexiconpaths      r   get_icon_filenamer/   @   sG     .  x9UIrt,, 	OOO	 r   c                 j     t          d          j        t          j                            |            S )z_
    Generate thumb filename by adding _thumb to end of
    filename before . (if present)
    z{0}_thumb{1})r   formatr   r   r   )r,   s    r   get_thumb_filenamer2   I   s,    
 ,9^$$+RW-=-=i-H-HIIr   c                 6    t                               |           S )z,
    Determine system file's media URL.
    )storageurl)r   s    r   get_media_urlr6   Q   s     ;;tr   c                     t           j                            |                                           d         }|t          v S )N   )r   r   r   lowerIMAGE_EXTENSIONS)	file_path	extensions     r   is_valid_image_extensionr=   X   s2      !2!233A6I(((r   )os.pathr   r$   r)   r&   django.confr   django.template.defaultfiltersr   django.utils.encodingr   django.utils.module_loadingr   r1   r   fileicons_pathoverride_iconsckeditor_iconsr   r:   r   r4   r   r   r   r/   r2   r6   r=   r   r   r   <module>rF      s     				              2 2 2 2 2 2 + + + + + + 5 5 5 5 5 5
 "((GH/1CDD  #7<<*+~	9:*+*+*+	>J&' $n4 444    


  , , ,
A A A  J J J  ) ) ) ) )r   