mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-13 05:44:24 +00:00
household resume page, improve ux
This commit is contained in:
parent
ff7cb6ca79
commit
c89e2662b1
@ -192,3 +192,9 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block comment_widget %}
|
||||||
|
{% for entry in form %}
|
||||||
|
{{ form_widget(entry) }}
|
||||||
|
{% endfor %}
|
||||||
|
{% endblock comment_widget %}
|
||||||
|
@ -185,6 +185,29 @@ div.banner {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
div.household-resume {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
div.col-address {
|
||||||
|
font-size: 120%;
|
||||||
|
padding-left: 1em;
|
||||||
|
|
||||||
|
}
|
||||||
|
div.col-comment {
|
||||||
|
//padding: 0;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
> * > * {
|
||||||
|
& > .chill-user-quote {
|
||||||
|
margin: 1.5em -1.67em 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* BADGES, MARKS, PINS
|
* BADGES, MARKS, PINS
|
||||||
* for chill person theme
|
* for chill person theme
|
||||||
|
@ -9,6 +9,9 @@
|
|||||||
* modalTitle twig translated chain
|
* modalTitle twig translated chain
|
||||||
* buttonText twig translated chain
|
* buttonText twig translated chain
|
||||||
* buttonSize bootstrap class like 'btn-sm'
|
* buttonSize bootstrap class like 'btn-sm'
|
||||||
|
* buttonDisplayText bool
|
||||||
|
* binModalStep1 bool
|
||||||
|
* binModalStep2 bool
|
||||||
|
|
||||||
#}
|
#}
|
||||||
<div id="address"></div>
|
<div id="address"></div>
|
||||||
|
@ -31,7 +31,7 @@
|
|||||||
|
|
||||||
<li>
|
<li>
|
||||||
<a class="btn btn-sm btn-edit"
|
<a class="btn btn-sm btn-edit"
|
||||||
title="{{ 'household.Update membership'|trans }}"
|
title="{{ 'household.Edit member household'|trans }}"
|
||||||
href="{{ chill_path_add_return_path('chill_person_household_member_edit', { 'id': member.id }) }}"></a>
|
href="{{ chill_path_add_return_path('chill_person_household_member_edit', { 'id': member.id }) }}"></a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
@ -17,4 +17,8 @@
|
|||||||
'layout': '@ChillPerson/menu.html.twig',
|
'layout': '@ChillPerson/menu.html.twig',
|
||||||
'args' : { 'household': household }
|
'args' : { 'household': household }
|
||||||
}) }}
|
}) }}
|
||||||
|
|
||||||
|
{% block block_post_menu %}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
@ -2,163 +2,195 @@
|
|||||||
|
|
||||||
{% block title 'household.Household summary'|trans %}
|
{% block title 'household.Household summary'|trans %}
|
||||||
|
|
||||||
|
{% block block_post_menu %}
|
||||||
|
<div class="block-post-menu"></div>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="household-summary">
|
<div class="household-summary">
|
||||||
|
|
||||||
<h1>{{ block('title') }}</h1>
|
{#
|
||||||
|
<h1>{{ block('title') }}</h1>
|
||||||
|
<h2>{{ 'household.Current address'|trans }}</h2>
|
||||||
|
#}
|
||||||
|
|
||||||
<h2>{{ 'household.Current address'|trans }}</h2>
|
{% set address = household.currentAddress %}
|
||||||
|
|
||||||
{% set address = household.currentAddress %}
|
{% if address is empty %}
|
||||||
|
<p class="chill-no-data-statement">{{ 'household.Household does not have any address currently'|trans }}</p>
|
||||||
{% if address is empty %}
|
|
||||||
<p class="chill-no-data-statement">{{ 'household.Household does not have any address currently'|trans }}</p>
|
|
||||||
{% else %}
|
|
||||||
<div class="flex-table">
|
|
||||||
<div class="item-bloc">
|
|
||||||
{{ address|chill_entity_render_box({'multiline': true}) }}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<h2>{{ 'household.Household members'|trans }}</h2>
|
|
||||||
|
|
||||||
{% if form is not null %}
|
|
||||||
{{ form_start(form) }}
|
|
||||||
|
|
||||||
{{ form_row(form.commentMembers) }}
|
|
||||||
|
|
||||||
<div id="waitingForBirthContainer">
|
|
||||||
{{ form_row(form.waitingForBirth) }}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="waitingForBirthDateContainer">
|
|
||||||
{{ form_row(form.waitingForBirthDate) }}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<ul class="record_actions">
|
|
||||||
<li>
|
|
||||||
<button type="submit" class="btn btn-save">
|
|
||||||
{{ 'Save'|trans }}
|
|
||||||
</button>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
{{ form_end(form) }}
|
|
||||||
{% else %}
|
|
||||||
|
|
||||||
{% if not household.commentMembers.isEmpty() %}
|
|
||||||
{{ household.commentMembers|chill_entity_render_box }}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if household.waitingForBirth %}
|
|
||||||
{% if household.waitingForBirthDate is not null %}
|
|
||||||
{{ 'household.Expecting for birth on date'|trans({ 'date': household.waitingForBirthDate|format_date('long') }) }}
|
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ 'household.Expecting for birth'|trans }}
|
<div class="row household-resume">
|
||||||
|
|
||||||
|
<div class="item-bloc col-5 col-address">
|
||||||
|
|
||||||
|
<h2>{{ 'Address'|trans }}</h2>
|
||||||
|
|
||||||
|
{{ address|chill_entity_render_box({'multiline': true}) }}
|
||||||
|
|
||||||
|
<ul class="list-inline text-right mt-2">
|
||||||
|
<li class="list-inline-item">
|
||||||
|
{# include vue_address component #}
|
||||||
|
{% include '@ChillPerson/Address/_insert_vue_address.html.twig' with {
|
||||||
|
mode: 'create',
|
||||||
|
buttonSize: 'btn-sm',
|
||||||
|
buttonText: 'Move household',
|
||||||
|
modalTitle: 'Move household',
|
||||||
|
buttonDisplayText: false
|
||||||
|
} %}
|
||||||
|
</li>
|
||||||
|
<li class="list-inline-item">
|
||||||
|
<a class="btn btn-secondary btn-sm" title="{{ "Addresses history"|trans }}"
|
||||||
|
href="{{ path('chill_person_household_addresses', { 'household_id': household.id } ) }}">
|
||||||
|
<i class="fa fa-list fa-fw"></i>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="item-bloc col-7 col-comment">
|
||||||
|
{% if form is null %}
|
||||||
|
|
||||||
|
{% if household.waitingForBirth or not household.commentMembers.isEmpty() %}
|
||||||
|
<div class="p-4 bg-light">
|
||||||
|
{% if household.waitingForBirth %}
|
||||||
|
<i class="fa fa-check-square-o pe-2"></i>
|
||||||
|
{% if household.waitingForBirthDate is not null %}
|
||||||
|
{{ 'household.Expecting for birth on date'|trans({ 'date': household.waitingForBirthDate|format_date('long') }) }}
|
||||||
|
{% else %}
|
||||||
|
{{ 'household.Expecting for birth'|trans }}
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if not household.commentMembers.isEmpty() %}
|
||||||
|
{{ household.commentMembers|chill_entity_render_box }}
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if not household.commentMembers.isEmpty() %}
|
||||||
|
<a href="{{ chill_path_add_return_path('chill_person_household_summary', { 'household_id': household.id, 'edit': 1 }) }}"
|
||||||
|
class="btn btn-edit btn-block">
|
||||||
|
{{ 'household.Edit comment and expecting birth'|trans }}
|
||||||
|
</a>
|
||||||
|
{% else %}
|
||||||
|
<a href="{{ chill_path_add_return_path('chill_person_household_summary', { 'household_id': household.id, 'edit': 1 }) }}"
|
||||||
|
class="btn btn-create btn-block">
|
||||||
|
{{ 'household.New comment and expecting birth'|trans }}
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% else %}
|
||||||
|
|
||||||
|
{{ form_start(form) }}
|
||||||
|
<div id="waitingForBirthContainer">
|
||||||
|
{{ form_widget(form.waitingForBirth) }}
|
||||||
|
</div>
|
||||||
|
<div id="waitingForBirthDateContainer">
|
||||||
|
{{ form_widget(form.waitingForBirthDate) }}
|
||||||
|
</div>
|
||||||
|
<div class="mt-3">
|
||||||
|
{{ form_widget(form.commentMembers) }}
|
||||||
|
</div>
|
||||||
|
<ul class="record_actions">
|
||||||
|
<li>
|
||||||
|
<button type="submit" class="btn btn-save">
|
||||||
|
{{ 'Save'|trans }}
|
||||||
|
</button>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
{{ form_end(form) }}
|
||||||
|
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
|
||||||
<p class="chill-no-data-statement">
|
|
||||||
{{ 'household.Any expecting birth'|trans }}
|
|
||||||
</p>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<ul class="record_actions">
|
<h2 class="my-5">{{ 'household.Household members'|trans }}</h2>
|
||||||
<li>
|
|
||||||
<a href="{{ chill_path_add_return_path('chill_person_household_summary', { 'household_id': household.id, 'edit': 1 }) }}"
|
|
||||||
class="btn btn-edit">
|
|
||||||
{{ 'household.Comment and expecting birth'|trans }}
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
{% endif %}
|
{% for p in positions %}
|
||||||
|
<div class="mb-5">
|
||||||
|
<h3>{{ p.label|localize_translatable_string }}
|
||||||
|
{% if false == p.shareHousehold %}
|
||||||
|
<i class="chill-help-tooltip" data-bs-toggle="tooltip" data-bs-placement="top" data-bs-html="true"
|
||||||
|
title="{{ 'household.Those members does not share address'|trans }}"></i>
|
||||||
|
{% endif %}
|
||||||
|
</h3>
|
||||||
|
|
||||||
|
{%- set members = household.currentMembersByPosition(p) %}
|
||||||
|
|
||||||
{% for p in positions %}
|
{% macro customButtons(member, household) %}
|
||||||
<div class="mb-5">
|
<li>
|
||||||
<h3>{{ p.label|localize_translatable_string }}
|
<a href="{{ chill_path_add_return_path('chill_person_household_members_editor', {'persons': [ member.person.id ], 'allow_leave_without_household': true } ) }}"
|
||||||
{% if false == p.shareHousehold %}
|
class="btn btn-sm btn-unlink" title="{{ 'household.person.leave'|trans }}"></a>
|
||||||
<i class="chill-help-tooltip" data-bs-toggle="tooltip" data-bs-placement="top" data-bs-html="true"
|
</li>
|
||||||
title="{{ 'household.Those members does not share address'|trans }}"></i>
|
<li>
|
||||||
|
<a href="{{ chill_path_add_return_path('chill_person_household_members_editor', {'persons': [ member.person.id ], 'household': household.id} ) }}"
|
||||||
|
class="btn btn-sm btn-misc" title="{{ 'household.Change position'|trans }}"><i class="fa fa-arrows-h"></i></a>
|
||||||
|
</li>
|
||||||
|
{% endmacro %}
|
||||||
|
|
||||||
|
{% if members|length > 0 %}
|
||||||
|
<div class="flex-table list-household-members">
|
||||||
|
{% for m in members %}
|
||||||
|
{% include '@ChillPerson/Household/_render_member.html.twig' with {
|
||||||
|
'member': m,
|
||||||
|
'customButtons': { 'after': _self.customButtons(m, household) }
|
||||||
|
} %}
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
{% else %}
|
||||||
|
<p class="chill-no-data-statement">{{ 'household.Any persons into this position'|trans }}</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</h3>
|
|
||||||
|
|
||||||
{%- set members = household.currentMembersByPosition(p) %}
|
{% set members = household.nonCurrentMembersByPosition(p) %}
|
||||||
|
{% if members|length > 0 %}
|
||||||
|
|
||||||
{% macro customButtons(member, household) %}
|
<style>
|
||||||
<li>
|
button[aria-expanded="true"] > span.folded,
|
||||||
<a href="{{ chill_path_add_return_path('chill_person_household_members_editor', {'persons': [ member.person.id ], 'allow_leave_without_household': true } ) }}"
|
button[aria-expanded="false"] > span.unfolded { display: none; }
|
||||||
class="btn btn-sm btn-unlink" title="{{ 'household.person.leave'|trans }}">
|
button[aria-expanded="false"] > span.folded,
|
||||||
{{ 'household.Leave'|trans }}</a>
|
button[aria-expanded="true"] > span.unfolded { display: inline; }
|
||||||
</li>
|
</style>
|
||||||
<li>
|
<div class="accordion" id="nonCurrent">
|
||||||
<a href="{{ chill_path_add_return_path('chill_person_household_members_editor', {'persons': [ member.person.id ], 'household': household.id} ) }}"
|
<div class="accordion-item">
|
||||||
class="btn btn-sm btn-misc" title="{{ 'household.Change position'|trans }}"><i class="fa fa-arrows-h"></i></a>
|
<h2 class="accordion-header" id="heading_{{ p.id }}">
|
||||||
</li>
|
<button
|
||||||
{% endmacro %}
|
class="accordion-button collapsed"
|
||||||
|
type="button"
|
||||||
{% if members|length > 0 %}
|
data-bs-toggle="collapse"
|
||||||
<div class="flex-table list-household-members">
|
data-bs-target="#collapse_{{ p.id }}"
|
||||||
{% for m in members %}
|
aria-expanded="false"
|
||||||
{% include '@ChillPerson/Household/_render_member.html.twig' with {
|
aria-controls="collapse_{{ p.id }}">
|
||||||
'member': m,
|
<span class="folded">{{ 'household.Show future or past memberships'|trans({'length': members|length}) }}</span>
|
||||||
'customButtons': { 'after': _self.customButtons(m, household) }
|
<span class="unfolded text-secondary">{{ 'household.Hide memberships'|trans }}</span>
|
||||||
} %}
|
</button>
|
||||||
{% endfor %}
|
</h2>
|
||||||
</div>
|
<div id="collapse_{{ p.id }}"
|
||||||
{% else %}
|
class="accordion-collapse collapse"
|
||||||
<p class="chill-no-data-statement">{{ 'household.Any persons into this position'|trans }}</p>
|
aria-labelledby="heading_{{ p.id }}"
|
||||||
{% endif %}
|
data-bs-parent="#nonCurrent">
|
||||||
|
<div class="flex-table my-0 list-household-members">
|
||||||
{% set members = household.nonCurrentMembersByPosition(p) %}
|
{% for m in members %}
|
||||||
{% if members|length > 0 %}
|
{% include '@ChillPerson/Household/_render_member.html.twig' with { 'member': m } %}
|
||||||
|
{% endfor %}
|
||||||
<style>
|
</div>
|
||||||
button[aria-expanded="true"] > span.folded,
|
|
||||||
button[aria-expanded="false"] > span.unfolded { display: none; }
|
|
||||||
button[aria-expanded="false"] > span.folded,
|
|
||||||
button[aria-expanded="true"] > span.unfolded { display: inline; }
|
|
||||||
</style>
|
|
||||||
<div class="accordion" id="nonCurrent">
|
|
||||||
<div class="accordion-item">
|
|
||||||
<h2 class="accordion-header" id="heading_{{ p.id }}">
|
|
||||||
<button
|
|
||||||
class="accordion-button collapsed"
|
|
||||||
type="button"
|
|
||||||
data-bs-toggle="collapse"
|
|
||||||
data-bs-target="#collapse_{{ p.id }}"
|
|
||||||
aria-expanded="false"
|
|
||||||
aria-controls="collapse_{{ p.id }}">
|
|
||||||
<span class="folded">{{ 'household.Show future or past memberships'|trans({'length': members|length}) }}</span>
|
|
||||||
<span class="unfolded text-secondary">{{ 'household.Hide memberships'|trans }}</span>
|
|
||||||
</button>
|
|
||||||
</h2>
|
|
||||||
<div id="collapse_{{ p.id }}"
|
|
||||||
class="accordion-collapse collapse"
|
|
||||||
aria-labelledby="heading_{{ p.id }}"
|
|
||||||
data-bs-parent="#nonCurrent">
|
|
||||||
<div class="flex-table my-0 list-household-members">
|
|
||||||
{% for m in members %}
|
|
||||||
{% include '@ChillPerson/Household/_render_member.html.twig' with { 'member': m } %}
|
|
||||||
{% endfor %}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endfor %}
|
||||||
|
|
||||||
</div>
|
<ul class="record_actions">
|
||||||
{% endfor %}
|
<li>
|
||||||
|
<a href="{{ chill_path_add_return_path('chill_person_household_members_editor', {'household': household.id }) }}"
|
||||||
<ul class="record_actions">
|
class="btn btn-create">
|
||||||
<li>
|
{{ 'household.Add a member'|trans }}
|
||||||
<a href="{{ chill_path_add_return_path('chill_person_household_members_editor', {'household': household.id }) }}"
|
</a>
|
||||||
class="btn btn-create">
|
</li>
|
||||||
{{ 'household.Add a member'|trans }}
|
</ul>
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
@ -43,7 +43,7 @@ household:
|
|||||||
Current household members: Membres actuels
|
Current household members: Membres actuels
|
||||||
Household summary: Résumé du ménage
|
Household summary: Résumé du ménage
|
||||||
Accompanying period: Parcours d'accompagnement
|
Accompanying period: Parcours d'accompagnement
|
||||||
Addresses: Adresses
|
Addresses: Historique adresse
|
||||||
Current address: Adresse actuelle
|
Current address: Adresse actuelle
|
||||||
Household does not have any address currently: Le ménage n'a pas d'adresse renseignée actuellement
|
Household does not have any address currently: Le ménage n'a pas d'adresse renseignée actuellement
|
||||||
Edit household members: Modifier l'appartenance au ménage
|
Edit household members: Modifier l'appartenance au ménage
|
||||||
@ -56,7 +56,8 @@ household:
|
|||||||
Expecting for birth on date: Naissance attendue pour le {date}
|
Expecting for birth on date: Naissance attendue pour le {date}
|
||||||
Expecting for birth: Naissance attendue (date inconnue)
|
Expecting for birth: Naissance attendue (date inconnue)
|
||||||
Any expecting birth: Aucune naissance proche n'a été renseignée.
|
Any expecting birth: Aucune naissance proche n'a été renseignée.
|
||||||
Comment and expecting birth: Mettre à jour le commentaire
|
New comment and expecting birth: Écrire un commentaire
|
||||||
|
Edit comment and expecting birth: Mettre à jour le commentaire
|
||||||
Edit member metadata: Données supplémentaires
|
Edit member metadata: Données supplémentaires
|
||||||
comment_membership: Commentaire général sur les membres
|
comment_membership: Commentaire général sur les membres
|
||||||
expecting_birth: Naissance attendue ?
|
expecting_birth: Naissance attendue ?
|
||||||
|
Loading…
x
Reference in New Issue
Block a user