"""Legacy paths used by the current frontend. The views are the same ones mounted under
/api/v1/attendance/ (see interfaces/api_v1/urls.py)."""
from django.urls import path

from interfaces.api import views

urlpatterns = [
    path("auth/login/", views.LoginView.as_view(), name="auth-login"),
    path("auth/logout/", views.LogoutView.as_view(), name="auth-logout"),
    path("me/", views.MeView.as_view(), name="me"),
    path("me/complete-profile/", views.CompleteProfileView.as_view(), name="complete-profile"),
    path("attendance/today/", views.TodayAttendanceView.as_view(), name="attendance-today"),
    path("attendance/check-in/", views.CheckInView.as_view(), name="attendance-check-in"),
    path("attendance/checkout/", views.CheckOutView.as_view(), name="attendance-checkout"),
    path("reports/monthly/", views.MonthlyReportView.as_view(), name="reports-monthly"),
    path("leave-requests/", views.LeaveRequestListCreateView.as_view(), name="leave-requests"),
    path("admin/leave-requests/", views.AdminLeaveRequestListView.as_view(), name="admin-leave-requests"),
    path("admin/leave-requests/grant/", views.AdminGrantLeaveView.as_view(), name="admin-grant-leave"),
    path(
        "admin/leave-requests/<int:pk>/approve/",
        views.AdminLeaveRequestApproveView.as_view(),
        name="admin-leave-request-approve",
    ),
    path(
        "admin/leave-requests/<int:pk>/reject/",
        views.AdminLeaveRequestRejectView.as_view(),
        name="admin-leave-request-reject",
    ),
    path("admin/holidays/", views.AdminHolidayListCreateView.as_view(), name="admin-holidays"),
    path("admin/holidays/<int:pk>/", views.AdminHolidayDeleteView.as_view(), name="admin-holiday-delete"),
    path("admin/personnel/", views.AdminPersonnelListCreateView.as_view(), name="admin-personnel"),
    path("admin/personnel/<int:pk>/", views.AdminPersonnelDeleteView.as_view(), name="admin-personnel-delete"),
    path("admin/attendance/today/", views.AdminAttendanceTodayAllView.as_view(), name="admin-attendance-today-all"),
    path(
        "admin/attendance/<int:user_id>/<str:date>/",
        views.AdminAttendanceEditView.as_view(),
        name="admin-attendance-edit",
    ),
    path(
        "admin/work-schedule/default/",
        views.AdminWorkScheduleDefaultView.as_view(),
        name="admin-work-schedule-default",
    ),
    path("admin/work-schedule/", views.AdminWorkScheduleListView.as_view(), name="admin-work-schedule-list"),
    path(
        "admin/work-schedule/<str:date>/",
        views.AdminWorkScheduleForDateView.as_view(),
        name="admin-work-schedule-for-date",
    ),
]
