
    3 h                        S SK r S SKrS SKrS SKJr  S SKJr  S SKJr  S SK	J
r
  S SKJr  S SKJr  S SKJr  S S	KJr  S S
KJrJrJrJrJrJr  S SKJrJrJrJrJrJrJ r J!r!J"r"J#r#J$r$J%r%J&r&  S SK'J(r(J)r)  \" 5         \ RT                  " S5      r+\ RT                  " S5      r,\" 5       r-\" \-5        \" \+5      r.\-R_                  \S\,S/S/S9  \-Ra                  S5      S 5       r1\-Ra                  S5      S 5       r2\-Rg                  S5      S 5       r4\-Rk                  \(Rl                  SS/S9  \-Rk                  \)Rl                  SS/S9  \-Rk                  \Rl                  SS/S9  \-Rk                  \Rl                  SS/S9  \-Rk                  \Rl                  SS /S9  \-Rk                  \Rl                  SS!/S9  \-Rk                  \Rl                  SS"/S9  \-Rk                  \Rl                  SS#/S9  \-Rk                  \%Rl                  S$S%/S9  \-Rk                  \Rl                  S&S'/S9  \-Rk                  \#Rl                  S(S)/S9  \-Rk                  \Rl                  S&S*/S9  \-Rk                  \ Rl                  S&S+/S9  \-Rk                  \Rl                  S&S,/S9  \-Rk                  \"Rl                  S&S-/S9  \-Rk                  \&Rl                  S&S./S9  \-Rk                  \Rl                  S&S//S9  \-Rk                  \$Rl                  S&S0/S9  \-Rk                  \Rl                  S&S1/S9  \-Rk                  \Rl                  S&S2/S9  \-Rk                  \!Rl                  S&S3/S9  S4S5S6S7.0r7S8 r8\8\-l9        \:S9:X  a  \Rv                  " S:S;S<S=9  gg)>    N)load_dotenv)FastAPI)CORSMiddleware)get_openapi)add_pagination)create_engine)credentials)Base)profilesmy_taining_progressquizpayments
certificatchats)
categoriescertificatescoursesfinacialinscriptionlessonsmodulesnotificationsorganisationsprogramsquizzesuserswaves)auth_webcatalogsDB_URLORIGINST*)allow_credentialsallow_originsallow_methodsallow_headersstartupc                  F    [         R                  R                  [        S9  g )N)bind)r
   metadata
create_allengine     1D:\kofCorporation\kof-academy-backend\app\main.pystartup_eventr0   )   s    MM&)r.   shutdownc                  ,    [         R                  5         g )N)r,   disposer-   r.   r/   shutdown_eventr4   .   s    
NNr.   /c                  
    SS0$ )NmessagezWelcome to the KOFACADEMY APIr-   r-   r.   r/   rootr8   4   s    677r.   z	/api/authzAuthentifications-Inscriptions)prefixtagsz/apiCatalogz
/api/userszProfile-ManagementzMy-Training-ProgresszQuizzes-AssessmentsPaymentsCertificateszNotifications-Messaging-Alertsz/api/admin/userszStudent-Managementz
/api/admin
Categoriesz/api/admin/programsProgramsCoursesModulesLessonsOrganisationszFormation-WaveszInscription-ManagmentzQuizzes-ManagmentzFinacial-ManagmentzCertificates-ManagmentNotifications
HTTPBearerhttpbearer)typeschemec                     [         R                  (       a  [         R                  $ [        SSS[         R                  S9n SU ;  a  0 U S'   SU S   ;  a  0 U S   S'   U S   S   R	                  [
        5        U S   R                  5        H"  nUR                  5        H  nS/ 0/US	'   M     M$     U [         l        [         R                  $ )
NzKOFACADEMY APIz1.0.0zAPI de l'application KofAcademy)titleversiondescriptionroutes
componentssecuritySchemespathsrE   security)appopenapi_schemar   rN   updatesecurity_schemesvalues)rT   pathmethods      r/   custom_openapirZ   \   s    
!!! 5zz	N >)')|$| <<:<|$%67< !23::;KLw'..0kkmF#/"4!5F: $ 1 (Cr.   __main__zmain:appz0.0.0.0i  )rS   hostport)<osfirebase_adminuvicorndotenvr   fastapir   fastapi.middleware.corsr   fastapi.openapi.utilsr   fastapi_paginationr   
sqlalchemyr   r	   app.models.baser
   app.routers.studentsr   r   r   r   r   r   app.routers.adminsr   r   r   r   r   r   r   r   r   r   r   r   r   app.routersr   r   getenvr    originsrS   r,   add_middlewareon_eventr0   r4   getr8   include_routerrouterrV   rZ   openapi__name__runr-   r.   r/   <module>ru      s   	     2 - - $ &   b b j  j  j  j + 	8	
))I
 i s 	v	   %%   i* * j 
 8 8   8??;>^=_  `   8??6  D   8??<?S>T  U   &--fDZC[  \   4;;v5J4K  L   8??6  E   :$$V>:J  K   5<<6V5W  X   5<<(:BVAW  X   :$$\  O   8??+@
|  T   7>>,i[  I   7>>,i[  I   7>>,i[  I   =''OCT  U   5<<<M;N  O   ;%%lBYAZ  [   7>>,>Q=R  S   8??<?S>T  U   <&&|C[B\  ]   =''OCT  U
  ,  zKK r.   