#urls.py
from django.urls import path
from django.contrib.auth import views as auth_views
from . import views

urlpatterns = [
    #homepage
    path('', views.index, name='homepage'),
    
    #afisare evenimente
    path('evenimente/', views.lista_evenimente, name='evenimente'),
    #register, login, logout, dashboard
    path('register', views.register_view, name="register"),
    path('login', views.login_view, name="login"),
    path('logout', views.logout_view, name="logout"),
    path('dashboard', views.dashboard_view, name="dashboard"),

    #parti din dashboard
    path('evenimente-trecute', views.evenimente_trecute, name="evenimente_trecute"),
    path('contul-meu', views.cont, name="cont"),
    path("evenimente/<slug:slug>/", views.eveniment_prezentare, name="eveniment_prezentare"),
    path("dashboard/<slug:slug>/", views.eveniment_dashboard, name="eveniment_dashboard"),
    path('creeaza-eveniment', views.creeaza_eveniment, name='creeaza_eveniment'),
    path('sterge-eveniment/<int:id>', views.sterge_event, name="sterge_eveniment"),

     #raport fiscal
    path('raport-fiscal/', views.raport_fiscal, name='raport_fiscal'),

    #documente
    path('documente/', views.documente, name="documente"),


    #bilete vandute: adaugare, listare, editare, stergere
    path('<slug:slug>/adauga-bilet-vandut/', views.adauga_bilet_vandut, name='adauga_bilet_vandut'),
    path('dashboard/<slug:slug>/bilete-vandute/', views.bilete_vandute, name="bilete_vandute"),
    path('bilet/<uuid:id>/edit/', views.editeaza_bilet, name='editeaza_bilet'),
    path('bilet/<uuid:id>/sterge/', views.sterge_bilet, name="sterge_bilet"),


    #adaugare, editare, stergere si afisare tipuri de bilete
    path('<slug:slug>/adauga-bilet/', views.adauga_bilet_ajax, name='adauga_bilet_ajax'),
    path('tip-bilet/<int:pk>/editeaza/', views.editeaza_tip_bilet, name='editeaza_tip_bilet'),
    path('tip-bilet/<pk>/sterge/', views.sterge_tip_bilet, name='sterge_tip_bilet'),
    path('<slug:slug>/lista-bilete/', views.lista_bilete_partial, name='lista_bilete_partial'),

    #scanare cod qr
    path('dashboard/<slug:slug>/scanare-bilet/', views.scanare_bilet, name='scanare_bilet'),
    path('<slug:slug>/valideaza-bilet/', views.valideaza_bilet, name='valideaza_bilet'),

    #vizualizare bilet
    path('bilet/<uuid:id>/', views.bilet_detail, name='bilet_detail'),

    #trimitere bilet
    path("resend-email-bilet/", views.resend_email_bilet, name="resend_email_bilet"),

    #legale, statice
    path("politica-de-confidentialitate", views.politica, name="politica"),
    path("termenii-si-conditiile", views.termenii, name="termenii"),
    path("contact", views.contact, name="contact"),

    #procesare bilete + plata
    path('evenimente/<slug:slug>/checkout/', views.checkout_view, name='checkout'),
    path('comanda-finalizata/<uuid:comanda_id>/', views.comanda_finalizata, name='comanda_finalizata'),
    path('comanda-finalizata/<uuid:comanda_id>/sesiune-stripe/', views.creeaza_sesiune_stripe, name="creeaza_sesiune_stripe"),
    path('comanda-finalizata/<uuid:comanda_id>/confirmare-plata/', views.confirmare_plata, name='confirmare_plata'),

     #chitanta
    #path('comanda-finalizata/<uuid:comanda_id>/chitanta', views.chitanta, name="chitanta"),

    #stripe conectare organizator
    path('configurari/conectare-stripe/', views.connect_stripe, name='connect_stripe'),
    path('configurari/verifica-capabilitati/', views.verifica_capabilitati, name='verifica_capabilitati'),
    path('configurari/stripe/callback/', views.stripe_callback, name='stripe_callback'),
    path('configurari/', views.configurari_dashboard, name='configurari'),

    #comenzi
    path('comenzile-mele/', views.comenzi_user, name='comenzile_mele'),
    path('comenzi/<uuid:comanda_id>/', views.detalii_comanda, name='detalii_comanda'),

    #statistici
    path('dashboard/<slug:slug>/statistici-eveniment', views.statistici, name="statistici"),


    # resetare parolă
    path("password_reset/", 
         auth_views.PasswordResetView.as_view(template_name="resetare/password_reset_form.html"), 
         name="password_reset"),
    path("password_reset/done/", 
         auth_views.PasswordResetDoneView.as_view(template_name="resetare/password_reset_done.html"), 
         name="password_reset_done"),
    path("reset/<uidb64>/<token>/", 
         auth_views.PasswordResetConfirmView.as_view(template_name="resetare/password_reset_confirm.html"), 
         name="password_reset_confirm"),
    path("reset/done/", 
         auth_views.PasswordResetCompleteView.as_view(template_name="resetare/password_reset_complete.html"), 
         name="password_reset_complete"),

     
]