{% extends 'base.html.twig' %} {% import "macros/widgets.html.twig" as widgets %} {% import "macros/toolbar.html.twig" as toolbar %} {% import "macros/datatables.html.twig" as tables %} {% import "export/actions.html.twig" as actions %} {% set columns = { 'date': {'class': 'alwaysVisible text-nowrap', 'orderBy': false}, 'user': {'class': 'hidden-xs hidden-sm', 'orderBy': false}, 'project': {'class': 'hidden-xs hidden-sm', 'orderBy': false}, 'activity': {'class': 'hidden-xs hidden-sm hidden-md', 'orderBy': false}, 'description': {'class': 'hidden-xs hidden-sm hidden-md timesheet-description', 'orderBy': false}, 'unit_price': {'class': 'hidden hidden-xs text-nowrap', 'orderBy': false}, 'duration': {'class': 'text-nowrap', 'orderBy': false}, 'rate_internal': {'class': 'hidden-xs text-nowrap', 'orderBy': false}, 'total_rate': {'class': 'text-nowrap', 'orderBy': false}, 'exported': {'class': 'alwaysVisible', 'orderBy': false}, } %} {% set tableName = 'export' %} {% block page_title %}{{ 'export.title'|trans }}{% endblock %} {% block page_subtitle %}{{ 'export.subtitle'|trans }}{% endblock %} {% block page_actions %}{{ actions.export((preview_show ? 'preview' : 'index')) }}{% endblock %} {% block main_before %} {{ tables.data_table_column_modal(tableName, columns) }} {% endblock %} {% block main %} {% embed '@AdminLTE/Widgets/box-widget.html.twig' %} {% form_theme form '@AdminLTE/layout/form-theme-horizontal.html.twig' %} {% block box_title %}{{ 'export.filter'|trans }}{% endblock %} {% block box_before %}{{ form_start(form) }}{% endblock %} {% block box_body %} {{ form_errors(form) }} {{ form_row(form.searchTerm) }} {{ form_row(form.daterange) }} {{ form_row(form.customers) }} {{ form_row(form.projects) }} {{ form_row(form.activities) }} {{ form_row(form.tags) }} {% if form.users is defined %} {{ form_row(form.users) }} {% endif %} {{ form_row(form.exported) }} {{ form_row(form.state) }} {{ form_row(form.markAsExported) }} {% endblock %} {% block box_footer%} {% set buttons = {} %} {% for button in renderer %} {% set title = button.title %} {% set group = [] %} {% if buttons[(title)] is defined %} {% set group = buttons[(title)] %} {% endif %} {% set group = group|merge([button]) %} {% set buttons = buttons|merge({(title): group}) %} {% endfor %}
{% for group in buttons %} {% set button = group.0 %} {% if group|length == 1 %} {% elseif group|length > 1 %}
{% endif %} {% endfor %}
{{ form_widget(form.preview) }} {% endblock %} {% block box_after %}{{ form_end(form) }}{% endblock %} {% endembed %} {% if preview_show %} {% if entries is empty %} {{ widgets.nothing_found() }} {% else %} {{ tables.datatable_header(tableName, columns, query, {}) }} {% set totalAmount = {} %} {% set totalInternalAmount = {} %} {% set totalDuration = 0 %} {% for entry in entries %} {% set currency = entry.project.customer.currency %} {% set duration = entry.duration|duration %} {% if totalAmount[currency] is not defined %} {% set totalAmount = totalAmount|merge({(currency): 0}) %} {% set totalInternalAmount = totalInternalAmount|merge({(currency): 0}) %} {% endif %} {% if entry.fixedRate is not null %} {% set rate = entry.fixedRate %} {% else %} {% set rate = entry.hourlyRate %} {% endif %} {% set totalDuration = totalDuration + entry.duration %} {% set totalAmount = totalAmount|merge({(currency): totalAmount[currency] + entry.rate}) %} {% set totalInternalAmount = totalInternalAmount|merge({(currency): totalInternalAmount[currency] + entry.internalRate}) %} {{ entry.begin|date_short }} {{ widgets.label_user(entry.user) }} {{ widgets.label_project(entry.project) }}
{{ widgets.label_customer(entry.project.customer) }} {% if entry.activity is not null %} {{ widgets.label_activity(entry.activity) }} {% endif %} {{ entry.description|desc2html }} {{ rate|money(currency) }} {{ duration }} {{ entry.internalRate|money(currency) }} {{ entry.rate|money(currency) }} {% if is_granted('edit_export', entry) %} {% if entry.exported %} {% else %} {% endif %} {% else %} {% if entry.exported %} {{ 'entryState.exported'|trans }} {% else %} {{ 'entryState.not_exported'|trans }} {% endif %} {% endif %} {% endfor %} {{ totalDuration|duration }} {% for currency, amount in totalInternalAmount %} {{ amount|money(currency) }} {% if not loop.last %}
{% endif %} {% endfor %} {% for currency, amount in totalAmount %} {{ amount|money(currency) }} {% if not loop.last %}
{% endif %} {% endfor %} {{ tables.data_table_footer(entries) }} {% endif %} {% endif %} {% endblock %} {% block javascripts %} {{ parent() }} {% endblock %}