from django.urls import path, include
from . import views

urlpatterns = [
    path('', views.chart.ListView.as_view(), name='chart-list'),
    path('new/', views.chart.CreateView.as_view(), name='chart-create'),
    path('<int:pk>/', include([
        path('', views.chart.DetailView.as_view(), name='chart-detail'),
        path('update/', views.chart.UpdateView.as_view(), name='chart-update'),
        path('delete/', views.chart.DeleteView.as_view(), name='chart-delete'),
        # path('download/', views.DownloadPDFView.as_view(), name="chart-download"),
        # path('preview/', views.PreviewPDFView.as_view(), name="chart-preview"),


        path('entries/', views.entry.ListView.as_view(), name='entry-list'),
        path('entries/new/', views.entry.CreateView.as_view(), name='entry-create'),
        path('entries/<int:entry_pk>/', include([
            path('', views.entry.DetailView.as_view(), name='entry-detail'),
            path('update/', views.entry.UpdateView.as_view(), name='entry-update'),
            path('delete/', views.entry.DeleteView.as_view(), name='entry-delete'),
        ])),


        
        path('oral-care/', views.oral_care.ListView.as_view(), name='oral-list'),
        path('oral-care/new/', views.oral_care.CreateView.as_view(), name='oral-create'),
        path('oral-care/<int:entry_pk>/', include([
            path('', views.oral_care.DetailView.as_view(), name='oral-detail'),
            path('update/', views.oral_care.UpdateView.as_view(), name='oral-update'),
            path('delete/', views.oral_care.DeleteView.as_view(), name='oral-delete'),
        ])),

        
        path('bathing/', views.bathing.ListView.as_view(), name='bathing-list'),
        path('bathing/new/', views.bathing.CreateView.as_view(), name='bathing-create'),
        path('bathing/<int:entry_pk>/', include([
            path('', views.bathing.DetailView.as_view(), name='bathing-detail'),
            path('update/', views.bathing.UpdateView.as_view(), name='bathing-update'),
            path('delete/', views.bathing.DeleteView.as_view(), name='bathing-delete'),
        ])),

        
        path('toileting/', views.toileting.ListView.as_view(), name='toileting-list'),
        path('toileting/new/', views.toileting.CreateView.as_view(), name='toileting-create'),
        path('toileting/<int:entry_pk>/', include([
            path('', views.toileting.DetailView.as_view(), name='toileting-detail'),
            path('update/', views.toileting.UpdateView.as_view(), name='toileting-update'),
            path('delete/', views.toileting.DeleteView.as_view(), name='toileting-delete'),
        ])),

        
        path('dressing/', views.dressing.ListView.as_view(), name='dressing-list'),
        path('dressing/new/', views.dressing.CreateView.as_view(), name='dressing-create'),
        path('dressing/<int:entry_pk>/', include([
            path('', views.dressing.DetailView.as_view(), name='dressing-detail'),
            path('update/', views.dressing.UpdateView.as_view(), name='dressing-update'),
            path('delete/', views.dressing.DeleteView.as_view(), name='dressing-delete'),
        ])),

        
        path('meals/', views.meal.ListView.as_view(), name='meal-list'),
        path('meals/new/', views.meal.CreateView.as_view(), name='meal-create'),
        path('meals/<int:entry_pk>/', include([
            path('', views.meal.DetailView.as_view(), name='meal-detail'),
            path('update/', views.meal.UpdateView.as_view(), name='meal-update'),
            path('delete/', views.meal.DeleteView.as_view(), name='meal-delete'),
        ])),

        
        path('range-of-motion/', views.rom.ListView.as_view(), name='rom-list'),
        path('range-of-motion/new/', views.rom.CreateView.as_view(), name='rom-create'),
        path('range-of-motion/<int:entry_pk>/', include([
            path('', views.rom.DetailView.as_view(), name='rom-detail'),
            path('update/', views.rom.UpdateView.as_view(), name='rom-update'),
            path('delete/', views.rom.DeleteView.as_view(), name='rom-delete'),
        ])),

        
        path('ambulations/', views.ambulation.ListView.as_view(), name='ambulation-list'),
        path('ambulations/new/', views.ambulation.CreateView.as_view(), name='ambulation-create'),
        path('ambulations/<int:entry_pk>/', include([
            path('', views.ambulation.DetailView.as_view(), name='ambulation-detail'),
            path('update/', views.ambulation.UpdateView.as_view(), name='ambulation-update'),
            path('delete/', views.ambulation.DeleteView.as_view(), name='ambulation-delete'),
        ])),

        
        path('vitals/', views.vitals.ListView.as_view(), name='vitals-list'),
        path('vitals/new/', views.vitals.CreateView.as_view(), name='vitals-create'),
        path('vitals/<int:entry_pk>/', include([
            path('', views.vitals.DetailView.as_view(), name='vitals-detail'),
            path('update/', views.vitals.UpdateView.as_view(), name='vitals-update'),
            path('delete/', views.vitals.DeleteView.as_view(), name='vitals-delete'),
        ])),

        
        path('fluid-intake/', views.fluid_intake.ListView.as_view(), name='fluid-list'),
        path('fluid-intake/new/', views.fluid_intake.CreateView.as_view(), name='fluid-create'),
        path('fluid-intake/<int:entry_pk>/', include([
            path('', views.fluid_intake.DetailView.as_view(), name='fluid-detail'),
            path('update/', views.fluid_intake.UpdateView.as_view(), name='fluid-update'),
            path('delete/', views.fluid_intake.DeleteView.as_view(), name='fluid-delete'),
        ])),

        
        path('urine/', views.urine.ListView.as_view(), name='urine-list'),
        path('urine/new/', views.urine.CreateView.as_view(), name='urine-create'),
        path('urine/<int:entry_pk>/', include([
            path('', views.urine.DetailView.as_view(), name='urine-detail'),
            path('update/', views.urine.UpdateView.as_view(), name='urine-update'),
            path('delete/', views.urine.DeleteView.as_view(), name='urine-delete'),
        ])),

        
        path('emesis/', views.emesis.ListView.as_view(), name='emesis-list'),
        path('emesis/new/', views.emesis.CreateView.as_view(), name='emesis-create'),
        path('emesis/<int:entry_pk>/', include([
            path('', views.emesis.DetailView.as_view(), name='emesis-detail'),
            path('update/', views.emesis.UpdateView.as_view(), name='emesis-update'),
            path('delete/', views.emesis.DeleteView.as_view(), name='emesis-delete'),
        ])),

        
        path('movements/', views.bowel_movement.ListView.as_view(), name='bm-list'),
        path('movements/new/', views.bowel_movement.CreateView.as_view(), name='bm-create'),
        path('movements/<int:entry_pk>/', include([
            path('', views.bowel_movement.DetailView.as_view(), name='bm-detail'),
            path('update/', views.bowel_movement.UpdateView.as_view(), name='bm-update'),
            path('delete/', views.bowel_movement.DeleteView.as_view(), name='bm-delete'),
        ])),

        
        path('pain-level/', views.pain_level.ListView.as_view(), name='pain-list'),
        path('pain-level/new/', views.pain_level.CreateView.as_view(), name='pain-create'),
        path('pain-level/<int:entry_pk>/', include([
            path('', views.pain_level.DetailView.as_view(), name='pain-detail'),
            path('update/', views.pain_level.UpdateView.as_view(), name='pain-update'),
            path('delete/', views.pain_level.DeleteView.as_view(), name='pain-delete'),
        ])),

        
        path('oxygen-level/', views.oxygen_level.ListView.as_view(), name='oxygen-list'),
        path('oxygen-level/new/', views.oxygen_level.CreateView.as_view(), name='oxygen-create'),
        path('oxygen-level/<int:entry_pk>/', include([
            path('', views.oxygen_level.DetailView.as_view(), name='oxygen-detail'),
            path('update/', views.oxygen_level.UpdateView.as_view(), name='oxygen-update'),
            path('delete/', views.oxygen_level.DeleteView.as_view(), name='oxygen-delete'),
        ])),

        
        path('restaints/', views.restraint.ListView.as_view(), name='restraint-list'),
        path('restaints/new/', views.restraint.CreateView.as_view(), name='restraint-create'),
        path('restaints/<int:entry_pk>/', include([
            path('', views.restraint.DetailView.as_view(), name='restraint-detail'),
            path('update/', views.restraint.UpdateView.as_view(), name='restraint-update'),
            path('delete/', views.restraint.DeleteView.as_view(), name='restraint-delete'),
        ])),

        
        path('safety/', views.safety.ListView.as_view(), name='safety-list'),
        path('safety/new/', views.safety.CreateView.as_view(), name='safety-create'),
        path('safety/<int:entry_pk>/', include([
            path('', views.safety.DetailView.as_view(), name='safety-detail'),
            path('update/', views.safety.UpdateView.as_view(), name='safety-update'),
            path('delete/', views.safety.DeleteView.as_view(), name='safety-delete'),
        ])),
    ])),
]