{% extends 'layout/base.html.twig' %} {% set i18n_prefix = _self|i18n_prefix %} {% set product = service_request.getProduct() %} {% set category = product.getCategory() %} {% set is_owner = service_request.owner == app.user %} {% set contact = is_owner ? service_request.recipient : service_request.owner %} {% set csrf_token = csrf_token('transition') %} {% set start_at = service_request.startAt|date('d/m/Y') %} {% set end_at = service_request.endAt|date('d/m/Y') %} {% set service_request_id = service_request.id %} {% block container %}container-fluid{% endblock %} {% block body %} {% if app.environment == 'dev' %}
debug
                i18n_prefix: {{ i18n_prefix }}

                Current service request status: {{ service_request.status.value }}

                canAccept : {{ workflow_can(service_request, 'accept') ? '✅' : '❌' }}
                canConfirm : {{ workflow_can(service_request, 'confirm') ? '✅' : '❌' }}
                canRefuse : {{ workflow_can(service_request, 'refuse') ? '✅' : '❌' }}

                service_request.isOwner(app.user): {{ service_request.isOwner(app.user) ? '✅' : '❌' }}
                service_request.isRecipient(app.user): {{ service_request.isRecipient(app.user) ? '✅' : '❌' }}

                status.isNew : {{ service_request.status.isNew ? '✅' : '❌' }}
                status.isToConfirm : {{ service_request.status.isToConfirm ? '✅' : '❌' }}
                status.isConfirmed : {{ service_request.status.isConfirmed ? '✅' : '❌' }}
                status.isRefused : {{ service_request.status.isRefused ? '✅' : '❌' }}
                status.isFinished : {{ service_request.status.isFinished ? '✅' : '❌' }}

                csrf_token: {{ csrf_token }}
                
{% endif %} {# Edit dates modal #} {% if workflow_can(service_request, 'modifyOwner') or workflow_can(service_request, 'modifyRecipient') %} {% endif %}
{% include 'components/conversation/_avatar.html.twig' with { contact, name: is_owner ? contact.displayName : service_request.owner.displayName } %}
{% include 'components/conversation/_product-info.html.twig' with { product, category, rowClass: 'p-3 bg-secondary-subtle mt-lg-2' } %} {% include 'components/conversation/_calendar.html.twig' with { start_at, end_at, workflowCanModifyOwner: workflow_can(service_request, 'modifyOwner'), workflowCanModifyRecipient: workflow_can(service_request, 'modifyRecipient'), } %}
{% include 'components/conversation/_badge.html.twig' with { status: service_request.status } %}
{% if service_request.status.name != 'FINISHED' %}
{% include 'components/conversation/_action.html.twig' with { accept: workflow_can(service_request, 'accept'), confirm: workflow_can(service_request, 'confirm'), finalize: workflow_can(service_request, 'finalize'), refuse: workflow_can(service_request, 'refuse') } %}
{% else %} {% endif %}
{% include 'components/conversation/_chat.html.twig' with { messages: service_request.messages } %}
{{ form_start(form) }}
{{ form_widget(form.message, { attr: { placeholder: 'templates.pages.account.conversation.textarea.placeholder'|trans, class: 'conversation-textarea', }}) }}
{{ form_widget(form.submit) }}
{{ form_widget(form._token) }}
{{ form_end(form) }}
{% include 'components/conversation/_action.html.twig' with { accept: workflow_can(service_request, 'accept'), confirm: workflow_can(service_request, 'confirm'), finalize: workflow_can(service_request, 'finalize'), refuse: workflow_can(service_request, 'refuse') } %}
{% include 'components/conversation/_modal-confirmation.html.twig' with { start_at, end_at, product, category, contact, name: is_owner ? contact.displayName : service_request.owner.displayName } %} {% endblock %} {% block link %}{% endblock %} {% block footer %}{% endblock %}