from django.urls import path, include

from home import views

urlpatterns = [
    path("", views.IndexView.as_view(), name="index"),
    path("tree/", views.TreeView.as_view(), name="tree"),
    path("search/", views.SearchView.as_view(), name="search"),
    path("profile/", views.ProfileView.as_view(), name="profile"),
    path("profile/getcode/", views.GenerateActiveCodeView.as_view(), name="get_code"),
    path("profile/action/", views.ProfileActionView.as_view(), name="post_action"),
    path("post/", views.PostView.as_view(), name="post_new"),
    path("post/<int:pk>/", views.PostView.as_view(), name="post"),
    path("quickedit/<int:pk>/", views.QuickEditView.as_view(), name="quick_edit"),
    path("uploadimg/<int:pk>", views.UploadPostImg.as_view(), name="upload_img"),
    path("detail/<int:pk>/", views.DetailView.as_view(), name="detail"),
    path("detail/<int:pk>/manage", views.ManagePostView.as_view(), name="manage_post"),
    path("detail/<int:pk>/comment", views.CommentView.as_view(), name="comment"),
    path("detail/<int:pk>/verify", views.VerifyView.as_view(), name="verify"),
    path("download/<int:pk>/", views.DownloadView.as_view(), name="download"),
    path("ico/<int:pk>/", views.TagView.as_view(), name="ico"),
    path("tag/", views.SearchTagView.as_view(), name="searchtag"),
    path("link/", views.SearchLinkView.as_view(), name="searchlink"),
    path('model/<str:item>/', views.GetItemModelView.as_view(), name="get_item_model"),
    path("update/", views.UpdateView.as_view(), name="update"),
    path("update/assets/", views.UpdateAssetsView.as_view(), name="update_assets"),
    path("update/items/", views.UpdateItemView.as_view(), name="update_items"),
    path("update/depends/", views.UpdateDependView.as_view(), name="update_depends"),
    path("update/choices/", views.UpdateChoiceView.as_view(), name="update_choices"),
    path("update/functions/", views.UpdateFunctionView.as_view(), name="update_functions"),
    path("user_manager/", views.ManageUserView.as_view(), name="user_manager"),
    path("three/<int:pk>", views.ThreeView.as_view(), name="three"),
    path("accounts/login/", views.ProtectLoginView.as_view(), name="login"),
    path("accounts/register/", views.RegisterView.as_view(), name="register"),
    path("accounts/", include("django.contrib.auth.urls")),
    path('specification/', views.TemplateView.as_view(template_name='specification.html'), name='specification'),
]
