131 lines
5.4 KiB
Twig

{#
Template to render a thirdparty
OPTIONS
* display [raw|label|row|bloc]
* with_valid_from bool
* addAltNames bool
* addLink bool
* addEntity bool
* addInfo bool
#}
{% macro raw(thirdparty) %}
<span class="name">{{ thirdparty.name }}</span>
{% endmacro raw %}
{% macro label(thirdparty, addLink, addEntity, addInfo, options) %}
<div class="chill-entity thirdparty label">
<h3 class="denomination">
{%- if addLink and is_granted('CHILL_3PARTY_3PARTY_SHOW', thirdparty) -%}
<a href="{{ chill_path_add_return_path('chill_3party_3party_show', { 'thirdparty_id': thirdparty.id }) }}">
{{ _self.raw(thirdparty) }}
</a>
{%- else -%}
{{ _self.raw(thirdparty) }}
{%- endif -%}
{%- if addEntity -%}
<span class="badge rounded-pill bg-secondary">{{ 'Third party'|trans }}</span>
{%- endif -%}
</h3>
{# AVANT
<div class="name">
{{ _self.raw(thirdparty) }}
</div>
<div class="category">
{% for type in thirdparty.type %}
<span class="category">
{{ ('chill_3party.key_label.'~type)|trans }}
</span>
{% endfor %}
</div>
{% if thirdparty.comment is not empty %}
<div class="comment">
{{ thirdparty.comment }}
</div>
{% endif %}
{% if thirdparty.address %}
<div class="chill_address">
<div class="chill_address_address">
{% if thirdparty.address.streetAddress1 %}<p class="street street1">{{ thirdparty.address.streetAddress1 }}</p>{% endif %}
{% if thirdparty.address.streetAddress2 is not empty %}<p class="street street2">{{ thirdparty.address.streetAddress2 }}</p>{% endif %}
{% if thirdparty.address.postCode is not empty %}
<p class="postalCode"><span class="code">{{ thirdparty.address.postCode.code }}</span> <span class="name">{{ thirdparty.address.postCode.name }}</span></p>
<p class="country">{{ thirdparty.address.postCode.country.name|localize_translatable_string }}</p>
{% endif %}
</div>
{%- if options['with_valid_from'] is defined and options['with_valid_from'] == true -%}
<span class="address_since">{{ 'Since %date%'|trans( { '%date%' : thirdparty.address.validFrom|format_date('long') } ) }}</span>
{%- endif -%}
</div>
{% endif %}
{% if thirdparty.email or thirdparty.telephone is not empty %}
<div class="contact">
<span class="email">
<a href="mailto:{{ thirdparty.email }}">{{ thirdparty.email }}</a>
</span>
<span class="telephone">
<a href="tel:{{ thirdparty.telephone }}">{{ thirdparty.telephone|chill_format_phonenumber }}</a>
</span>
</div>
{% endif %}
#}
{#- tricks to remove easily whitespace after template -#}
{%- if true -%}</div>{%- endif -%}
{% endmacro label %}
{%- if display == 'raw' -%}
{{ _self.raw(thirdparty) }}
{%- endif -%}
{%- if display == 'label' -%}
{{ _self.label(thirdparty, addLink, addEntity, addInfo, options) }}
{%- endif -%}
{%- if display == 'row' -%}
<div class="chill-entity thirdparty row">
{{ _self.label(thirdparty, addLink, addEntity, addInfo, options) }}
</div>
{%- endif -%}
{%- if display == 'bloc' -%}
<div class="chill-entity thirdparty bloc">
<div class="item-row">
<div class="item-col">
{{ _self.label(thirdparty, addLink, addEntity, addInfo, options) }}
</div>
<div class="item-col">
<ul class="list-content fa-ul">
<li><i class="fa fa-li fa-envelope-o"></i>
<a href="{{ 'mailto:' ~ thirdparty.email }}">
{{ thirdparty.email|chill_print_or_message("thirdparty.No_email") }}
</a>
</li>
<li><i class="fa fa-li fa-phone"></i>
{% if thirdparty.telephone %}
<a href="{{ 'tel:' ~ thirdparty.telephone }}">{{ thirdparty.telephone|chill_format_phonenumber }}</a>
{% else %}
<span class="chill-no-data-statement">{{ 'thirdparty.No_phonenumber'|trans }}</span>
{% endif %}
</li>
<li><i class="fa fa-li fa-map-marker"></i>
{%- if thirdparty.address is not empty -%}
{{ thirdparty.getAddress|chill_entity_render_box({'with_valid_from': false}) }}
{%- else -%}
<span class="chill-no-data-statement">{{ 'No address given'|trans }}</span>
{%- endif -%}
</li>
</ul>
<ul class="record_actions">
<li>
<a href="{{ path('chill_3party_3party_show', { thirdparty_id: thirdparty.id }) }}" class="btn btn-show" target="_blank" title="Voir"></a>
</li>
</ul>
</div>
</div>
</div>
{%- endif -%}