from django.urls import path
from django.views.generic import TemplateView # <-- ADD THIS

# --- FIX: Import from the correct view files ---
from .view_addmissions import (
    AdmissionApplyView, AdmissionSuccessView, AdmissionCheckoutView,
    payment_mark_paid, payment_create
)
from ui.views import (
    initiate_admission_payment,
    payment_success,
    payment_fail,
    payment_cancel,
    payment_ipn,
)
# --- END FIX ---

app_name = "admissions"

urlpatterns = [
    path("apply/", AdmissionApplyView.as_view(), name="apply"),
    path("apply/success/", AdmissionSuccessView.as_view(), name="success"),
    path("<int:pk>/checkout/", AdmissionCheckoutView.as_view(), name="checkout"),

    # JSON endpoints used by checkout page
    path("<int:pk>/pay/create/", payment_create, name="payment-create"),
    path("<int:pk>/pay/mark-paid/", payment_mark_paid, name="payment-mark-paid"),

    # --- ADD THIS BLOCK FOR SSLCOMMERZ ---
    path('payment/initiate/<int:application_id>/', 
         initiate_admission_payment, 
         name='initiate_admission_payment'),
    
    path('payment/success/', payment_success, name='payment_success'),
    path('payment/fail/', payment_fail, name='payment_fail'),
    path('payment/cancel/', payment_cancel, name='payment_cancel'),
    path('payment/ipn/', payment_ipn, name='payment_ipn'),

    path('payment/complete/', 
        TemplateView.as_view(template_name="payment_complete.html"), 
        name='payment_complete_page'),
    
    path('payment/failed/', 
        TemplateView.as_view(template_name="payment_failed.html"), 
        name='payment_fail_page'),
    # --- END ADDED BLOCK ---
]