From eb46f9fcb37793410d93107962c6c775f8c83748 Mon Sep 17 00:00:00 2001 From: Sam Collins Date: Wed, 29 Mar 2017 19:49:36 +0100 Subject: [PATCH] Switched to thumbnail images in post list view --- .../base/migrations/0006_added_excerpt.py | 23 +++++++++++ .../blog/migrations/0005_added_excerpt.py | 32 +++++++++++++++ mhackspace/blog/models.py | 23 +++++++++-- mhackspace/templates/base.html | 2 +- mhackspace/templates/blog/post_date.html | 2 +- mhackspace/templates/blog/post_detail.html | 14 +++---- mhackspace/templates/blog/post_list.html | 39 ++++++++++++------- mhackspace/templates/blog/sidebar.html | 2 +- 8 files changed, 110 insertions(+), 27 deletions(-) create mode 100644 mhackspace/base/migrations/0006_added_excerpt.py create mode 100644 mhackspace/blog/migrations/0005_added_excerpt.py diff --git a/mhackspace/base/migrations/0006_added_excerpt.py b/mhackspace/base/migrations/0006_added_excerpt.py new file mode 100644 index 0000000..b551355 --- /dev/null +++ b/mhackspace/base/migrations/0006_added_excerpt.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10.6 on 2017-03-29 18:04 +from __future__ import unicode_literals + +from django.db import migrations +import stdimage.models +import stdimage.utils +import stdimage.validators + + +class Migration(migrations.Migration): + + dependencies = [ + ('base', '0005_auto_20170228_2210'), + ] + + operations = [ + migrations.AlterField( + model_name='bannerimage', + name='image', + field=stdimage.models.StdImageField(upload_to=stdimage.utils.UploadToAutoSlugClassNameDir('title'), validators=[stdimage.validators.MinSizeValidator(2400, 600)]), + ), + ] diff --git a/mhackspace/blog/migrations/0005_added_excerpt.py b/mhackspace/blog/migrations/0005_added_excerpt.py new file mode 100644 index 0000000..ab8eb5c --- /dev/null +++ b/mhackspace/blog/migrations/0005_added_excerpt.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10.6 on 2017-03-29 18:04 +from __future__ import unicode_literals + +from django.db import migrations, models +import stdimage.models +import stdimage.utils +import stdimage.validators + + +class Migration(migrations.Migration): + + dependencies = [ + ('blog', '0004_auto_20170228_2210'), + ] + + operations = [ + migrations.AlterModelOptions( + name='post', + options={'ordering': ('-published_date',)}, + ), + migrations.AddField( + model_name='post', + name='excerpt', + field=models.TextField(blank=True, null=True), + ), + migrations.AlterField( + model_name='post', + name='image', + field=stdimage.models.StdImageField(blank=True, null=True, upload_to=stdimage.utils.UploadToAutoSlugClassNameDir('title'), validators=[stdimage.validators.MinSizeValidator(730, 410)]), + ), + ] diff --git a/mhackspace/blog/models.py b/mhackspace/blog/models.py index d6fc6cb..6579bf7 100644 --- a/mhackspace/blog/models.py +++ b/mhackspace/blog/models.py @@ -1,12 +1,14 @@ from django.db import models from django.utils import timezone from django.urls import reverse -from draceditor.models import DraceditorField -from mhackspace.users.models import User +from draceditor.models import DraceditorField +from stdimage.validators import MinSizeValidator from stdimage.models import StdImageField from stdimage.utils import UploadToAutoSlugClassNameDir +from mhackspace.users.models import User + class Category(models.Model): name = models.CharField(max_length=100) @@ -33,9 +35,24 @@ class Post(models.Model): 'home': { "width": 530, "height": 220, - "crop": True}}) + "crop": True}, + 'mobilethumb': { + "width": 580, + "height": 150, + "crop": True}, + 'thumbnail': { + "width": 250, + "height": 150, + "crop": True}, + 'full': { + "width": 730, + "height": 410, + "crop": True}}, + validators=[ + MinSizeValidator(730, 410)]) description = DraceditorField() + excerpt = models.TextField(blank=True, null=True) published_date = models.DateTimeField(default=timezone.now) updated_date = models.DateTimeField(default=timezone.now) active = models.BooleanField(default=True) diff --git a/mhackspace/templates/base.html b/mhackspace/templates/base.html index ddf6b0a..3dba8a6 100644 --- a/mhackspace/templates/base.html +++ b/mhackspace/templates/base.html @@ -8,7 +8,7 @@ {% block title %}Maidstone Hackspace{% endblock title %} - + diff --git a/mhackspace/templates/blog/post_date.html b/mhackspace/templates/blog/post_date.html index 888f96b..df4ebb5 100644 --- a/mhackspace/templates/blog/post_date.html +++ b/mhackspace/templates/blog/post_date.html @@ -1,7 +1,7 @@
Published: {% if post.updated_date != post.published_date %} Updated: diff --git a/mhackspace/templates/blog/post_detail.html b/mhackspace/templates/blog/post_detail.html index fd7f30b..d9f41ba 100644 --- a/mhackspace/templates/blog/post_detail.html +++ b/mhackspace/templates/blog/post_detail.html @@ -8,14 +8,12 @@

{{ post.title }}

{% include "blog/post_date.html" %} - {% if post.image %} -
- - - - -
- {% endif %} +
+ + + + +
{{ post.description|safe_markdown }}
diff --git a/mhackspace/templates/blog/post_list.html b/mhackspace/templates/blog/post_list.html index fd86137..afe26df 100644 --- a/mhackspace/templates/blog/post_list.html +++ b/mhackspace/templates/blog/post_list.html @@ -3,21 +3,34 @@ {% block title %}Blog Posts{% endblock %} {% block content %} +
-
+
{% for post in posts %} -
-

{{ post.title }}

- {% include "blog/post_date.html" %} - {% if post.image %} -
- - - - -
- {% endif %} - {{ post.description|safe_markdown|striptags|truncatewords:30 }} +
+
+ + + + {{ banner.title }} + +
+
+

{{ post.title }}

+ {% include "blog/post_date.html" %} + {% if post.excerpt %} + {{ post.excerpt|striptags|truncatewords:45 }} + {% else %} + {{ post.description|safe_markdown|striptags|truncatewords:45 }} + {% endif %} +
{% endfor %} diff --git a/mhackspace/templates/blog/sidebar.html b/mhackspace/templates/blog/sidebar.html index 30f9b30..998a5e3 100644 --- a/mhackspace/templates/blog/sidebar.html +++ b/mhackspace/templates/blog/sidebar.html @@ -1,4 +1,4 @@ -
+

Categories