From 28dee3ad57c7bb1d154f92dbfbc92c993bedc8ba Mon Sep 17 00:00:00 2001 From: Emilie Date: Wed, 21 Sep 2016 14:47:40 +0200 Subject: [PATCH] Block Person : two lists types template --- .../core/templatetags/organization_tags.py | 7 ++++ .../migrations/0018_auto_20160921_1006.py | 36 +++++++++++++++++++ .../migrations/0019_auto_20160921_1032.py | 36 +++++++++++++++++++ .../migrations/0020_auto_20160921_1043.py | 36 +++++++++++++++++++ app/organization/network/models.py | 9 +++-- .../network/inc/person/list_circle_style.html | 30 +++++++++++++--- .../network/inc/person/list_square_style.html | 24 ++++++++++--- app/templates/pages/custompage.html | 16 ++++----- 8 files changed, 170 insertions(+), 24 deletions(-) create mode 100644 app/organization/network/migrations/0018_auto_20160921_1006.py create mode 100644 app/organization/network/migrations/0019_auto_20160921_1032.py create mode 100644 app/organization/network/migrations/0020_auto_20160921_1043.py diff --git a/app/organization/core/templatetags/organization_tags.py b/app/organization/core/templatetags/organization_tags.py index 41ef12b9..df978b3d 100644 --- a/app/organization/core/templatetags/organization_tags.py +++ b/app/organization/core/templatetags/organization_tags.py @@ -97,6 +97,13 @@ def get_type(objects, type): return objs return None +@register.filter +def get_type_link(objects, name): + objs = objects.filter(link_type__name=name) + if objs: + return objs + return None + @register.filter def in_category(objects, category): return objects.filter(category=type) diff --git a/app/organization/network/migrations/0018_auto_20160921_1006.py b/app/organization/network/migrations/0018_auto_20160921_1006.py new file mode 100644 index 00000000..84b365bf --- /dev/null +++ b/app/organization/network/migrations/0018_auto_20160921_1006.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.7 on 2016-09-21 08:06 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('organization-network', '0017_auto_20160919_1927'), + ] + + operations = [ + migrations.AlterField( + model_name='pagecustompersonlistblockinline', + name='page', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='organization-pages.CustomPage', verbose_name='Page'), + ), + migrations.AlterField( + model_name='pagecustompersonlistblockinline', + name='person_list_block', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='organization-network.PersonListBlock', verbose_name='Person List Block'), + ), + migrations.AlterField( + model_name='personlistblockinline', + name='person', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='organization-network.Person', verbose_name='Person'), + ), + migrations.AlterField( + model_name='personlistblockinline', + name='person_list_block', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='organization-network.PersonListBlock', verbose_name='Person List Block'), + ), + ] diff --git a/app/organization/network/migrations/0019_auto_20160921_1032.py b/app/organization/network/migrations/0019_auto_20160921_1032.py new file mode 100644 index 00000000..8e0e4357 --- /dev/null +++ b/app/organization/network/migrations/0019_auto_20160921_1032.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.7 on 2016-09-21 08:32 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('organization-network', '0018_auto_20160921_1006'), + ] + + operations = [ + migrations.AlterField( + model_name='pagecustompersonlistblockinline', + name='page', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='page_custom_person_list_block_inline', to='organization-pages.CustomPage', verbose_name='Page'), + ), + migrations.AlterField( + model_name='pagecustompersonlistblockinline', + name='person_list_block', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='page_custom_person_list_block_inline', to='organization-network.PersonListBlock', verbose_name='Person List Block'), + ), + migrations.AlterField( + model_name='personlistblockinline', + name='person', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='person_list_block_inline', to='organization-network.Person', verbose_name='Person'), + ), + migrations.AlterField( + model_name='personlistblockinline', + name='person_list_block', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='person_list_block_inline', to='organization-network.PersonListBlock', verbose_name='Person List Block'), + ), + ] diff --git a/app/organization/network/migrations/0020_auto_20160921_1043.py b/app/organization/network/migrations/0020_auto_20160921_1043.py new file mode 100644 index 00000000..854bea0a --- /dev/null +++ b/app/organization/network/migrations/0020_auto_20160921_1043.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.7 on 2016-09-21 08:43 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('organization-network', '0019_auto_20160921_1032'), + ] + + operations = [ + migrations.AlterField( + model_name='pagecustompersonlistblockinline', + name='page', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='page_custom_person_list_block_inlines', to='organization-pages.CustomPage', verbose_name='Page'), + ), + migrations.AlterField( + model_name='pagecustompersonlistblockinline', + name='person_list_block', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='page_custom_person_list_block_inlines', to='organization-network.PersonListBlock', verbose_name='Person List Block'), + ), + migrations.AlterField( + model_name='personlistblockinline', + name='person', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='person_list_block_inlines', to='organization-network.Person', verbose_name='Person'), + ), + migrations.AlterField( + model_name='personlistblockinline', + name='person_list_block', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='person_list_block_inlines', to='organization-network.PersonListBlock', verbose_name='Person List Block'), + ), + ] diff --git a/app/organization/network/models.py b/app/organization/network/models.py index 7f3eaeab..9dd190f5 100644 --- a/app/organization/network/models.py +++ b/app/organization/network/models.py @@ -237,8 +237,8 @@ class PersonBlock(Block): class PageCustomPersonListBlockInline(Titled): - page = models.ForeignKey(CustomPage, verbose_name=_('Page'), related_name='page_custom_person_list_block_inline', blank=True, null=True, on_delete=models.SET_NULL) - person_list_block = models.ForeignKey("PersonListBlock", verbose_name=_('Person List Block'), related_name='page_custom_person_list_block_inline', blank=True, null=True) + page = models.ForeignKey(CustomPage, verbose_name=_('Page'), related_name='page_custom_person_list_block_inlines', blank=True, null=True, on_delete=models.SET_NULL) + person_list_block = models.ForeignKey("PersonListBlock", related_name='page_custom_person_list_block_inlines', verbose_name=_('Person List Block'), blank=True, null=True) class Meta: verbose_name = _('Person List') @@ -260,14 +260,13 @@ class PersonListBlock(Titled): class PersonListBlockInline(models.Model): - person_list_block = models.ForeignKey(PersonListBlock, verbose_name=_('Person List Block'), related_name='person_list_block_inline', blank=True, null=True, on_delete=models.SET_NULL) - person = models.ForeignKey(Person, verbose_name=_('Person'), related_name='person_list_block_inline', blank=True, null=True, on_delete=models.SET_NULL) + person_list_block = models.ForeignKey(PersonListBlock, verbose_name=_('Person List Block'), related_name='person_list_block_inlines', blank=True, null=True, on_delete=models.SET_NULL) + person = models.ForeignKey(Person, verbose_name=_('Person'), related_name='person_list_block_inlines', blank=True, null=True, on_delete=models.SET_NULL) class Meta: verbose_name = _('Person autocomplete') - class ActivityStatus(Named): class Meta: diff --git a/app/templates/network/inc/person/list_circle_style.html b/app/templates/network/inc/person/list_circle_style.html index c6ef8d80..9a0f5bde 100644 --- a/app/templates/network/inc/person/list_circle_style.html +++ b/app/templates/network/inc/person/list_circle_style.html @@ -1,7 +1,27 @@ +{% load organization_tags mezzanine_tags %}

