diff options
Diffstat (limited to 'app/pages')
-rw-r--r-- | app/pages/templates/pages/page_detail.html | 37 | ||||
-rw-r--r-- | app/pages/templates/pages/page_detail.txt | 8 | ||||
-rw-r--r-- | app/pages/urls.py | 13 | ||||
-rw-r--r-- | app/pages/views.py | 11 |
4 files changed, 65 insertions, 4 deletions
diff --git a/app/pages/templates/pages/page_detail.html b/app/pages/templates/pages/page_detail.html new file mode 100644 index 0000000..4644386 --- /dev/null +++ b/app/pages/templates/pages/page_detail.html @@ -0,0 +1,37 @@ +{% extends 'base.html' %} +{% load typogrify_tags %} +{% load comments %} +{% block pagetitle %}Luxagraf | {{object.title}}{% endblock %} +{% block metadescription %}{{object.meta_description}}{% endblock %} +{%block htmlclass%}class="detail"{%endblock%} +{%block bodyid%}id="{{object.title|slugify}}"{%endblock%} +{% block breadcrumbs %}{% include "lib/breadcrumbs.html" with breadcrumbs=breadcrumbs %}{% endblock %} +{% block primary %}<main> + <article> + <header class="post-header"> + <h1 class="post-title">{{object.title}}</h1> + {%if object.sub_title %}<h2 class="post-subtitle">{{object.sub_title}}</h2>{%endif%} + </header> + <div class="post-article"> + {{object.body_html|safe|smartypants|widont}} + </div> + </article> + {% if object.enable_comments %} +{% get_comment_count for object as comment_count %} +{%if comment_count > 0 %} +<p class="comments--header">{{comment_count}} Comment{{ comment_count|pluralize }}</p> +{% render_comment_list for object %} +{%endif%} +<div class="comment--form--wrapper {%if comment_count > 0%}comment-form-border{%endif%}"> +{% render_comment_form for object %} +</div> +{%endif%} + </main> +{% endblock %} +{% block js %} +<script src="/media/js/lightbox.js" type="text/javascript"></script> +<script>var opts={captions:true,onload:function(){var im=document.getElementById("jslghtbx-contentwrapper");var link=im.appendChild(document.createElement('a')) +link.href=im.firstChild.src;link.innerHTML="open ";link.target="_blank";link.setAttribute('class','p-link');im.appendChild(link);}};var lightbox=new Lightbox();lightbox.load(opts);</script> +{% endblock %} + + diff --git a/app/pages/templates/pages/page_detail.txt b/app/pages/templates/pages/page_detail.txt new file mode 100644 index 0000000..547ce79 --- /dev/null +++ b/app/pages/templates/pages/page_detail.txt @@ -0,0 +1,8 @@ +{{object.title|safe}} +{% for letter in object.title %}={%endfor%} + + by Scott Gilbertson + <{{SITE_URL}}{{object.get_absolute_url}}> + {{object.pub_date|date:"l, d F Y"}} + +{{object.body_markdown|safe}} diff --git a/app/pages/urls.py b/app/pages/urls.py new file mode 100644 index 0000000..c40eee0 --- /dev/null +++ b/app/pages/urls.py @@ -0,0 +1,13 @@ +from django.urls import path, re_path + +from . import views + +app_name = "pages" + +urlpatterns = [ + path( + r'', + views.PageDetailView.as_view(), + name="detail" + ), +] diff --git a/app/pages/views.py b/app/pages/views.py index 8431bc2..bef6529 100644 --- a/app/pages/views.py +++ b/app/pages/views.py @@ -1,12 +1,15 @@ -from django.views.generic.detail import DetailView +from utils.views import LuxDetailView from .models import Page -class PageDetailView(DetailView): +class PageDetailView(LuxDetailView): model = Page - slug_field = "slug" def get_template_names(self): obj = self.get_object() - return ["details/%s.html" % obj.slug, 'details/page.html'] + return ["pages/%s.html" % obj.slug, 'pages/page_detail.html'] + +class PageDetailTXTView(LuxDetailView): + model = Page + slug_field = "slug" |