mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-09-21 22:24:59 +00:00
Compare commits
35 Commits
2.0.0-beta
...
interface_
Author | SHA1 | Date | |
---|---|---|---|
98419e3533 | |||
977c034b64 | |||
1b2aeaea2f | |||
7ac54a6c9f | |||
ccaf430b37 | |||
72ce5c716d | |||
86afe2f702 | |||
f297548a3a | |||
2529ee46d3 | |||
65faf7c803 | |||
d20d38e5f4 | |||
3735f24e10 | |||
4b5cdd471b | |||
f339cf56d6 | |||
4592be3a8d | |||
4e1d7278c6 | |||
a26346859c | |||
a48b990c73 | |||
fecc1f5ad3 | |||
93e9cab10a | |||
0943366d39 | |||
4719a74307 | |||
72167b9e77 | |||
c14ae98130 | |||
83b928b0b0 | |||
f0187536c1 | |||
fec27babbe | |||
ceb0f741ef | |||
427f461b61 | |||
ffbd0c3d4e | |||
93a052583d | |||
8e7b8d6eff | |||
ac88e46a7d | |||
149d4c3846 | |||
9a29532362 |
@@ -13,6 +13,10 @@ and this project adheres to
|
||||
<!-- write down unreleased development here -->
|
||||
* [workflow]: added pagination to workflow list page
|
||||
* [homepage_widget]: null error on tasks widget fixed
|
||||
* [person-thirdparty]: fix quick-add of names that consist of multiple parts (eg. De Vlieger) within onthefly modal person/thirdparty
|
||||
* [search]: Order of birthdate fields changed in advanced search to avoid confusion.
|
||||
* [workflow]: Constraint added to workflow (https://gitlab.com/champs-libres/departement-de-la-vendee/accent-suivi-developpement/-/issues/675)
|
||||
* [action]: Agents traitants should be prefilled with referrer of the parcours or left empty if there is no referrer (https://gitlab.com/champs-libres/departement-de-la-vendee/accent-suivi-developpement/-/issues/696)
|
||||
|
||||
## Test releases
|
||||
|
||||
@@ -37,6 +41,7 @@ and this project adheres to
|
||||
* [activity] activity admin: translations + remove label field for comment on admin activity type (https://gitlab.com/champs-libres/departement-de-la-vendee/chill/-/issues/587)
|
||||
* [main] admin user_job: improvements (https://gitlab.com/champs-libres/departement-de-la-vendee/chill/-/issues/588)
|
||||
* [address] can add extra address info even if noAddress (https://gitlab.com/champs-libres/departement-de-la-vendee/chill/-/issues/576)
|
||||
* [search] Change order of birthdate fields in advanced search
|
||||
|
||||
|
||||
### 2022-05-06
|
||||
|
@@ -2,12 +2,30 @@
|
||||
{% if is_granted('CHILL_ACTIVITY_SEE_DETAILS', activity) %}
|
||||
{% if no_action is not defined or no_action == false %}
|
||||
<li>
|
||||
<a class="btn btn-misc" href="{{ chill_path_add_return_path('chill_main_notification_create', {
|
||||
'entityClass': 'Chill\\ActivityBundle\\Entity\\Activity',
|
||||
'entityId': activity.id
|
||||
}) }}">
|
||||
<i class="fa fa-paper-plane fa-fw"></i>
|
||||
{{ 'notification.Notify'|trans }}</a>
|
||||
{% set showGroup = activity.accompanyingPeriod is not null and activity.accompanyingPeriod.hasUser and activity.accompanyingPeriod.user is not same as(app.user) %}
|
||||
<div class="{% if showGroup %}btn-group{% endif %}" {% if showGroup %}role="group"{% endif %}>
|
||||
{% if showGroup %}
|
||||
<button id="btnGroupNotifyButtons" type="button" class="btn btn-notify dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
|
||||
{{ 'notification.Notify'|trans }}
|
||||
</button>
|
||||
<ul class="dropdown-menu" aria-labelledby="btnGroupNotifyButtons">
|
||||
<li>
|
||||
<a class="dropdown-item" href="{{ chill_path_add_return_path('chill_main_notification_create', {'entityClass': 'Chill\\ActivityBundle\\Entity\\Activity', 'entityId': activity.id, 'tos': [activity.accompanyingPeriod.user.id]}) }}">
|
||||
{{ 'notification.Notify referrer'|trans }}
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-item" href="{{ chill_path_add_return_path('chill_main_notification_create', {'entityClass': 'Chill\\ActivityBundle\\Entity\\Activity', 'entityId': activity.id}) }}">
|
||||
{{ 'notification.Notify any'|trans }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
{% else %}
|
||||
<a class="btn btn-notify" href="{{ chill_path_add_return_path('chill_main_notification_create', {'entityClass': 'Chill\\ActivityBundle\\Entity\\Activity', 'entityId': activity.id}) }}">
|
||||
{{ 'notification.Notify'|trans }}
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% if context == 'person' and activity.accompanyingPeriod is not empty %}
|
||||
|
@@ -217,9 +217,30 @@
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="btn btn-notify" href="{{ chill_path_add_return_path('chill_main_notification_create', {'entityClass': 'Chill\\ActivityBundle\\Entity\\Activity', 'entityId': entity.id}) }}">
|
||||
{{ 'notification.Notify'|trans }}
|
||||
</a>
|
||||
{% set showGroup = entity.accompanyingPeriod is not null and entity.accompanyingPeriod.hasUser and entity.accompanyingPeriod.user is not same as(app.user) %}
|
||||
<div class="{% if showGroup %}btn-group{% endif %}" {% if showGroup %}role="group"{% endif %}>
|
||||
{% if showGroup %}
|
||||
<button id="btnGroupNotifyButtons" type="button" class="btn btn-notify dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
|
||||
{{ 'notification.Notify'|trans }}
|
||||
</button>
|
||||
<ul class="dropdown-menu" aria-labelledby="btnGroupNotifyButtons">
|
||||
<li>
|
||||
<a class="dropdown-item" href="{{ chill_path_add_return_path('chill_main_notification_create', {'entityClass': 'Chill\\ActivityBundle\\Entity\\Activity', 'entityId': entity.id, 'tos': [entity.accompanyingPeriod.user.id]}) }}">
|
||||
{{ 'notification.Notify referrer'|trans }}
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-item" href="{{ chill_path_add_return_path('chill_main_notification_create', {'entityClass': 'Chill\\ActivityBundle\\Entity\\Activity', 'entityId': entity.id}) }}">
|
||||
{{ 'notification.Notify any'|trans }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
{% else %}
|
||||
<a class="btn btn-notify" href="{{ chill_path_add_return_path('chill_main_notification_create', {'entityClass': 'Chill\\ActivityBundle\\Entity\\Activity', 'entityId': entity.id}) }}">
|
||||
{{ 'notification.Notify'|trans }}
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</li>
|
||||
{% if is_granted('CHILL_ACTIVITY_UPDATE', entity) %}
|
||||
<li>
|
||||
|
@@ -109,6 +109,7 @@ class WorkflowStepType extends AbstractType
|
||||
'multiple' => false,
|
||||
'expanded' => true,
|
||||
'choices' => $choices,
|
||||
'constraints' => [new NotNull()],
|
||||
'choice_label' => function (Transition $transition) use ($workflow) {
|
||||
$meta = $workflow->getMetadataStore()->getTransitionMetadata($transition);
|
||||
|
||||
@@ -208,24 +209,28 @@ class WorkflowStepType extends AbstractType
|
||||
$transition = $form['transition']->getData();
|
||||
$toFinal = true;
|
||||
|
||||
foreach ($transition->getTos() as $to) {
|
||||
$meta = $workflow->getMetadataStore()->getPlaceMetadata($to);
|
||||
|
||||
if (
|
||||
!array_key_exists('isFinal', $meta) || false === $meta['isFinal']
|
||||
) {
|
||||
$toFinal = false;
|
||||
}
|
||||
}
|
||||
|
||||
$destUsers = $form['future_dest_users']->getData();
|
||||
$destEmails = $form['future_dest_emails']->getData();
|
||||
|
||||
if (!$toFinal && [] === $destUsers && [] === $destEmails) {
|
||||
if (null === $transition) {
|
||||
$context
|
||||
->buildViolation('workflow.You must add at least one dest user or email')
|
||||
->atPath('future_dest_users')
|
||||
->addViolation();
|
||||
->buildViolation('workflow.You must select a next step, pick another decision if no next steps are available');
|
||||
} else {
|
||||
foreach ($transition->getTos() as $to) {
|
||||
$meta = $workflow->getMetadataStore()->getPlaceMetadata($to);
|
||||
|
||||
if (
|
||||
!array_key_exists('isFinal', $meta) || false === $meta['isFinal']
|
||||
) {
|
||||
$toFinal = false;
|
||||
}
|
||||
}
|
||||
$destUsers = $form['future_dest_users']->getData();
|
||||
$destEmails = $form['future_dest_emails']->getData();
|
||||
|
||||
if (!$toFinal && [] === $destUsers && [] === $destEmails) {
|
||||
$context
|
||||
->buildViolation('workflow.You must add at least one dest user or email')
|
||||
->atPath('future_dest_users')
|
||||
->addViolation();
|
||||
}
|
||||
}
|
||||
}
|
||||
),
|
||||
|
@@ -42,6 +42,13 @@ body {
|
||||
footer {
|
||||
margin-top: auto;
|
||||
}
|
||||
.content-title {
|
||||
background-color: $chill-l-gray;
|
||||
border-radius:3px;
|
||||
padding:.5rem;
|
||||
margin-bottom: 1rem;
|
||||
box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px !important;
|
||||
}
|
||||
}
|
||||
|
||||
header {
|
||||
@@ -214,6 +221,19 @@ footer.footer {
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* PERSON INFO
|
||||
*/
|
||||
|
||||
.chill_view_data, .pop-item {
|
||||
.info-field {
|
||||
border: 1px dashed;
|
||||
padding:.5rem;
|
||||
border-radius:3px;
|
||||
margin-top:.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* ADMIN STYLES
|
||||
*/
|
||||
@@ -260,6 +280,8 @@ table.table-bordered {
|
||||
background-color: $gray-200;
|
||||
color: $gray-800;
|
||||
font-size: 90%;
|
||||
box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px;
|
||||
border-radius: 5px !important;
|
||||
|
||||
p {
|
||||
margin-bottom: 0.75rem !important;
|
||||
@@ -459,8 +481,19 @@ span.item-key {
|
||||
/// Workflows
|
||||
div.workflow {
|
||||
section.step {
|
||||
border: 1px solid $chill-l-gray;
|
||||
padding: 1em 2em;
|
||||
form {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
i.fa-angle-double-down {
|
||||
font-size: 3rem;
|
||||
color: rgba(0, 0, 0, 0.568);
|
||||
margin-bottom: 1rem;
|
||||
margin-top: 1rem;
|
||||
}
|
||||
// border: 1px solid $chill-l-gray;
|
||||
// padding: 1em 2em;
|
||||
div.flex-table {
|
||||
margin: 1.5em -2em;
|
||||
}
|
||||
|
@@ -6,6 +6,26 @@
|
||||
* FLEX RESPONSIVE TABLE/BLOCK PRESENTATION
|
||||
*/
|
||||
|
||||
.pop-item {
|
||||
border-radius: 10px !important;
|
||||
box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px !important;
|
||||
padding:1.7rem;
|
||||
margin-top: .5rem;
|
||||
margin-bottom: .5rem;
|
||||
.subtitle {
|
||||
background-color: $chill-ll-gray;
|
||||
border-radius:3px;
|
||||
padding:.5rem;
|
||||
margin-top: 1rem;
|
||||
}
|
||||
&:last-child {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
&:first-child {
|
||||
margin-top:1rem;
|
||||
}
|
||||
}
|
||||
|
||||
div.flex-bloc,
|
||||
div.flex-table {
|
||||
display: flex;
|
||||
@@ -14,11 +34,39 @@ div.flex-table {
|
||||
box-sizing: border-box;
|
||||
margin: 1.5em 0;
|
||||
|
||||
div.message-item {
|
||||
border-radius: 10px !important;
|
||||
box-shadow: rgba(9, 30, 66, 0.25) 0px 1px 1px, rgba(9, 30, 66, 0.13) 0px 0px 1px 1px !important;
|
||||
width: 96%;
|
||||
margin-bottom: .5rem;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
div.card-item {
|
||||
border-radius: 10px !important;
|
||||
box-shadow: rgba(0, 0, 0, 0.4) 0px 2px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px -3px, rgba(0, 0, 0, 0.2) 0px -3px 0px inset !important;
|
||||
width: 96%;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
div.item-bloc {
|
||||
display: flex;
|
||||
@include border-collapse;
|
||||
padding: 1em;
|
||||
|
||||
border-radius: 5px !important;
|
||||
box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px, rgba(0, 0, 0, 0.24) 0px 1px 2px !important;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
margin-top: .5rem;
|
||||
width: 97%;
|
||||
&:last-child {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
&:first-child {
|
||||
margin-top:1rem;
|
||||
}
|
||||
div.item-row {
|
||||
display: flex;
|
||||
|
||||
|
@@ -48,19 +48,40 @@ div.notification-show {
|
||||
}
|
||||
}
|
||||
ul.small_in_title {
|
||||
list-style-type: circle;
|
||||
// list-style-type: circle;
|
||||
li {
|
||||
list-style: none;
|
||||
margin-bottom: 1rem;
|
||||
span.item-key {
|
||||
display: inline-block;
|
||||
background-color: white;
|
||||
width: 3em;
|
||||
font-size: 1.2rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
div.notification-content {
|
||||
margin: 1.5rem;
|
||||
p {
|
||||
margin-bottom: 0.75rem;
|
||||
width: 93%;
|
||||
margin: 1.5rem auto 1.5rem auto;
|
||||
.message {
|
||||
background-color: #f3f3f3;
|
||||
line-height: 1.75;
|
||||
box-shadow: rgba(0, 0, 0, 0.25) 0px 0.0625em 0.0625em, rgba(0, 0, 0, 0.25) 0px 0.125em 0.5em, rgba(255, 255, 255, 0.1) 0px 0px 0px 1px inset;
|
||||
padding: 1.5rem;
|
||||
border-radius: 5px;
|
||||
border-left: $chill-yellow 10px solid;
|
||||
p:first-child {
|
||||
margin-bottom: 1rem;
|
||||
&::before {
|
||||
content: "“";
|
||||
font-family: Georgia;
|
||||
font-size: 40px;
|
||||
line-height: 0;
|
||||
display: inline-block;
|
||||
display: -webkit-inline-box;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -15,26 +15,69 @@
|
||||
<span v-if="forceRedirect">{{ $t('wait_redirection') }}</span>
|
||||
</div>
|
||||
|
||||
<div v-if="showMessageWhenNoAddress" class="mt-5">
|
||||
<p class="chill-no-data-statement">
|
||||
{{ $t('not_yet_address') }}
|
||||
</p>
|
||||
<div v-if="(!this.context.edit && !this.flag.success && this.context.target.name !== 'household')" class="mt-5">
|
||||
<div class="no-address-yet">
|
||||
<i class="fa fa-map-marker" aria-hidden="true"></i>
|
||||
<p class="chill-no-data-statement">
|
||||
{{ $t('not_yet_address') }}
|
||||
</p>
|
||||
|
||||
<action-buttons
|
||||
:options="this.options"
|
||||
:defaultz="this.defaultz"
|
||||
class="add-address-btn">
|
||||
<template v-slot:action>
|
||||
<button @click.prevent="$emit('openEditPane')"
|
||||
class="btn" :class="getClassButton"
|
||||
type="button" name="button" :title="$t(getTextButton)">
|
||||
<span v-if="displayTextButton">{{ $t(getTextButton) }}</span>
|
||||
</button>
|
||||
</template>
|
||||
</action-buttons>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="this.context.edit" class="mb-3 row">
|
||||
<div class="col-sm-4"></div>
|
||||
<div class="address-container col-sm-8">
|
||||
<address-render-box :address="address" :isMultiline="false" :useDatePane="useDatePane"></address-render-box>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="this.context.target.name === 'household' || this.context.edit">
|
||||
<action-buttons
|
||||
:options="this.options"
|
||||
:defaultz="this.defaultz">
|
||||
<template v-slot:action>
|
||||
<button @click.prevent="$emit('openEditPane')"
|
||||
class="btn btn-sm" :class="getClassButton"
|
||||
type="button" name="button" :title="$t(getTextButton)">
|
||||
<span v-if="displayTextButton">{{ $t(getTextButton) }}</span>
|
||||
</button>
|
||||
</template>
|
||||
</action-buttons>
|
||||
</div>
|
||||
|
||||
<div v-if="!this.context.edit">
|
||||
<address-render-box :address="address" :isMultiline="false" :useDatePane="useDatePane"></address-render-box>
|
||||
</div>
|
||||
|
||||
<address-render-box :address="address" :useDatePane="useDatePane"></address-render-box>
|
||||
</div>
|
||||
|
||||
<action-buttons
|
||||
:options="this.options"
|
||||
:defaultz="this.defaultz">
|
||||
<template v-slot:action>
|
||||
<button @click.prevent="$emit('openEditPane')"
|
||||
class="btn" :class="getClassButton"
|
||||
type="button" name="button" :title="$t(getTextButton)">
|
||||
<span v-if="displayTextButton">{{ $t(getTextButton) }}</span>
|
||||
</button>
|
||||
</template>
|
||||
</action-buttons>
|
||||
<div v-if="onlyButton">
|
||||
<action-buttons
|
||||
:options="this.options"
|
||||
:defaultz="this.defaultz"
|
||||
class="add-address-btn">
|
||||
<template v-slot:action>
|
||||
<button @click.prevent="$emit('openEditPane')"
|
||||
class="btn" :class="getClassButton"
|
||||
type="button" name="button" :title="$t(getTextButton)">
|
||||
<span v-if="displayTextButton">{{ $t(getTextButton) }}</span>
|
||||
</button>
|
||||
</template>
|
||||
</action-buttons>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
@@ -58,6 +101,9 @@ export default {
|
||||
'useDatePane'
|
||||
],
|
||||
emits: ['openEditPane'],
|
||||
mounted() {
|
||||
console.log('context', this.context)
|
||||
},
|
||||
computed: {
|
||||
address() {
|
||||
return this.entity.address;
|
||||
@@ -91,13 +137,35 @@ export default {
|
||||
forceRedirect() {
|
||||
return (!(this.context.backUrl === null || typeof this.context.backUrl === 'undefined'));
|
||||
},
|
||||
showMessageWhenNoAddress() {
|
||||
let showMessageWhenNoAddress = this.options.showMessageWhenNoAddress === undefined ? this.defaultz.showMessageWhenNoAddress : this.options.showMessageWhenNoAddress;
|
||||
if (showMessageWhenNoAddress === true || showMessageWhenNoAddress === false) {
|
||||
return !this.context.edit && !this.address.id && showMessageWhenNoAddress;
|
||||
}
|
||||
return !this.context.edit && !this.address.id && this.options.stickyActions;
|
||||
}
|
||||
// showMessageWhenNoAddress() {
|
||||
// let showMessageWhenNoAddress = this.options.showMessageWhenNoAddress === undefined ? this.defaultz.showMessageWhenNoAddress : this.options.showMessageWhenNoAddress;
|
||||
// if (showMessageWhenNoAddress === true || showMessageWhenNoAddress === false) {
|
||||
// return !this.context.edit && !this.address.id && showMessageWhenNoAddress;
|
||||
// }
|
||||
// return !this.context.edit && !this.address.id && this.options.stickyActions;
|
||||
// }
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.address-container {
|
||||
display:flex;
|
||||
justify-content:flex-end;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.no-address-yet {
|
||||
text-align: center;
|
||||
box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
|
||||
padding:1.5rem;
|
||||
margin-bottom:2rem;
|
||||
i {
|
||||
font-size:2rem;
|
||||
margin-bottom:2rem;
|
||||
}
|
||||
.add-address-btn {
|
||||
display: block
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
||||
|
@@ -67,14 +67,16 @@
|
||||
<div class="notification-content">
|
||||
{% if c.full_content is defined and c.full_content == true %}
|
||||
{% if c.notification.message is not empty %}
|
||||
{{ c.notification.message|chill_markdown_to_html }}
|
||||
<div class="message">{{ c.notification.message|chill_markdown_to_html }}</div>
|
||||
{% else %}
|
||||
<p class="chill-no-data-statement">{{ 'Any comment'|trans }}</p>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{% if c.notification.message is not empty %}
|
||||
{{ c.notification.message|u.truncate(250, '…', false)|chill_markdown_to_html }}
|
||||
<p class="read-more"><a href="{{ chill_path_add_return_path('chill_main_notification_show', {'id': c.notification.id}) }}">{{ 'Read more'|trans }}</a></p>
|
||||
<div class="message">
|
||||
{{ c.notification.message|u.truncate(250, '…', false)|chill_markdown_to_html }}
|
||||
<p class="read-more"><a href="{{ chill_path_add_return_path('chill_main_notification_show', {'id': c.notification.id}) }}">{{ 'Read more'|trans }}</a></p>
|
||||
</div>
|
||||
{% else %}
|
||||
<p class="chill-no-data-statement">{{ 'Any comment'|trans }}</p>
|
||||
{% endif %}
|
||||
|
@@ -9,7 +9,7 @@
|
||||
{% set labels = workflow_metadata(entity_workflow, 'label', step.currentStep) %}
|
||||
{% set label = labels is null ? step.currentStep : labels|localize_translatable_string %}
|
||||
|
||||
<div class="card">
|
||||
<div class="pop-item">
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
@@ -47,38 +47,40 @@
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<i class="fa fa-angle-double-down" aria-hidden="true"></i>
|
||||
<div class="pop-item">
|
||||
<div id="transitionFilter">
|
||||
{% if transition_form.transitionFilter is defined %}
|
||||
{{ form_row(transition_form.transitionFilter) }}
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
<div id="transitionFilter">
|
||||
{% if transition_form.transitionFilter is defined %}
|
||||
{{ form_row(transition_form.transitionFilter) }}
|
||||
<div id="transitions">
|
||||
{{ form_row(transition_form.transition) }}
|
||||
</div>
|
||||
|
||||
{% if transition_form.freezeAfter is defined %}
|
||||
{{ form_row(transition_form.freezeAfter) }}
|
||||
{% endif %}
|
||||
|
||||
<div id="futureDests">
|
||||
{{ form_row(transition_form.future_dest_users) }}
|
||||
|
||||
{{ form_row(transition_form.future_dest_emails) }}
|
||||
</div>
|
||||
|
||||
<p>{{ form_label(transition_form.comment) }}</p>
|
||||
|
||||
{{ form_widget(transition_form.comment) }}
|
||||
|
||||
<ul class="record_actions">
|
||||
<li>
|
||||
<button type="submit" class="btn btn-save">{{ 'Save'|trans }}</button>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
{{ form_end(transition_form) }}
|
||||
</div>
|
||||
|
||||
<div id="transitions">
|
||||
{{ form_row(transition_form.transition) }}
|
||||
</div>
|
||||
|
||||
{% if transition_form.freezeAfter is defined %}
|
||||
{{ form_row(transition_form.freezeAfter) }}
|
||||
{% endif %}
|
||||
|
||||
<div id="futureDests">
|
||||
{{ form_row(transition_form.future_dest_users) }}
|
||||
|
||||
{{ form_row(transition_form.future_dest_emails) }}
|
||||
</div>
|
||||
|
||||
<p>{{ form_label(transition_form.comment) }}</p>
|
||||
|
||||
{{ form_widget(transition_form.comment) }}
|
||||
|
||||
<ul class="record_actions">
|
||||
<li>
|
||||
<button type="submit" class="btn btn-save">{{ 'Save'|trans }}</button>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
{{ form_end(transition_form) }}
|
||||
{% else %}
|
||||
<div class="alert alert-chill-yellow">
|
||||
|
||||
|
@@ -5,7 +5,7 @@
|
||||
{% set place_labels = workflow_metadata(entity_workflow, 'label', step.currentStep) %}
|
||||
{% set place_label = place_labels is null ? step.currentStep : place_labels|localize_translatable_string %}
|
||||
|
||||
<div class="item-bloc {{ 'bloc' ~ step.id }} {% if loop.first %}initial{% endif %}">
|
||||
<div class="item-bloc message-item {{ 'bloc' ~ step.id }} {% if loop.first %}initial{% endif %}">
|
||||
<div class="item-row">
|
||||
|
||||
{% if loop.first and step.next is null %}
|
||||
|
@@ -32,33 +32,31 @@
|
||||
- src/Bundle/ChillPersonBundle/Resources/views/Workflow/_accompanying_period_work.html.twig
|
||||
- src/Bundle/ChillDocStoreBundle/Resources/views/AccompanyingCourseDocument/_workflow.html.twig
|
||||
#}
|
||||
<section class="step my-4">
|
||||
<div class="mb-5">
|
||||
<section class="step my-4 pop-item">
|
||||
<div class="mb-3">
|
||||
<h2>{{ handler.entityTitle(entity_workflow) }}</h2>
|
||||
|
||||
{{ macro.breadcrumb({'entity_workflow': entity_workflow}) }}
|
||||
</div>
|
||||
|
||||
{% include handler_template with handler_template_data|merge({'display_action': true }) %}
|
||||
|
||||
{% if is_granted('CHILL_MAIN_WORKFLOW_DELETE', entity_workflow) %}
|
||||
<ul class="record_actions">
|
||||
<li>
|
||||
<a class="btn btn-delete"
|
||||
href="{{ chill_path_add_return_path('chill_main_workflow_delete', {'id': entity_workflow.id}) }}"
|
||||
>
|
||||
{{ 'workflow.Delete workflow'|trans }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
{% endif %}
|
||||
</section>
|
||||
|
||||
<section class="step my-4">{% include '@ChillMain/Workflow/_follow.html.twig' %}</section>
|
||||
<section class="step my-4">{% include '@ChillMain/Workflow/_decision.html.twig' %}</section>{#
|
||||
<section class="step my-4">{% include '@ChillMain/Workflow/_comment.html.twig' %}</section> #}
|
||||
<section class="step my-4">{% include '@ChillMain/Workflow/_history.html.twig' %}</section>
|
||||
|
||||
<section class="step my-4">{% include '@ChillMain/Workflow/_decision.html.twig' %}</section>
|
||||
<section class="step my-4 pop-item">{% include '@ChillMain/Workflow/_follow.html.twig' %}</section>
|
||||
{#<section class="step my-4">{% include '@ChillMain/Workflow/_comment.html.twig' %}</section> #}
|
||||
<section class="step my-4 pop-item">{% include '@ChillMain/Workflow/_history.html.twig' %}</section>
|
||||
{% if is_granted('CHILL_MAIN_WORKFLOW_DELETE', entity_workflow) %}
|
||||
<ul class="record_actions">
|
||||
<li>
|
||||
<a class="btn btn-delete"
|
||||
href="{{ chill_path_add_return_path('chill_main_workflow_delete', {'id': entity_workflow.id}) }}"
|
||||
>
|
||||
{{ 'workflow.Delete workflow'|trans }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
{% endif %}
|
||||
{# useful ?
|
||||
<ul class="record_actions sticky-form-buttons">
|
||||
<li class="cancel">
|
||||
|
@@ -463,6 +463,7 @@ workflow:
|
||||
Previous transitionned: Anciens workflows
|
||||
Previous workflow transitionned help: Workflows où vous avez exécuté une action.
|
||||
For: Pour
|
||||
You must select a next step, pick another decision if no next steps are available: Il faut une prochaine étape. Choissisez une autre décision si nécessaire.
|
||||
|
||||
|
||||
Subscribe final: Recevoir une notification à l'étape finale
|
||||
|
@@ -26,8 +26,9 @@ class AccompanyingPeriodWorkEventListener
|
||||
|
||||
public function prePersistAccompanyingPeriodWork(AccompanyingPeriodWork $work): void
|
||||
{
|
||||
if ($this->security->getUser() instanceof User) {
|
||||
$work->addReferrer($this->security->getUser());
|
||||
$referrer = $work->getAccompanyingPeriod()->getUser();
|
||||
if (null !== $referrer) {
|
||||
$work->addReferrer($referrer);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -226,16 +226,35 @@ div.banner {
|
||||
div.household-resume {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
align-items: flex-start;
|
||||
justify-content: space-between;
|
||||
padding-left: 1rem;
|
||||
padding-right:1rem;
|
||||
|
||||
div.col-address {
|
||||
font-size: 120%;
|
||||
padding-left: 1em;
|
||||
|
||||
padding: 1rem;
|
||||
border-radius: 5px;
|
||||
border: 1px dotted tint-color($chill-accourse-context, 10%);
|
||||
border-left: 1px dotted tint-color($chill-accourse-context, 10%);
|
||||
border-right: 1px dotted tint-color($chill-accourse-context, 10%);
|
||||
div.address-box {
|
||||
width: 100%;
|
||||
justify-content: flex-start;
|
||||
align-items: flex-start;
|
||||
display: flex;
|
||||
i {
|
||||
font-size: 200%;
|
||||
margin-right: 2rem;
|
||||
margin-top: 2rem;
|
||||
margin-left: 1rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
div.col-comment {
|
||||
//padding: 0;
|
||||
margin-bottom: 1rem;
|
||||
width: 50%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
> * > * {
|
||||
|
@@ -333,10 +333,10 @@ export default {
|
||||
addQueryItem(field, queryItem) {
|
||||
switch (field) {
|
||||
case 'lastName':
|
||||
this.person.lastName = queryItem;
|
||||
this.person.lastName = this.person.lastName ? this.person.lastName += ` ${queryItem}` : queryItem;
|
||||
break;
|
||||
case 'firstName':
|
||||
this.person.firstName = queryItem;
|
||||
this.person.firstName = this.person.firstName ? this.person.firstName += ` ${queryItem}` : queryItem;
|
||||
break;
|
||||
}
|
||||
},
|
||||
|
@@ -45,7 +45,7 @@ const personMessages = {
|
||||
},
|
||||
address: {
|
||||
create_address: "Ajouter une adresse",
|
||||
show_address_form: "Créer un ménage et ajouter une adresse",
|
||||
show_address_form: "Ajouter une adresse pour un usager non suivi et seul dans un ménage",
|
||||
warning: "Un nouveau ménage va être créé. L'usager sera membre de ce ménage."
|
||||
}
|
||||
},
|
||||
|
@@ -1,5 +1,4 @@
|
||||
<div class="item-bloc accompanying_course_work-item{% if itemBlocClass is defined %} {{ itemBlocClass }}{% endif %}">
|
||||
|
||||
<div class="item-bloc card-item accompanying_course_work-item{% if itemBlocClass is defined %} {{ itemBlocClass }}{% endif %}">
|
||||
<div class="item-row">
|
||||
<h2 class="badge-title">
|
||||
<span class="title_label"></span>
|
||||
@@ -145,5 +144,4 @@
|
||||
</ul>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
@@ -1,4 +1,4 @@
|
||||
<div class="item-bloc accompanying-period-item{% if itemBlocClass is defined %} {{ itemBlocClass|raw }}{% endif %}" data-accompanying-period-id="{{ period.id|e('html_attr') }}">
|
||||
<div class="item-bloc card-item accompanying-period-item{% if itemBlocClass is defined %} {{ itemBlocClass|raw }}{% endif %}" data-accompanying-period-id="{{ period.id|e('html_attr') }}">
|
||||
<div class="item-row">
|
||||
<div class="wrap-header">
|
||||
<div class="wh-row">
|
||||
|
@@ -19,12 +19,14 @@
|
||||
<div class="row household-resume">
|
||||
<div class="item-bloc col-5 col-address">
|
||||
<h2>{{ 'Address'|trans }}</h2>
|
||||
|
||||
{% if address is empty %}
|
||||
<p class="chill-no-data-statement">{{ 'household.Household does not have any address currently'|trans }}</p>
|
||||
{% else %}
|
||||
{{ address|chill_entity_render_box({'multiline': true, 'extended_infos': true }) }}
|
||||
{% endif %}
|
||||
<div class="address-box">
|
||||
<i class="fa fa-map-marker" aria-hidden="true"></i>
|
||||
{% if address is empty %}
|
||||
<p class="chill-no-data-statement">{{ 'household.Household does not have any address currently'|trans }}</p>
|
||||
{% else %}
|
||||
{{ address|chill_entity_render_box({'multiline': true, 'extended_infos': true }) }}
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
<ul class="list-inline text-right mt-2">
|
||||
<li class="list-inline-item">
|
||||
@@ -49,95 +51,95 @@
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="item-bloc col-7 col-comment">
|
||||
{% if form is null %}
|
||||
{% set currentComposition = household.currentComposition %}
|
||||
{% if currentComposition is not null %}
|
||||
<div>
|
||||
<h6>
|
||||
{{ currentComposition.householdCompositionType.label|localize_translatable_string }}
|
||||
</h6>
|
||||
<p>
|
||||
{{ 'household_composition.numberOfChildren children in household'|trans({'numberOfChildren': currentComposition.numberOfChildren}) }}
|
||||
</p>
|
||||
<p>
|
||||
{{ 'household_composition.Since'|trans({'startDate': currentComposition.startDate}) }}
|
||||
</p>
|
||||
<ul class="record_actions">
|
||||
<div class="item-bloc col-7 col-comment pop-item">
|
||||
{% if form is null %}
|
||||
{% set currentComposition = household.currentComposition %}
|
||||
{% if currentComposition is not null %}
|
||||
<div>
|
||||
<h6>
|
||||
{{ currentComposition.householdCompositionType.label|localize_translatable_string }}
|
||||
</h6>
|
||||
<p>
|
||||
{{ 'household_composition.numberOfChildren children in household'|trans({'numberOfChildren': currentComposition.numberOfChildren}) }}
|
||||
</p>
|
||||
<p>
|
||||
{{ 'household_composition.Since'|trans({'startDate': currentComposition.startDate}) }}
|
||||
</p>
|
||||
<ul class="record_actions">
|
||||
<li>
|
||||
<a class="btn btn-sm btn-update change-icon"
|
||||
href="{{ path('chill_person_household_composition_index', {'id': household.id}) }}">
|
||||
{{ 'household_composition.Update composition'|trans }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="alert alert-danger">
|
||||
<p>
|
||||
{{ 'household_composition.Currently no composition'|trans }}
|
||||
</p>
|
||||
<ul class="record_actions" style="margin-bottom: 0">
|
||||
<li>
|
||||
<a class="btn btn-sm btn-update change-icon"
|
||||
href="{{ path('chill_person_household_composition_index', {'id': household.id}) }}">
|
||||
{{ 'household_composition.Update composition'|trans }}
|
||||
href="{{ path('chill_person_household_composition_index', {'id': household.id}) }}">
|
||||
{{ 'household_composition.Add a composition'|trans }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="alert alert-danger">
|
||||
<p>
|
||||
{{ 'household_composition.Currently no composition'|trans }}
|
||||
</p>
|
||||
<ul class="record_actions" style="margin-bottom: 0">
|
||||
<li>
|
||||
<a class="btn btn-sm btn-update change-icon"
|
||||
href="{{ path('chill_person_household_composition_index', {'id': household.id}) }}">
|
||||
{{ 'household_composition.Add a composition'|trans }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% 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" id="form_household_comment_confirm">
|
||||
{{ 'Save'|trans }}
|
||||
</button>
|
||||
</li>
|
||||
</ul>
|
||||
{{ form_end(form) }}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% 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" id="form_household_comment_confirm">
|
||||
{{ 'Save'|trans }}
|
||||
</button>
|
||||
</li>
|
||||
</ul>
|
||||
{{ form_end(form) }}
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h2 class="my-5">{{ 'household.Household members'|trans }}</h2>
|
||||
@@ -153,7 +155,7 @@
|
||||
{% endif %}
|
||||
|
||||
{% if not (p == '_none' and members|length == 0 and old_members|length == 0) %}
|
||||
<div class="mb-5">
|
||||
<div class="mb-5 pop-item">
|
||||
{% if p != '_none' %}
|
||||
<h3>{{ p.label|localize_translatable_string }}
|
||||
{% if false == p.shareHousehold %}
|
||||
|
@@ -82,18 +82,22 @@ class PersonSearch extends AbstractSearch implements HasAdvancedSearchFormInterf
|
||||
'label' => 'Last name',
|
||||
'required' => false,
|
||||
])
|
||||
->add('birthdate-after', ChillDateType::class, [
|
||||
'label' => 'Birthdate after',
|
||||
'required' => false,
|
||||
])
|
||||
->add('birthdate', ChillDateType::class, [
|
||||
'label' => 'Birthdate',
|
||||
'required' => false,
|
||||
])
|
||||
->add('birthdate-after', ChillDateType::class, [
|
||||
'label' => 'Birthdate after',
|
||||
'required' => false,
|
||||
])
|
||||
->add('birthdate-before', ChillDateType::class, [
|
||||
'label' => 'Birthdate before',
|
||||
'required' => false,
|
||||
])
|
||||
->add('birthdate-after', ChillDateType::class, [
|
||||
'label' => 'Birthdate after',
|
||||
'required' => false,
|
||||
])
|
||||
->add('phonenumber', TelType::class, [
|
||||
'required' => false,
|
||||
'label' => 'Part of the phonenumber',
|
||||
|
@@ -86,7 +86,7 @@ Civility: Civilité
|
||||
choose civility: --
|
||||
All genders: tous les genres
|
||||
Any person selected: Aucune personne sélectionnée
|
||||
Create a household and add an address: Créer un ménage et ajouter une adresse
|
||||
Create a household and add an address: Ajouter une adresse pour un usager non suivi et seul dans un ménage
|
||||
A new household will be created. The person will be member of this household.: Un nouveau ménage va être créé. L'usager sera membre de ce ménage.
|
||||
|
||||
# dédoublonnage
|
||||
|
@@ -7,15 +7,12 @@
|
||||
&.place-new {
|
||||
background-color: $chill-yellow;
|
||||
}
|
||||
|
||||
&.place-in_progress {
|
||||
background-color: $chill-green;
|
||||
}
|
||||
|
||||
&.place-closed {
|
||||
background-color: $chill-blue;
|
||||
}
|
||||
|
||||
&.place-canceled {
|
||||
background-color: $chill-beige;
|
||||
}
|
||||
|
@@ -1,71 +1,68 @@
|
||||
<div class="task-show">
|
||||
|
||||
<h1>{{ 'Task'|trans }}</h1>
|
||||
{# <h1 class="content-title">{{ 'Task'|trans }}</h1> #}
|
||||
|
||||
<h2>{{ task.title }}
|
||||
<h2 style="margin-bottom: 1rem;">{{ task.title }}
|
||||
{% for place in workflow_marked_places(task) %}
|
||||
<span class="task-status box type-{{ task.type }} place-{{ place }}">{{ place|trans }}</span>
|
||||
<span class="task-status badge rounded-pill box type-{{ task.type }} place-{{ place }}">{{ place|trans }}</span>
|
||||
{% endfor %}
|
||||
</h2>
|
||||
|
||||
<dl class="chill_view_data">
|
||||
|
||||
<dt class="inline">{{ 'Description'|trans }}</dt>
|
||||
<dd>
|
||||
{% if task.description is empty %}
|
||||
<span class="chill-no-data-statement">{{"No description"|trans}}</span>
|
||||
{% else %}
|
||||
<blockquote class="chill-user-quote">
|
||||
{{ task.description|chill_markdown_to_html }}
|
||||
</blockquote>
|
||||
{% endif %}
|
||||
</dd>
|
||||
|
||||
<dt class="inline">{{ 'Assignee'|trans }}</dt>
|
||||
<dd>
|
||||
{% if task.assignee is null %}
|
||||
<span class="chill-no-data-statement">{{"No one assignee"|trans}}</span>
|
||||
{% else %}
|
||||
{{ task.assignee }}
|
||||
{% endif %}
|
||||
</dd>
|
||||
|
||||
{% if task.scope is not null %}
|
||||
<dt class="inline">{{ 'Scope'|trans }}</dt>
|
||||
<div class="pop-item">
|
||||
<dl class="chill_view_data">
|
||||
<dt class="inline">{{ 'Description'|trans }}</dt>
|
||||
<dd>
|
||||
<span class="scope">{{ task.scope.name|localize_translatable_string }}</span>
|
||||
{% if task.description is empty %}
|
||||
<span class="chill-no-data-statement">{{"No description"|trans}}</span>
|
||||
{% else %}
|
||||
<blockquote class="chill-user-quote">
|
||||
{{ task.description|chill_markdown_to_html }}
|
||||
</blockquote>
|
||||
{% endif %}
|
||||
</dd>
|
||||
{% endif %}
|
||||
|
||||
<h3>{{"Dates"|trans}}</h3>
|
||||
{% if task.startDate is null and task.endDate is null and task.warningDate is null %}
|
||||
<dt></dt>
|
||||
<dd>
|
||||
<span class="chill-no-data-statement">{{"No dates specified"|trans}}</span>
|
||||
<dt class="inline">{{ 'Assignee'|trans }}</dt>
|
||||
<dd class="info-field">
|
||||
{% if task.assignee is null %}
|
||||
<span class="chill-no-data-statement">{{"No one assignee"|trans}}</span>
|
||||
{% else %}
|
||||
{{ task.assignee }}
|
||||
{% endif %}
|
||||
</dd>
|
||||
</dt>
|
||||
{% else %}
|
||||
{% if task.startDate is not null %}
|
||||
<dt class="inline">{{ 'Start'|trans }}</dt>
|
||||
<dd>{{ task.startDate|format_date('long') }}</dd>
|
||||
{% if task.scope is not null %}
|
||||
<dt class="inline">{{ 'Scope'|trans }}</dt>
|
||||
<dd class="info-field">
|
||||
<span class="scope">{{ task.scope.name|localize_translatable_string }}</span>
|
||||
</dd>
|
||||
{% endif %}
|
||||
<h3 class="subtitle">{{"Dates"|trans}}</h3>
|
||||
{% if task.startDate is null and task.endDate is null and task.warningDate is null %}
|
||||
<dt></dt>
|
||||
<dd class="info-field">
|
||||
<span class="chill-no-data-statement">{{"No dates specified"|trans}}</span>
|
||||
</dd>
|
||||
</dt>
|
||||
{% else %}
|
||||
{% if task.startDate is not null %}
|
||||
<dt class="inline">{{ 'Start'|trans }}</dt>
|
||||
<dd class="info-field">{{ task.startDate|format_date('long') }}</dd>
|
||||
{% endif %}
|
||||
{% if task.endDate is not null %}
|
||||
<dt class="inline">{{ 'End'|trans }}</dt>
|
||||
<dd class="info-field">{{ task.endDate|format_date('long') }}</dd>
|
||||
{% endif %}
|
||||
{% if task.warningDate is not null %}
|
||||
<dt class="inline">{{ 'Warning'|trans }}</dt>
|
||||
<dd class="info-field">{{ task.warningDate|format_date('long') }}</dd>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% if task.endDate is not null %}
|
||||
<dt class="inline">{{ 'End'|trans }}</dt>
|
||||
<dd>{{ task.endDate|format_date('long') }}</dd>
|
||||
{% endif %}
|
||||
|
||||
{% if task.warningDate is not null %}
|
||||
<dt class="inline">{{ 'Warning'|trans }}</dt>
|
||||
<dd>{{ task.warningDate|format_date('long') }}</dd>
|
||||
{% endif %}
|
||||
|
||||
{% endif %}
|
||||
</dl>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
{% if timeline is not null %}
|
||||
<h3>{{"Timeline"|trans}}</h3>
|
||||
{{ timeline|raw }}
|
||||
<div class="pop-item">
|
||||
<h3 class="subtitle">{{"Timeline"|trans}}</h3>
|
||||
{{ timeline|raw }}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<ul class="record_actions sticky-form-buttons">
|
||||
|
@@ -297,7 +297,7 @@ export default {
|
||||
addQueryItem(field, queryItem) {
|
||||
switch (field) {
|
||||
case 'name':
|
||||
this.thirdparty.name = queryItem;
|
||||
this.thirdparty.name ? this.thirdparty.name += ` ${queryItem}` : this.thirdparty.name = queryItem;
|
||||
break;
|
||||
case 'firstName':
|
||||
this.thirdparty.firstname = queryItem;
|
||||
|
Reference in New Issue
Block a user