Update to Drupal 8.0.0-beta15. For more information, see: https://www.drupal.org/node/2563023
This commit is contained in:
parent
2720a9ec4b
commit
f3791f1da3
1898 changed files with 54300 additions and 11481 deletions
|
@ -12,13 +12,11 @@ libraries:
|
|||
ckeditor_stylesheets:
|
||||
- css/base/elements.css
|
||||
- css/components/captions.css
|
||||
- css/components/content.css
|
||||
- css/components/table.css
|
||||
regions:
|
||||
header: Header
|
||||
primary_menu: 'Primary menu'
|
||||
secondary_menu: 'Secondary menu'
|
||||
help: Help
|
||||
page_top: 'Page top'
|
||||
page_bottom: 'Page bottom'
|
||||
highlighted: Highlighted
|
||||
|
|
|
@ -4,25 +4,30 @@ global-styling:
|
|||
base:
|
||||
css/base/elements.css: {}
|
||||
component:
|
||||
css/components/admin.css: {}
|
||||
css/components/block.css: {}
|
||||
css/components/book.css: {}
|
||||
css/components/breadcrumb.css: {}
|
||||
css/components/captions.css: {}
|
||||
css/components/comments.css: {}
|
||||
css/components/content.css: {}
|
||||
css/components/contextual.css: {}
|
||||
css/components/demo-block.css: {}
|
||||
# @see https://www.drupal.org/node/2389735
|
||||
css/components/dropbutton.component.css: {}
|
||||
css/components/featured-top.css: {}
|
||||
css/components/feed-icon.css: {}
|
||||
css/components/field.css: {}
|
||||
css/components/form.css: {}
|
||||
css/components/forum.css: {}
|
||||
css/components/header.css: {}
|
||||
css/components/region-help.css: {}
|
||||
css/components/help.css: {}
|
||||
css/components/item-list.css: {}
|
||||
css/components/list-group.css: {}
|
||||
css/components/list.css: {}
|
||||
css/components/main-content.css: {}
|
||||
css/components/messages.css: {}
|
||||
css/components/node.css: {}
|
||||
css/components/node-preview.css: {}
|
||||
css/components/page-title.css: {}
|
||||
css/components/pager.css: {}
|
||||
css/components/panel.css: {}
|
||||
css/components/primary-menu.css: {}
|
||||
|
@ -35,14 +40,15 @@ global-styling:
|
|||
css/components/site-footer.css: {}
|
||||
css/components/table.css: {}
|
||||
css/components/tabs.css: {}
|
||||
css/components/tips.css: {}
|
||||
css/components/toolbar.css: {}
|
||||
css/components/featured-bottom.css: {}
|
||||
css/components/user.css: {}
|
||||
css/components/password-suggestions.css: {}
|
||||
css/components/ui.widget.css: {}
|
||||
# @see https://www.drupal.org/node/2389735
|
||||
css/components/vertical-tabs.component.css: {}
|
||||
css/components/views.css: {}
|
||||
css/components/buttons.css: {}
|
||||
css/components/image-button.css: {}
|
||||
css/components/ui-dialog.css: {}
|
||||
layout:
|
||||
css/layout.css: {}
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
* Functions to support theming in the Bartik theme.
|
||||
*/
|
||||
|
||||
use Drupal\Component\Utility\SafeMarkup;
|
||||
use Drupal\Component\Utility\Xss;
|
||||
use Drupal\Core\Template\Attribute;
|
||||
|
||||
|
@ -120,7 +119,7 @@ function _bartik_process_page(&$variables) {
|
|||
$variables['hide_site_slogan'] = theme_get_setting('features.slogan') ? FALSE : TRUE;
|
||||
if ($variables['hide_site_name']) {
|
||||
// If toggle_name is FALSE, the site_name will be empty, so we rebuild it.
|
||||
$variables['site_name'] = SafeMarkup::checkPlain($site_config->get('name'));
|
||||
$variables['site_name'] = $site_config->get('name');
|
||||
}
|
||||
if ($variables['hide_site_slogan']) {
|
||||
// If toggle_site_slogan is FALSE, the site_slogan will be empty, so we
|
||||
|
|
|
@ -103,10 +103,10 @@
|
|||
}
|
||||
.color-preview-sidebar h2 {
|
||||
border-bottom: 1px solid #d6d6d6;
|
||||
font-size: 1.071em;
|
||||
font-weight: normal;
|
||||
line-height: 1.2;
|
||||
margin: 0 0 0.5em;
|
||||
margin-top: 0;
|
||||
margin-right: 0;
|
||||
margin-left: 0;
|
||||
padding-bottom: 5px;
|
||||
text-shadow: 0 1px 0 #fff;
|
||||
}
|
||||
|
@ -168,8 +168,6 @@
|
|||
.color-preview-footer-columns h2 {
|
||||
border-bottom: 1px solid #555;
|
||||
border-color: rgba(255, 255, 255, 0.15);
|
||||
font-size: 1em;
|
||||
margin-bottom: 0;
|
||||
padding-bottom: 3px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
|
|
@ -3,6 +3,12 @@
|
|||
* Visual styles for Bartik's blocks.
|
||||
*/
|
||||
|
||||
/* Block has it's own content wrapper. */
|
||||
.block .content {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
/* List in block. */
|
||||
.block ol,
|
||||
.block ul {
|
||||
margin: 0;
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
/* ---------------- Buttons ---------------- */
|
||||
/**
|
||||
* @file
|
||||
* Styles for Bartik's buttons.
|
||||
*/
|
||||
|
||||
.button {
|
||||
background-color: #fff;
|
||||
|
@ -33,11 +36,3 @@
|
|||
color: #717171;
|
||||
cursor: default;
|
||||
}
|
||||
.image-button.is-disabled:hover,
|
||||
.image-button.is-disabled:active,
|
||||
.image-button.is-disabled:focus,
|
||||
.image-button.is-disabled {
|
||||
background: transparent;
|
||||
opacity: 0.5;
|
||||
cursor: default;
|
||||
}
|
||||
|
|
|
@ -29,8 +29,8 @@
|
|||
.comment__attribution img {
|
||||
border: 1px solid #d3d7d9;
|
||||
}
|
||||
/* This is required to win over specificity of .field-type-image img */
|
||||
.comment .field-name-user-picture img {
|
||||
/* This is required to win over specificity of .field--type-image img */
|
||||
.comment .field--name-user-picture img {
|
||||
margin: 0;
|
||||
}
|
||||
.comment__author .username {
|
||||
|
@ -131,8 +131,23 @@
|
|||
margin-right: 0;
|
||||
padding: 5px 5px 5px 2px;
|
||||
}
|
||||
.comment--unpublished .comment__content:after,
|
||||
.node--unpublished .comment__content:after {
|
||||
|
||||
/**
|
||||
* @todo: unpublished nodes have class .node--unpublished.
|
||||
* change this to .comment--unpublished.
|
||||
*/
|
||||
.unpublished .comment-text .comment-arrow {
|
||||
border-left: 1px solid #fff4f4;
|
||||
border-right: 1px solid #fff4f4;
|
||||
}
|
||||
.unpublished {
|
||||
padding: 20px 15px 0;
|
||||
}
|
||||
.comment-footer {
|
||||
display: table-row;
|
||||
}
|
||||
.comment--unpublished .comment__text:after,
|
||||
.node--unpublished .comment__text:after {
|
||||
border-right-color: #fff4f4; /* LTR */
|
||||
}
|
||||
[dir="rtl"] .comment--unpublished .comment__content:after,
|
||||
|
|
21
core/themes/bartik/css/components/demo-block.css
Normal file
21
core/themes/bartik/css/components/demo-block.css
Normal file
|
@ -0,0 +1,21 @@
|
|||
/**
|
||||
* @file
|
||||
* Visual styles for Bartik's block demonstration.
|
||||
*/
|
||||
|
||||
.demo-block {
|
||||
background: #ffff66;
|
||||
border: 1px dotted #9f9e00;
|
||||
color: #000;
|
||||
font: 90% "Lucida Grande", "Lucida Sans Unicode", sans-serif;
|
||||
margin: 5px;
|
||||
padding: 5px;
|
||||
text-align: center;
|
||||
text-shadow: none;
|
||||
}
|
||||
.featured-top .demo-block {
|
||||
font-size: 0.55em;
|
||||
}
|
||||
.header .demo-block {
|
||||
width: 500px;
|
||||
}
|
|
@ -1,87 +1,63 @@
|
|||
/* ----------------- Featured Bottom ----------------- */
|
||||
/**
|
||||
* @file
|
||||
* Visual styles for Bartik's featured bottom component.
|
||||
*/
|
||||
|
||||
#featured-bottom-wrapper {
|
||||
background-color: #f0f0f0;
|
||||
.featured-bottom {
|
||||
background: rgba(30, 50, 10, 0.08);
|
||||
border-top: 1px solid #e7e7e7;
|
||||
}
|
||||
.region-featured-bottom-first,
|
||||
.region-featured-bottom-second,
|
||||
.region-featured-bottom-third {
|
||||
box-sizing: border-box;
|
||||
padding: 0 20px 0;
|
||||
.featured-bottom .region {
|
||||
padding: 0 20px;
|
||||
}
|
||||
@media all and (min-width: 560px) {
|
||||
.region-featured-bottom-first,
|
||||
.region-featured-bottom-second,
|
||||
.region-featured-bottom-third {
|
||||
.featured-bottom .region {
|
||||
float: left; /* LTR */
|
||||
position: relative;
|
||||
box-sizing: border-box;
|
||||
padding: 20px 15px 30px;
|
||||
width: 33%;
|
||||
}
|
||||
[dir="rtl"] .region-featured-bottom-first,
|
||||
[dir="rtl"] .region-featured-bottom-second,
|
||||
[dir="rtl"] .region-featured-bottom-third {
|
||||
[dir="rtl"] .featured-bottom .region {
|
||||
float: right;
|
||||
}
|
||||
.region-featured-bottom-second {
|
||||
padding: 20px 5px 30px;
|
||||
}
|
||||
}
|
||||
@media all and (min-width: 851px) {
|
||||
.region-featured-bottom-first,
|
||||
.region-featured-bottom-second,
|
||||
.region-featured-bottom-third {
|
||||
.featured-bottom .region {
|
||||
padding: 0 20px;
|
||||
}
|
||||
}
|
||||
#featured-bottom h2 {
|
||||
.featured-bottom h2 {
|
||||
color: #000;
|
||||
font-size: 1.4em;
|
||||
margin-bottom: 0.6em;
|
||||
text-shadow: 0 1px 0 #fff;
|
||||
text-align: center;
|
||||
line-height: 1;
|
||||
line-height: 1em;
|
||||
}
|
||||
#featured-bottom .block {
|
||||
.featured-bottom .block {
|
||||
margin-bottom: 1em;
|
||||
padding-bottom: 1em;
|
||||
border-bottom: 1px solid #dfdfdf;
|
||||
line-height: 1.3;
|
||||
line-height: 1.3em;
|
||||
}
|
||||
#featured-bottom .block:last-child {
|
||||
.featured-bottom .block:last-child {
|
||||
border-bottom: none;
|
||||
}
|
||||
#featured-bottom .block ul li,
|
||||
#featured-bottom .block ol li {
|
||||
list-style: none;
|
||||
}
|
||||
#featured-bottom .block ul,
|
||||
#featured-bottom .block ol {
|
||||
.featured-bottom ul,
|
||||
.featured-bottom ol {
|
||||
padding-left: 0;
|
||||
}
|
||||
#featured-bottom #block-user-login .form-text {
|
||||
.featured-bottom ul li,
|
||||
.featured-bottom ol li {
|
||||
list-style: none;
|
||||
}
|
||||
.featured-bottom input:not(.form-submit) {
|
||||
width: 185px;
|
||||
}
|
||||
#featured-bottom #block-user-online p {
|
||||
margin-bottom: 0;
|
||||
.region-featured-bottom-third .feed-icon {
|
||||
float: right;
|
||||
}
|
||||
#featured-bottom #block-node-syndicate h2 {
|
||||
overflow: hidden;
|
||||
width: 0;
|
||||
height: 0;
|
||||
}
|
||||
#featured-bottom-third #block-node-syndicate {
|
||||
text-align: right;
|
||||
}
|
||||
#featured-bottom #block-search-form .form-type-search input {
|
||||
width: 185px;
|
||||
}
|
||||
#featured-bottom-second #block-system-powered-by {
|
||||
.region-featured-bottom-second .block-system-powered-by-block {
|
||||
text-align: center;
|
||||
}
|
||||
#featured-bottom-third #block-system-powered-by {
|
||||
text-align: right;
|
||||
}
|
||||
|
|
95
core/themes/bartik/css/components/field.css
Normal file
95
core/themes/bartik/css/components/field.css
Normal file
|
@ -0,0 +1,95 @@
|
|||
/**
|
||||
* @file
|
||||
* Visual styles for Bartik's field components.
|
||||
*/
|
||||
|
||||
.field--type-entity-reference {
|
||||
margin: 0 0 1.2em;
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
}
|
||||
.field--type-entity-reference .field__label {
|
||||
font-weight: normal;
|
||||
margin: 0;
|
||||
padding-right: 5px; /* LTR */
|
||||
}
|
||||
[dir="rtl"] .field--type-entity-reference .field__label {
|
||||
padding-left: 5px;
|
||||
padding-right: 0;
|
||||
}
|
||||
.field--type-entity-reference .field__label,
|
||||
.field--type-entity-reference ul.links {
|
||||
font-size: 0.8em;
|
||||
}
|
||||
.node--view-mode-teaser .field--type-entity-reference .field__label,
|
||||
.node--view-mode-teaser .field--type-entity-reference ul.links {
|
||||
font-size: 0.821em;
|
||||
}
|
||||
.field--type-entity-reference ul.links {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
list-style: none;
|
||||
}
|
||||
.field--type-entity-reference ul.links li {
|
||||
float: left; /* LTR */
|
||||
padding: 0 1em 0 0; /* LTR */
|
||||
white-space: nowrap;
|
||||
}
|
||||
[dir="rtl"] .field--type-entity-reference ul.links li {
|
||||
padding: 0 0 0 1em;
|
||||
float: right;
|
||||
}
|
||||
@media all and (min-width: 560px) {
|
||||
.node .field--type-image {
|
||||
float: left; /* LTR */
|
||||
margin: 0 1em 0 0; /* LTR */
|
||||
}
|
||||
[dir="rtl"] .node .field--type-image {
|
||||
float: right;
|
||||
margin: 0 0 0 1em;
|
||||
}
|
||||
.node .field--type-image + .field--type-image {
|
||||
clear: both;
|
||||
}
|
||||
}
|
||||
.field--type-image img,
|
||||
.field--name-field-user-picture img {
|
||||
margin: 0 0 1em;
|
||||
}
|
||||
.field--type-image a {
|
||||
border-bottom: none;
|
||||
}
|
||||
.field--name-field-tags {
|
||||
margin: 0 0 1.2em;
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
}
|
||||
.field--name-field-tags .field__label {
|
||||
font-weight: normal;
|
||||
margin: 0;
|
||||
padding-right: 5px; /* LTR */
|
||||
}
|
||||
[dir="rtl"] .field--name-field-tags .field__label {
|
||||
padding-left: 5px;
|
||||
padding-right: 0;
|
||||
}
|
||||
.field--name-field-tags .field__label,
|
||||
.field--name-field-tags ul.links {
|
||||
font-size: 0.8em;
|
||||
}
|
||||
.node--view-mode-teaser .field--name-field-tags .field__label,
|
||||
.node--view-mode-teaser .field--name-field-tags ul.links {
|
||||
font-size: 0.821em;
|
||||
}
|
||||
.field--name-field-tags ul.links {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
list-style: none;
|
||||
}
|
||||
.field--name-field-tags ul.links li {
|
||||
float: left; /* LTR */
|
||||
padding: 0 1em 0 0; /* LTR */
|
||||
white-space: nowrap;
|
||||
}
|
||||
[dir="rtl"] .field--name-field-tags ul.links li {
|
||||
padding: 0 0 0 1em;
|
||||
float: right;
|
||||
}
|
|
@ -1,11 +1,14 @@
|
|||
/* -------------- Password Field ------------- */
|
||||
/**
|
||||
* @file
|
||||
* Visual styles for Bartik's forms.
|
||||
*/
|
||||
|
||||
/* Password field. */
|
||||
.password-field {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* -------------- Form Elements ------------- */
|
||||
|
||||
/* Form elements. */
|
||||
form {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
@ -137,6 +140,7 @@ input.form-submit:focus {
|
|||
.form-actions {
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
/* Node Form */
|
||||
#edit-body {
|
||||
margin-bottom: 2em;
|
||||
|
@ -237,9 +241,6 @@ input.form-submit:focus {
|
|||
line-height: 1.2;
|
||||
margin-left: 120px; /* LTR */
|
||||
}
|
||||
#content h2.comment-form {
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
.comment-form .form-textarea {
|
||||
border-top-left-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
|
|
10
core/themes/bartik/css/components/help.css
Normal file
10
core/themes/bartik/css/components/help.css
Normal file
|
@ -0,0 +1,10 @@
|
|||
/**
|
||||
* @file
|
||||
* Styles for the help block.
|
||||
*/
|
||||
|
||||
.block-help {
|
||||
border: 1px solid #d3d7d9;
|
||||
padding: 0 1.5em;
|
||||
margin-bottom: 30px;
|
||||
}
|
13
core/themes/bartik/css/components/image-button.css
Normal file
13
core/themes/bartik/css/components/image-button.css
Normal file
|
@ -0,0 +1,13 @@
|
|||
/**
|
||||
* @file
|
||||
* Styles for Bartik's image buttons.
|
||||
*/
|
||||
|
||||
.image-button.is-disabled:hover,
|
||||
.image-button.is-disabled:active,
|
||||
.image-button.is-disabled:focus,
|
||||
.image-button.is-disabled {
|
||||
background: transparent;
|
||||
opacity: 0.5;
|
||||
cursor: default;
|
||||
}
|
|
@ -10,3 +10,10 @@
|
|||
[dir="rtl"] .item-list ul li {
|
||||
padding: 0.2em 0 0 0.5em;
|
||||
}
|
||||
.item-list .item-list__comma-list,
|
||||
.item-list .item-list__comma-list li,
|
||||
[dir="rtl"] .item-list .item-list__comma-list,
|
||||
[dir="rtl"] .item-list .item-list__comma-list li {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
|
10
core/themes/bartik/css/components/list.css
Normal file
10
core/themes/bartik/css/components/list.css
Normal file
|
@ -0,0 +1,10 @@
|
|||
/**
|
||||
* @file
|
||||
* Visual styles for Bartik's lists.
|
||||
*/
|
||||
|
||||
ul.links {
|
||||
color: #68696b;
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
font-size: 0.821em;
|
||||
}
|
65
core/themes/bartik/css/components/main-content.css
Normal file
65
core/themes/bartik/css/components/main-content.css
Normal file
|
@ -0,0 +1,65 @@
|
|||
/**
|
||||
* @file
|
||||
* Visual styles for Bartik's main-content component.
|
||||
*/
|
||||
|
||||
.main-content .section {
|
||||
padding: 0 15px;
|
||||
}
|
||||
.main-content h2 {
|
||||
margin-bottom: 2px;
|
||||
font-size: 1.429em;
|
||||
line-height: 1.4;
|
||||
}
|
||||
|
||||
@media all and (min-width: 851px) {
|
||||
.main-content {
|
||||
float: left; /* LTR */
|
||||
position: relative;
|
||||
}
|
||||
[dir="rtl"] .main-content {
|
||||
float: right;
|
||||
}
|
||||
.layout-two-sidebars .main-content {
|
||||
margin-left: 25%;
|
||||
margin-right: 25%;
|
||||
width: 50%;
|
||||
}
|
||||
.layout-one-sidebar .main-content {
|
||||
width: 75%;
|
||||
}
|
||||
.layout-no-sidebars .main-content {
|
||||
width: 100%;
|
||||
}
|
||||
.layout-sidebar-first .main-content {
|
||||
margin-left: 25%; /* LTR */
|
||||
margin-right: 0; /* LTR */
|
||||
}
|
||||
[dir="rtl"] .layout-sidebar-first .main-content {
|
||||
margin-left: 0;
|
||||
margin-right: 25%;
|
||||
}
|
||||
.layout-sidebar-second .main-content {
|
||||
margin-right: 25%; /* LTR */
|
||||
margin-left: 0; /* LTR */
|
||||
}
|
||||
[dir="rtl"] .layout-sidebar-second .main-content {
|
||||
margin-right: 0;
|
||||
margin-left: 25%;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @todo Decide if we want to keep this.
|
||||
* It should be in layout.css but it would be
|
||||
* overridden there by block.css.
|
||||
*/
|
||||
.region-content ul,
|
||||
.region-content ol {
|
||||
margin: 1em 0;
|
||||
padding: 0 0 0.25em 15px; /* LTR */
|
||||
}
|
||||
[dir="rtl"] .region-content ul,
|
||||
[dir="rtl"] .region-content ol {
|
||||
padding: 0 15px 0.25em 0;
|
||||
}
|
68
core/themes/bartik/css/components/node.css
Normal file
68
core/themes/bartik/css/components/node.css
Normal file
|
@ -0,0 +1,68 @@
|
|||
/**
|
||||
* @file
|
||||
* Visual styles for Bartik's node component.
|
||||
*/
|
||||
|
||||
.node__content {
|
||||
font-size: 1.071em;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
/* View mode teaser styles. */
|
||||
.node--view-mode-teaser {
|
||||
border-bottom: 1px solid #d3d7d9;
|
||||
margin-bottom: 30px;
|
||||
padding-bottom: 15px;
|
||||
}
|
||||
.node--view-mode-teaser h2 {
|
||||
margin-top: 0;
|
||||
padding-top: 0.5em;
|
||||
}
|
||||
.node--view-mode-teaser h2 a {
|
||||
color: #181818;
|
||||
}
|
||||
.node--view-mode-teaser.node--sticky {
|
||||
background: #f9f9f9;
|
||||
background: rgba(0, 0, 0, 0.024);
|
||||
border: 1px solid #d3d7d9;
|
||||
padding: 0 15px 15px;
|
||||
}
|
||||
.node--view-mode-teaser .node__content {
|
||||
clear: none;
|
||||
font-size: 1em;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
/* Node metadata styles. */
|
||||
.node__meta {
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
font-size: 0.857em;
|
||||
color: #68696b;
|
||||
margin-bottom: -5px;
|
||||
}
|
||||
.node__meta .field--name-field-user-picture img {
|
||||
float: left; /* LTR */
|
||||
margin: 1px 20px 0 0; /* LTR */
|
||||
}
|
||||
[dir="rtl"] .node__meta .field--name-field-user-picture img {
|
||||
float: right;
|
||||
margin-left: 20px;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
/* Node links styles. */
|
||||
.node__links {
|
||||
text-align: right; /* LTR */
|
||||
}
|
||||
[dir="rtl"] .node__links {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
/* Unpublished node styles. */
|
||||
.node--unpublished {
|
||||
padding: 20px 15px 0;
|
||||
}
|
||||
.node--unpublished .comment-text .comment-arrow {
|
||||
border-left: 1px solid #fff4f4;
|
||||
border-right: 1px solid #fff4f4;
|
||||
}
|
9
core/themes/bartik/css/components/page-title.css
Normal file
9
core/themes/bartik/css/components/page-title.css
Normal file
|
@ -0,0 +1,9 @@
|
|||
/**
|
||||
* @file
|
||||
* Visual styles for Bartik's page-title component.
|
||||
*/
|
||||
|
||||
.page-title {
|
||||
font-size: 2em;
|
||||
line-height: 1em;
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
/**
|
||||
* @file
|
||||
* Styles for password suggestions in Bartik.
|
||||
*/
|
||||
|
||||
.password-suggestions {
|
||||
border: 0;
|
||||
}
|
|
@ -1,13 +1,13 @@
|
|||
/* -------------- Shortcut Links -------------- */
|
||||
|
||||
.shortcut-wrapper {
|
||||
margin: 2.2em 0 1.1em 0; /* Same as usual h1#page-title margin. */
|
||||
margin: 2.2em 0 1.1em 0; /* Same as usual .page-title margin. */
|
||||
}
|
||||
.shortcut-wrapper h1#page-title {
|
||||
.shortcut-wrapper .page-title {
|
||||
float: left; /* LTR */
|
||||
margin: 0;
|
||||
}
|
||||
[dir="rtl"] .shortcut-wrapper h1#page-title {
|
||||
[dir="rtl"] .shortcut-wrapper .page-title {
|
||||
float: right;
|
||||
}
|
||||
.shortcut-action {
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
/* ------------------ Table Styles ------------------ */
|
||||
/**
|
||||
* @file
|
||||
* Styles for Bartik's tables.
|
||||
*/
|
||||
|
||||
table {
|
||||
border: 0;
|
||||
|
@ -49,6 +52,7 @@ tr th {
|
|||
[dir="rtl"] tr th {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/**
|
||||
* Responsive tables.
|
||||
*/
|
||||
|
|
8
core/themes/bartik/css/components/ui.widget.css
Normal file
8
core/themes/bartik/css/components/ui.widget.css
Normal file
|
@ -0,0 +1,8 @@
|
|||
/**
|
||||
* @file
|
||||
* Visual styles for Bartik's ui-widget component.
|
||||
*/
|
||||
|
||||
#page .ui-widget {
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
}
|
|
@ -24,10 +24,10 @@ body.maintenance-page {
|
|||
.maintenance-page #main {
|
||||
margin: 0;
|
||||
}
|
||||
.maintenance-page #content .section {
|
||||
.maintenance-page .content .section {
|
||||
padding: 0 0 0 10px; /* LTR */
|
||||
}
|
||||
[dir="rtl"] .maintenance-page #content .section {
|
||||
[dir="rtl"] .maintenance-page .content .section {
|
||||
padding-left: 0;
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
@ -50,7 +50,7 @@ body.maintenance-page {
|
|||
.maintenance-page #name-and-slogan a:focus {
|
||||
color: #777;
|
||||
}
|
||||
.maintenance-page h1#page-title {
|
||||
.maintenance-page .page-title {
|
||||
line-height: 1em;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
|
|
@ -23,17 +23,19 @@ body {
|
|||
.shortcut-action {
|
||||
display: none;
|
||||
}
|
||||
.one-sidebar #content,
|
||||
.two-sidebars #content {
|
||||
.one-sidebar .main-content,
|
||||
.two-sidebars .main-content {
|
||||
width: 100%;
|
||||
}
|
||||
#featured-bottom-wrapper {
|
||||
.featured-bottom {
|
||||
width: 960px;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: none;
|
||||
}
|
||||
#featured-bottom-first, #featured-bottom-second, #featured-bottom-third {
|
||||
.featured-bottom-first,
|
||||
.featured-bottom-second,
|
||||
.featured-bottom-third {
|
||||
width: 250px;
|
||||
}
|
||||
|
||||
|
|
|
@ -12,12 +12,6 @@
|
|||
* - module: The module that provided this block plugin.
|
||||
* - cache: The cache settings.
|
||||
* - Block plugin specific settings will also be stored here.
|
||||
* - block - The full block entity.
|
||||
* - label_hidden: The hidden block title value if the block was
|
||||
* configured to hide the title ('label' is empty in this case).
|
||||
* - module: The module that generated the block.
|
||||
* - delta: An ID for the block, unique within each module.
|
||||
* - region: The block region embedding the current block.
|
||||
* - content: The content of this block.
|
||||
* - attributes: array of HTML attributes populated by modules, intended to
|
||||
* be added to the main container tag of this template.
|
||||
|
@ -40,6 +34,7 @@
|
|||
set classes = [
|
||||
'block',
|
||||
'block-' ~ configuration.provider|clean_class,
|
||||
'block-' ~ plugin_id|clean_class,
|
||||
]
|
||||
%}
|
||||
<div{{ attributes.addClass(classes) }}>
|
||||
|
|
|
@ -21,20 +21,18 @@
|
|||
* @see bartik_preprocess_field()
|
||||
*/
|
||||
#}
|
||||
{% set field_name_class = field_name|clean_class %}
|
||||
{%
|
||||
set classes = [
|
||||
'field',
|
||||
'field-' ~ entity_type|clean_class ~ '--' ~ field_name_class,
|
||||
'field-name-' ~ field_name_class,
|
||||
'field-type-' ~ field_type|clean_class,
|
||||
'field-label-' ~ label_display,
|
||||
'field--name-' ~ field_name|clean_class,
|
||||
'field--type-' ~ field_type|clean_class,
|
||||
'field--label-' ~ label_display,
|
||||
'clearfix',
|
||||
]
|
||||
%}
|
||||
{%
|
||||
set title_classes = [
|
||||
'field-label',
|
||||
'field__label',
|
||||
label_display == 'inline' ? 'inline',
|
||||
]
|
||||
%}
|
||||
|
@ -42,7 +40,7 @@
|
|||
{% if not label_hidden %}
|
||||
<h3{{ title_attributes.addClass(title_classes) }}>{{ label }}</h3>
|
||||
{% endif %}
|
||||
<ul{{ content_attributes.addClass('links', 'field-items') }}>
|
||||
<ul class='links field__items'>
|
||||
{% for item in items %}
|
||||
<li{{ item.attributes }}>{{ item.content }}</li>
|
||||
{% endfor %}
|
||||
|
|
|
@ -72,6 +72,7 @@
|
|||
'clearfix',
|
||||
]
|
||||
%}
|
||||
{{ attach_library('classy/node') }}
|
||||
<article{{ attributes.addClass(classes) }}>
|
||||
<header>
|
||||
{{ title_prefix }}
|
||||
|
|
|
@ -38,10 +38,6 @@
|
|||
* - title: The page title, for use in the actual content.
|
||||
* - title_suffix: Additional output populated by modules, intended to be
|
||||
* displayed after the main title tag that appears in the template.
|
||||
* - tabs: Tabs linking to any sub-pages beneath the current page (e.g., the
|
||||
* view and edit tabs when displaying a node).
|
||||
* - action_links: Actions local to the page, such as "Add menu" on the menu
|
||||
* administration interface.
|
||||
* - node: Fully loaded node, if there is an automatically-loaded node
|
||||
* associated with the page and the node ID is the second argument in the
|
||||
* page's path (e.g. node/12345 and node/12345/revisions, but not
|
||||
|
@ -53,7 +49,6 @@
|
|||
* - page.primary_menu: Items for the primary menu region.
|
||||
* - page.secondary_menu: Items for the secondary menu region.
|
||||
* - page.featured_top: Items for the featured top region.
|
||||
* - page.help: Dynamic help text, mostly for admin pages.
|
||||
* - page.content: The main content of the current page.
|
||||
* - page.sidebar_first: Items for the first sidebar.
|
||||
* - page.sidebar_second: Items for the second sidebar.
|
||||
|
@ -131,20 +126,11 @@
|
|||
<a id="main-content" tabindex="-1"></a>
|
||||
{{ title_prefix }}
|
||||
{% if title %}
|
||||
<h1 class="title" id="page-title">
|
||||
<h1 class="title page-title">
|
||||
{{ title }}
|
||||
</h1>
|
||||
{% endif %}
|
||||
{{ title_suffix }}
|
||||
{% if tabs %}
|
||||
<nav class="tabs" role="navigation" aria-label="{{ 'Tabs'|t }}">
|
||||
{{ tabs }}
|
||||
</nav>
|
||||
{% endif %}
|
||||
{{ page.help }}
|
||||
{% if action_links %}
|
||||
<ul class="action-links">{{ action_links }}</ul>
|
||||
{% endif %}
|
||||
{{ page.content }}
|
||||
</section>
|
||||
</main>
|
||||
|
@ -165,8 +151,8 @@
|
|||
</div>
|
||||
</div>
|
||||
{% if page.featured_bottom_first or page.featured_bottom_second or page.featured_bottom_third %}
|
||||
<div id="featured-bottom-wrapper">
|
||||
<aside id="featured-bottom" class="section layout-container clearfix" role="complementary">
|
||||
<div class="featured-bottom">
|
||||
<aside class="layout-container clearfix" role="complementary">
|
||||
{{ page.featured_bottom_first }}
|
||||
{{ page.featured_bottom_second }}
|
||||
{{ page.featured_bottom_third }}
|
||||
|
|
|
@ -16,6 +16,12 @@ drupal.comment.threaded:
|
|||
theme:
|
||||
css/comment/comment.theme.css: {}
|
||||
|
||||
node:
|
||||
version: VERSION
|
||||
css:
|
||||
component:
|
||||
css/components/node.css: { weight: -10 }
|
||||
|
||||
search.results:
|
||||
version: VERSION
|
||||
css:
|
||||
|
|
8
core/themes/classy/css/components/node.css
Normal file
8
core/themes/classy/css/components/node.css
Normal file
|
@ -0,0 +1,8 @@
|
|||
/**
|
||||
* @file
|
||||
* Visual styles for nodes.
|
||||
*/
|
||||
|
||||
.node--unpublished {
|
||||
background-color: #fff4f4;
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
{% extends "@block/block.html.twig" %}
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Theme override for local actions (primary admin actions.)
|
||||
*/
|
||||
#}
|
||||
{% block content %}
|
||||
{% if content %}
|
||||
<nav class="action-links">{{ content }}</nav>
|
||||
{% endif %}
|
||||
{% endblock %}
|
|
@ -0,0 +1,14 @@
|
|||
{% extends "@block/block.html.twig" %}
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Theme override for tabs.
|
||||
*/
|
||||
#}
|
||||
{% block content %}
|
||||
{% if content %}
|
||||
<nav class="tabs" role="navigation" aria-label="{{ 'Tabs'|t }}">
|
||||
{{ content }}
|
||||
</nav>
|
||||
{% endif %}
|
||||
{% endblock %}
|
|
@ -12,12 +12,6 @@
|
|||
* - module: The module that provided this block plugin.
|
||||
* - cache: The cache settings.
|
||||
* - Block plugin specific settings will also be stored here.
|
||||
* - block - The full block entity, including:
|
||||
* - label_hidden: The hidden block title value if the block was
|
||||
* configured to hide the title ('label' is empty in this case).
|
||||
* - module: The module that generated the block.
|
||||
* - delta: An ID for the block, unique within each module.
|
||||
* - region: The block region embedding the current block.
|
||||
* - content: The content of this block.
|
||||
* - attributes: A list HTML attributes populated by modules, intended to
|
||||
* be added to the main container tag of this template. Includes:
|
||||
|
|
|
@ -12,12 +12,6 @@
|
|||
* - module: The module that provided this block plugin.
|
||||
* - cache: The cache settings.
|
||||
* - Block plugin specific settings will also be stored here.
|
||||
* - block - The full block entity.
|
||||
* - label_hidden: The hidden block title value if the block was
|
||||
* configured to hide the title ('label' is empty in this case).
|
||||
* - module: The module that generated the block.
|
||||
* - delta: An ID for the block, unique within each module.
|
||||
* - region: The block region embedding the current block.
|
||||
* - content: The content of this block.
|
||||
* - attributes: HTML attributes for the containing element.
|
||||
* - id: A valid HTML ID and guaranteed unique.
|
||||
|
|
|
@ -12,12 +12,6 @@
|
|||
* - module: The module that provided this block plugin.
|
||||
* - cache: The cache settings.
|
||||
* - Block plugin specific settings will also be stored here.
|
||||
* - block - The full block entity.
|
||||
* - label_hidden: The hidden block title value if the block was
|
||||
* configured to hide the title ('label' is empty in this case).
|
||||
* - module: The module that generated the block.
|
||||
* - delta: An ID for the block, unique within each module.
|
||||
* - region: The block region embedding the current block.
|
||||
* - content: The content of this block.
|
||||
* - attributes: array of HTML attributes populated by modules, intended to
|
||||
* be added to the main container tag of this template.
|
||||
|
@ -36,6 +30,7 @@
|
|||
set classes = [
|
||||
'block',
|
||||
'block-' ~ configuration.provider|clean_class,
|
||||
'block-' ~ plugin_id|clean_class,
|
||||
]
|
||||
%}
|
||||
<div{{ attributes.addClass(classes) }}>
|
||||
|
|
|
@ -75,6 +75,7 @@
|
|||
view_mode ? 'node--view-mode-' ~ view_mode|clean_class,
|
||||
]
|
||||
%}
|
||||
{{ attach_library('classy/node') }}
|
||||
<article{{ attributes.addClass(classes) }}>
|
||||
|
||||
{{ title_prefix }}
|
||||
|
|
|
@ -12,10 +12,15 @@
|
|||
* - attributes: HTML attributes to be applied to the list.
|
||||
* - empty: A message to display when there are no items. Allowed value is a
|
||||
* string or render array.
|
||||
* - context: A list of contextual data associated with the list. May contain:
|
||||
* - list_style: The custom list style.
|
||||
*
|
||||
* @see template_preprocess_item_list()
|
||||
*/
|
||||
#}
|
||||
{% if context.list_style %}
|
||||
{% set attributes = attributes.addClass('item-list__' ~ context.list_style) %}
|
||||
{% endif %}
|
||||
{%- if items or empty -%}
|
||||
<div class="item-list">
|
||||
{%- if title is not empty -%}
|
||||
|
|
|
@ -13,7 +13,6 @@
|
|||
* - title_suffix: Additional title output populated by modules, intended to
|
||||
* be displayed after the main title tag that appears in the template.
|
||||
* - comments: List of comments rendered through comment.html.twig.
|
||||
* - content_attributes: HTML attributes for the form title.
|
||||
* - comment_form: The 'Add new comment' form.
|
||||
* - comment_display_mode: Is the comments are threaded.
|
||||
* - comment_type: The comment type bundle ID for the comment field.
|
||||
|
@ -26,15 +25,12 @@
|
|||
* @see comment_preprocess_field()
|
||||
*/
|
||||
#}
|
||||
{% set field_name_class = field_name|clean_class %}
|
||||
{%
|
||||
set classes = [
|
||||
'field',
|
||||
'field-' ~ entity_type|clean_class ~ '--' ~ field_name_class,
|
||||
'field-name-' ~ field_name_class,
|
||||
'field-type-' ~ field_type|clean_class,
|
||||
'field-label-' ~ label_display,
|
||||
label_display == 'inline' ? 'clearfix',
|
||||
'field--name-' ~ field_name|clean_class,
|
||||
'field--type-' ~ field_type|clean_class,
|
||||
'field--label-' ~ label_display,
|
||||
'comment-wrapper',
|
||||
]
|
||||
%}
|
||||
|
@ -54,7 +50,7 @@
|
|||
{{ comments }}
|
||||
|
||||
{% if comment_form %}
|
||||
<h2{{ content_attributes.addClass('title', 'comment-form__title') }}>{{ 'Add new comment'|t }}</h2>
|
||||
<h2 class='title comment-form__title'>{{ 'Add new comment'|t }}</h2>
|
||||
{{ comment_form }}
|
||||
{% endif %}
|
||||
|
||||
|
|
|
@ -19,14 +19,12 @@
|
|||
* @see field.html.twig
|
||||
*/
|
||||
#}
|
||||
{% set field_name_class = field_name|clean_class %}
|
||||
{%
|
||||
set classes = [
|
||||
'field',
|
||||
'field-' ~ entity_type|clean_class ~ '--' ~ field_name_class,
|
||||
'field-name-' ~ field_name_class,
|
||||
'field-type-' ~ field_type|clean_class,
|
||||
'field-label-' ~ label_display,
|
||||
'field--name-' ~ field_name|clean_class,
|
||||
'field--type-' ~ field_type|clean_class,
|
||||
'field--label-' ~ label_display,
|
||||
]
|
||||
%}
|
||||
<span{{ attributes.addClass(classes) }}>
|
||||
|
|
|
@ -19,14 +19,12 @@
|
|||
* @see field.html.twig
|
||||
*/
|
||||
#}
|
||||
{% set field_name_class = field_name|clean_class %}
|
||||
{%
|
||||
set classes = [
|
||||
'field',
|
||||
'field-' ~ entity_type|clean_class ~ '--' ~ field_name_class,
|
||||
'field-name-' ~ field_name_class,
|
||||
'field-type-' ~ field_type|clean_class,
|
||||
'field-label-' ~ label_display,
|
||||
'field--name-' ~ field_name|clean_class,
|
||||
'field--type-' ~ field_type|clean_class,
|
||||
'field--label-' ~ label_display,
|
||||
]
|
||||
%}
|
||||
<span{{ attributes.addClass(classes) }}>
|
||||
|
|
|
@ -19,14 +19,12 @@
|
|||
* @see field.html.twig
|
||||
*/
|
||||
#}
|
||||
{% set field_name_class = field_name|clean_class %}
|
||||
{%
|
||||
set classes = [
|
||||
'field',
|
||||
'field-' ~ entity_type|clean_class ~ '--' ~ field_name_class,
|
||||
'field-name-' ~ field_name_class,
|
||||
'field-type-' ~ field_type|clean_class,
|
||||
'field-label-' ~ label_display,
|
||||
'field--name-' ~ field_name_class,
|
||||
'field--type-' ~ field_type|clean_class,
|
||||
'field--label-' ~ label_display,
|
||||
]
|
||||
%}
|
||||
<span{{ attributes.addClass(classes) }}>
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
* - label_hidden: Whether to show the field label or not.
|
||||
* - title_attributes: HTML attributes for the title.
|
||||
* - label: The label for the field.
|
||||
* - content_attributes: HTML attributes for the content.
|
||||
* - multiple: TRUE if a field can contain multiple items.
|
||||
* - items: List of all the field items. Each item contains:
|
||||
* - attributes: List of HTML attributes for each item.
|
||||
* - content: The field item's content.
|
||||
|
@ -33,33 +33,48 @@
|
|||
* - field_type: The type of the field.
|
||||
* - label_display: The display settings for the label.
|
||||
*
|
||||
*
|
||||
* @see template_preprocess_field()
|
||||
*/
|
||||
#}
|
||||
{% set field_name_class = field_name|clean_class %}
|
||||
{%
|
||||
set classes = [
|
||||
'field',
|
||||
'field-' ~ entity_type|clean_class ~ '--' ~ field_name_class,
|
||||
'field-name-' ~ field_name_class,
|
||||
'field-type-' ~ field_type|clean_class,
|
||||
'field-label-' ~ label_display,
|
||||
label_display == 'inline' ? 'clearfix',
|
||||
'field--name-' ~ field_name|clean_class,
|
||||
'field--type-' ~ field_type|clean_class,
|
||||
'field--label-' ~ label_display,
|
||||
]
|
||||
%}
|
||||
{%
|
||||
set title_classes = [
|
||||
'field-label',
|
||||
'field__label',
|
||||
label_display == 'visually_hidden' ? 'visually-hidden',
|
||||
]
|
||||
%}
|
||||
<div{{ attributes.addClass(classes) }}>
|
||||
{% if not label_hidden %}
|
||||
<div{{ title_attributes.addClass(title_classes) }}>{{ label }}</div>
|
||||
{% endif %}
|
||||
<div{{ content_attributes.addClass('field-items') }}>
|
||||
|
||||
{% if label_hidden %}
|
||||
{% if multiple %}
|
||||
<div{{ attributes.addClass(classes, 'field__items') }}>
|
||||
{% for item in items %}
|
||||
<div{{ item.attributes.addClass(classes, 'field__item') }}>{{ item.content }}</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% else %}
|
||||
{% for item in items %}
|
||||
<div{{ item.attributes.addClass('field-item') }}>{{ item.content }}</div>
|
||||
<div{{ attributes.addClass(classes, 'field__item') }}>{{ item.content }}</div>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<div{{ attributes.addClass(classes) }}>
|
||||
<div{{ title_attributes.addClass(title_classes) }}>{{ label }}</div>
|
||||
{% if multiple %}
|
||||
<div class='field__items'>
|
||||
{% endif %}
|
||||
{% for item in items %}
|
||||
<div{{ item.attributes.addClass('field__item') }}>{{ item.content }}</div>
|
||||
{% endfor %}
|
||||
{% if multiple %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
{%
|
||||
set title_classes = [
|
||||
'label',
|
||||
required ? 'js-form-required',
|
||||
required ? 'form-required',
|
||||
]
|
||||
%}
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
{%
|
||||
set legend_span_classes = [
|
||||
'fieldset-legend',
|
||||
required ? 'js-form-required',
|
||||
required ? 'form-required',
|
||||
]
|
||||
%}
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
set classes = [
|
||||
title_display == 'after' ? 'option',
|
||||
title_display == 'invisible' ? 'visually-hidden',
|
||||
required ? 'js-form-required',
|
||||
required ? 'form-required',
|
||||
]
|
||||
%}
|
||||
|
|
|
@ -19,9 +19,10 @@
|
|||
* - page: The rendered page markup.
|
||||
* - page_bottom: Closing rendered markup. This variable should be printed after
|
||||
* 'page'.
|
||||
* - styles: Style tags necessary to import all necessary CSS files in the head.
|
||||
* - scripts: Script tags necessary to load the JavaScript files and settings
|
||||
* in the head.
|
||||
* - styles: HTML necessary to import all necessary CSS files in <head>.
|
||||
* - scripts: HTML necessary to load JavaScript files and settings in <head>.
|
||||
* - scripts_bottom: HTML necessary to load JavaScript files before closing
|
||||
* <body> tag.
|
||||
* - db_offline: A flag indicating if the database is offline.
|
||||
*
|
||||
* @see template_preprocess_html()
|
||||
|
|
|
@ -31,10 +31,6 @@
|
|||
* - title: The page title, for use in the actual content.
|
||||
* - title_suffix: Additional output populated by modules, intended to be
|
||||
* displayed after the main title tag that appears in the template.
|
||||
* - tabs: Tabs linking to any sub-pages beneath the current page (e.g., the
|
||||
* view and edit tabs when displaying a node).
|
||||
* - action_links: Actions local to the page, such as "Add menu" on the menu
|
||||
* administration interface.
|
||||
* - node: Fully loaded node, if there is an automatically-loaded node
|
||||
* associated with the page and the node ID is the second argument in the
|
||||
* page's path (e.g. node/12345 and node/12345/revisions, but not
|
||||
|
@ -109,13 +105,6 @@
|
|||
<h1>{{ title }}</h1>
|
||||
{% endif %}
|
||||
{{ title_suffix }}
|
||||
|
||||
{{ tabs }}
|
||||
|
||||
{% if action_links %}
|
||||
<nav class="action-links">{{ action_links }}</nav>
|
||||
{% endif %}
|
||||
|
||||
{{ page.content }}
|
||||
</div>{# /.layout-content #}
|
||||
|
||||
|
|
|
@ -23,23 +23,24 @@
|
|||
<div{{ attributes.addClass('toolbar') }}>
|
||||
<nav{{ toolbar_attributes.addClass('toolbar-bar', 'clearfix') }}>
|
||||
<h2 class="visually-hidden">{{ toolbar_heading }}</h2>
|
||||
{% for tab in tabs %}
|
||||
<div{{ tab.attributes.addClass('toolbar-tab') }}>{{ tab.link }}</div>
|
||||
{% for key, tab in tabs %}
|
||||
{% set tray = trays[key] %}
|
||||
<div{{ tab.attributes.addClass('toolbar-tab') }}>
|
||||
{{ tab.link }}
|
||||
{% spaceless %}
|
||||
<div{{ tray.attributes }}>
|
||||
{% if tray.label %}
|
||||
<nav class="toolbar-lining clearfix" role="navigation" aria-label="{{ tray.label }}">
|
||||
<h3 class="toolbar-tray-name visually-hidden">{{ tray.label }}</h3>
|
||||
{% else %}
|
||||
<nav class="toolbar-lining clearfix" role="navigation">
|
||||
{% endif %}
|
||||
{{ tray.links }}
|
||||
</nav>
|
||||
</div>
|
||||
{% endspaceless %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</nav>
|
||||
{% for tray in trays %}
|
||||
{% spaceless %}
|
||||
<div{{ tray.attributes }}>
|
||||
{% if tray.label %}
|
||||
<nav class="toolbar-lining clearfix" role="navigation" aria-label="{{ tray.label }}">
|
||||
<h3 class="toolbar-tray-name visually-hidden">{{ tray.label }}</h3>
|
||||
{% else %}
|
||||
<nav class="toolbar-lining clearfix" role="navigation">
|
||||
{% endif %}
|
||||
{{ tray.links }}
|
||||
</nav>
|
||||
</div>
|
||||
{% endspaceless %}
|
||||
{% endfor %}
|
||||
{{ remainder }}
|
||||
</div>
|
||||
|
|
|
@ -72,7 +72,21 @@
|
|||
%}
|
||||
{% endif %}
|
||||
<th{{ column.attributes.addClass(column_classes).setAttribute('scope', 'col') }}>
|
||||
{{ column.content }}
|
||||
{%- if column.wrapper_element -%}
|
||||
<{{ column.wrapper_element }}>
|
||||
{%- if column.url -%}
|
||||
<a href="{{ column.url }}" title="{{ column.title }}">{{ 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 }}">{{ column.content }}{{ column.sort_indicator }}</a>
|
||||
{%- else -%}
|
||||
{{- column.content }}{{ column.sort_indicator }}
|
||||
{%- endif -%}
|
||||
{%- endif -%}
|
||||
</th>
|
||||
{% endfor %}
|
||||
</tr>
|
||||
|
@ -93,7 +107,17 @@
|
|||
{% endfor %}
|
||||
{% endif %}
|
||||
<td{{ column.attributes.addClass(column_classes) }}>
|
||||
{{ column.content }}
|
||||
{%- 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>
|
||||
|
|
|
@ -5,7 +5,9 @@
|
|||
* Handles integration of Twig templates with the Drupal theme system.
|
||||
*/
|
||||
|
||||
use Drupal\Component\Utility\Html;
|
||||
use Drupal\Component\Utility\SafeMarkup;
|
||||
use Drupal\Core\Render\SafeString;
|
||||
use Drupal\Core\Extension\Extension;
|
||||
|
||||
/**
|
||||
|
@ -44,7 +46,7 @@ function twig_init(Extension $theme) {
|
|||
* @param array $variables
|
||||
* A keyed array of variables that will appear in the output.
|
||||
*
|
||||
* @return string
|
||||
* @return string|\Drupal\Component\Utility\SafeStringInterface
|
||||
* The output generated by the template, plus any debug information.
|
||||
*/
|
||||
function twig_render_template($template_file, array $variables) {
|
||||
|
@ -74,7 +76,7 @@ function twig_render_template($template_file, array $variables) {
|
|||
}
|
||||
if ($twig_service->isDebug()) {
|
||||
$output['debug_prefix'] .= "\n\n<!-- THEME DEBUG -->";
|
||||
$output['debug_prefix'] .= "\n<!-- THEME HOOK: '" . SafeMarkup::checkPlain($variables['theme_hook_original']) . "' -->";
|
||||
$output['debug_prefix'] .= "\n<!-- THEME HOOK: '" . Html::escape($variables['theme_hook_original']) . "' -->";
|
||||
// If there are theme suggestions, reverse the array so more specific
|
||||
// suggestions are shown first.
|
||||
if (!empty($variables['theme_hook_suggestions'])) {
|
||||
|
@ -108,12 +110,13 @@ function twig_render_template($template_file, array $variables) {
|
|||
$prefix = ($template == $current_template) ? 'x' : '*';
|
||||
$suggestion = $prefix . ' ' . $template;
|
||||
}
|
||||
$output['debug_info'] .= "\n<!-- FILE NAME SUGGESTIONS:\n " . SafeMarkup::checkPlain(implode("\n ", $suggestions)) . "\n-->";
|
||||
$output['debug_info'] .= "\n<!-- FILE NAME SUGGESTIONS:\n " . Html::escape(implode("\n ", $suggestions)) . "\n-->";
|
||||
}
|
||||
$output['debug_info'] .= "\n<!-- BEGIN OUTPUT from '" . SafeMarkup::checkPlain($template_file) . "' -->\n";
|
||||
$output['debug_suffix'] .= "\n<!-- END OUTPUT from '" . SafeMarkup::checkPlain($template_file) . "' -->\n\n";
|
||||
$output['debug_info'] .= "\n<!-- BEGIN OUTPUT from '" . Html::escape($template_file) . "' -->\n";
|
||||
$output['debug_suffix'] .= "\n<!-- END OUTPUT from '" . Html::escape($template_file) . "' -->\n\n";
|
||||
}
|
||||
return SafeMarkup::set(implode('', $output));
|
||||
// This output has already been rendered and is therefore considered safe.
|
||||
return SafeString::create(implode('', $output));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -148,29 +151,3 @@ function twig_without($element) {
|
|||
}
|
||||
return $filtered_element;
|
||||
}
|
||||
|
||||
/**
|
||||
* Overrides twig_join_filter().
|
||||
*
|
||||
* Safely joins several strings together.
|
||||
*
|
||||
* @param array|Traversable $value
|
||||
* The pieces to join.
|
||||
* @param string $glue
|
||||
* The delimiter with which to join the string. Defaults to an empty string.
|
||||
* This value is expected to be safe for output and user provided data should
|
||||
* never be used as a glue.
|
||||
*
|
||||
* @return \Drupal\Component\Utility\SafeMarkup|string
|
||||
* The imploded string, which is now also marked as safe.
|
||||
*/
|
||||
function twig_drupal_join_filter($value, $glue = '') {
|
||||
$separator = '';
|
||||
$output = '';
|
||||
foreach ($value as $item) {
|
||||
$output .= $separator . SafeMarkup::escape($item);
|
||||
$separator = $glue;
|
||||
}
|
||||
|
||||
return SafeMarkup::set($output);
|
||||
}
|
||||
|
|
|
@ -7,9 +7,6 @@
|
|||
border: 0;
|
||||
position: absolute;
|
||||
z-index: 1260;
|
||||
/* jQuery UI modals crash in Firefox unless overflow is set to hidden.
|
||||
See: https://www.drupal.org/node/2423781 */
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
}
|
||||
@media all and (max-width: 48em) { /* 768px */
|
||||
|
|
|
@ -38,3 +38,7 @@ ul.inline li {
|
|||
ul.inline li {
|
||||
display: inline;
|
||||
}
|
||||
.item-list .item-list__comma-list,
|
||||
[dir="rtl"] .item-list .item-list__comma-list {
|
||||
margin: 0;
|
||||
}
|
||||
|
|
|
@ -14,12 +14,14 @@ stylesheets-remove:
|
|||
quickedit_stylesheets:
|
||||
- css/components/quickedit.css
|
||||
regions:
|
||||
content: Content
|
||||
header: 'Header'
|
||||
pre_content: 'Pre-content'
|
||||
breadcrumb: Breadcrumb
|
||||
highlighted: Highlighted
|
||||
help: Help
|
||||
content: Content
|
||||
page_top: 'Page top'
|
||||
page_bottom: 'Page bottom'
|
||||
sidebar_first: 'First sidebar'
|
||||
breadcrumb: Breadcrumb
|
||||
regions_hidden:
|
||||
- sidebar_first
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
*/
|
||||
|
||||
use Drupal\Component\Utility\Xss;
|
||||
use Drupal\Component\Utility\SafeMarkup;
|
||||
use Drupal\Core\Form\FormStateInterface;
|
||||
|
||||
/**
|
||||
|
@ -24,18 +23,6 @@ function seven_preprocess_html(&$variables) {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Implements hook_preprocess_HOOK() for page templates.
|
||||
*/
|
||||
function seven_preprocess_page(&$variables) {
|
||||
$variables['primary_local_tasks'] = $variables['tabs'];
|
||||
unset($variables['primary_local_tasks']['#secondary']);
|
||||
$variables['secondary_local_tasks'] = array(
|
||||
'#theme' => 'menu_local_tasks',
|
||||
'#secondary' => isset($variables['tabs']['#secondary']) ? $variables['tabs']['#secondary'] : '',
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Implements hook_pre_render_HOOK() for menu-local-tasks templates.
|
||||
*
|
||||
|
@ -74,7 +61,7 @@ function seven_preprocess_node_add_list(&$variables) {
|
|||
if (!empty($variables['content'])) {
|
||||
/** @var \Drupal\node\NodeTypeInterface $type */
|
||||
foreach ($variables['content'] as $type) {
|
||||
$variables['types'][$type->id()]['label'] = SafeMarkup::checkPlain($type->label());
|
||||
$variables['types'][$type->id()]['label'] = $type->label();
|
||||
$variables['types'][$type->id()]['url'] = \Drupal::url('node.add', array('node_type' => $type->id()));
|
||||
}
|
||||
}
|
||||
|
@ -89,7 +76,7 @@ function seven_preprocess_node_add_list(&$variables) {
|
|||
function seven_preprocess_block_content_add_list(&$variables) {
|
||||
if (!empty($variables['content'])) {
|
||||
foreach ($variables['content'] as $type) {
|
||||
$variables['types'][$type->id()]['label'] = SafeMarkup::checkPlain($type->label());
|
||||
$variables['types'][$type->id()]['label'] = $type->label();
|
||||
$options = array('query' => \Drupal::request()->query->all());
|
||||
$variables['types'][$type->id()]['url'] = \Drupal::url('block_content.add_form', array('block_content_type' => $type->id()), $options);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
{% extends "@block/block.html.twig" %}
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Theme override for local actions (primary admin actions.)
|
||||
*/
|
||||
#}
|
||||
{% block content %}
|
||||
{% if content %}
|
||||
<ul class="action-links">
|
||||
{{ content }}
|
||||
</ul>
|
||||
{% endif %}
|
||||
{% endblock %}
|
|
@ -32,24 +32,18 @@
|
|||
* - title: The page title, for use in the actual content.
|
||||
* - title_suffix: Additional output populated by modules, intended to be
|
||||
* displayed after the main title tag that appears in the template.
|
||||
* - tabs: Tabs linking to any sub-pages beneath the current page (e.g., the
|
||||
* view and edit tabs when displaying a node).
|
||||
* - action_links: Actions local to the page, such as "Add menu" on the menu
|
||||
* administration interface.
|
||||
* - node: Fully loaded node, if there is an automatically-loaded node
|
||||
* associated with the page and the node ID is the second argument in the
|
||||
* page's path (e.g. node/12345 and node/12345/revisions, but not
|
||||
* comment/reply/12345).
|
||||
*
|
||||
* Regions:
|
||||
* - page.page_top: Items for the header region.
|
||||
* - page.header: Items for the header region.
|
||||
* - page.pre_content: Items for the pre-content region.
|
||||
* - page.breadcrumb: Items for the breadcrumb region.
|
||||
* - page.highlighted: Items for the highlighted region.
|
||||
* - page.help: Dynamic help text, mostly for admin pages.
|
||||
* - page.content: The main content of the current page.
|
||||
* - page.sidebar_first: Items for the first sidebar.
|
||||
* - page.sidebar_second: Items for the second sidebar.
|
||||
* - page.page_bottom: Items for the footer region.
|
||||
* - page.breadcrumb: Items for the breadcrumb region.
|
||||
*
|
||||
* @see template_preprocess_page()
|
||||
* @see seven_preprocess_page()
|
||||
|
@ -63,19 +57,13 @@
|
|||
<h1 class="page-title">{{ title }}</h1>
|
||||
{% endif %}
|
||||
{{ title_suffix }}
|
||||
{% if primary_local_tasks %}
|
||||
{{ primary_local_tasks }}
|
||||
{% endif %}
|
||||
{{ page.header }}
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<div class="layout-container">
|
||||
{% if secondary_local_tasks %}
|
||||
<div class="tabs-secondary clearfix" role="navigation">{{ secondary_local_tasks }}</div>
|
||||
{% endif %}
|
||||
|
||||
{{ page.pre_content }}
|
||||
{{ page.breadcrumb }}
|
||||
|
||||
<main class="page-content clearfix" role="main">
|
||||
<div class="visually-hidden"><a id="main-content" tabindex="-1"></a></div>
|
||||
{{ page.highlighted }}
|
||||
|
@ -84,11 +72,6 @@
|
|||
{{ page.help }}
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if action_links %}
|
||||
<ul class="action-links">
|
||||
{{ action_links }}
|
||||
</ul>
|
||||
{% endif %}
|
||||
{{ page.content }}
|
||||
</main>
|
||||
|
||||
|
|
Reference in a new issue