"""
Author: Michel Peltriaux
Organization: Struktur- und Genehmigungsdirektion Nord, Rhineland-Palatinate, Germany
Contact: michel.peltriaux@sgdnord.rlp.de
Created on: 19.08.21

"""
from django.urls import path

from ema.views.action import action_new_view, action_edit_view, action_remove_view
from ema.views.deadline import deadline_new_view, deadline_edit_view, deadline_remove_view
from ema.views.document import document_new_view, get_document_view, remove_document_view, edit_document_view
from ema.views.ema import index_view, new_view, new_id_view, detail_view, edit_view, remove_view
from ema.views.log import EmaLogView
from ema.views.record import EmaRecordView
from ema.views.report import report_view
from ema.views.resubmission import EmaResubmissionView
from ema.views.share import share_view, create_share_view
from ema.views.state import state_new_view, state_remove_view, state_edit_view

app_name = "ema"
urlpatterns = [
    path("", index_view, name="index"),
    path("new/", new_view, name="new"),
    path("new/id", new_id_view, name="new-id"),
    path("<id>", detail_view, name="detail"),
    path('<id>/log', EmaLogView.as_view(), name='log'),
    path('<id>/edit', edit_view, name='edit'),
    path('<id>/remove', remove_view, name='remove'),
    path('<id>/record', EmaRecordView.as_view(), name='record'),
    path('<id>/report', report_view, name='report'),
    path('<id>/resub', EmaResubmissionView.as_view(), name='resubmission-create'),

    path('<id>/state/new', state_new_view, name='new-state'),
    path('<id>/state/<state_id>/remove', state_remove_view, name='state-remove'),
    path('<id>/state/<state_id>/edit', state_edit_view, name='state-edit'),

    path('<id>/action/new', action_new_view, name='new-action'),
    path('<id>/action/<action_id>/edit', action_edit_view, name='action-edit'),
    path('<id>/action/<action_id>/remove', action_remove_view, name='action-remove'),

    path('<id>/deadline/new', deadline_new_view, name="new-deadline"),
    path('<id>/deadline/<deadline_id>/edit', deadline_edit_view, name='deadline-edit'),
    path('<id>/deadline/<deadline_id>/remove', deadline_remove_view, name='deadline-remove'),

    path('<id>/share/<token>', share_view, name='share'),
    path('<id>/share', create_share_view, name='share-create'),

    # Documents
    path('<id>/document/new/', document_new_view, name='new-doc'),
    path('<id>/document/<doc_id>', get_document_view, name='get-doc'),
    path('<id>/document/<doc_id>/edit/', edit_document_view, name='edit-doc'),
    path('<id>/document/<doc_id>/remove/', remove_document_view, name='remove-doc'),

]