from django.urls import path
from . import views

app_name = "candidates"

urlpatterns = [
    path("", views.CandidateListCreateAPIView.as_view(), name="candidate-list-create"),
    path("deleted/", views.DeletedCandidateListAPIView.as_view(), name="candidate-deleted-list"),
    path("unsubscribe/", views.UnsubscribeAPIView.as_view(), name="candidate-unsubscribe"),
    path("bulk-upload/", views.CandidateBulkUploadAPIView.as_view(), name="candidate-bulk-upload"),
    path("bulk-cv-upload/", views.CandidateBulkCVUploadAPIView.as_view(), name="candidate-bulk-cv-upload"),
    path("me/", views.CandidateMeAPIView.as_view(), name="candidate-me"),
    path("upload-resume/", views.CandidateResumeUploadAPIView.as_view(), name="upload-resume"),
    path("resume/<str:token>/", views.CandidateResumeDownloadView.as_view(), name="resume-download"),
    path("<int:pk>/", views.CandidateDetailAPIView.as_view(), name="candidate-detail"),
    path("notify-bulk/", views.CandidateBulkNotifyAPIView.as_view(), name="candidate-notify-bulk"),
    path("notifications/", views.AllNotificationsListAPIView.as_view(), name="all-notifications"),
    path("<int:pk>/notify/", views.CandidateNotifyAPIView.as_view(), name="candidate-notify"),
    path("<int:pk>/notifications/", views.CandidateNotificationListAPIView.as_view(), name="candidate-notifications"),
    path("<int:pk>/comments/", views.CandidateCommentAPIView.as_view(), name="candidate-comments"),
    path("<int:pk>/comments/<int:comment_id>/", views.CandidateCommentDeleteAPIView.as_view(), name="candidate-comment-delete"),
    path("<int:pk>/reveal-contact/", views.CandidateContactRevealView.as_view(), name="reveal-contact"),
    path("<int:pk>/attachments/", views.CandidateAttachmentAPIView.as_view(), name="attachments"),
    path("<int:pk>/attachments/<int:att_id>/", views.CandidateAttachmentDetailAPIView.as_view(), name="attachment-detail"),
    path("<int:pk>/documents/", views.CandidateDocumentUploadAPIView.as_view(), name="document-upload"),
    path("<int:pk>/documents/<int:doc_pk>/status/", views.CandidateDocumentStatusAPIView.as_view(), name="document-status"),
]