{{ person_list_block.title }}

+{% if person_list_block.description %}

{{ person_list_block.description }}

-{{ person_list_block.persons.all }} -{% for person in person_list_block.person %} ------------{{person}}--------- -

{{ person.person_title }}

-{% endfor %} +{% endif %} + {% for person_list_block_inline in person_list_block.person_list_block_inlines.all %} + {% with person_list_block_inline.person as person %} + + {% with person.images.all|get_type:'card' as card_images %} + {% if card_images %} + person + {% endif %} + {% endwith %} + + +

{{ person }}

+
+ {% if person.description %} +

{{ person.description|slice:":255" }}

+ {% endif %} + {% with person.links.all|get_type_link:'site internet' as web_site %} + {% if web_site %} + Site Web + {% endif %} + {% endwith %} + {% endwith %} + {% endfor %} diff --git a/app/templates/network/inc/person/list_square_style.html b/app/templates/network/inc/person/list_square_style.html index 85d112ca..4c3df857 100644 --- a/app/templates/network/inc/person/list_square_style.html +++ b/app/templates/network/inc/person/list_square_style.html @@ -1,6 +1,22 @@ +{% load organization_tags mezzanine_tags %}

{{ person_list_block.title }}

+{% if person_list_block.description %}

{{ person_list_block.description }}

-{% for person in person_list_block.person %} ------------{{person}}--------- -

{{ person.person_title }}

-{% endfor %} +{% endif %} + {% for person_list_block_inline in person_list_block.person_list_block_inlines.all %} + {% with person_list_block_inline.person as person %} + + {% with person.images.all|get_type:'card' as card_images %} + {% if card_images %} + person + {% endif %} + {% endwith %} + + +

{{ person }}

+
+ {% if person.description %} +

{{ person.description|slice:":255" }}

+ {% endif %} + {% endwith %} + {% endfor %} diff --git a/app/templates/pages/custompage.html b/app/templates/pages/custompage.html index 106fd495..cefdc2f8 100644 --- a/app/templates/pages/custompage.html +++ b/app/templates/pages/custompage.html @@ -91,17 +91,13 @@ {% endblock %} {% block page_person_list %} -{% with page.custompage.person_list_block.all as person_list_blocks %} - {% for person_list_block in person_list_blocks %} - {% with person_list_block.person_list_block as person_list_block %} - {% with "network/inc/person/list_"|add:person_list_block.style|add:"_style.html" as template %} - {% include template %} + {% for page_custom_person_list_block_inline in page.custompage.page_custom_person_list_block_inlines.all %} + {% with page_custom_person_list_block_inline.person_list_block as person_list_block %} + {% with "network/inc/person/list_"|add:person_list_block.style|add:"_style.html" as template %} + {% include template %} + {% endwith %} {% endwith %} - - {% endwith %} - {% endfor %} -{% endwith %} - + {% endfor %} {% endblock %} {% block page_sub_content %} -- 2.39.5