Fixed logout + cleanup
This commit is contained in:
parent
b3675e28af
commit
75dced77b8
@ -5,33 +5,76 @@ from django.views.generic.base import RedirectView
|
|||||||
from . import views
|
from . import views
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
|
path("", RedirectView.as_view(url="projects", permanent=False), name="home"),
|
||||||
path('', RedirectView.as_view(url='projects', permanent=False), name='home'),
|
path("login", auth_views.LoginView.as_view(), name="login"),
|
||||||
|
path("logout", views.logout_view, name="logout"),
|
||||||
path('login', auth_views.LoginView.as_view(), name='login'),
|
path(
|
||||||
path('logout', auth_views.LogoutView.as_view(), name='logout'),
|
"forget/<resource>/<key>",
|
||||||
path('forget/<resource>/<key>', views.ForgetResourceView.as_view(), name="forget_resource"),
|
views.ForgetResourceView.as_view(),
|
||||||
|
name="forget_resource",
|
||||||
path('ensembles', views.EnsembleListView.as_view(), name="ensemble_list"),
|
),
|
||||||
path('ensembles/<slug:ensemble>', views.EnsembleDetailView.as_view(), name='ensemble_detail'),
|
path("ensembles", views.EnsembleListView.as_view(), name="ensemble_list"),
|
||||||
path('ensembles/<slug:ensemble>/new-project', views.ProjectCreateView.as_view(), name="project_create"),
|
path(
|
||||||
|
"ensembles/<slug:ensemble>",
|
||||||
path('projects', views.ProjectListView.as_view(), name="project_list"),
|
views.EnsembleDetailView.as_view(),
|
||||||
path('projects/<int:project>', views.ProjectDetailView.as_view(), name="project_detail"),
|
name="ensemble_detail",
|
||||||
path('projects/<int:project>/edit', views.ProjectUpdateView.as_view(), name="project_edit"),
|
),
|
||||||
#path('projects/<int:project>/submissions.mk', views.ProjectMakefileView.as_view(), name="project_makefile"),
|
path(
|
||||||
|
"ensembles/<slug:ensemble>/new-project",
|
||||||
path('projects/<int:project>/page/create', views.WikiCreateView.as_view(), name="wiki_create"),
|
views.ProjectCreateView.as_view(),
|
||||||
path('projects/<int:project>/page/<int:pk>', views.WikiView.as_view(), name="wiki"),
|
name="project_create",
|
||||||
path('projects/<int:project>/page/<int:pk>/edit', views.WikiEditView.as_view(), name="wiki_edit"),
|
),
|
||||||
|
path("projects", views.ProjectListView.as_view(), name="project_list"),
|
||||||
path('projects/<int:project>/resources', views.ResourceListView.as_view(), name="resource_list"),
|
path(
|
||||||
path('projects/<int:project>/resources/add', views.ResourceCreateView.as_view(), name="resource_create"),
|
"projects/<int:project>",
|
||||||
path('projects/<int:project>/resources/<int:pk>/upload', views.ResourceUploadView.as_view(), name="resource_upload"),
|
views.ProjectDetailView.as_view(),
|
||||||
path('projects/<int:project>/resources/<int:pk>/edit', views.ResourceEditView.as_view(), name="resource_edit"),
|
name="project_detail",
|
||||||
|
),
|
||||||
|
path(
|
||||||
|
"projects/<int:project>/edit",
|
||||||
|
views.ProjectUpdateView.as_view(),
|
||||||
|
name="project_edit",
|
||||||
|
),
|
||||||
|
# path('projects/<int:project>/submissions.mk', views.ProjectMakefileView.as_view(), name="project_makefile"),
|
||||||
|
path(
|
||||||
|
"projects/<int:project>/page/create",
|
||||||
|
views.WikiCreateView.as_view(),
|
||||||
|
name="wiki_create",
|
||||||
|
),
|
||||||
|
path("projects/<int:project>/page/<int:pk>", views.WikiView.as_view(), name="wiki"),
|
||||||
|
path(
|
||||||
|
"projects/<int:project>/page/<int:pk>/edit",
|
||||||
|
views.WikiEditView.as_view(),
|
||||||
|
name="wiki_edit",
|
||||||
|
),
|
||||||
|
path(
|
||||||
|
"projects/<int:project>/resources",
|
||||||
|
views.ResourceListView.as_view(),
|
||||||
|
name="resource_list",
|
||||||
|
),
|
||||||
|
path(
|
||||||
|
"projects/<int:project>/resources/add",
|
||||||
|
views.ResourceCreateView.as_view(),
|
||||||
|
name="resource_create",
|
||||||
|
),
|
||||||
|
path(
|
||||||
|
"projects/<int:project>/resources/<int:pk>/upload",
|
||||||
|
views.ResourceUploadView.as_view(),
|
||||||
|
name="resource_upload",
|
||||||
|
),
|
||||||
|
path(
|
||||||
|
"projects/<int:project>/resources/<int:pk>/edit",
|
||||||
|
views.ResourceEditView.as_view(),
|
||||||
|
name="resource_edit",
|
||||||
|
),
|
||||||
]
|
]
|
||||||
|
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
|
||||||
if settings.DEBUG:
|
if settings.DEBUG:
|
||||||
from django.views.static import serve
|
from django.views.static import serve
|
||||||
urlpatterns.append(path('local_storage/<path:path>', serve, {'document_root': 'local_storage'}))
|
|
||||||
|
urlpatterns.append(
|
||||||
|
path("local_storage/<path:path>", serve, {"document_root": "local_storage"})
|
||||||
|
)
|
||||||
|
|
||||||
|
|||||||
@ -10,6 +10,7 @@ from django.views.generic.edit import CreateView, UpdateView
|
|||||||
from django.core.exceptions import SuspiciousOperation
|
from django.core.exceptions import SuspiciousOperation
|
||||||
from django.http import Http404, HttpResponseRedirect
|
from django.http import Http404, HttpResponseRedirect
|
||||||
from django.http.request import HttpRequest
|
from django.http.request import HttpRequest
|
||||||
|
from django.contrib.auth import logout
|
||||||
|
|
||||||
from markdown2 import markdown
|
from markdown2 import markdown
|
||||||
|
|
||||||
@ -108,6 +109,11 @@ class AuthorizedResourceMixin(object):
|
|||||||
# TODO: RevokeResourceView - increment nonce
|
# TODO: RevokeResourceView - increment nonce
|
||||||
|
|
||||||
|
|
||||||
|
def logout_view(request):
|
||||||
|
logout(request)
|
||||||
|
return redirect("/")
|
||||||
|
|
||||||
|
|
||||||
class ForgetResourceView(AuthorizedResourceMixin, RedirectView):
|
class ForgetResourceView(AuthorizedResourceMixin, RedirectView):
|
||||||
def is_authorized(self):
|
def is_authorized(self):
|
||||||
return True
|
return True
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user