From 0d552e8c079a8bd96ab211980745123870e3ddff Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Tue, 10 Feb 2015 22:48:03 +0100 Subject: [PATCH] Static file and template setup for pretixpresale --- src/pretixpresale/middleware.py | 25 +++++++++++++++++++ .../static/pretixpresale/js/ui/main.js | 3 +++ .../static/pretixpresale/less/main.less | 3 +++ .../templates/pretixpresale/event/base.html | 24 ++++++++++++++++++ .../templates/pretixpresale/event/index.html | 5 ++++ src/pretixpresale/views/event.py | 12 ++++++--- 6 files changed, 69 insertions(+), 3 deletions(-) create mode 100644 src/pretixpresale/middleware.py create mode 100644 src/pretixpresale/static/pretixpresale/js/ui/main.js create mode 100644 src/pretixpresale/static/pretixpresale/less/main.less create mode 100644 src/pretixpresale/templates/pretixpresale/event/base.html create mode 100644 src/pretixpresale/templates/pretixpresale/event/index.html diff --git a/src/pretixpresale/middleware.py b/src/pretixpresale/middleware.py new file mode 100644 index 0000000000..28886764d8 --- /dev/null +++ b/src/pretixpresale/middleware.py @@ -0,0 +1,25 @@ +from django.conf import settings +from django.core.urlresolvers import resolve +from django.utils.encoding import force_str +from django.utils.six.moves.urllib.parse import urlparse +from django.shortcuts import resolve_url +from django.contrib.auth import REDIRECT_FIELD_NAME +from django.http import HttpResponseNotFound +from django.utils.translation import ugettext as _ + +from pretixbase.models import Event + + +class EventMiddleware: + + def process_request(self, request): + url = resolve(request.path_info) + url_namespace = url.namespace + url_name = url.url_name + if url_namespace != 'presale': + return + if 'event.' in url_name and 'event' in url.kwargs: + request.event = Event.objects.current.get( + slug=url.kwargs['event'], + organizer__slug=url.kwargs['organizer'], + ) diff --git a/src/pretixpresale/static/pretixpresale/js/ui/main.js b/src/pretixpresale/static/pretixpresale/js/ui/main.js new file mode 100644 index 0000000000..05806d31fd --- /dev/null +++ b/src/pretixpresale/static/pretixpresale/js/ui/main.js @@ -0,0 +1,3 @@ +"use strict"; +$(function () { +}); diff --git a/src/pretixpresale/static/pretixpresale/less/main.less b/src/pretixpresale/static/pretixpresale/less/main.less new file mode 100644 index 0000000000..1267f75a14 --- /dev/null +++ b/src/pretixpresale/static/pretixpresale/less/main.less @@ -0,0 +1,3 @@ +@import "../../../../pretixbase/static/bootstrap/less/bootstrap.less"; +@import "../../../../pretixbase/static/fontawesome/less/font-awesome.less"; +@fa-font-path: "../../fontawesome/fonts"; diff --git a/src/pretixpresale/templates/pretixpresale/event/base.html b/src/pretixpresale/templates/pretixpresale/event/base.html new file mode 100644 index 0000000000..02ad9be591 --- /dev/null +++ b/src/pretixpresale/templates/pretixpresale/event/base.html @@ -0,0 +1,24 @@ +{% load compress %} +{% load staticfiles %} +{% load i18n %} + + + + {% block title %}{% endblock %}{% if url_name != "event.index" %} :: {% endif %}{{ event.name }} + {% compress css %} + + {% endcompress %} + {% compress js %} + + + + {% endcompress %} + + +
+

{{ event.name }}

+ {% block content %} + {% endblock %} +
+ + diff --git a/src/pretixpresale/templates/pretixpresale/event/index.html b/src/pretixpresale/templates/pretixpresale/event/index.html new file mode 100644 index 0000000000..bcf79c735c --- /dev/null +++ b/src/pretixpresale/templates/pretixpresale/event/index.html @@ -0,0 +1,5 @@ +{% extends "pretixpresale/event/base.html" %} + +{% block content %} +Hallo +{% endblock %} \ No newline at end of file diff --git a/src/pretixpresale/views/event.py b/src/pretixpresale/views/event.py index ae16cb5015..977e715d15 100644 --- a/src/pretixpresale/views/event.py +++ b/src/pretixpresale/views/event.py @@ -1,10 +1,16 @@ from django.views.generic import TemplateView -class EventIndex(TemplateView): - template_name = "pretixpresale/event/index.html" - +class EventViewMixin: def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context['event'] = self.request.event return context + + +class EventIndex(EventViewMixin, TemplateView): + template_name = "pretixpresale/event/index.html" + + def get_context_data(self, **kwargs): + context = super().get_context_data(**kwargs) + return context