| {%- set subtablesAreDisabled = properties.show_goals_columns|default(false) |
| and properties.disable_subtable_when_show_goals|default(false) -%} |
| {%- set showingEmbeddedSubtable = properties.show_embedded_subtable is not empty |
| and idSubtable|default(false) -%} |
| {% if error is defined %} |
| {{ error.message }} |
| {% else %} |
| {%- if not showingEmbeddedSubtable -%} |
| <div class="dataTableScroller"> |
| <table cellspacing="0" class="dataTable"> |
| {% include "@CoreHome/_dataTableHead.twig" %} |
| |
| <tbody> |
| {%- endif -%} |
| {% if showingEmbeddedSubtable and dataTableHasNoData %} |
| {% if clientSideParameters is not defined or clientSideParameters.filter_pattern_recursive is not defined or not clientSideParameters.filter_pattern_recursive %} |
| <tr class="nodata"> |
| <td colspan="{{ properties.columns_to_display|length }}">{{ 'CoreHome_CategoryNoData'|translate }}</td> |
| </tr> |
| {% endif %} |
| {% else %} |
| {% set rowIndex = properties.filter_offset|default(0) + 1 %} |
| {%- for rowId, row in dataTable.getRows() -%} |
| {%- set rowHasSubtable = not subtablesAreDisabled and row.getIdSubDataTable() and properties.subtable_controller_action is not null -%} |
| {%- set rowSubtableId = row.getMetadata('idsubdatatable_in_db')|default(row.getIdSubDataTable()) -%} |
| {%- set isSummaryRow = rowId == constant('Piwik\\DataTable::ID_SUMMARY_ROW') or row.getMetadata('is_summary') -%} |
| {%- set shouldHighlightRow = isSummaryRow and properties.highlight_summary_row -%} |
| {% set dimensions = dataTable.getMetadata('dimensions')|default([]) %} |
| |
| |
| {%- set showRow = subtablesAreDisabled |
| or not rowHasSubtable |
| or not properties.show_expanded|default(false) |
| or not properties.replace_row_with_subtable|default(false) -%} |
| |
| {% if showRow %} |
| <tr {% if rowHasSubtable %}id="{{ rowSubtableId }}"{% endif %} |
| {% if row.getMetadata('segment') is not false %} data-segment-filter="{{ row.getMetadata('segment')|e('html_attr') }}"{% endif %} |
| {% if row.getMetadata('url') is not false %} data-url-label="{{ row.getMetadata('url')|rawSafeDecoded }}"{% endif %} |
| data-row-metadata="{{ row.getMetadata|json_encode|e('html_attr') }}" |
| class="{{ row.getMetadata('css_class') }} {% if rowHasSubtable %}subDataTable{% endif %}{% if shouldHighlightRow %} highlight{% endif %}{% if isSummaryRow %} summaryRow{% endif %} {% if isComparing %}parentComparisonRow{% endif %}" |
| {% if rowHasSubtable %}title="{{ 'CoreHome_ClickRowToExpandOrContract'|translate }}"{% endif %} |
| {% if rowIdentifier|default != 'label' %}data-label="{{ row.getColumn(rowIdentifier) ? row.getColumn(rowIdentifier) : row.getMetadata(rowIdentifier) }}" data-label-pretty="{{ row.getColumn('label') }}"{% endif %} |
| > |
| {% for column in properties.columns_to_display %} |
| {% set cellAttributes = visualization.getCellHtmlAttributes(row, column) %} |
| <td class="{% if column =='label' or column in dimensions %}label{% else %}column{% endif %} {% if loop.first %}first{% endif %} {{ cellAttributes.class|default|e('html_attr') }}" |
| {% if cellAttributes is not empty %}{% for name, value in cellAttributes %}{{ name|e('html') }}="{{ value|e('html_attr') }}" {% endfor %}{% endif %} |
| > |
| {% if isComparing and column == 'label' %} |
| <span class="prefix-numeral">{{ rowIndex }}.</span> |
| {% endif %} |
| |
| {% include "@CoreHome/_dataTableCell.twig" with properties %} |
| </td> |
| {% endfor %} |
| </tr> |
| |
| {% if row.getComparisons() %} |
| {% include "@CoreVisualizations/_dataTableViz_htmlTable_comparisons.twig" with { |
| 'comparedRow': row, |
| 'dataTable': row.getComparisons(), |
| 'rootDataTable': dataTable, |
| 'dimensions': dimensions, |
| } %} |
| {% endif %} |
| {% endif %} |
| |
| |
| {% if properties.show_expanded|default(false) and rowHasSubtable %} |
| {% include "@CoreVisualizations/_dataTableViz_htmlTable.twig" with {'dataTable': row.getSubtable(), 'idSubtable': rowSubtableId} %} |
| {% endif %} |
| |
| {% set rowIndex = rowIndex + 1 %} |
| {%- endfor -%} |
| {% if dataTable.getTotalsRow and properties.show_totals_row %} |
| {% set row = dataTable.getTotalsRow %} |
| {% set rowId = 'totalsRow' %} |
| <tr class="{{ row.getMetadata('css_class') }} totalsRow" |
| title="Total values for this table"> |
| {% for column in properties.columns_to_display %} |
| <td class="{% if column =='label' %}label{% else %}column{% endif %} {% if loop.first %}first{% endif %}"> |
| {% include "@CoreHome/_dataTableCell.twig" with properties %} |
| </td> |
| {% endfor %} |
| </tr> |
| {% endif %} |
| {% endif %} |
| {%- if not showingEmbeddedSubtable -%} |
| </tbody> |
| </table> |
| </div> |
| {%- endif -%} |
| {% endif %} |