From: Emilie Date: Tue, 14 Feb 2017 11:29:39 +0000 (+0100) Subject: [Article] : can add Person in related content X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=204ca99cfa06e682d41b931c78206a980e789739;p=mezzo.git [Article] : can add Person in related content --- diff --git a/app/organization/magazine/forms.py b/app/organization/magazine/forms.py index 7b6f7363..c5144cfc 100644 --- a/app/organization/magazine/forms.py +++ b/app/organization/magazine/forms.py @@ -25,7 +25,7 @@ import dal_select2_queryset_sequence from django import forms from organization.magazine.models import * from organization.pages.models import CustomPage -from organization.network.models import PersonListBlock +from organization.network.models import PersonListBlock, Person from mezzanine_agenda.models import Event class BriefForm(autocomplete.FutureModelForm): @@ -63,7 +63,8 @@ class DynamicContentArticleForm(autocomplete.FutureModelForm): queryset=autocomplete.QuerySetSequence( Article.objects.all(), Event.objects.all(), - CustomPage.objects.all() + CustomPage.objects.all(), + Person.objects.published() ), required=False, widget=dal_select2_queryset_sequence.widgets.QuerySetSequenceSelect2('dynamic-content-article'), diff --git a/app/organization/magazine/views.py b/app/organization/magazine/views.py index 4c680d0a..326053de 100644 --- a/app/organization/magazine/views.py +++ b/app/organization/magazine/views.py @@ -34,7 +34,7 @@ from mezzanine_agenda.models import Event from mezzanine.utils.views import paginate from mezzanine.conf import settings from organization.magazine.models import * -from organization.network.models import DepartmentPage +from organization.network.models import DepartmentPage, Person from organization.pages.models import CustomPage, DynamicContentPage from organization.core.views import SlugMixin, autocomplete_result_formatting from django.template.defaultfilters import slugify @@ -157,13 +157,15 @@ class DynamicContentArticleView(Select2QuerySetSequenceView): articles = Article.objects.all() events = Event.objects.all() pages = CustomPage.objects.all() + persons = Person.objects.published() if self.q: articles = articles.filter(title__icontains=self.q) events = events.filter(title__icontains=self.q) pages = pages.filter(title__icontains=self.q) + persons = persons.filter(title__icontains=self.q) - qs = autocomplete.QuerySetSequence(articles, events, pages) + qs = autocomplete.QuerySetSequence(articles, events, pages, persons) if self.q: # This would apply the filter on all the querysets diff --git a/app/templates/network/person/includes/person_card.html b/app/templates/network/person/includes/person_card.html new file mode 100644 index 00000000..04f15c04 --- /dev/null +++ b/app/templates/network/person/includes/person_card.html @@ -0,0 +1,39 @@ +{% extends "core/inc/generic_card.html" %} +{% load i18n pages_tags mezzanine_tags media_tags organization_tags %} + +{% block metatitle %} + {{ object.title }} +{% endblock %} + +{% block title %} + {{ object.title }} +{% endblock %} + +{% block url %} + {% url 'organization-network-person-detail' object.slug %} +{% endblock %} + +{% block image %} + {% with object.images.all|get_type:'card' as images %} +
+ {% if images %} +
+ +
+ {% else %} +
+ {% if object.department %} +
+ {% else %} +
+ {% endif %} +
+ {% endif %} + +
+ {% endwith %} +{% endblock %} + +{% block content %} + {{ object.bio|richtext_filters|safe|truncatechars_html:200 }} +{% endblock %}