Move into nested docroot

This commit is contained in:
Rob Davies 2017-02-13 15:31:17 +00:00
parent 83a0d3a149
commit c8b70abde9
13405 changed files with 0 additions and 0 deletions

View file

@ -0,0 +1,32 @@
{#
/**
* @file
* Theme override for the content of an administrative block.
*
* Available variables:
* - content: A list containing information about the block. Each element
* of the array represents an administrative menu item, and must at least
* contain the keys 'title', 'link_path', and 'localized_options', which are
* passed to l(). A 'description' key may also be provided.
* - attributes: HTML attributes to be added to the element.
* - compact: Boolean indicating whether compact mode is turned on or not.
*
* @see template_preprocess_admin_block_content()
*/
#}
{%
set classes = [
'list-group',
compact ? 'compact',
]
%}
{% if content %}
<dl{{ attributes.addClass(classes) }}>
{% for item in content %}
<dt class="list-group__link">{{ item.link }}</dt>
{% if item.description %}
<dd class="list-group__description">{{ item.description }}</dd>
{% endif %}
{% endfor %}
</dl>
{% endif %}

View file

@ -0,0 +1,24 @@
{#
/**
* @file
* Theme override for an administrative block.
*
* Available variables:
* - block: An array of information about the block, including:
* - show: A flag indicating if the block should be displayed.
* - title: The block title.
* - content: (optional) The content of the block.
* - description: (optional) A description of the block.
* (Description should only be output if content is not available).
*/
#}
<div class="panel">
{% if block.title %}
<h3 class="panel__title">{{ block.title }}</h3>
{% endif %}
{% if block.content %}
<div class="panel__content">{{ block.content }}</div>
{% elseif block.description %}
<div class="panel__description">{{ block.description }}</div>
{% endif %}
</div>

View file

@ -0,0 +1,25 @@
{#
/**
* @file
* Theme override for an administrative page.
*
* Available variables:
* - system_compact_link: Themed link to toggle compact view.
* - containers: An list of administrative blocks keyed by position: left or
* right. Contains:
* - blocks: A list of blocks within a container.
*
* @see template_preprocess_admin_page()
*/
#}
<div class="clearfix">
{{ system_compact_link }}
{% for container in containers %}
<div class="layout-column layout-column--half">
{% for block in container.blocks %}
{{ block }}
{% endfor %}
</div>
{% endfor %}
</div>

View file

@ -0,0 +1,21 @@
{#
/**
* @file
* Theme override for authorize.php operation report templates.
*
* This report displays the results of an operation run via authorize.php.
*
* Available variables:
* - messages: A list of result messages.
* - attributes: HTML attributes for the element.
*
* @see template_preprocess_authorize_report()
*/
#}
{% if messages %}
<div{{ attributes.addClass('authorize-results') }}>
{% for message_group in messages %}
{{ message_group }}
{% endfor %}
</div>
{% endif %}

View file

@ -0,0 +1,22 @@
{#
/**
* @file
* Theme override to present a list of custom block types.
*
* Available variables:
* - types: A collection of all the available custom block types.
* Each block type contains the following:
* - link: A link to add a block of this type.
* - description: A description of this custom block type.
*
* @see template_preprocess_block_content_add_list()
*/
#}
{% spaceless %}
<dl>
{% for type in types %}
<dt>{{ type.link }}</dt>
<dd>{{ type.description }}</dd>
{% endfor %}
</dl>
{% endspaceless %}

View file

@ -0,0 +1,73 @@
{#
/**
* @file
* Theme override for the CKEditor settings toolbar.
*
* Available variables:
* - multiple_buttons: A list of buttons that may be added multiple times.
* - disabled_buttons: A list of disabled buttons.
* - active_buttons: A list of active button rows.
*
* @see template_preprocess_ckeditor_settings_toolbar()
*/
#}
{% spaceless %}
<fieldset role="form" aria-labelledby="ckeditor-button-configuration ckeditor-button-description">
<legend id="ckeditor-button-configuration">{{ 'Toolbar configuration'|t }}</legend>
<div class="fieldset-wrapper">
<div id="ckeditor-button-description" class="fieldset-description">
{%- trans -%}
Move a button into the <em>Active toolbar</em> to enable it, or into the list of <em>Available buttons</em> to disable it. Buttons may be moved with the mouse or keyboard arrow keys. Toolbar group names are provided to support screen reader users. Empty toolbar groups will be removed upon save.
{%- endtrans -%}
</div>
<div class="ckeditor-toolbar-disabled clearfix">
{# Available buttons. #}
<div class="ckeditor-toolbar-available">
<label for="ckeditor-available-buttons">{{ 'Available buttons'|t }}</label>
<ul id="ckeditor-available-buttons" class="ckeditor-buttons clearfix" role="form" data-drupal-ckeditor-button-sorting="source">
{% for disabled_button in disabled_buttons %}
<li{{ disabled_button.attributes.addClass('ckeditor-button') }}>{{ disabled_button.value }}</li>
{% endfor %}
</ul>
</div>
{# Dividers. #}
<div class="ckeditor-toolbar-dividers">
<label for="ckeditor-multiple-buttons">{{ 'Button divider'|t }}</label>
<ul id="ckeditor-multiple-buttons" class="ckeditor-multiple-buttons" role="form" data-drupal-ckeditor-button-sorting="dividers">
{% for multiple_button in multiple_buttons %}
<li{{ multiple_button.attributes.addClass('ckeditor-multiple-button') }}>{{ multiple_button.value }}</li>
{% endfor %}
</ul>
</div>
</div>
{# Active toolbar. #}
<div class="clearfix">
<label id="ckeditor-active-toolbar">{{ 'Active toolbar'|t }}</label>
</div>
<div data-toolbar="active" role="form" class="ckeditor-toolbar ckeditor-toolbar-active clearfix">
<ul class="ckeditor-active-toolbar-configuration" role="presentation" aria-label="{{ 'CKEditor toolbar and button configuration.'|t }}">
{% for button_row in active_buttons %}
<li class="ckeditor-row" role="group" aria-labelledby="ckeditor-active-toolbar">
<ul class="ckeditor-toolbar-groups clearfix">
{% for group_name, button_group in button_row %}
<li class="ckeditor-toolbar-group" role="presentation" data-drupal-ckeditor-type="group" data-drupal-ckeditor-toolbar-group-name="{{ group_name }}" tabindex="0">
<h3 class="ckeditor-toolbar-group-name" id="ckeditor-toolbar-group-aria-label-for-{{ button_group.group_name_class }}">{{ group_name }}</h3>
<ul class="ckeditor-buttons ckeditor-toolbar-group-buttons" role="toolbar" data-drupal-ckeditor-button-sorting="target" aria-labelledby="ckeditor-toolbar-group-aria-label-for-{{ button_group.group_name_class }}">
{% for active_button in button_group.buttons %}
<li{{ active_button.attributes.addClass(active_button.multiple ? 'ckeditor-multiple-button' : 'ckeditor-button') }}>{{ active_button.value }}</li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>
</li>
{% else %}
<li>
<ul class="ckeditor-buttons"></ul>
</li>
{% endfor %}
</ul>
</div>
</div>
</fieldset>
{% endspaceless %}

View file

@ -0,0 +1,24 @@
{#
/**
* @file
* Theme override for a theme's color form.
*
* Available variables:
* - form: Form elements for the color scheme form, including:
* - scheme: A color scheme form element. For example: a select element with
* color theme presets, or a color picker widget.
* - palette: Color fields that can be changed by entering in a new hex value.
* - html_preview: A HTML preview of the theme's current color scheme.
*
* @see template_preprocess_color_scheme_form()
*/
#}
<div class="color-form clearfix">
{{ form.scheme }}
<div class="clearfix color-palette js-color-palette">
{{ form.palette }}
</div>
{{ form|without('scheme', 'palette') }}
<h2>{{ 'Preview'|t }}</h2>
{{ html_preview }}
</div>

View file

@ -0,0 +1,21 @@
{#
/**
* @file
* Theme override for a form element in config_translation.
*
* Available variables:
* - element: Array that represents the element shown in the form.
* - source: The source of the translation.
* - translation: The translation for the target language.
*
* @see template_preprocess()
*/
#}
<div class="translation-set clearfix">
<div class="layout-column layout-column--half translation-set__source">
{{ element.source }}
</div>
<div class="layout-column layout-column--half translation-set__translated">
{{ element.translation }}
</div>
</div>

View file

@ -0,0 +1,45 @@
{#
/**
* @file
* Theme override to display a Field UI table.
*
* Available variables:
* - attributes: HTML attributes to apply to the <table> tag.
* - caption: A localized string for the <caption> tag.
* - colgroups: Column groups. Each group contains the following properties:
* - attributes: HTML attributes to apply to the <col> tag.
* Note: Drupal currently supports only one table header row, see
* https://www.drupal.org/node/893530 and
* http://api.drupal.org/api/drupal/includes!theme.inc/function/theme_table/7#comment-5109.
* - header: Table header cells. Each cell contains the following properties:
* - tag: The HTML tag name to use; either 'th' or 'td'.
* - attributes: HTML attributes to apply to the tag.
* - content: A localized string for the title of the column.
* - field: Field name (required for column sorting).
* - sort: Default sort order for this column ("asc" or "desc").
* - sticky: A flag indicating whether to use a "sticky" table header.
* - rows: Table rows. Each row contains the following properties:
* - attributes: HTML attributes to apply to the <tr> tag.
* - data: Table cells.
* - no_striping: A flag indicating that the row should receive no
* 'even / odd' styling. Defaults to FALSE.
* - cells: Table cells of the row. Each cell contains the following keys:
* - tag: The HTML tag name to use; either 'th' or 'td'.
* - attributes: Any HTML attributes, such as "colspan", to apply to the
* table cell.
* - content: The string to display in the table cell.
* - active_table_sort: A boolean indicating whether the cell is the active
table sort.
* - footer: Table footer rows, in the same format as the rows variable.
* - empty: The message to display in an extra row if table does not have
* any rows.
* - no_striping: A boolean indicating that the row should receive no striping.
* - header_columns: The number of columns in the header.
*
* @see template_preprocess_field_ui_table()
*/
#}
{# Add Ajax wrapper. #}
<div id="field-display-overview-wrapper">
{% include 'table.html.twig' %}
</div>

View file

@ -0,0 +1,23 @@
{#
/**
* @file
* Theme override for a section of the help page.
*
* Available variables:
* - title: The section title.
* - description: The description text for the section.
* - links: Links to display in the section.
* - empty: Text to display if there are no links.
*/
#}
<h2>{{ title }}</h2>
<p>{{ description }}</p>
{% if links %}
<ul>
{% for link in links %}
<li>{{ link }}</li>
{% endfor %}
</ul>
{% else %}
<p>{{ empty }}</p>
{% endif %}

View file

@ -0,0 +1,12 @@
{#
/**
* @file
* Theme override for a 3x3 grid of checkboxes for image anchors.
*
* Available variables:
* - table: HTML for the table of image anchors.
*
* @see template_preprocess_image_anchor()
*/
#}
{{ table }}

View file

@ -0,0 +1,30 @@
{#
/**
* @file
* Theme override for a summary of an image crop effect.
*
* Available variables:
* - data: The current configuration for this resize effect, including:
* - width: The width of the resized image.
* - height: The height of the resized image.
* - anchor: The part of the image that will be retained after cropping.
* - anchor_label: The translated label of the crop anchor.
* - effect: The effect information, including:
* - id: The effect identifier.
* - label: The effect name.
* - description: The effect description.
*/
#}
{% if data.width and data.height -%}
{{ data.width }}×{{ data.height }}
{%- else -%}
{% if data.width %}
{% trans %}
width {{ data.width }}
{% endtrans %}
{% elseif data.height %}
{% trans %}
height {{ data.height }}
{% endtrans %}
{% endif %}
{%- endif %}

View file

@ -0,0 +1,28 @@
{#
/**
* @file
* Theme override for a summary of an image resize effect.
*
* Available variables:
* - data: The current configuration for this resize effect, including:
* - width: The width of the resized image.
* - height: The height of the resized image.
* - effect: The effect information, including:
* - id: The effect identifier.
* - label: The effect name.
* - description: The effect description.
*/
#}
{% if data.width and data.height -%}
{{ data.width }}×{{ data.height }}
{%- else -%}
{% if data.width %}
{% trans %}
width {{ data.width }}
{% endtrans %}
{% elseif data.height %}
{% trans %}
height {{ data.height }}
{% endtrans %}
{% endif %}
{%- endif %}

View file

@ -0,0 +1,26 @@
{#
/**
* @file
* Theme override for a summary of an image rotate effect.
*
* Available variables:
* - data: The current configuration for this resize effect, including:
* - degrees: Degrees to rotate the image, positive values will rotate the
* image clockwise, negative values counter-clockwise.
* - bgcolor: The hex background color of the new areas created as consequence
* of rotation.
* - random: If the rotation angle is randomized.
* - effect: The effect information, including:
* - id: The effect identifier.
* - label: The effect name.
* - description: The effect description.
*/
#}
{% if data.random %}
{% set degrees = data.degrees|abs %}
{% trans %}
random between -{{ degrees }}° and {{ degrees }}°
{% endtrans %}
{% else %}
{{ data.degrees }}°
{% endif %}

View file

@ -0,0 +1,35 @@
{#
/**
* @file
* Theme override for a summary of an image scale effect.
*
* Available variables:
* - data: The current configuration for this resize effect, including:
* - width: The width of the resized image.
* - height: The height of the resized image.
* - upscale: If images larger than their original size can scale.
* - effect: The effect information, including:
* - id: The effect identifier.
* - label: The effect name.
* - description: The effect description.
*/
#}
{% if data.width and data.height -%}
{{ data.width }}×{{ data.height }}
{%- else -%}
{% if data.width %}
{% trans %}
width {{ data.width }}
{% endtrans %}
{% elseif data.height %}
{% trans %}
height {{ data.height }}
{% endtrans %}
{% endif %}
{%- endif %}
{% if data.upscale %}
{% trans %}
(upscaling allowed)
{% endtrans %}
{% endif %}

View file

@ -0,0 +1,55 @@
{#
/**
* @file
* Theme override to display a preview of an image style.
*
* Available variables:
* - style_id: The ID of the image style.
* - style_name: The name of the image style.
* - cache_bypass: A timestamp token used to avoid browser caching of images.
* - original: An associative array containing:
* - url: The URL of the original image.
* - width: The width in pixels of the original image.
* - height: The height in pixels of the original image.
* - rendered: The render array for the original image.
* - derivative: An associative array containing:
* - url: The URL of the derivative image.
* - width: The width in pixels of the derivative image.
* - height: The height in pixels of the derivative image.
* - rendered: The rendered derivative image.
* - preview: An associative array containing:
* - original: An associative array containing:
* - width: The width in pixels of the original image in the preview.
* - height: The height in pixels of the original image in the preview.
* - derivative: An associative array containing:
* - width: The width in pixels of the derivative image in the preview.
* - height: The height in pixels of the derivative image in the preview.
*
* @see template_preprocess_image_style_preview()
*/
#}
<div class="image-style-preview preview clearfix">
{# Preview of the original image. #}
<div class="preview-image-wrapper">
{{ 'original'|t }} (<a href="{{ original.url }}">{{ 'view actual size'|t }}</a>)
<div class="preview-image original-image" style="width: {{ preview.original.width }}px; height: {{ preview.original.height }}px;">
<a href="{{ original.url }}">
{{ original.rendered }}
</a>
<div class="height" style="height: {{ preview.original.height }}px"><span>{{ original.height }}px</span></div>
<div class="width" style="width: {{ preview.original.width }}px"><span>{{ original.width }}px</span></div>
</div>
</div>
{# Derivative of the image style. #}
<div class="preview-image-wrapper">
{{ style_name }} (<a href="{{ derivative.url }}?{{ cache_bypass }}">{{ 'view actual size'|t }}</a>)
<div class="preview-image modified-image" style="width: {{ preview.derivative.width }}px; height: {{ preview.derivative.height }}px;">
<a href="{{ derivative.url }}?{{ cache_bypass }}">
{{ derivative.rendered }}
</a>
<div class="height" style="height: {{ preview.derivative.height }}px"><span>{{ derivative.height }}px</span></div>
<div class="width" style="width: {{ preview.derivative.width }}px"><span>{{ derivative.width }}px</span></div>
</div>
</div>
</div>

View file

@ -0,0 +1,12 @@
{#
/**
* @file
* Theme override for a set of indentation divs.
*
* These <div> tags are used for drag and drop tables.
*
* Available variables:
* - size: Optional. The number of indentations to create.
*/
#}
{% for i in 1..size if size > 0 %}<div class="js-indentation indentation">&nbsp;</div>{% endfor %}

View file

@ -0,0 +1,14 @@
{#
/**
* @file
* Theme override to display a language content settings table.
*
* Available variables:
* - title: The title of the table.
* - build: Table of content language settings.
*
* @see template_preprocess_language_content_settings_table()
*/
#}
<h4>{{ title }}</h4>
{{ build }}

View file

@ -0,0 +1,38 @@
{#
/**
* @file
* Theme override for a language negotiation configuration form.
*
* Available variables:
* - language_types: A list of language negotiation types. Each language type
* contains the following:
* - type: The machine name for the negotiation type.
* - title: The language negotiation type name.
* - description: A description for how the language negotiation type operates.
* - configurable: A radio element to toggle the table.
* - table: A draggable table for the language detection methods of this type.
* - children: Remaining form items for the group.
* - attributes: A list of HTML attributes for the wrapper element.
* - children: Remaining form items for all groups.
*
* @see template_preprocess_language_negotiation_configure_form()
*/
#}
{% for language_type in language_types %}
{%
set language_classes = [
'js-form-item',
'form-item',
'table-language-group',
'table-' ~ language_type.type ~ '-wrapper',
]
%}
<div{{ language_type.attributes.addClass(language_classes) }}>
<h2>{{ language_type.title }}</h2>
<div class="description">{{ language_type.description }}</div>
{{ language_type.configurable }}
{{ language_type.table }}
{{ language_type.children }}
</div>
{% endfor %}
{{ children }}

View file

@ -0,0 +1,23 @@
{#
/**
* @file
* Theme override for the last time we checked for update data.
*
* Available variables:
* - last_checked: Whether or not locale updates have been checked before.
* - time: The formatted time ago when the site last checked for available
* updates.
* - link: A link to manually check available updates.
*
* @see template_preprocess_locale_translation_last_check()
*/
#}
<div class="locale checked">
<p>
{% if last_checked %}
{% trans %} Last checked: {{ time }} ago {% endtrans %}
{% else %}
{{ 'Last checked: never'|t }}
{% endif %}
<span class="check-manually">({{ link }})</span></p>
</div>

View file

@ -0,0 +1,57 @@
{#
/**
* @file
* Theme override for displaying translation status information.
*
* Displays translation status information per language.
*
* Available variables:
* - modules: A list of modules names that have available translation updates.
* - updates: A list of available translation updates.
* - not_found: A list of modules missing translation updates.
*
* @see template_preprocess_locale_translation_update_info()
*/
#}
<div class="locale-translation-update__wrapper" tabindex="0" role="button">
<span class="locale-translation-update__prefix visually-hidden">Show description</span>
{% if modules %}
{% set module_list = modules|safe_join(', ') %}
<span class="locale-translation-update__message">{% trans %}Updates for: {{ module_list }}{% endtrans %}</span>
{% elseif not_found %}
<span class="locale-translation-update__message">
{%- trans -%}
Missing translations for one project
{%- plural not_found|length -%}
Missing translations for @count projects
{%- endtrans -%}
</span>
{% endif %}
{% if updates or not_found %}
<div class="locale-translation-update__details">
{% if updates %}
<ul>
{% for update in updates %}
<li>{{ update.name }} ({{ update.timestamp|format_date('html_date') }})</li>
{% endfor %}
</ul>
{% endif %}
{% if not_found %}
{#
Prefix the missing updates list if there is an available updates lists
before it.
#}
{% if updates %}
{{ 'Missing translations for:'|t }}
{% endif %}
{% if not_found %}
<ul>
{% for update in not_found %}
<li>{{ update.name }} ({{ update.version|default('no version'|t) }}). {{ update.info }}</li>
{% endfor %}
</ul>
{% endif %}
{% endif %}
</div>
{% endif %}
</div>

View file

@ -0,0 +1,23 @@
{#
/**
* @file
* Theme override for a list of maintenance tasks to perform.
*
* Available variables:
* - tasks: A list of maintenance tasks to perform. Each item in the list has
* the following variables:
* - item: The maintenance task.
* - attributes: HTML attributes for the maintenance task.
* - status: (optional) Text describing the status of the maintenance task,
* 'active' or 'done'.
*/
#}
<h2 class="visually-hidden">{{ 'Installation tasks'|t }}</h2>
<ol class="task-list">
{% for task in tasks %}
<li{{ task.attributes }}>
{{ task.item }}
{% if task.status %}<span class="visually-hidden"> ({{ task.status }})</span>{% endif %}
</li>
{% endfor %}
</ol>

View file

@ -0,0 +1,20 @@
{#
/**
* @file
* Theme override for simpletest result summaries.
*
* Available variables:
* - label: An optional label to be rendered before the results.
* - items: Pluralized summaries for each result type (number of passes, fails,
* exceptions, and debug messages).
* - pass: The number of passes.
* - fail: The number of fails.
* - exception: The number of exceptions.
* - debug: The number of debug messages.
*
* @see template_preprocess_simpletest_result_summary()
*/
#}
<div class="simpletest-{{ fail + exception == 0 ? 'pass' : 'fail' }}">
{{ label }} {{ items|join(', ') }}
</div>

View file

@ -0,0 +1,39 @@
{#
/**
* @file
* Theme override for the status report.
*
* Available variables:
* - requirements: Contains multiple requirement instances.
* Each requirement contains:
* - title: The title of the requirement.
* - value: (optional) The requirement's status.
* - description: (optional) The requirement's description.
* - severity_title: The title of the severity.
* - severity_status: Indicates the severity status.
*
* @see template_preprocess_status_report()
*/
#}
<table class="system-status-report">
<tbody>
{% for requirement in requirements %}
<tr class="system-status-report__entry system-status-report__entry--{{ requirement.severity_status }} color-{{ requirement.severity_status }}">
{% if requirement.severity_status in ['warning', 'error'] %}
<th class="system-status-report__status-title system-status-report__status-icon system-status-report__status-icon--{{ requirement.severity_status }}">
<span class="visually-hidden">{{ requirement.severity_title }}</span>
{% else %}
<th class="system-status-report__status-title">
{% endif %}
{{ requirement.title }}
</th>
<td>
{{ requirement.value }}
{% if requirement.description %}
<div class="description">{{ requirement.description }}</div>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>

View file

@ -0,0 +1,25 @@
{#
/**
* @file
* Theme override for the admin index page.
*
* Available variables:
* - system_compact_link: Themed link to toggle compact view.
* - containers: A list of administrative containers keyed by position: left or
* right. Each container in the list contains:
* - blocks: A list of administrative blocks, rendered
* through admin-block.html.twig.
*
* @see template_preprocess_system_admin_index()
*/
#}
<div class="admin clearfix">
{{ system_compact_link }}
{% for position, blocks in containers %}
<div class="{{ position }} clearfix">
{% for block in blocks %}
{{ block }}
{% endfor %}
</div>
{% endfor %}
</div>

View file

@ -0,0 +1,15 @@
{#
/**
* @file
* Theme override for a system settings form.
*
* This template will be used when a system config form specifies 'config_form'
* as its #theme callback. Otherwise, by default, system config forms will be
* themed by form.html.twig. This does not alter the appearance of a form at all,
* but is provided as a convenience for themers.
*
* Available variables:
* - form: The confirm form.
*/
#}
{{ form }}

View file

@ -0,0 +1,74 @@
{#
/**
* @file
* Theme override for the modules listing page.
*
* Displays a list of all packages in a project.
*
* Available variables:
* - modules: Contains multiple module instances. Each module contains:
* - attributes: Attributes on the row.
* - checkbox: A checkbox for enabling the module.
* - name: The human-readable name of the module.
* - id: A unique identifier for interacting with the details element.
* - enable_id: A unique identifier for interacting with the checkbox element.
* - description: The description of the module.
* - machine_name: The module's machine name.
* - version: Information about the module version.
* - requires: A list of modules that this module requires.
* - required_by: A list of modules that require this module.
* - links: A list of administration links provided by the module.
*
* @see template_preprocess_system_modules_details()
*/
#}
<table class="responsive-enabled" data-striping="1">
<thead>
<tr>
<th class="checkbox visually-hidden">{{ 'Installed'|t }}</th>
<th class="name visually-hidden">{{ 'Name'|t }}</th>
<th class="description visually-hidden priority-low">{{ 'Description'|t }}</th>
</tr>
</thead>
<tbody>
{% for module in modules %}
{% set zebra = cycle(['odd', 'even'], loop.index0) %}
<tr{{ module.attributes.addClass(zebra) }}>
<td class="checkbox">
{{ module.checkbox }}
</td>
<td class="module">
<label id="{{ module.id }}" for="{{ module.enable_id }}" class="module-name table-filter-text-source">{{ module.name }}</label>
</td>
<td class="description expand priority-low">
<details class="js-form-wrapper form-wrapper" id="{{ module.enable_id }}-description">
<summary aria-controls="{{ module.enable_id }}-description" role="button" aria-expanded="false"><span class="text module-description">{{ module.description }}</span></summary>
<div class="details-wrapper">
<div class="details-description">
<div class="requirements">
<div class="admin-requirements">{{ 'Machine name: <span dir="ltr" class="table-filter-text-source">@machine-name</span>'|t({'@machine-name': module.machine_name }) }}</div>
{% if module.version %}
<div class="admin-requirements">{{ 'Version: @module-version'|t({'@module-version': module.version }) }}</div>
{% endif %}
{% if module.requires %}
<div class="admin-requirements">{{ 'Requires: @module-list'|t({'@module-list': module.requires }) }}</div>
{% endif %}
{% if module.required_by %}
<div class="admin-requirements">{{ 'Required by: @module-list'|t({'@module-list': module.required_by }) }}</div>
{% endif %}
</div>
{% if module.links %}
<div class="links">
{% for link_type in ['help', 'permissions', 'configure'] %}
{{ module.links[link_type] }}
{% endfor %}
</div>
{% endif %}
</div>
</div>
</details>
</td>
</tr>
{% endfor %}
</tbody>
</table>

View file

@ -0,0 +1,73 @@
{#
/**
* @file
* Theme override for the modules uninstall page.
*
* Available variables:
* - form: The modules uninstall form.
* - modules: Contains multiple module instances. Each module contains:
* - attributes: Attributes on the row.
* - module_name: The name of the module.
* - checkbox: A checkbox for uninstalling the module.
* - checkbox_id: A unique identifier for interacting with the checkbox
* element.
* - name: The human-readable name of the module.
* - description: The description of the module.
* - disabled_reasons: (optional) A list of reasons why this module cannot be
* uninstalled.
*
* @see template_preprocess_system_modules_uninstall()
*/
#}
{{ form.filters }}
<table class="responsive-enabled" data-striping="1">
<thead>
<tr>
<th>{{ 'Uninstall'|t }}</th>
<th>{{ 'Name'|t }}</th>
<th>{{ 'Description'|t }}</th>
</tr>
</thead>
<tbody>
{% for module in modules %}
{% set zebra = cycle(['odd', 'even'], loop.index0) -%}
<tr{{ module.attributes.addClass(zebra) }}>
<td align="center">
{{- module.checkbox -}}
</td>
<td>
<label for="{{ module.checkbox_id }}" class="module-name table-filter-text-source">{{ module.name }}</label>
</td>
<td class="description">
<span class="text module-description">{{ module.description }}</span>
{% if module.reasons_count > 0 %}
<div class="admin-requirements">
{%- trans -%}
The following reason prevents {{ module.module_name }} from being uninstalled:
{%- plural module.reasons_count -%}
The following reasons prevent {{ module.module_name }} from being uninstalled:
{%- endtrans %}
<div class="item-list">
<ul>
{%- for reason in module.validation_reasons -%}
<li>{{ reason }}</li>
{%- endfor -%}
{%- if module.required_by -%}
<li>{{ 'Required by: @module-list'|t({'@module-list': module.required_by|safe_join(', ') }) }}</li>
{%- endif -%}
</ul>
</div>
</div>
{% endif %}
</td>
</tr>
{% else %}
<tr class="odd">
<td colspan="3" class="empty message">{{ 'No modules are available to uninstall.'|t }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{{ form|without('filters', 'modules', 'uninstall') }}

View file

@ -0,0 +1,74 @@
{#
/**
* @file
* Theme override for the Appearance page.
*
* Available variables:
* - attributes: HTML attributes for the main container.
* - theme_groups: A list of theme groups. Each theme group contains:
* - attributes: HTML attributes specific to this theme group.
* - title: Title for the theme group.
* - state: State of the theme group, e.g. installed or uninstalled.
* - themes: A list of themes within the theme group. Each theme contains:
* - attributes: HTML attributes specific to this theme.
* - screenshot: A screenshot representing the theme.
* - description: Description of the theme.
* - name: Theme name.
* - version: The theme's version number.
* - is_default: Boolean indicating whether the theme is the default theme
* or not.
* - is_admin: Boolean indicating whether the theme is the admin theme or
* not.
* - notes: Identifies what context this theme is being used in, e.g.,
* default theme, admin theme.
* - incompatible: Text describing any compatibility issues.
* - operations: A list of operation links, e.g., Settings, Enable, Disable,
* etc. these links should only be displayed if the theme is compatible.
*
* @see template_preprocess_system_themes_page()
*/
#}
<div{{ attributes }}>
{% for theme_group in theme_groups %}
{%
set theme_group_classes = [
'system-themes-list',
'system-themes-list-' ~ theme_group.state,
'clearfix',
]
%}
<div{{ theme_group.attributes.addClass(theme_group_classes) }}>
<h2 class="system-themes-list__header">{{ theme_group.title }}</h2>
{% for theme in theme_group.themes %}
{%
set theme_classes = [
theme.is_default ? 'theme-default',
theme.is_admin ? 'theme-admin',
'theme-selector',
'clearfix',
]
%}
<div{{ theme.attributes.addClass(theme_classes) }}>
{% if theme.screenshot %}
{{ theme.screenshot }}
{% endif %}
<div class="theme-info">
<h3 class="theme-info__header">
{{- theme.name }} {{ theme.version -}}
{% if theme.notes %}
({{ theme.notes|safe_join(', ') }})
{%- endif -%}
</h3>
<div class="theme-info__description">{{ theme.description }}</div>
{# Display operation links if the theme is compatible. #}
{% if theme.incompatible %}
<div class="incompatible">{{ theme.incompatible }}</div>
{% else %}
{{ theme.operations }}
{% endif %}
</div>
</div>
{% endfor %}
</div>
{% endfor %}
</div>

View file

@ -0,0 +1,24 @@
{#
/**
* @file
* Theme override for displaying a tablesort indicator.
*
* Available variables:
* - style: Either 'asc' or 'desc', indicating the sorting direction.
*/
#}
{%
set classes = [
'tablesort',
'tablesort--' ~ style,
]
%}
<span{{ attributes.addClass(classes) }}>
<span class="visually-hidden">
{% if style == 'asc' -%}
{{ 'Sort ascending'|t }}
{% else -%}
{{ 'Sort descending'|t }}
{% endif %}
</span>
</span>

View file

@ -0,0 +1,21 @@
{#
/**
* @file
* Theme override for the last time update data was checked.
*
* Available variables:
* - last: The timestamp that the site was last checked for updates.
* - time: The formatted time since the site last checked for updates.
* - link: A link to check for updates manually.
*
* @see template_preprocess_update_last_check()
*/
#}
<p>
{% if last %}
{{ 'Last checked: @time ago'|t({'@time': time}) }}
{% else %}
{{ 'Last checked: never'|t }}
{% endif %}
({{ link }})
</p>

View file

@ -0,0 +1,104 @@
{#
/**
* @file
* Theme override for the project status report.
*
* Available variables:
* - title: The project title.
* - url: The project url.
* - status: The project status.
* - label: The project status label.
* - attributes: HTML attributes for the project status.
* - reason: The reason you should update the project.
* - icon: The project status version indicator icon.
* - existing_version: The version of the installed project.
* - versions: The available versions of the project.
* - install_type: The type of project (e.g., dev).
* - datestamp: The date/time of a project version's release.
* - extras: HTML attributes and additional information about the project.
* - attributes: HTML attributes for the extra item.
* - label: The label for an extra item.
* - data: The data about an extra item.
* - includes: The projects within the project.
* - disabled: The currently disabled projects in the project.
*
* @see template_preprocess_update_project_status()
*/
#}
{%
set status_classes = [
project.status == constant('UPDATE_NOT_SECURE') ? 'project-update__status--security-error',
project.status == constant('UPDATE_REVOKED') ? 'project-update__status--revoked',
project.status == constant('UPDATE_NOT_SUPPORTED') ? 'project-update__status--not-supported',
project.status == constant('UPDATE_NOT_CURRENT') ? 'project-update__status--not-current',
project.status == constant('UPDATE_CURRENT') ? 'project-update__status--current',
]
%}
<div{{ status.attributes.addClass('project-update__status', status_classes) }}>
{%- if status.label -%}
<span>{{ status.label }}</span>
{%- else -%}
{{ status.reason }}
{%- endif %}
<span class="project-update__status-icon">
{{ status.icon }}
</span>
</div>
<div class="project-update__title">
{%- if url -%}
<a href="{{ url }}">{{ title }}</a>
{%- else -%}
{{ title }}
{%- endif %}
{{ existing_version }}
{% if install_type == 'dev' and datestamp %}
<span class="project-update__version-date">({{ datestamp }})</span>
{% endif %}
</div>
{% if versions %}
{% for version in versions %}
{{ version }}
{% endfor %}
{% endif %}
{%
set extra_classes = [
project.status == constant('UPDATE_NOT_SECURE') ? 'project-not-secure',
project.status == constant('UPDATE_REVOKED') ? 'project-revoked',
project.status == constant('UPDATE_NOT_SUPPORTED') ? 'project-not-supported',
]
%}
<div class="project-updates__details">
{% if extras %}
<div class="extra">
{% for extra in extras %}
<div{{ extra.attributes.addClass(extra_classes) }}>
{{ extra.label }}: {{ extra.data }}
</div>
{% endfor %}
</div>
{% endif %}
{% set includes = includes|join(', ') %}
{% if disabled %}
{{ 'Includes:'|t }}
<ul>
<li>
{% trans %}
Enabled: {{ includes|placeholder }}
{% endtrans %}
</li>
<li>
{% set disabled = disabled|join(', ') %}
{% trans %}
Disabled: {{ disabled|placeholder }}
{% endtrans %}
</li>
</ul>
{% else %}
{% trans %}
Includes: {{ includes|placeholder }}
{% endtrans %}
{% endif %}
</div>

View file

@ -0,0 +1,23 @@
{#
/**
* @file
* Theme override for the project status report.
*
* Available variables:
* - last_checked: Themed last time update data was checked.
* - no_updates_message: Message when there are no project updates.
* - project_types: A list of project types.
* - label: The project type label.
* - table: The project status table.
*
* @see template_preprocess_update_report()
*/
#}
{{ last_checked }}
{% for project_type in project_types %}
<h3>{{ project_type.label }}</h3>
{{ project_type.table }}
{% else %}
<p>{{ no_updates_message }}</p>
{% endfor %}

View file

@ -0,0 +1,34 @@
{#
/**
* @file
* Theme override for the version display of a project.
*
* Available variables:
* - attributes: HTML attributes suitable for a container element.
* - title: The title of the project.
* - version: A list of data about the latest released version, containing:
* - version: The version number.
* - date: The date of the release.
* - download_link: The URL for the downloadable file.
* - release_link: The URL for the release notes.
*/
#}
<div class="{{ attributes.class }} project-update__version"{{ attributes|without('class') }}>
<div class="clearfix">
<div class="project-update__version-title layout-column layout-column--quarter">{{ title }}</div>
<div class="project-update__version-details layout-column layout-column--quarter">
<a href="{{ version.release_link }}">{{ version.version }}</a>
<span class="project-update__version-date">({{ version.date|date('Y-M-d') }})</span>
</div>
<div class="layout-column layout-column--half">
<ul class="project-update__version-links">
<li class="project-update__download-link">
<a href="{{ version.download_link }}">{{ 'Download'|t }}</a>
</li>
<li class="project-update__release-notes-link">
<a href="{{ version.release_link }}">{{ 'Release notes'|t }}</a>
</li>
</ul>
</div>
</div>
</div>

View file

@ -0,0 +1,55 @@
{#
/**
* @file
* Theme override for Views UI build group filter form.
*
* Available variables:
* - form: A render element representing the form. Contains the following:
* - form_description: The exposed filter's description.
* - expose_button: The button to toggle the expose filter form.
* - group_button: Toggle options between single and grouped filters.
* - label: A filter label input field.
* - description: A filter description field.
* - value: The filters available values.
* - optional: A checkbox to require this filter or not.
* - remember: A checkbox to remember selected filter value(s) (per user).
* - widget: Radio Buttons to select the filter widget.
* - add_group: A button to add another row to the table.
* - more: A details element for additional field exposed filter fields.
* - table: A rendered table element of the group filter form.
*
* @see template_preprocess_views_ui_build_group_filter_form()
*/
#}
{{ form.form_description }}
{{ form.expose_button }}
{{ form.group_button }}
<div class="views-left-40">
{{ form.optional }}
{{ form.remember }}
</div>
<div class="views-right-60">
{{ form.widget }}
{{ form.label }}
{{ form.description }}
</div>
{#
Render the rest of the form elements excluding elements that are rendered
elsewhere.
#}
{{ form|without(
'form_description',
'expose_button',
'group_button',
'optional',
'remember',
'widget',
'label',
'description',
'add_group',
'more'
)
}}
{{ table }}
{{ form.add_group }}
{{ form.more }}

View file

@ -0,0 +1,11 @@
{#
/**
* @file
* Theme override for a generic views UI container/wrapper.
*
* Available variables:
* - attributes: HTML attributes to apply to the container element.
* - children: The remaining elements such as dropbuttons and tabs.
*/
#}
<div{{ attributes }}>{{ children }}</div>

View file

@ -0,0 +1,33 @@
{#
/**
* @file
* Theme override for each "box" on the display query edit screen.
*
* Available variables:
* - attributes: HTML attributes to apply to the container element.
* - actions: Action links such as "Add", "And/Or, Rearrange" for the content.
* - title: The title of the bucket, e.g. "Fields", "Filter Criteria", etc.
* - content: Content items such as fields or settings in this container.
* - name: The name of the bucket, e.g. "Fields", "Filter Criteria", etc.
* - overridden: A boolean indicating the setting has been overridden from the
* default.
*
* @see template_preprocess_views_ui_display_tab_bucket()
*/
#}
{%
set classes = [
'views-ui-display-tab-bucket',
name ? name|clean_class,
overridden ? 'overridden',
]
%}
<div{{ attributes.addClass(classes) }}>
{% if title -%}
<h3 class="views-ui-display-tab-bucket__title">{{ title }}</h3>
{%- endif %}
{% if actions -%}
{{ actions }}
{%- endif %}
{{ content }}
</div>

View file

@ -0,0 +1,35 @@
{#
/**
* @file
* Theme override for Views UI display tab settings.
*
* Template for each row inside the "boxes" on the display query edit screen.
*
* Available variables:
* - attributes: HTML attributes such as class for the container.
* - description: The description or label for this setting.
* - settings_links: A list of links for this setting.
* - defaulted: A boolean indicating the setting is in its default state.
* - overridden: A boolean indicating the setting has been overridden from the
* default.
*
* @see template_preprocess_views_ui_display_tab_setting()
*/
#}
{%
set classes = [
'views-display-setting',
'clearfix',
'views-ui-display-tab-setting',
defaulted ? 'defaulted',
overridden ? 'overridden',
]
%}
<div{{ attributes.addClass(classes) }}>
{% if description -%}
<span class="label">{{ description }}</span>
{%- endif %}
{% if settings_links %}
{{ settings_links|safe_join('<span class="label">&nbsp;|&nbsp;</span>') }}
{% endif %}
</div>

View file

@ -0,0 +1,65 @@
{#
/**
* @file
* Theme override for exposed filter form.
*
* Available variables:
* - form_description: The exposed filter's description.
* - expose_button: The button to toggle the expose filter form.
* - group_button: Toggle options between single and grouped filters.
* - required: A checkbox to require this filter or not.
* - label: A filter label input field.
* - description: A filter description field.
* - operator: The operators for how the filters value should be treated.
* - #type: The operator type.
* - value: The filters available values.
* - use_operator: Checkbox to allow the user to expose the operator.
* - more: A details element for additional field exposed filter fields.
*/
#}
{{ form.form_description }}
{{ form.expose_button }}
{{ form.group_button }}
{{ form.required }}
{{ form.label }}
{{ form.description }}
{{ form.operator }}
{{ form.value }}
{% if form.use_operator %}
<div class="views-left-40">
{{ form.use_operator }}
</div>
{% endif %}
{#
Collect a list of elements printed to exclude when printing the
remaining elements.
#}
{% set remaining_form = form|without(
'form_description',
'expose_button',
'group_button',
'required',
'label',
'description',
'operator',
'value',
'use_operator',
'more'
)
%}
{#
Only output the right column markup if there's a left column to begin with.
#}
{% if form.operator['#type'] %}
<div class="views-right-60">
{{ remaining_form }}
</div>
{% else %}
{{ remaining_form }}
{% endif %}
{{ form.more }}

View file

@ -0,0 +1,25 @@
{#
/**
* @file
* Theme override for Views UI rearrange filter form.
*
* Available variables:
* - form: A render element representing the form.
* - grouping: A flag whether or not there is more than one group.
* - ungroupable_table: The ungroupable filter table.
* - table: The groupable filter table.
*
* @see template_preprocess_views_ui_rearrange_filter_form()
*/
#}
{{ form.override }}
<div class="scroll" data-drupal-views-scroll>
{% if grouping %}
{{ form.filter_groups.operator }}
{% else %}
{{ form.filter_groups.groups.0 }}
{% endif %}
{{ ungroupable_table }}
{{ table }}
</div>
{{ form|without('override', 'filter_groups', 'remove_groups', 'filters') }}

View file

@ -0,0 +1,16 @@
{#
/**
* @file
* Theme override for the settings of a table style views display.
*
* Available variables:
* - table: A table of options for each field in this display.
* - form: Any remaining form fields not included in the table.
* - description_markup: An overview for the settings of this display.
*
* @see template_preprocess_views_ui_style_plugin_table()
*/
#}
{{ form.description_markup }}
{{ table }}
{{ form }}

View file

@ -0,0 +1,26 @@
{#
/**
* @file
* Theme override for basic administrative info about a View.
*
* Available variables:
* - displays: List of displays.
*/
#}
<h3 class="views-ui-view-title" data-drupal-selector="views-table-filter-text-source">{{ view.label }}</h3>
<div class="views-ui-view-displays">
{% if displays %}
{% trans %}
Display
{% plural displays %}
Displays
{% endtrans %}:
<em>{{ displays|safe_join(', ') }}</em>
{% else %}
{{ 'None'|t }}
{% endif %}
</div>
<div class="views-ui-view-machine-name">
{{ 'Machine name:'|t }}
<span data-drupal-selector="views-table-filter-text-source">{{ view.id }}</span>
</div>

View file

@ -0,0 +1,18 @@
{#
/**
* @file
* Theme override for a views UI preview section.
*
* Available variables:
* - title: The human readable section title.
* - links: A list of contextual links.
* - content: The content for this section preview.
*
* @see template_preprocess_views_ui_view_preview_section()
*/
#}
<h1 class="section-title">{{ title }}</h1>
{% if links %}
<div class="contextual">{{ links }}</div>
{% endif %}
<div class="preview-section">{{ content }}</div>