Skip to content

Latest commit

 

History

History
226 lines (153 loc) · 7.05 KB

README.md

File metadata and controls

226 lines (153 loc) · 7.05 KB

Pinax Events

CircleCi Codecov

Table of Contents

About Pinax

Pinax is an open-source platform built on the Django Web Framework. It is an ecosystem of reusable Django apps, themes, and starter project templates. This collection can be found at http://pinaxproject.com.

Important Links

Where you can find what you need:

pinax-events

Overview

pinax-events is a simple app for publishing events on your site.

Supported Django and Python Versions

Django / Python 3.6 3.7 3.8
2.2 * * *
3.0 * * *

Documentation

Installation

To install pinax-events:

    $ pip install pinax-events

Add pinax.events to your INSTALLED_APPS setting:

    INSTALLED_APPS = [
        # other apps
        "imagekit",
        "pinax.events",
    ]

You will need either PIL or Pillow installed for imagekit to work. We recommend Pillow:

    $ pip install Pillow

Settings

There are two settings that have defaults but if you want to override them you need to just set them to the dotted-notation path to the ImageSpec class that you wish to use to process the image and secondary_image files for the image_thumb and secondary_image_thumb attributes on the News model.

PINAX_EVENTS_IMAGE_THUMBNAIL_SPEC = "pinax.events.specs.ImageThumbnail"
PINAX_EVENTS_SECONDARY_IMAGE_THUMBNAIL_SPEC = "pinax.events.specs.SecondaryImageThumbnail"

To create your own ImageSpec classes you can reference the defaults, but it is basically subclassing imagekit.ImageSpec.

Usage

In your template where you want to display events:

First, load the template tags:

    {% load pinax_events_tags %}

Then:

    {% events as event_items %}

And here is an example that how you can show the events:

    <section class="event-list">
        {% for event in event_items %}
            <article class="event" style="{% if event.secondary_image_thumb %}background-image:url({% static event.secondary_image_thumb.url %});{% endif %}">
                <section class="event-img">
                    <a href="{{ event.url }}">
                        {% if event.image_thumb %}<img src="{{ event.image_thumb.url }}" width="200" />{% endif %}
                    </a>
                </section>
                <ul class="event-details">
                    <li>
                        <h2><a href="{{ event.url }}">{{ event.title }}</a></h2>
                    </li>
                    <li class="meta">
                        <span>
                            Where: {{ event.where }}
                        </span>
                        <span>
                            When: {{ event.start_date }}&endash;{{ event.end_start }}
                        </span>
                    </li>
                    <li class="event-description">
                        {{ event.what_html|safe }}
                    </li>
                </ul>
            </article>
        {% endfor %}
    </section>

Add and manage events via the Django admin.

Change Log

3.0.0

  • Drop Django 1.11, 2.0, and 2.1, and Python 2,7, 3.4, and 3.5 support
  • Add Django 2.2 and 3.0, and Python 3.6, 3.7, and 3.8 support
  • Update packaging configs
  • Direct users to community resources

2.0.3

  • Add django>=1.11 to requirements
  • Update CI config
  • Remove doc build support
  • Add sorting guidance for 3rd-party app imports
  • Improve documentation markup

2.0.2

  • fix setup.py LONG_DESCRIPTION for PyPi

2.0.1

  • Fix setup.py for PyPi

2.0.0

  • Add Django 2.0 compatibility testing
  • Drop Django 1.8, 1.9, 1.10 and Python 3.3 support
  • Move documentation into README
  • Standardize documentation layout
  • Convert CI and coverage to CircleCi and CodeCov
  • Add PyPi-compatible long description

1.1.1

  • added missing migrations from 1.1.0 changes

1.1.0

  • added support for secondary images
  • added support for customized image sizing

1.0.0

  • added docs and tests and wired up CI

0.1

  • initial release

Contribute

Contributing information can be found in the Pinax community health file repo.

Code of Conduct

In order to foster a kind, inclusive, and harassment-free community, the Pinax Project has a Code of Conduct. We ask you to treat everyone as a smart human programmer that shares an interest in Python, Django, and Pinax with you.

Connect with Pinax

For updates and news regarding the Pinax Project, please follow us on Twitter @pinaxproject and check out our Pinax Project blog.

License

Copyright (c) 2012-present James Tauber and contributors under the MIT license.