121 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Twig
		
	
	
	
	
	
		
		
			
		
	
	
			121 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Twig
		
	
	
	
	
	
| 
								 | 
							
								{#
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * @file
							 | 
						||
| 
								 | 
							
								 * Default theme implementation for displaying a view as a table.
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * Available variables:
							 | 
						||
| 
								 | 
							
								 * - attributes: Remaining HTML attributes for the element.
							 | 
						||
| 
								 | 
							
								 *   - class: HTML classes that can be used to style contextually through CSS.
							 | 
						||
| 
								 | 
							
								 * - title : The title of this group of rows.
							 | 
						||
| 
								 | 
							
								 * - header: The table header columns.
							 | 
						||
| 
								 | 
							
								 *   - attributes: Remaining HTML attributes for the element.
							 | 
						||
| 
								 | 
							
								 *   - content: HTML classes to apply to each header cell, indexed by
							 | 
						||
| 
								 | 
							
								 *   the header's key.
							 | 
						||
| 
								 | 
							
								 *   - default_classes: A flag indicating whether default classes should be
							 | 
						||
| 
								 | 
							
								 *     used.
							 | 
						||
| 
								 | 
							
								 * - caption_needed: Is the caption tag needed.
							 | 
						||
| 
								 | 
							
								 * - caption: The caption for this table.
							 | 
						||
| 
								 | 
							
								 * - accessibility_description: Extended description for the table details.
							 | 
						||
| 
								 | 
							
								 * - accessibility_summary: Summary for the table details.
							 | 
						||
| 
								 | 
							
								 * - rows: Table row items. Rows are keyed by row number.
							 | 
						||
| 
								 | 
							
								 *   - attributes: HTML classes to apply to each row.
							 | 
						||
| 
								 | 
							
								 *   - columns: Row column items. Columns are keyed by column number.
							 | 
						||
| 
								 | 
							
								 *     - attributes: HTML classes to apply to each column.
							 | 
						||
| 
								 | 
							
								 *     - content: The column content.
							 | 
						||
| 
								 | 
							
								 *   - default_classes: A flag indicating whether default classes should be
							 | 
						||
| 
								 | 
							
								 *     used.
							 | 
						||
| 
								 | 
							
								 * - responsive: A flag indicating whether table is responsive.
							 | 
						||
| 
								 | 
							
								 * - sticky: A flag indicating whether table header is sticky.
							 | 
						||
| 
								 | 
							
								 * - summary_element: A render array with table summary information (if any).
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * @see template_preprocess_views_view_table()
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * @ingroup themeable
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								#}
							 | 
						||
| 
								 | 
							
								{%
							 | 
						||
| 
								 | 
							
								  set classes = [
							 | 
						||
| 
								 | 
							
								    'cols-' ~ header|length,
							 | 
						||
| 
								 | 
							
								    responsive ? 'responsive-enabled',
							 | 
						||
| 
								 | 
							
								    sticky ? 'sticky-header',
							 | 
						||
| 
								 | 
							
								  ]
							 | 
						||
| 
								 | 
							
								%}
							 | 
						||
| 
								 | 
							
								<table{{ attributes.addClass(classes) }}>
							 | 
						||
| 
								 | 
							
								  {% if caption_needed %}
							 | 
						||
| 
								 | 
							
								    <caption>
							 | 
						||
| 
								 | 
							
								    {% if caption %}
							 | 
						||
| 
								 | 
							
								      {{ caption }}
							 | 
						||
| 
								 | 
							
								    {% else %}
							 | 
						||
| 
								 | 
							
								      {{ title }}
							 | 
						||
| 
								 | 
							
								    {% endif %}
							 | 
						||
| 
								 | 
							
								    {% if (summary_element is not empty) %}
							 | 
						||
| 
								 | 
							
								      {{ summary_element }}
							 | 
						||
| 
								 | 
							
								    {% endif %}
							 | 
						||
| 
								 | 
							
								    </caption>
							 | 
						||
| 
								 | 
							
								  {% endif %}
							 | 
						||
| 
								 | 
							
								  {% if header %}
							 | 
						||
| 
								 | 
							
								    <thead>
							 | 
						||
| 
								 | 
							
								      <tr>
							 | 
						||
| 
								 | 
							
								        {% for key, column in header %}
							 | 
						||
| 
								 | 
							
								          {% if column.default_classes %}
							 | 
						||
| 
								 | 
							
								            {%
							 | 
						||
| 
								 | 
							
								              set column_classes = [
							 | 
						||
| 
								 | 
							
								                'views-field',
							 | 
						||
| 
								 | 
							
								                'views-field-' ~ fields[key],
							 | 
						||
| 
								 | 
							
								              ]
							 | 
						||
| 
								 | 
							
								            %}
							 | 
						||
| 
								 | 
							
								          {% endif %}
							 | 
						||
| 
								 | 
							
								          <th{{ column.attributes.addClass(column_classes).setAttribute('scope', 'col') }}>
							 | 
						||
| 
								 | 
							
								            {%- if column.wrapper_element -%}
							 | 
						||
| 
								 | 
							
								              <{{ column.wrapper_element }}>
							 | 
						||
| 
								 | 
							
								                {%- if column.url -%}
							 | 
						||
| 
								 | 
							
								                  <a href="{{ column.url }}" title="{{ column.title }}" rel="nofollow">{{ column.content }}{{ column.sort_indicator }}</a>
							 | 
						||
| 
								 | 
							
								                {%- else -%}
							 | 
						||
| 
								 | 
							
								                  {{ column.content }}{{ column.sort_indicator }}
							 | 
						||
| 
								 | 
							
								                {%- endif -%}
							 | 
						||
| 
								 | 
							
								              </{{ column.wrapper_element }}>
							 | 
						||
| 
								 | 
							
								            {%- else -%}
							 | 
						||
| 
								 | 
							
								              {%- if column.url -%}
							 | 
						||
| 
								 | 
							
								                <a href="{{ column.url }}" title="{{ column.title }}" rel="nofollow">{{ column.content }}{{ column.sort_indicator }}</a>
							 | 
						||
| 
								 | 
							
								              {%- else -%}
							 | 
						||
| 
								 | 
							
								                {{- column.content }}{{ column.sort_indicator }}
							 | 
						||
| 
								 | 
							
								              {%- endif -%}
							 | 
						||
| 
								 | 
							
								            {%- endif -%}
							 | 
						||
| 
								 | 
							
								          </th>
							 | 
						||
| 
								 | 
							
								        {% endfor %}
							 | 
						||
| 
								 | 
							
								      </tr>
							 | 
						||
| 
								 | 
							
								    </thead>
							 | 
						||
| 
								 | 
							
								  {% endif %}
							 | 
						||
| 
								 | 
							
								  <tbody>
							 | 
						||
| 
								 | 
							
								    {% for row in rows %}
							 | 
						||
| 
								 | 
							
								      <tr{{ row.attributes }}>
							 | 
						||
| 
								 | 
							
								        {% for key, column in row.columns %}
							 | 
						||
| 
								 | 
							
								          {% if column.default_classes %}
							 | 
						||
| 
								 | 
							
								            {%
							 | 
						||
| 
								 | 
							
								              set column_classes = [
							 | 
						||
| 
								 | 
							
								                'views-field'
							 | 
						||
| 
								 | 
							
								              ]
							 | 
						||
| 
								 | 
							
								            %}
							 | 
						||
| 
								 | 
							
								            {% for field in column.fields %}
							 | 
						||
| 
								 | 
							
								              {% set column_classes = column_classes|merge(['views-field-' ~ field]) %}
							 | 
						||
| 
								 | 
							
								            {% endfor %}
							 | 
						||
| 
								 | 
							
								          {% endif %}
							 | 
						||
| 
								 | 
							
								          <td{{ column.attributes.addClass(column_classes) }}>
							 | 
						||
| 
								 | 
							
								            {%- if column.wrapper_element -%}
							 | 
						||
| 
								 | 
							
								              <{{ column.wrapper_element }}>
							 | 
						||
| 
								 | 
							
								              {% for content in column.content %}
							 | 
						||
| 
								 | 
							
								                {{ content.separator }}{{ content.field_output }}
							 | 
						||
| 
								 | 
							
								              {% endfor %}
							 | 
						||
| 
								 | 
							
								              </{{ column.wrapper_element }}>
							 | 
						||
| 
								 | 
							
								            {%- else -%}
							 | 
						||
| 
								 | 
							
								              {% for content in column.content %}
							 | 
						||
| 
								 | 
							
								                {{- content.separator }}{{ content.field_output -}}
							 | 
						||
| 
								 | 
							
								              {% endfor %}
							 | 
						||
| 
								 | 
							
								            {%- endif %}
							 | 
						||
| 
								 | 
							
								          </td>
							 | 
						||
| 
								 | 
							
								        {% endfor %}
							 | 
						||
| 
								 | 
							
								      </tr>
							 | 
						||
| 
								 | 
							
								    {% endfor %}
							 | 
						||
| 
								 | 
							
								  </tbody>
							 | 
						||
| 
								 | 
							
								</table>
							 |