From dc2a771c994c5a7dad3b8453270ca2bfb74a414b Mon Sep 17 00:00:00 2001 From: Sebastiaan Zeeff <33516116+SebastiaanZ@users.noreply.github.com> Date: Thu, 15 Aug 2019 11:28:25 +0200 Subject: Adding initial staff app to Django --- pydis_site/apps/staff/__init__.py | 0 pydis_site/apps/staff/apps.py | 7 +++++++ pydis_site/apps/staff/migrations/__init__.py | 0 pydis_site/apps/staff/models/__init__.py | 0 pydis_site/apps/staff/tests/__init__.py | 0 pydis_site/apps/staff/urls.py | 12 ++++++++++++ pydis_site/apps/staff/viewsets/__init__.py | 3 +++ pydis_site/apps/staff/viewsets/logs.py | 14 ++++++++++++++ pydis_site/hosts.py | 1 + pydis_site/settings.py | 1 + pydis_site/templates/staff/logs.html | 15 +++++++++++++++ pydis_site/urls.py | 1 + 12 files changed, 54 insertions(+) create mode 100644 pydis_site/apps/staff/__init__.py create mode 100644 pydis_site/apps/staff/apps.py create mode 100644 pydis_site/apps/staff/migrations/__init__.py create mode 100644 pydis_site/apps/staff/models/__init__.py create mode 100644 pydis_site/apps/staff/tests/__init__.py create mode 100644 pydis_site/apps/staff/urls.py create mode 100644 pydis_site/apps/staff/viewsets/__init__.py create mode 100644 pydis_site/apps/staff/viewsets/logs.py create mode 100644 pydis_site/templates/staff/logs.html (limited to 'pydis_site') diff --git a/pydis_site/apps/staff/__init__.py b/pydis_site/apps/staff/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/pydis_site/apps/staff/apps.py b/pydis_site/apps/staff/apps.py new file mode 100644 index 00000000..fb8bda03 --- /dev/null +++ b/pydis_site/apps/staff/apps.py @@ -0,0 +1,7 @@ +from django.apps import AppConfig + + +class StaffConfig(AppConfig): + """Django AppConfig for the staff app.""" + + name = 'staff' \ No newline at end of file diff --git a/pydis_site/apps/staff/migrations/__init__.py b/pydis_site/apps/staff/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/pydis_site/apps/staff/models/__init__.py b/pydis_site/apps/staff/models/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/pydis_site/apps/staff/tests/__init__.py b/pydis_site/apps/staff/tests/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/pydis_site/apps/staff/urls.py b/pydis_site/apps/staff/urls.py new file mode 100644 index 00000000..95b3caf3 --- /dev/null +++ b/pydis_site/apps/staff/urls.py @@ -0,0 +1,12 @@ +from django.conf import settings +from django.conf.urls.static import static +from django.contrib import admin +from django.urls import include, path + +from .viewsets import LogView + +app_name = 'staff' +urlpatterns = [ + path('bot/logs//', LogView.as_view(), name="logs"), + path('admin/', admin.site.urls), +] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) diff --git a/pydis_site/apps/staff/viewsets/__init__.py b/pydis_site/apps/staff/viewsets/__init__.py new file mode 100644 index 00000000..ccb57d43 --- /dev/null +++ b/pydis_site/apps/staff/viewsets/__init__.py @@ -0,0 +1,3 @@ +from .logs import LogView + +__all__ = ["LogView"] \ No newline at end of file diff --git a/pydis_site/apps/staff/viewsets/logs.py b/pydis_site/apps/staff/viewsets/logs.py new file mode 100644 index 00000000..38f8bf1d --- /dev/null +++ b/pydis_site/apps/staff/viewsets/logs.py @@ -0,0 +1,14 @@ +from django.core.handlers.wsgi import WSGIRequest +from django.http import HttpResponse +from django.shortcuts import get_object_or_404, render +from django.views import View + +from pydis_site.apps.api.models.bot.message_deletion_context import MessageDeletionContext + + +class LogView(View): + template_name = "staff/logs.html" + + def get(self, request: WSGIRequest, pk: int) -> HttpResponse: + message_context = get_object_or_404(MessageDeletionContext, pk=pk) + return render(request, self.template_name, {"message_context": message_context}) diff --git a/pydis_site/hosts.py b/pydis_site/hosts.py index 0fa4793d..898e8cdc 100644 --- a/pydis_site/hosts.py +++ b/pydis_site/hosts.py @@ -5,5 +5,6 @@ host_patterns = patterns( '', host(r'admin', 'pydis_site.apps.admin.urls', name="admin"), host(r'api', 'pydis_site.apps.api.urls', name='api'), + host(r'staff', 'pydis_site.apps.staff.urls', name='staff'), host(r'.*', 'pydis_site.apps.home.urls', name=settings.DEFAULT_HOST) ) diff --git a/pydis_site/settings.py b/pydis_site/settings.py index 4a4eb94b..d3b371b6 100644 --- a/pydis_site/settings.py +++ b/pydis_site/settings.py @@ -63,6 +63,7 @@ else: INSTALLED_APPS = [ 'pydis_site.apps.api', 'pydis_site.apps.home', + 'pydis_site.apps.staff', 'django.contrib.admin', 'django.contrib.auth', diff --git a/pydis_site/templates/staff/logs.html b/pydis_site/templates/staff/logs.html new file mode 100644 index 00000000..5d7724c0 --- /dev/null +++ b/pydis_site/templates/staff/logs.html @@ -0,0 +1,15 @@ +{% extends 'base/base.html' %} +{% load static %} + +{% block title %}Home{% endblock %} + +{% block content %} +

Message Context

+

+ Actor: {{ message_context.actor }}
+ Date: {{ message_context.creation }}
+

+ {% for message in message_context.deletedmessage_set.all %} +

{{ message.content | safe }}

+ {% endfor %} +{% endblock %} \ No newline at end of file diff --git a/pydis_site/urls.py b/pydis_site/urls.py index c68375da..47cf0ba1 100644 --- a/pydis_site/urls.py +++ b/pydis_site/urls.py @@ -3,4 +3,5 @@ from django.urls import include, path urlpatterns = ( path('', include('pydis_site.apps.home.urls', namespace='home')), + path('staff/', include('pydis_site.apps.staff.urls', namespace='staff')), ) -- cgit v1.2.3