
    Shj                         d dl mZ d dlZd dlZ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 dlmZ d dlmZ d dlmZ d dlZd dlZd dlZd	 Zd
 Zd Zd Zd Zd Zd ZdS )    )FileSystemStorageN)BytesIO)APIView)Response)status)settings)Imagec                  2   dd l } dd l}d}g d}g d}||z   } | j        |          } | j        |          }||z   }t          |dz
            D ];}	| | j        |          z   }|                    d|          }
 | j        |
           <d}|
D ]}	||	z   }|S )Nr   B   )
0123456789)abcdefghijkmnopqrstuvwxyz   r)    )randomarraychoicerangeshuffle)r1   r2   MAX_LENDIGITSLOCASE_CHARACTERSCOMBINED_LIST
rand_digit
rand_lower	temp_passr,   temp_pass_listtokens               5/var/www/html/Sam_Eipo/Eipo/customer_api/functions.pygernateTokenr@      s    
<
<
< P  P  P++fmF##fm-..*$
!

 ! !Q-&-666);;sI...&.    	
  Q1955    c                      d} d}t          d          D ]3}|| t          j        t          j                    dz                     z  }4|S )zFunction for gernate otp
0123456789r0   r/   
   )r4   mathfloorr1   )digitsOTPr   s      r?   
GernateOTPrI   #   sL    
	
(( 2 2Q
6=??R/00	11##rA   c                  D   dd l dd ld                    fdt          d          D                       } | d                    fdt          d          D                       z  } t	          |           } j        |           d                    |          }|S )Nr   r0   c              3   B   K   | ]} j         j                  V  d S N)r3   ascii_letters.0r,   r1   strings     r?   	<genexpr>z/randomStringFunctionForImage.<locals>.<genexpr>-   s2      GGv344GGGGGGrA      c              3   B   K   | ]} j         j                  V  d S rL   )r3   rG   rN   s     r?   rQ   z/randomStringFunctionForImage.<locals>.<genexpr>.   s1      AA1-&-..AAAAAArA   r/   )r1   rP   joinr4   listr5   )str1sam_listfinalStringr1   rP   s      @@r?   randomStringFunctionForImagerY   +   s    
GGGGGeAhhGGGHHAAAAAaAAA	B	BBJJwwx  rA   c                    t          j        |           }t          j        t	          |                    }d}t          |          }d}t                      }| | }|                    |t	          |                    }	| d|	 S )Nmedia/customer_profilelocationz.png/)base64	b64decoder	   openr   r   rY   save)
base64_data	file_name
image_dataimagefullPathfsfiletypetheNamefinal_image_name
image_paths
             r?   save_base64_imagerm   5   s    !+..JJwz**++E (H	H	-	-	-B H*,,G!-8-- )7:+>+>??J%%%%%rA   c                 .   d}t          |          }d}t          j                            | j                  d         }t                      }t          |          t          |          z   }|                    ||           }t          |          dz   |z   S )Nr[   r\      r^   r   ospathsplitextnamerY   strrb   rf   rg   rh   	fullPath2ri   rj   theImageNamefilenames           r?   uploadTheProfilerz   I   s    
"***#GUZ((+	%	'	''ll3x==(GGL%((Is8##rA   c                 .   d}t          |          }d}t          j                            | j                  d         }t                      }t          |          t          |          z   }|                    ||           }t          |          dz   |z   S )Nzmedia/recipetr\   ro   r^   rp   rv   s           r?   uploadTheRecipetr|   T   s    
***GUZ((+	%	'	''ll3x==(GGL%((Is8##rA   c                 .   d}t          |          }d}t          j                            | j                  d         }t                      }t          |          t          |          z   }|                    ||           }t          |          dz   |z   S )Nzmedia/contractsr\   ro   r^   rp   rv   s           r?   uploadTheContractsr~   ^   s    
***GUZ((+	%	'	''ll3x==(GGL%((Is8##rA   )django.core.files.storager   rq   rE   r1   pytzrP   r_   ior   rest_framework.viewsr   rest_framework.responser   rest_frameworkr   django.confr   PILr	   r@   rI   rY   rm   rz   r|   r~    rA   r?   <module>r      se   7 7 7 7 7 7 				 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !        7 7 7 7 7 7 ( ( ( ( ( ( , , , , , , ! ! ! ! ! !                   				    &    & & &($ $ $$ $ $$ $ $ $ $rA   