
    h                        S SK JrJrJr  S SKJr  \" S\SS9r\" SS9r\R                  SS	/S
9S 5       r
\R                  SS	/S
9S 5       r\R                  SS/S
9S 5       r\R                  SS/S
9S 5       r\R                  SS/S
9S 5       r\R                  SS/S
9S 5       r\R                  SS/S
9S 5       rg)    )	Blueprintrequestjsonify)	JWTClientjwt_uiz/jwt)
url_prefixzhttp://localhost:8000)api_base_urlz	/registerPOST)methodsc                     [         R                  n  [        R                  U S   U S   5      n[	        SUS.5      $ ! [
         a  n[        SU 35        [        US5      (       a  UR                  b~   UR                  R                  5       R                  SS5      n[	        S	US
.5      S4s S nA$ ! [         a1    UR                  R                  n[	        S	SU 3S
.5      S4s s S nA$ f = f[	        S	SS
.5      S4s S nA$ S nAff = f)Nusernamepasswordsuccess)statusdatazRegistration failed: responsedetailzAn unknown error occurred.errorr   message  zAn upstream error occurred:   zAn internal error occurred.)r   jsonclientregisterr   	Exceptionprinthasattrr   get
ValueErrortext)r   resulteerror_details       ,/root/zotify-API/Gonk/GonkUI/views/jwt_ui.pyr   r      s   <<D[j!14
3CD)V<== [ 	%aS)*1j!!ajj&<s zz044X?[\'lKLcQQ s zz'@\]i\j>klmorrrs '6STUWZZZ[sE   )< 
D
,D39B2,D
23C-%D&D
,C--D?D
D
z/loginc                      [         R                  n  [        R                  U S   U S   5      n[	        SUS.5      $ ! [
         a#  n[	        S[        U5      S.5      S4s S nA$ S nAff = f)Nr   r   r   )r   tokenr   r   r   )r   r   r   loginr   r   str)r   r'   r#   s      r%   r(   r(   !   sf    <<DDT*-tJ/?@)e<== D'c!f=>CCDs   )< 
A)A$A)$A)z/profileGETc                       [         R                  5       n [        U 5      $ ! [         a#  n[        S[	        U5      S.5      S4s S nA$ S nAff = fNr   r   r   )r   get_profiler   r   r)   )profiler#   s     r%   r-   r-   *   L    D$$&w D'c!f=>CCD   ! 
AA	A	Az/preferencesPATCHc                     [         R                  n  [        R                  U R	                  S5      U R	                  S5      U R	                  S5      S9n[        U5      $ ! [         a#  n[        S[        U5      S.5      S4s S nA$ S nAff = f)Nthemelanguagenotifications_enabled)r3   r4   r5   r   r   r   )r   r   r   update_preferencesr   r   r   r)   )r   preferencesr#   s      r%   r6   r6   2   s    <<DD//((7#XXj)"&((+B"C 0 

 {## D'c!f=>CCDs   AA 
B)BBBz/likedc                       [         R                  5       n [        U 5      $ ! [         a#  n[        S[	        U5      S.5      S4s S nA$ S nAff = fr,   )r   get_liked_tracksr   r   r)   )likedr#   s     r%   	get_likedr;   ?   sK    D'')u~ D'c!f=>CCDr0   z/historyc                       [         R                  5       n [        U 5      $ ! [         a#  n[        S[	        U5      S.5      S4s S nA$ S nAff = fr,   )r   get_historyr   r   r)   )historyr#   s     r%   r=   r=   G   r/   r0   DELETEc                       [         R                  5       n U (       a  [        SSS.5      $ [        SSS.5      S4$ ! [         a#  n[        S[	        U5      S.5      S4s S nA$ S nAff = f)Nr   zHistory cleared.r   r   zFailed to clear history.r   r   )r   clear_historyr   r   r)   )r   r#   s     r%   rA   rA   O   sl    D&&(i<NOPPg:TUVX[[[ D'c!f=>CCDs   (; ; 
A(A#A(#A(N)flaskr   r   r   GonkCLI.modules.jwt_mockr   __name__r   r   router   r(   r-   r6   r;   r=   rA        r%   <module>rH      s,   - - .	8X&	9 
 7	8 kF8,[ -[* h)D *D j5'*D +D nwi0
D 1
D h(D )D j5'*D +D j8*-D .DrG   