from django.urls import path

from . import views

urlpatterns = [
    # Admin views
    path("create/", views.ElectionCreateView.as_view(), name="election.create"),
    path("created/", views.ElectionListView.as_view(), name="election.created"),
    path("admin/<int:pk>", views.ElectionAdminView.as_view(), name="election.admin"),
    path(
        "upload-voters/<int:pk>",
        views.ElectionUploadVotersView.as_view(),
        name="election.upload-voters",
    ),
    path("update/<int:pk>", views.ElectionUpdateView.as_view(), name="election.update"),
    path("tally/<int:pk>", views.ElectionTallyView.as_view(), name="election.tally"),
    path(
        "publish/<int:pk>",
        views.ElectionChangePublicationView.as_view(),
        name="election.publish",
    ),
    path(
        "archive/<int:pk>", views.ElectionArchiveView.as_view(), name="election.archive"
    ),
    # Question views
    path(
        "add-question/<int:pk>",
        views.AddQuestionView.as_view(),
        name="election.add-question",
    ),
    path(
        "mod-question/<int:pk>",
        views.ModQuestionView.as_view(),
        name="election.mod-question",
    ),
    path(
        "del-question/<int:pk>",
        views.DelQuestionView.as_view(),
        name="election.del-question",
    ),
    # Option views
    path(
        "add-option/<int:pk>",
        views.AddOptionView.as_view(),
        name="election.add-option",
    ),
    path(
        "mod-option/<int:pk>",
        views.ModOptionView.as_view(),
        name="election.mod-option",
    ),
    path(
        "del-option/<int:pk>",
        views.DelOptionView.as_view(),
        name="election.del-option",
    ),
    # Common views
    path("view/<int:pk>", views.ElectionView.as_view(), name="election.view"),
    path("vote/<int:pk>", views.VoteView.as_view(), name="election.vote"),
]
