diff --git a/mhackspace/base/__init__.py b/mhackspace/base/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/mhackspace/base/models.py b/mhackspace/base/models.py new file mode 100644 index 0000000..822cade --- /dev/null +++ b/mhackspace/base/models.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals, absolute_import + +from django.db import models +from django.utils import timezone +from stdimage.models import StdImageField +from stdimage.utils import UploadToAutoSlugClassNameDir + + +class BannerImages(models.Model): + url = models.URLField() + title = models.CharField(max_length=255) + displayed = models.BooleanField(default=True) + original_image = models.URLField(max_length=255, blank=True, null=True) + scaled_image = StdImageField( + upload_to=UploadToAutoSlugClassNameDir(populate_from='title'), + blank=True, + null=True, + variations={ + 'home': { + "width": 530, + "height": 220, + "crop": True}}) + + caption = models.TextField() + date = models.DateTimeField(default=timezone.now) + + def __str__(self): + return self.title diff --git a/mhackspace/base/templatetags/banner_images.py b/mhackspace/base/templatetags/banner_images.py new file mode 100644 index 0000000..77b4a31 --- /dev/null +++ b/mhackspace/base/templatetags/banner_images.py @@ -0,0 +1,10 @@ +# -*- coding: utf-8 -*- +from django import template +from mhackspace.base.models import BannerImages + +register = template.Library() + +@register.inclusion_tag('partials/banner_list.html') +def show_banner_images(): + return {'banner_list': BannerImages.objects.filter(displayed=True)} + diff --git a/mhackspace/templates/partials/banner_list.html b/mhackspace/templates/partials/banner_list.html new file mode 100644 index 0000000..f003930 --- /dev/null +++ b/mhackspace/templates/partials/banner_list.html @@ -0,0 +1,14 @@ +{% load static %} + +
+ {% for banner in banners %} + + {% endfor %} +
+