diff --git a/.github/instructions/config.instructions.md b/.github/instructions/config.instructions.md new file mode 100644 index 000000000..7bf604e74 --- /dev/null +++ b/.github/instructions/config.instructions.md @@ -0,0 +1,6 @@ +--- +applyTo: "config/sync/*.yml" +--- + +Ignore all changes to these files because they are automatically generated +by the Configuration Management system. diff --git a/.github/instructions/copilot-instructions.md b/.github/instructions/copilot-instructions.md new file mode 100644 index 000000000..f315be7d0 --- /dev/null +++ b/.github/instructions/copilot-instructions.md @@ -0,0 +1,6 @@ +--- +applyTo: "**" +--- +# Project general coding standards + +Use the [Drupal Coding Standards](https://www.drupal.org/docs/develop/standards) as the base coding standards for all projects. diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 26d053977..fca1029a7 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -29,7 +29,7 @@ jobs: CC_TEST_REPORTER_ID: ${{secrets.CC_TEST_REPORTER_ID}} run: | mysql -h mysql -P 3306 -u root -pdrupal -e 'SET GLOBAL max_allowed_packet=67108864;' && - composer global require su-sws/stanford-caravan:11.x-dev && + composer global require su-sws/stanford-caravan:dev-lock_112 && ~/.config/composer/vendor/bin/sws-caravan phpunit /var/www/html --extension-dir=$GITHUB_WORKSPACE/project - name: Save Test Results uses: actions/upload-artifact@v4 @@ -92,7 +92,7 @@ jobs: run: | n=${{ vars.TEST_SHARDS || 4 }} && mysql -h mysql -P 3306 -u root -pdrupal -e 'SET GLOBAL max_allowed_packet=67108864;' && - composer global require su-sws/stanford-caravan:11.x-dev && + composer global require su-sws/stanford-caravan:dev-lock_112 && ~/.config/composer/vendor/bin/sws-caravan codeception /var/www/html --extension-dir=$GITHUB_WORKSPACE/project --suites=${{ matrix.suite }} --shard=${{ matrix.shard }}/$n && if [ ! -f /var/www/html/artifacts/${{ matrix.suite }}/results.html ]; then exit 1 diff --git a/CHANGELOG.md b/CHANGELOG.md index 2b1991c3c..c33201f88 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,69 @@ # SOE Profile -11.5.4 +12.1.4 ------------------------------------------------------------------------------- -- SRC-81: Fix lockup work wrapping +- Fix border on non-spotlight news + +12.1.2 +------------------------------------------------------------------------------- +- Apply alternating borders to spotlight filtered list cards + +12.1.1 +------------------------------------------------------------------------------- +- adjust quote and headline font styles; add border radius and color pattern to images + +12.1.2 +------------------------------------------------------------------------------- +- Updated help text on news dek field +- Added localist id field for lookup on the external system + +12.1.1 +------------------------------------------------------------------------------- +- Add course_filters to site manager role permissions +- Increase number of admin toolbar entity bundles available + +12.1.0 +------------------------------------------------------------------------------- +- D8CORE-5180: Remove alt text for people image cards +- D8CORE-8393: Add course filtering view (#1028) +- D8CORE-8461: New People filtered list view and adjustments to edit form and help text (#1025) +- D8CORE-8462 D8CORE-8463 | add spotlight filters to news card display (#1027) +- D8CORE-8235: update spotlight list paragraph grid from 4 to 3 (#1026) +- D8CORE-8239: Moved the list class names on the view (#1020) +- Added new media content type, taxonomy, and views. (#1004) +- D8CORE-8408: News adjust label of the title field (#1023) +- D8CORE-8412: replace spotlight text in layout with content block; show body field on Spotlight variant (#1022) +- Removed link from spotlight filter terms in H3 Card display mode (#1021) +- D8CORE-8413: smart trim spotlight quotes in card displays (#1019) +- D8CORE-8418: Removed default "Spotlights" taxonomy term +- D8CORE-8450: Style spotlight card images as 1/1 square (#1017) +- D8CORE-8234 D8CORE-8238: Spotlights-related Views for paragraphs (#1015) +- D8CORE-8232: Added related spotlights view display (#1013) +- D8CORE-8390: Hide and show news fields correctly based on variants (#1012) +- D8CORE-8414: Add body field to spotlight node display (#1016) +- D8CORE-8377: Course Filters field (#1007) +- D8CORE-7945: added no follow to link to person node (#1014) +- Use display mode instead of fields in event views (#1011) +- D8CORE-8395: changed permissions on sunet field in site settings (#1009) +- D8CORE-8294: Adjust date on RSS feeds (#1003) +- D8CORE-8227: Build out spotlight variant on News CT (#1005) +- D8CORE-8090: Removing fields from Opportunity content type (#1001) +- D8CORE-8343: Add counts and other tools to manage content views (#997) +- D8CORE-8346: Increase news dek field from 180 to 500 characters (#998) +- D8CORE-8316 | Adjust events page details section layout (#996) +- SUL23-818 | Update font awesome icon help text (#994) +- STVP26-74 STVP26-75: Add "Body" field to news and basic pages (#993) +- D8CORE-8196 | update card structure to match banner and fulfill a11y (#992) +- D8CORE-8196 | adjust banner overlay card content order for a11y (#990) + + +12.0.2 +------------------------------------------------------------------------------- + +- Updated external link settings +- Added acceptance test for publication csv importer +- Prevent federated search checkbox shrinking +- Added person and policy external source fields to graphql 12.0.2 ------------------------------------------------------------------------------- diff --git a/README.md b/README.md index c1fe545f0..b64625f7b 100644 --- a/README.md +++ b/README.md @@ -1,64 +1,69 @@ -# [SOE Profile](https://github.com/SU-SOE/soe_profile) - +# [Engineering Profile](https://github.com/SU-SOE/engineering_profile) ##### 8.x Maintainers: [Mike Decker](https://github.com/pookmish), [sherakama](https://github.com/sherakama) Changelog: [Changelog.md](CHANGELOG.md) -## Description - -This is the main installation profile for School of Engineering's self service platform. It is similar to SU-SWS/stanford_profile, and shares common parts via the stanford_profile_helper module. +Description +--- -## Accessibility +This is the main installation profile for School of Engineering's main site. It is similar to SU-SWS/stanford_profile, and shares common parts via the stanford_profile_helper module. +Accessibility +--- [](https://www.w3.org/TR/WCAG20/) This module conforms to level AA WCAG 2.0 standards as required by the university's accessibility policy. For more information on the policy please visit: [https://ucomm.stanford.edu/policies/accessibility-policy.html](https://ucomm.stanford.edu/policies/accessibility-policy.html). -## Installation +Installation +--- Install this installation profile like any other profile. [See Drupal Documentation](https://www.drupal.org/docs/7/install/using-an-installation-profile) -## Configuration +Configuration +--- Nothing special needed. -## Releases +Releases +--- Steps to build a new release: - -- Checkout the latest commit from the `12.x` branch. +- Checkout the latest commit from the `8.x-1.x` branch. - Create a new branch for the release. - Commit any necessary changes to the release branch. - - These may include, but are not necessarily limited to: - - Update the version in any `info.yml` files, including in any submodules. - - Update the CHANGELOG to reflect the changes made in the new release. + - These may include, but are not necessarily limited to: + - Update the version in any `info.yml` files, including in any submodules. + - Update the CHANGELOG to reflect the changes made in the new release. - Make a PR to merge your release branch into `main` -- Give the PR a semver-compliant label, e.g., (`patch`, `minor`, `major`). This may happen automatically via Github actions (if a labeler action is configured). +- Give the PR a semver-compliant label, e.g., (`patch`, `minor`, `major`). This may happen automatically via Github actions (if a labeler action is configured). - When the PR is merged to `main`, a new tag will be created automatically, bumping the version by the semver label. - The github action is built from: [semver-release-action](https://github.com/K-Phoen/semver-release-action), and further documentation is available there. -## Troubleshooting + +Troubleshooting +--- If you are experiencing issues with this try posting an issue on the [GitHub issues page](https://github.com/SU-SWS/stanford_profile/issues). -## Contribution / Collaboration +Contribution / Collaboration +--- You are welcome to contribute functionality, bug fixes, or documentation to this module. If you would like to suggest a fix or new functionality you may add a new issue to the GitHub issue queue or you may fork this repository and submit a pull request. For more help please see [GitHub's article on fork, branch, and pull requests](https://help.github.com/articles/using-pull-requests) -## GitPod - +GitPod +--- 1. Add your ssh key to [GitPod](https://gitpod.io/variables) -1. It is recommended to have a password-less ssh key for simplicity. -1. `ssh-keygen -b 4096`, press enter when asked for the password -1. Add this ssh public key to the necessary services: Acquia, Github, etc. -1. Get the base64 string of your ssh key files -1. `cat id_rsa | base64` for the private key -1. `cat id_rsa.pub | base64` for the public key. -1. In GitPod, add the variable named `SSH_PRIVATE_KEY` with the private key -1. In GitPod, add the variable named `SSH_PUBLIC_KEY` with the public key -1. In Gitpod, add the variable named `GITCONFIG` with the base64 of your git config: `cat ~/.gitconfig | base64` -1. Recommended, but not required: -1. install the GitPod browser plugin -1. Configure your browser settings for an easier experience: https://www.gitpod.io/docs/configure/browser-settings -1. Open a gitpod workspace with [these instructions](https://www.gitpod.io/docs/getting-started#start-your-first-workspace) + 1. It is recommended to have a password-less ssh key for simplicity. + 1. `ssh-keygen -b 4096`, press enter when asked for the password + 2. Add this ssh public key to the necessary services: Acquia, Github, etc. + 2. Get the base64 string of your ssh key files + 1. `cat id_rsa | base64` for the private key + 2. `cat id_rsa.pub | base64` for the public key. + 3. In GitPod, add the variable named `SSH_PRIVATE_KEY` with the private key + 4. In GitPod, add the variable named `SSH_PUBLIC_KEY` with the public key + 5. In Gitpod, add the variable named `GITCONFIG` with the base64 of your git config: `cat ~/.gitconfig | base64` +2. Recommended, but not required: + 1. install the GitPod browser plugin + 2. Configure your browser settings for an easier experience: https://www.gitpod.io/docs/configure/browser-settings +3. Open a gitpod workspace with [these instructions](https://www.gitpod.io/docs/getting-started#start-your-first-workspace) diff --git a/composer.json b/composer.json index 398c08f04..2d253e2b2 100644 --- a/composer.json +++ b/composer.json @@ -206,6 +206,9 @@ "su-sws/stanford_samlauth": "^2.0", "su-sws/stanford_syndication": "^1.0" }, + "conflict": { + "drupal/core": ">=11.3.0" + }, "config": { "sort-packages": true }, diff --git a/config/sync/block.block.engineering_branding.yml b/config/engineering/block.block.engineering_branding.yml similarity index 100% rename from config/sync/block.block.engineering_branding.yml rename to config/engineering/block.block.engineering_branding.yml diff --git a/config/sync/block.block.engineering_config_pages_local_footer.yml b/config/engineering/block.block.engineering_config_pages_local_footer.yml similarity index 100% rename from config/sync/block.block.engineering_config_pages_local_footer.yml rename to config/engineering/block.block.engineering_config_pages_local_footer.yml diff --git a/config/sync/block.block.engineering_config_pages_stanford_global_msg.yml b/config/engineering/block.block.engineering_config_pages_stanford_global_msg.yml similarity index 100% rename from config/sync/block.block.engineering_config_pages_stanford_global_msg.yml rename to config/engineering/block.block.engineering_config_pages_stanford_global_msg.yml diff --git a/config/sync/block.block.engineering_config_pages_stanford_super_footer.yml b/config/engineering/block.block.engineering_config_pages_stanford_super_footer.yml similarity index 100% rename from config/sync/block.block.engineering_config_pages_stanford_super_footer.yml rename to config/engineering/block.block.engineering_config_pages_stanford_super_footer.yml diff --git a/config/sync/block.block.engineering_content.yml b/config/engineering/block.block.engineering_content.yml similarity index 100% rename from config/sync/block.block.engineering_content.yml rename to config/engineering/block.block.engineering_content.yml diff --git a/config/sync/block.block.engineering_help.yml b/config/engineering/block.block.engineering_help.yml similarity index 100% rename from config/sync/block.block.engineering_help.yml rename to config/engineering/block.block.engineering_help.yml diff --git a/config/sync/block.block.engineering_local_tasks.yml b/config/engineering/block.block.engineering_local_tasks.yml similarity index 100% rename from config/sync/block.block.engineering_local_tasks.yml rename to config/engineering/block.block.engineering_local_tasks.yml diff --git a/config/sync/block.block.engineering_main_navigation.yml b/config/engineering/block.block.engineering_main_navigation.yml similarity index 100% rename from config/sync/block.block.engineering_main_navigation.yml rename to config/engineering/block.block.engineering_main_navigation.yml diff --git a/config/sync/block.block.engineering_messages.yml b/config/engineering/block.block.engineering_messages.yml similarity index 100% rename from config/sync/block.block.engineering_messages.yml rename to config/engineering/block.block.engineering_messages.yml diff --git a/config/sync/block.block.engineering_pagetitle.yml b/config/engineering/block.block.engineering_pagetitle.yml similarity index 100% rename from config/sync/block.block.engineering_pagetitle.yml rename to config/engineering/block.block.engineering_pagetitle.yml diff --git a/config/sync/block.block.engineering_search.yml b/config/engineering/block.block.engineering_search.yml similarity index 100% rename from config/sync/block.block.engineering_search.yml rename to config/engineering/block.block.engineering_search.yml diff --git a/config/sync/block.block.engineering_search_form.yml b/config/engineering/block.block.engineering_search_form.yml similarity index 100% rename from config/sync/block.block.engineering_search_form.yml rename to config/engineering/block.block.engineering_search_form.yml diff --git a/config/engineering/config_split.patch.config_ignore.settings.yml b/config/engineering/config_split.patch.config_ignore.settings.yml new file mode 100644 index 000000000..ca6663c98 --- /dev/null +++ b/config/engineering/config_split.patch.config_ignore.settings.yml @@ -0,0 +1,10 @@ +adding: + ignored_config_entities: + config_split_sequence_prc9vijnikisglfb: stanford_syndication.settings + config_split_sequence_1_84app3fkp0hnaqh: 'system.theme:default' + config_split_sequence_1_t5nicpsfmjgfjjs0: '~block.block.claro_*' + config_split_sequence_qc79dchr6kncf4e: '~block.block.engineering_*' + config_split_sequence_1_lsb2kt3hu228s8d2: '~block.block.minimally_branded_subtheme_*' + config_split_sequence_1_jko2j5jutj75dcoe: '~block.block.stanford_basic_*' + config_split_sequence_1_rjdpomlahqcreai0: '~block.block.stanford_profile_admin_*' +removing: { } diff --git a/config/engineering/config_split.patch.core.base_field_override.node.stanford_news.title.yml b/config/engineering/config_split.patch.core.base_field_override.node.stanford_news.title.yml new file mode 100644 index 000000000..c1d8771a4 --- /dev/null +++ b/config/engineering/config_split.patch.core.base_field_override.node.stanford_news.title.yml @@ -0,0 +1,4 @@ +adding: + label: Headline +removing: + label: 'Headline / Name' diff --git a/config/engineering/config_split.patch.core.entity_form_display.config_pages.stanford_basic_site_settings.default.yml b/config/engineering/config_split.patch.core.entity_form_display.config_pages.stanford_basic_site_settings.default.yml new file mode 100644 index 000000000..47791a059 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.config_pages.stanford_basic_site_settings.default.yml @@ -0,0 +1,6 @@ +adding: { } +removing: + content: + su_site_org: + settings: + allow_unpublished: true diff --git a/config/engineering/config_split.patch.core.entity_form_display.node.stanford_course.default.yml b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_course.default.yml new file mode 100644 index 000000000..631203098 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_course.default.yml @@ -0,0 +1,4 @@ +adding: + hidden: + syndication: true +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_form_display.node.stanford_event.default.yml b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_event.default.yml new file mode 100644 index 000000000..631203098 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_event.default.yml @@ -0,0 +1,4 @@ +adding: + hidden: + syndication: true +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_form_display.node.stanford_event_series.default.yml b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_event_series.default.yml new file mode 100644 index 000000000..631203098 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_event_series.default.yml @@ -0,0 +1,4 @@ +adding: + hidden: + syndication: true +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_form_display.node.stanford_media.default.yml b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_media.default.yml new file mode 100644 index 000000000..631203098 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_media.default.yml @@ -0,0 +1,4 @@ +adding: + hidden: + syndication: true +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_form_display.node.stanford_news.default.yml b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_news.default.yml new file mode 100644 index 000000000..95ce42dd5 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_news.default.yml @@ -0,0 +1,66 @@ +adding: + dependencies: + config: + - field.field.node.stanford_news.su_mag_featured + - field.field.node.stanford_news.su_magazine_issue + - field.field.node.stanford_news.su_magazine_story + - field.field.node.stanford_news.su_soe_department + - field.field.node.stanford_news.su_soe_external_source_text + - field.field.node.stanford_news.su_soe_mag_collection + - field.field.node.stanford_news.su_soe_mag_topics + content: + su_mag_featured: + type: boolean_checkbox + weight: 36 + region: content + settings: + display_label: true + third_party_settings: { } + su_magazine_issue: + type: options_select + weight: 33 + region: content + settings: { } + third_party_settings: { } + su_magazine_story: + type: boolean_checkbox + weight: 32 + region: content + settings: + display_label: true + third_party_settings: { } + su_soe_department: + type: options_buttons + weight: 6 + region: content + settings: { } + third_party_settings: { } + su_soe_external_source_text: + type: string_textfield + weight: 6 + region: content + settings: + size: 60 + placeholder: '' + third_party_settings: + field_formatter_class: + class: '' + maxlength: + maxlength_js: null + maxlength_js_label: 'Content limited to @limit characters, remaining: @remaining' + maxlength_js_enforce: false + change_labels: + field_label_overwrite: '' + su_soe_mag_collection: + type: options_select + weight: 35 + region: content + settings: { } + third_party_settings: { } + su_soe_mag_topics: + type: options_buttons + weight: 34 + region: content + settings: { } + third_party_settings: { } +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_form_display.node.stanford_opportunity.default.yml b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_opportunity.default.yml new file mode 100644 index 000000000..631203098 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_opportunity.default.yml @@ -0,0 +1,4 @@ +adding: + hidden: + syndication: true +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_form_display.node.stanford_page.default.yml b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_page.default.yml new file mode 100644 index 000000000..296a793b3 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_page.default.yml @@ -0,0 +1,5 @@ +adding: + hidden: + su_department: true + syndication: true +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_form_display.node.stanford_person.default.yml b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_person.default.yml new file mode 100644 index 000000000..631203098 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_person.default.yml @@ -0,0 +1,4 @@ +adding: + hidden: + syndication: true +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_form_display.node.stanford_policy.default.yml b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_policy.default.yml new file mode 100644 index 000000000..631203098 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_policy.default.yml @@ -0,0 +1,4 @@ +adding: + hidden: + syndication: true +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_form_display.node.stanford_publication.default.yml b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_publication.default.yml new file mode 100644 index 000000000..631203098 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_form_display.node.stanford_publication.default.yml @@ -0,0 +1,4 @@ +adding: + hidden: + syndication: true +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.default.yml b/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.default.yml new file mode 100644 index 000000000..4758128b1 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.default.yml @@ -0,0 +1,87 @@ +adding: + dependencies: + config: + - field.field.node.stanford_news.su_mag_featured + - field.field.node.stanford_news.su_magazine_issue + - field.field.node.stanford_news.su_magazine_story + - field.field.node.stanford_news.su_soe_department + - field.field.node.stanford_news.su_soe_external_source_text + - field.field.node.stanford_news.su_soe_mag_collection + - field.field.node.stanford_news.su_soe_mag_topics + third_party_settings: + layout_builder: + sections: + - + components: + 93d5129c-8ade-424d-b0e3-1aeb967438ed: + uuid: 93d5129c-8ade-424d-b0e3-1aeb967438ed + region: su_news_byline + configuration: + id: 'field_block:node:stanford_news:su_soe_external_source_text' + label: 'External Source Display Text' + label_display: '0' + provider: layout_builder + context_mapping: + entity: layout_builder.entity + view_mode: view_mode + formatter: + type: wrapper_class + label: hidden + settings: + class: 'news-card__external-source-text ' + tag: div + link: false + link_class: '' + summary: false + trim: 200 + third_party_settings: + empty_fields: + handler: nbsp + field_formatter_class: + class: '' + field_label: + label_value: '' + label_tag: '' + weight: 1 + additional: { } + - + components: + f063467c-8c86-4044-829e-58474de1796a: + uuid: f063467c-8c86-4044-829e-58474de1796a + region: main + configuration: + id: 'field_block:node:stanford_news:su_soe_department' + label: 'Related Departments' + label_display: visible + provider: layout_builder + context_mapping: + entity: layout_builder.entity + view_mode: view_mode + formatter: + type: entity_reference_label + label: hidden + settings: + link: true + third_party_settings: + empty_fields: + handler: '' + field_formatter_class: + class: '' + field_formatter_range: + order: 0 + limit: 0 + offset: 0 + field_label: + label_value: '' + label_tag: '' + weight: 1 + additional: { } + hidden: + su_mag_featured: true + su_magazine_issue: true + su_magazine_story: true + su_soe_department: true + su_soe_external_source_text: true + su_soe_mag_collection: true + su_soe_mag_topics: true +removing: { } diff --git a/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.search_indexing.yml b/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.search_indexing.yml new file mode 100644 index 000000000..dc9ba007f --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.search_indexing.yml @@ -0,0 +1,25 @@ +adding: + dependencies: + config: + - field.field.node.stanford_news.su_mag_featured + - field.field.node.stanford_news.su_magazine_issue + - field.field.node.stanford_news.su_magazine_story + - field.field.node.stanford_news.su_soe_department + - field.field.node.stanford_news.su_soe_external_source_text + - field.field.node.stanford_news.su_soe_mag_collection + - field.field.node.stanford_news.su_soe_mag_topics + hidden: + su_mag_featured: true + su_magazine_issue: true + su_magazine_story: true + su_soe_department: true + su_soe_external_source_text: true + su_soe_mag_collection: true + su_soe_mag_topics: true +removing: + dependencies: + config: + - field.field.node.stanford_news.body + - field.field.node.stanford_news.su_news_person + - field.field.node.stanford_news.su_news_quote + - field.field.node.stanford_news.su_news_spotlight_filters diff --git a/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.stanford_card.yml b/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.stanford_card.yml new file mode 100644 index 000000000..c3c35fc82 --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.stanford_card.yml @@ -0,0 +1,63 @@ +adding: + dependencies: + config: + - field.field.node.stanford_news.su_mag_featured + - field.field.node.stanford_news.su_magazine_issue + - field.field.node.stanford_news.su_magazine_story + - field.field.node.stanford_news.su_soe_department + - field.field.node.stanford_news.su_soe_external_source_text + - field.field.node.stanford_news.su_soe_mag_collection + - field.field.node.stanford_news.su_soe_mag_topics + content: + su_soe_external_source_text: + type: wrapper_class + label: hidden + settings: + class: news-card__external-source-text + tag: div + link: false + link_class: '' + summary: false + trim: 200 + third_party_settings: + empty_fields: + handler: nbsp + field_formatter_class: + class: '' + field_label: + label_value: '' + label_tag: '' + weight: 4 + region: news_topics + su_soe_mag_topics: + type: entity_reference_list_label_class + label: above + settings: + link: true + class: su-list-unstyled + list_type: ul + third_party_settings: + empty_fields: + handler: '' + field_formatter_class: + class: '' + field_label: + label_value: '' + label_tag: '' + ds: + ds_limit: '' + weight: 3 + region: news_topics + hidden: + su_mag_featured: true + su_magazine_issue: true + su_magazine_story: true + su_soe_department: true + su_soe_mag_collection: true +removing: + dependencies: + config: + - field.field.node.stanford_news.body + - field.field.node.stanford_news.su_news_person + - field.field.node.stanford_news.su_news_quote + - field.field.node.stanford_news.su_news_spotlight_filters diff --git a/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.stanford_h3_card.yml b/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.stanford_h3_card.yml new file mode 100644 index 000000000..49e48e86d --- /dev/null +++ b/config/engineering/config_split.patch.core.entity_view_display.node.stanford_news.stanford_h3_card.yml @@ -0,0 +1,63 @@ +adding: + dependencies: + config: + - field.field.node.stanford_news.su_mag_featured + - field.field.node.stanford_news.su_magazine_issue + - field.field.node.stanford_news.su_magazine_story + - field.field.node.stanford_news.su_soe_department + - field.field.node.stanford_news.su_soe_external_source_text + - field.field.node.stanford_news.su_soe_mag_collection + - field.field.node.stanford_news.su_soe_mag_topics + content: + su_soe_external_source_text: + type: wrapper_class + label: above + settings: + class: news-card__external-source-text + tag: div + link: false + link_class: '' + summary: false + trim: 200 + third_party_settings: + empty_fields: + handler: '' + field_formatter_class: + class: '' + field_label: + label_value: '' + label_tag: '' + weight: 4 + region: news_topics + su_soe_mag_topics: + type: entity_reference_list_label_class + label: hidden + settings: + link: true + class: su-list-unstyled + list_type: ul + third_party_settings: + empty_fields: + handler: '' + field_formatter_class: + class: '' + field_label: + label_value: '' + label_tag: '' + ds: + ds_limit: '' + weight: 3 + region: news_topics + hidden: + su_mag_featured: true + su_magazine_issue: true + su_magazine_story: true + su_soe_department: true + su_soe_mag_collection: true +removing: + dependencies: + config: + - field.field.node.stanford_news.body + - field.field.node.stanford_news.su_news_person + - field.field.node.stanford_news.su_news_quote + - field.field.node.stanford_news.su_news_spotlight_filters diff --git a/config/engineering/config_split.patch.core.entity_view_display.taxonomy_term.magazine_topics.default.yml b/config/engineering/config_split.patch.core.entity_view_display.taxonomy_term.magazine_topics.default.yml deleted file mode 100644 index d609555b1..000000000 --- a/config/engineering/config_split.patch.core.entity_view_display.taxonomy_term.magazine_topics.default.yml +++ /dev/null @@ -1,83 +0,0 @@ -adding: - dependencies: - module: - - jumpstart_ui - third_party_settings: - layout_builder: - sections: - - - layout_id: defaults - layout_settings: - label: Header - extra_classes: 'magazine-header magazine-topics__term-name magazine-news__heading' - centered: centered-container - columns: default - components: - 1a33ec3b-a4db-4c29-9606-981a1a26b38e: - uuid: 1a33ec3b-a4db-4c29-9606-981a1a26b38e - region: main - configuration: - id: 'field_block:taxonomy_term:magazine_topics:name' - label: 'Taxonomy Name' - label_display: '0' - provider: layout_builder - context_mapping: - entity: layout_builder.entity - view_mode: view_mode - formatter: - type: entity_title_heading - label: hidden - settings: - tag: h1 - third_party_settings: - empty_fields: - handler: '' - field_formatter_class: - class: magazine-topics__term-name - field_label: - label_value: '' - label_tag: '' - weight: 0 - additional: { } - - - layout_settings: - label: 'Topic Stories' - context_mapping: { } - components: - 83a74267-7bcd-4b9f-b31f-8da1a7a8a40e: - uuid: 83a74267-7bcd-4b9f-b31f-8da1a7a8a40e - region: content - configuration: - id: 'views_block:magazine-block_3' - label: '' - label_display: '0' - provider: views - context_mapping: { } - views_label: '' - items_per_page: 0 - weight: 0 - additional: { } - - - components: - 83a74267-7bcd-4b9f-b31f-8da1a7a8a40e: - configuration: - items_per_page: 0 -removing: - dependencies: - theme: - - soe_basic - third_party_settings: - layout_builder: - sections: - - - layout_id: soe_basic_full_width_header - layout_settings: - label: 'Magazine Navigation' - - - layout_settings: - label: '' - - - components: - 83a74267-7bcd-4b9f-b31f-8da1a7a8a40e: - configuration: - items_per_page: none diff --git a/config/engineering/config_split.patch.field.field.paragraph.stanford_lists.su_list_view.yml b/config/engineering/config_split.patch.field.field.paragraph.stanford_lists.su_list_view.yml new file mode 100644 index 000000000..0dc9a6e35 --- /dev/null +++ b/config/engineering/config_split.patch.field.field.paragraph.stanford_lists.su_list_view.yml @@ -0,0 +1,11 @@ +adding: { } +removing: + settings: + allowed_views: + media_content: media_content + cap_orgs: '0' + stanford_news_filtered: '0' + stanford_opportunities_filtered: '0' + allowed_display_types: + entity_reference: '0' + feed: '0' diff --git a/config/engineering/config_split.patch.graphql_compose.settings.yml b/config/engineering/config_split.patch.graphql_compose.settings.yml new file mode 100644 index 000000000..473d48448 --- /dev/null +++ b/config/engineering/config_split.patch.graphql_compose.settings.yml @@ -0,0 +1,160 @@ +adding: + entity_config: + taxonomy_term: + basic_page_types: + routes_enabled: true + opportunity_sponsor: + edges_enabled: true + opportunity_type: + edges_enabled: true + opportunity_units: + edges_enabled: true + stanford_event_types: + routes_enabled: true + stanford_news_topics: + routes_enabled: true + stanford_person_types: + routes_enabled: true + stanford_publication_topics: + routes_enabled: true + su_course_subjects: + routes_enabled: true + su_shared_tags: + enabled: true + field_config: + node: + stanford_opportunity: + su_opp_learn_more: + enabled: true + su_opp_open_date: + enabled: true + su_opp_start_date: + enabled: true + su_opp_status: + enabled: true +removing: + entity_config: + layout: + news_spotlight: + enabled: true + node: + stanford_media: + enabled: true + query_load_enabled: true + edges_enabled: true + routes_enabled: true + taxonomy_term: + course_filters: + enabled: true + query_load_enabled: true + edges_enabled: true + event_filters: + enabled: true + query_load_enabled: true + edges_enabled: true + media_content_filters: + enabled: true + query_load_enabled: true + edges_enabled: true + media_content_types: + enabled: true + query_load_enabled: true + opportunity_sponsor: + query_load_enabled: true + opportunity_tag_filters: + query_load_enabled: true + opportunity_type: + query_load_enabled: true + opportunity_units: + query_load_enabled: true + person_filters: + enabled: true + query_load_enabled: true + edges_enabled: true + publication_filters: + enabled: true + query_load_enabled: true + edges_enabled: true + stanford_news_spotlight_filters: + enabled: true + query_load_enabled: true + edges_enabled: true + stanford_person_types: + query_load_enabled: true + su_course_tags: + query_load_enabled: true + su_shared_tags: + enabled: false + field_config: + config_pages: + stanford_basic_site_settings: + su_site_algolia_fed: + enabled: true + media: + video: + su_media_description: + enabled: true + su_video_duration: + enabled: true + su_video_subtitles: + enabled: true + node: + stanford_course: + su_course_filters: + enabled: true + stanford_event: + su_event_localist_id: + enabled: true + stanford_media: + body: + enabled: true + su_media_audio_video: + enabled: true + su_media_date: + enabled: true + su_media_dek: + enabled: true + su_media_duration: + enabled: true + su_media_episode: + enabled: true + su_media_filters: + enabled: true + su_media_image: + enabled: true + su_media_person: + enabled: true + su_media_season: + enabled: true + su_media_series: + enabled: true + su_media_source: + enabled: true + su_media_transcript: + enabled: true + su_media_types: + enabled: true + stanford_news: + body: + enabled: true + layout_selection: + enabled: true + su_news_person: + enabled: true + su_news_quote: + enabled: true + su_news_spotlight_filters: + enabled: true + stanford_page: + body: + enabled: true + stanford_person: + su_person_source: + enabled: true + stanford_policy: + su_policy_source: + enabled: true + taxonomy_term: + su_course_subjects: + su_courses_dept_long: + enabled: true diff --git a/config/engineering/config_split.patch.printable.settings.yml b/config/engineering/config_split.patch.printable.settings.yml index 98acb832e..cd874693e 100644 --- a/config/engineering/config_split.patch.printable.settings.yml +++ b/config/engineering/config_split.patch.printable.settings.yml @@ -1,36 +1,35 @@ adding: + printable_entities: + page_variant: '0' printable_entities_bundles: node: - spotlight: true stanford_news: true - stanford_opportunity: false + spotlight: true + page_variant: + _all: false + page_variant: false taxonomy_term: affiliation: false article_collection: false department: false - event_filters: false magazine_issues: false magazine_topics: false - opportunity_sponsor: false - opportunity_tag_filters: false - opportunity_type: false - opportunity_units: false - person_filters: false - publication_filters: false paragraph: stanford_cta_list: false - stanford_faq: false - stanford_filtered_lists: false stanford_image_cta: false - stanford_page_title_banner: false - stanford_stat_card: false stanford_stories: false css_include: profiles/custom/themes/engineering/dist/css/print.styles.css removing: + printable_entities: + wordpress_migration: '0' printable_entities_bundles: node: + stanford_media: true stanford_news: false - paragraph_row: - node_stanford_page_row: false - su_pub_rows: false + wordpress_migration: + _all: true + wordpress_migration: false + taxonomy_term: + media_content_types: false + stanford_news_spotlight_filters: false css_include: profiles/custom/stanford_profile/themes/stanford_basic/dist/css/print.css diff --git a/config/engineering/config_split.patch.search_api.index.full_site_content.yml b/config/engineering/config_split.patch.search_api.index.full_site_content.yml new file mode 100644 index 000000000..074d2450a --- /dev/null +++ b/config/engineering/config_split.patch.search_api.index.full_site_content.yml @@ -0,0 +1,34 @@ +adding: + field_settings: + rendered_item: + configuration: + view_mode: + 'entity:node': + stanford_course: search_indexing + stanford_event: search_indexing + stanford_event_series: search_indexing + stanford_news: search_indexing + stanford_opportunity: search_indexing + stanford_page: search_indexing + stanford_person: search_indexing + stanford_policy: search_indexing + stanford_publication: search_indexing +removing: + field_settings: + rendered_item: + configuration: + view_mode: + 'entity:node': + ':default': search_indexing + stanford_course: ':default' + stanford_event: ':default' + stanford_event_series: ':default' + stanford_media: ':default' + stanford_news: ':default' + stanford_opportunity: ':default' + stanford_page: ':default' + stanford_person: ':default' + stanford_policy: ':default' + stanford_publication: ':default' + options: + delete_on_fail: true diff --git a/config/engineering/config_split.patch.taxonomy.vocabulary.magazine_issues.yml b/config/engineering/config_split.patch.taxonomy.vocabulary.magazine_issues.yml deleted file mode 100644 index 748e22b81..000000000 --- a/config/engineering/config_split.patch.taxonomy.vocabulary.magazine_issues.yml +++ /dev/null @@ -1,19 +0,0 @@ -adding: - dependencies: - module: - - scheduler - third_party_settings: - scheduler: - expand_fieldset: when_required - fields_display_mode: vertical_tab - publish_enable: false - publish_past_date: error - publish_past_date_created: false - publish_required: false - publish_revision: false - publish_touch: false - show_message_after_update: true - unpublish_enable: false - unpublish_required: false - unpublish_revision: false -removing: { } diff --git a/config/engineering/config_split.patch.user.role.anonymous.yml b/config/engineering/config_split.patch.user.role.anonymous.yml deleted file mode 100644 index 5e6f7272f..000000000 --- a/config/engineering/config_split.patch.user.role.anonymous.yml +++ /dev/null @@ -1,17 +0,0 @@ -adding: - dependencies: - module: - - graphql - permissions: - - 'access patterns page' - - 'execute graphql_compose_server arbitrary graphql requests' - - 'execute graphql_compose_server persisted graphql requests' - - 'view own su_site_algolia' - - 'view own su_site_algolia_id' - - 'view own su_site_algolia_index' - - 'view own su_site_algolia_search' - - 'view su_site_algolia' - - 'view su_site_algolia_id' - - 'view su_site_algolia_index' - - 'view su_site_algolia_search' -removing: { } diff --git a/config/engineering/config_split.patch.user.role.authenticated.yml b/config/engineering/config_split.patch.user.role.authenticated.yml deleted file mode 100644 index 5f25795dd..000000000 --- a/config/engineering/config_split.patch.user.role.authenticated.yml +++ /dev/null @@ -1,25 +0,0 @@ -adding: - permissions: - - 'view own su_site_algolia' - - 'view own su_site_algolia_id' - - 'view own su_site_algolia_index' - - 'view own su_site_algolia_search' - - 'view su_site_algolia' - - 'view su_site_algolia_id' - - 'view su_site_algolia_index' - - 'view su_site_algolia_search' -removing: - dependencies: - module: - - graphql - - printable - permissions: - - 'execute graphql_compose_server arbitrary graphql requests' - - 'execute graphql_compose_server persisted graphql requests' - - 'view policy_settings config page entity' - - 'view printer friendly versions' - - 'view stanford_basic_site_settings config page entity' - - 'view stanford_global_message config page entity' - - 'view stanford_local_footer config page entity' - - 'view stanford_super_footer config page entity' - - 'view su_event_ext_image' diff --git a/config/engineering/config_split.patch.user.role.decoupled_site_users.yml b/config/engineering/config_split.patch.user.role.decoupled_site_users.yml deleted file mode 100644 index abca15092..000000000 --- a/config/engineering/config_split.patch.user.role.decoupled_site_users.yml +++ /dev/null @@ -1,16 +0,0 @@ -adding: - dependencies: - module: - - file - - node - - subrequests - - view_unpublished - is_admin: false - permissions: - - 'access user profiles' - - 'bypass node access' - - 'delete own files' - - 'issue subrequests' - - 'view any unpublished content' -removing: - is_admin: null diff --git a/config/engineering/config_split.patch.user.role.layout_builder_user.yml b/config/engineering/config_split.patch.user.role.layout_builder_user.yml deleted file mode 100644 index c1e720fe6..000000000 --- a/config/engineering/config_split.patch.user.role.layout_builder_user.yml +++ /dev/null @@ -1,4 +0,0 @@ -adding: - is_admin: false -removing: - is_admin: null diff --git a/config/engineering/config_split.patch.user.role.opportunity_editor.yml b/config/engineering/config_split.patch.user.role.opportunity_editor.yml deleted file mode 100644 index c1e720fe6..000000000 --- a/config/engineering/config_split.patch.user.role.opportunity_editor.yml +++ /dev/null @@ -1,4 +0,0 @@ -adding: - is_admin: false -removing: - is_admin: null diff --git a/config/engineering/config_split.patch.user.role.site_builder.yml b/config/engineering/config_split.patch.user.role.site_builder.yml new file mode 100644 index 000000000..343b70eeb --- /dev/null +++ b/config/engineering/config_split.patch.user.role.site_builder.yml @@ -0,0 +1,14 @@ +adding: + dependencies: + config: + - node.type.spotlight + permissions: + - 'create spotlight content' + - 'delete any spotlight content' + - 'delete own spotlight content' + - 'delete spotlight revisions' + - 'edit any spotlight content' + - 'edit own spotlight content' + - 'revert spotlight revisions' + - 'view spotlight revisions' +removing: { } diff --git a/config/engineering/config_split.patch.user.role.site_developer.yml b/config/engineering/config_split.patch.user.role.site_developer.yml new file mode 100644 index 000000000..343b70eeb --- /dev/null +++ b/config/engineering/config_split.patch.user.role.site_developer.yml @@ -0,0 +1,14 @@ +adding: + dependencies: + config: + - node.type.spotlight + permissions: + - 'create spotlight content' + - 'delete any spotlight content' + - 'delete own spotlight content' + - 'delete spotlight revisions' + - 'edit any spotlight content' + - 'edit own spotlight content' + - 'revert spotlight revisions' + - 'view spotlight revisions' +removing: { } diff --git a/config/engineering/config_split.patch.user.role.site_reviewer.yml b/config/engineering/config_split.patch.user.role.site_reviewer.yml deleted file mode 100644 index c1e720fe6..000000000 --- a/config/engineering/config_split.patch.user.role.site_reviewer.yml +++ /dev/null @@ -1,4 +0,0 @@ -adding: - is_admin: false -removing: - is_admin: null diff --git a/config/engineering/config_split.patch.views.view.magazine.yml b/config/engineering/config_split.patch.views.view.magazine.yml deleted file mode 100644 index 118bd7fda..000000000 --- a/config/engineering/config_split.patch.views.view.magazine.yml +++ /dev/null @@ -1,19 +0,0 @@ -adding: { } -removing: - display: - block_3: - display_options: - header: - area: - id: area - table: views - field: area - relationship: none - group_type: group - admin_label: '' - plugin_id: text - empty: false - content: - value: "{% if name %}\r\n
Spotlight
' + format: stanford_minimal_html diff --git a/config/sync/single_content_sync.settings.yml b/config/sync/single_content_sync.settings.yml new file mode 100644 index 000000000..cba9bd9c2 --- /dev/null +++ b/config/sync/single_content_sync.settings.yml @@ -0,0 +1,10 @@ +_core: + default_config_hash: jrmFf7oZwRnIDTGSyYGhKRflquoCNPA6moUPJDADDxo +allowed_entity_types: + node: { } + wordpress_migration: { } +site_uuid_check: true +import_directory_schema: temporary +export_directory_schema: temporary +embedded_entities_export_mode: stub +menu_link_export_mode: stub diff --git a/config/sync/smart_date.smart_date_format.day_leading.yml b/config/sync/smart_date.smart_date_format.day_leading.yml new file mode 100644 index 000000000..6dba3d72f --- /dev/null +++ b/config/sync/smart_date.smart_date_format.day_leading.yml @@ -0,0 +1,15 @@ +uuid: 4222839e-2a2b-46dc-9298-10a3a5897e4b +langcode: en +status: true +dependencies: { } +id: day_leading +label: 'Day With Leading 0' +date_format: d +time_format: '' +time_hour_format: '' +allday_label: '' +separator: ' - ' +join: ', ' +ampm_reduce: '1' +date_first: '1' +site_time_toggle: '0' diff --git a/config/sync/stanford_basic.settings.yml b/config/sync/stanford_basic.settings.yml index 20cbc5935..804f9b418 100644 --- a/config/sync/stanford_basic.settings.yml +++ b/config/sync/stanford_basic.settings.yml @@ -12,6 +12,8 @@ browser_sync: host: localhost port: 3000 clear_registry: false +brand_bar_variant: default +nav_dropdown_enabled: true lockup: option: a line1: '' @@ -19,5 +21,3 @@ lockup: line3: '' line4: '' line5: '' -brand_bar_variant: default -nav_dropdown_enabled: 0 diff --git a/config/sync/stanford_syndication.settings.yml b/config/sync/stanford_syndication.settings.yml deleted file mode 100644 index 15736bdc3..000000000 --- a/config/sync/stanford_syndication.settings.yml +++ /dev/null @@ -1,11 +0,0 @@ -_core: - default_config_hash: 8iF-34nKZQFwSfwNJfb7kvOtyDU9uTto7JerS1dYpVw -enabled: true -debug: false -syndicators: - stanford_enterprise: - id: stanford_enterprise - node_types: - - spotlight - - stanford_news - webhook: '' diff --git a/config/sync/system.action.content_bulk_export.yml b/config/sync/system.action.content_bulk_export.yml new file mode 100644 index 000000000..0ab827262 --- /dev/null +++ b/config/sync/system.action.content_bulk_export.yml @@ -0,0 +1,15 @@ +uuid: ad0f8cee-239e-4fa2-af39-c052fcf0f72d +langcode: en +status: true +dependencies: + module: + - single_content_sync +_core: + default_config_hash: h64R0kZquzABmTQ3k2X7VbJJvANnn0p3ubKUYNtQj8s +id: content_bulk_export +label: 'Export content' +type: node +plugin: content_bulk_export +configuration: + assets: true + translation: true diff --git a/config/sync/system.action.user_add_role_action.opportunity_editor.yml b/config/sync/system.action.user_add_role_action.opportunity_editor.yml deleted file mode 100644 index 2f00ab505..000000000 --- a/config/sync/system.action.user_add_role_action.opportunity_editor.yml +++ /dev/null @@ -1,14 +0,0 @@ -uuid: 51fe3b5b-b3d2-43d5-9cfb-f0aacefa51b9 -langcode: en -status: true -dependencies: - config: - - user.role.opportunity_editor - module: - - user -id: user_add_role_action.opportunity_editor -label: 'Add the Opportunity Editor role to the selected user(s)' -type: user -plugin: user_add_role_action -configuration: - rid: opportunity_editor diff --git a/config/sync/system.action.user_add_role_action.site_builder.yml b/config/sync/system.action.user_add_role_action.site_builder.yml deleted file mode 100644 index 137bd3fa6..000000000 --- a/config/sync/system.action.user_add_role_action.site_builder.yml +++ /dev/null @@ -1,14 +0,0 @@ -uuid: d33da1ce-7cb1-43a7-9f90-cb164983bdd4 -langcode: en -status: true -dependencies: - config: - - user.role.site_builder - module: - - user -id: user_add_role_action.site_builder -label: 'Add the Site Builder role to the selected user(s)' -type: user -plugin: user_add_role_action -configuration: - rid: site_builder diff --git a/config/sync/system.action.user_add_role_action.site_developer.yml b/config/sync/system.action.user_add_role_action.site_developer.yml deleted file mode 100644 index f5ef3997a..000000000 --- a/config/sync/system.action.user_add_role_action.site_developer.yml +++ /dev/null @@ -1,14 +0,0 @@ -uuid: 9cbc70d1-576c-48e6-8dc2-2a6c432080f2 -langcode: en -status: true -dependencies: - config: - - user.role.site_developer - module: - - user -id: user_add_role_action.site_developer -label: 'Add the Site Developer role to the selected user(s)' -type: user -plugin: user_add_role_action -configuration: - rid: site_developer diff --git a/config/sync/system.action.user_add_role_action.soe_site_embedder.yml b/config/sync/system.action.user_add_role_action.soe_site_embedder.yml new file mode 100644 index 000000000..bf61bcf76 --- /dev/null +++ b/config/sync/system.action.user_add_role_action.soe_site_embedder.yml @@ -0,0 +1,14 @@ +uuid: 6c15b125-df41-421b-b859-87470b07b89d +langcode: en +status: true +dependencies: + config: + - user.role.soe_site_embedder + module: + - user +id: user_add_role_action.soe_site_embedder +label: 'Add the Site Embedder role to the selected user(s)' +type: user +plugin: user_add_role_action +configuration: + rid: soe_site_embedder diff --git a/config/sync/system.action.user_remove_role_action.opportunity_editor.yml b/config/sync/system.action.user_remove_role_action.opportunity_editor.yml deleted file mode 100644 index f053f2b76..000000000 --- a/config/sync/system.action.user_remove_role_action.opportunity_editor.yml +++ /dev/null @@ -1,14 +0,0 @@ -uuid: 1c657bca-791f-400c-9c22-775d9fc71b39 -langcode: en -status: true -dependencies: - config: - - user.role.opportunity_editor - module: - - user -id: user_remove_role_action.opportunity_editor -label: 'Remove the Opportunity Editor role from the selected user(s)' -type: user -plugin: user_remove_role_action -configuration: - rid: opportunity_editor diff --git a/config/sync/system.action.user_remove_role_action.site_builder.yml b/config/sync/system.action.user_remove_role_action.site_builder.yml deleted file mode 100644 index 6fd148ec0..000000000 --- a/config/sync/system.action.user_remove_role_action.site_builder.yml +++ /dev/null @@ -1,14 +0,0 @@ -uuid: cb07435b-b066-4238-ba72-50e05c667c71 -langcode: en -status: true -dependencies: - config: - - user.role.site_builder - module: - - user -id: user_remove_role_action.site_builder -label: 'Remove the Site Builder role from the selected user(s)' -type: user -plugin: user_remove_role_action -configuration: - rid: site_builder diff --git a/config/sync/system.action.user_remove_role_action.site_developer.yml b/config/sync/system.action.user_remove_role_action.site_developer.yml deleted file mode 100644 index 52511d20e..000000000 --- a/config/sync/system.action.user_remove_role_action.site_developer.yml +++ /dev/null @@ -1,14 +0,0 @@ -uuid: e15ab88d-03c5-4bb8-aedd-505bf03b20f2 -langcode: en -status: true -dependencies: - config: - - user.role.site_developer - module: - - user -id: user_remove_role_action.site_developer -label: 'Remove the Site Developer role from the selected user(s)' -type: user -plugin: user_remove_role_action -configuration: - rid: site_developer diff --git a/config/sync/system.action.user_remove_role_action.soe_site_embedder.yml b/config/sync/system.action.user_remove_role_action.soe_site_embedder.yml new file mode 100644 index 000000000..817e20cd5 --- /dev/null +++ b/config/sync/system.action.user_remove_role_action.soe_site_embedder.yml @@ -0,0 +1,14 @@ +uuid: 9ad3d7d9-35f8-4d5b-9336-ecefbf16dba8 +langcode: en +status: true +dependencies: + config: + - user.role.soe_site_embedder + module: + - user +id: user_remove_role_action.soe_site_embedder +label: 'Remove the Site Embedder role from the selected user(s)' +type: user +plugin: user_remove_role_action +configuration: + rid: soe_site_embedder diff --git a/config/sync/taxonomy.vocabulary.course_filters.yml b/config/sync/taxonomy.vocabulary.course_filters.yml new file mode 100644 index 000000000..4435d273d --- /dev/null +++ b/config/sync/taxonomy.vocabulary.course_filters.yml @@ -0,0 +1,25 @@ +uuid: 9ff28fe1-280e-49df-ab5b-94eea6f5b00a +langcode: en +status: true +dependencies: + module: + - scheduler +third_party_settings: + scheduler: + expand_fieldset: when_required + fields_display_mode: vertical_tab + publish_enable: false + publish_past_date: error + publish_past_date_created: false + publish_required: false + publish_revision: false + publish_touch: false + show_message_after_update: true + unpublish_enable: false + unpublish_required: false + unpublish_revision: false +name: 'Course Filters' +vid: course_filters +description: null +weight: 0 +new_revision: false diff --git a/config/sync/taxonomy.vocabulary.magazine_issues.yml b/config/sync/taxonomy.vocabulary.magazine_issues.yml index cd6d202ca..9dba195b1 100644 --- a/config/sync/taxonomy.vocabulary.magazine_issues.yml +++ b/config/sync/taxonomy.vocabulary.magazine_issues.yml @@ -1,7 +1,23 @@ uuid: b608b168-6614-4e94-9791-df0d4df524c3 langcode: en status: true -dependencies: { } +dependencies: + module: + - scheduler +third_party_settings: + scheduler: + expand_fieldset: when_required + fields_display_mode: vertical_tab + publish_enable: false + publish_past_date: error + publish_past_date_created: false + publish_required: false + publish_revision: false + publish_touch: false + show_message_after_update: true + unpublish_enable: false + unpublish_required: false + unpublish_revision: false name: 'Magazine Issues' vid: magazine_issues description: 'Terms used to group magazine content into issues' diff --git a/config/sync/taxonomy.vocabulary.media_content_filters.yml b/config/sync/taxonomy.vocabulary.media_content_filters.yml new file mode 100644 index 000000000..ea4663e33 --- /dev/null +++ b/config/sync/taxonomy.vocabulary.media_content_filters.yml @@ -0,0 +1,25 @@ +uuid: f7d32953-4c67-4bf4-aa21-55cb1a579566 +langcode: en +status: true +dependencies: + module: + - scheduler +third_party_settings: + scheduler: + expand_fieldset: when_required + fields_display_mode: vertical_tab + publish_enable: false + publish_past_date: error + publish_past_date_created: false + publish_required: false + publish_revision: false + publish_touch: false + show_message_after_update: true + unpublish_enable: false + unpublish_required: false + unpublish_revision: false +name: 'Media Content Filters' +vid: media_content_filters +description: 'For Media Content' +weight: 0 +new_revision: false diff --git a/config/sync/taxonomy.vocabulary.media_content_types.yml b/config/sync/taxonomy.vocabulary.media_content_types.yml new file mode 100644 index 000000000..c190a7a0e --- /dev/null +++ b/config/sync/taxonomy.vocabulary.media_content_types.yml @@ -0,0 +1,25 @@ +uuid: e3d7a246-7472-4321-b785-88f3d6b30908 +langcode: en +status: true +dependencies: + module: + - scheduler +third_party_settings: + scheduler: + expand_fieldset: when_required + fields_display_mode: vertical_tab + publish_enable: false + publish_past_date: error + publish_past_date_created: false + publish_required: false + publish_revision: false + publish_touch: false + show_message_after_update: true + unpublish_enable: false + unpublish_required: false + unpublish_revision: false +name: 'Media Types' +vid: media_content_types +description: 'For Media Content' +weight: 0 +new_revision: false diff --git a/config/sync/taxonomy.vocabulary.media_tags.yml b/config/sync/taxonomy.vocabulary.media_tags.yml index f5c4b596e..2fe861120 100644 --- a/config/sync/taxonomy.vocabulary.media_tags.yml +++ b/config/sync/taxonomy.vocabulary.media_tags.yml @@ -20,6 +20,6 @@ third_party_settings: unpublish_revision: false name: 'Media Tags' vid: media_tags -description: null +description: 'For Media Entities' weight: 0 new_revision: false diff --git a/config/sync/taxonomy.vocabulary.stanford_news_spotlight_filters.yml b/config/sync/taxonomy.vocabulary.stanford_news_spotlight_filters.yml new file mode 100644 index 000000000..f9ae8d482 --- /dev/null +++ b/config/sync/taxonomy.vocabulary.stanford_news_spotlight_filters.yml @@ -0,0 +1,25 @@ +uuid: fc6b97f4-d9d3-40a1-8fa0-7d04340ea847 +langcode: en +status: true +dependencies: + module: + - scheduler +third_party_settings: + scheduler: + expand_fieldset: when_required + fields_display_mode: vertical_tab + publish_enable: false + publish_past_date: error + publish_past_date_created: false + publish_required: false + publish_revision: false + publish_touch: false + show_message_after_update: true + unpublish_enable: false + unpublish_required: false + unpublish_revision: false +name: 'News Spotlight Filters' +vid: stanford_news_spotlight_filters +description: null +weight: 0 +new_revision: false diff --git a/config/sync/ultimate_cron.job.content_lock_cron.yml b/config/sync/ultimate_cron.job.content_lock_cron.yml index 925b78837..ef1f393f4 100644 --- a/config/sync/ultimate_cron.job.content_lock_cron.yml +++ b/config/sync/ultimate_cron.job.content_lock_cron.yml @@ -1,4 +1,4 @@ -uuid: 992ef7ca-cfc8-4ca5-9996-496ee496a476 +uuid: 82c55584-669b-499f-b13d-89a5af0f2369 langcode: en status: true dependencies: diff --git a/config/sync/ultimate_cron.job.stanford_events_importer_cron.yml b/config/sync/ultimate_cron.job.stanford_events_importer_cron.yml new file mode 100644 index 000000000..c7c588808 --- /dev/null +++ b/config/sync/ultimate_cron.job.stanford_events_importer_cron.yml @@ -0,0 +1,17 @@ +uuid: a86d7361-e2d7-4b8d-8e37-d3e81745712f +langcode: en +status: true +dependencies: + module: + - stanford_events_importer +title: 'Default cron handler' +id: stanford_events_importer_cron +weight: 0 +module: stanford_events_importer +callback: 'stanford_events_importer#cron' +scheduler: + id: simple +launcher: + id: serial +logger: + id: database diff --git a/config/sync/user.role.anonymous.yml b/config/sync/user.role.anonymous.yml index e9479ceed..fffff52be 100644 --- a/config/sync/user.role.anonymous.yml +++ b/config/sync/user.role.anonymous.yml @@ -5,11 +5,13 @@ dependencies: module: - config_pages - field_permissions + - graphql - media - printable - stanford_policy - subrequests - system + - ui_patterns_library _core: default_config_hash: j5zLMOdJBqC0bMvSdth5UebkprJB8g_2FXHqhfpJzow id: anonymous @@ -18,6 +20,9 @@ weight: -9 is_admin: false permissions: - 'access content' + - 'access patterns page' + - 'execute graphql_compose_server arbitrary graphql requests' + - 'execute graphql_compose_server persisted graphql requests' - 'issue subrequests' - 'view field_media_embeddable_code' - 'view lockup_settings config page entity' diff --git a/config/sync/user.role.authenticated.yml b/config/sync/user.role.authenticated.yml index 202af8ab1..142949caf 100644 --- a/config/sync/user.role.authenticated.yml +++ b/config/sync/user.role.authenticated.yml @@ -6,9 +6,7 @@ dependencies: - config_pages - field_permissions - file - - graphql - media - - printable - shortcut - stanford_policy - subrequests @@ -23,8 +21,6 @@ permissions: - 'access content' - 'access shortcuts' - 'delete own files' - - 'execute graphql_compose_server arbitrary graphql requests' - - 'execute graphql_compose_server persisted graphql requests' - 'issue subrequests' - 'view field_media_embeddable_code' - 'view lockup_settings config page entity' @@ -40,13 +36,6 @@ permissions: - 'view own su_site_home' - 'view own su_site_url' - 'view policy log' - - 'view policy_settings config page entity' - - 'view printer friendly versions' - - 'view stanford_basic_site_settings config page entity' - - 'view stanford_global_message config page entity' - - 'view stanford_local_footer config page entity' - - 'view stanford_super_footer config page entity' - - 'view su_event_ext_image' - 'view su_metatags' - 'view su_policy_auto_prefix' - 'view su_policy_chapter' diff --git a/config/sync/user.role.contributor.yml b/config/sync/user.role.contributor.yml index 65914a2fe..c607e571a 100644 --- a/config/sync/user.role.contributor.yml +++ b/config/sync/user.role.contributor.yml @@ -14,6 +14,7 @@ dependencies: - node.type.stanford_course - node.type.stanford_event - node.type.stanford_event_series + - node.type.stanford_media - node.type.stanford_news - node.type.stanford_opportunity - node.type.stanford_page @@ -78,6 +79,7 @@ permissions: - 'delete own stanford_event content' - 'delete own stanford_event_series content' - 'delete own stanford_gallery_images media' + - 'delete own stanford_media content' - 'delete own stanford_news content' - 'delete own stanford_opportunity content' - 'delete own stanford_page content' @@ -94,6 +96,7 @@ permissions: - 'edit any stanford_event content' - 'edit any stanford_event_series content' - 'edit any stanford_gallery_images media' + - 'edit any stanford_media content' - 'edit any stanford_news content' - 'edit any stanford_opportunity content' - 'edit any stanford_page content' @@ -111,6 +114,7 @@ permissions: - 'edit own stanford_event content' - 'edit own stanford_event_series content' - 'edit own stanford_gallery_images media' + - 'edit own stanford_media content' - 'edit own stanford_news content' - 'edit own stanford_opportunity content' - 'edit own stanford_page content' @@ -146,6 +150,7 @@ permissions: - 'view stanford_course revisions' - 'view stanford_event revisions' - 'view stanford_event_series revisions' + - 'view stanford_media revisions' - 'view stanford_news revisions' - 'view stanford_opportunity revisions' - 'view stanford_page revisions' diff --git a/config/sync/user.role.decoupled_site_users.yml b/config/sync/user.role.decoupled_site_users.yml index 6bed77a52..5845989ce 100644 --- a/config/sync/user.role.decoupled_site_users.yml +++ b/config/sync/user.role.decoupled_site_users.yml @@ -1,9 +1,19 @@ uuid: 6fac5ac9-2f01-4b1b-b2e7-453cf88f0364 langcode: en status: true -dependencies: { } +dependencies: + module: + - file + - node + - subrequests + - view_unpublished id: decoupled_site_users label: 'Decoupled Site User' weight: 2 -is_admin: null -permissions: { } +is_admin: false +permissions: + - 'access user profiles' + - 'bypass node access' + - 'delete own files' + - 'issue subrequests' + - 'view any unpublished content' diff --git a/config/sync/user.role.layout_builder_user.yml b/config/sync/user.role.layout_builder_user.yml index 217970fc3..b024f10cf 100644 --- a/config/sync/user.role.layout_builder_user.yml +++ b/config/sync/user.role.layout_builder_user.yml @@ -24,7 +24,7 @@ dependencies: id: layout_builder_user label: 'Layout Builder User' weight: 1 -is_admin: null +is_admin: false permissions: - 'access patterns page' - 'configure editable stanford_event node layout overrides' diff --git a/config/sync/user.role.opportunity_editor.yml b/config/sync/user.role.opportunity_editor.yml index 7f584b9d7..0a16bcea0 100644 --- a/config/sync/user.role.opportunity_editor.yml +++ b/config/sync/user.role.opportunity_editor.yml @@ -15,7 +15,7 @@ dependencies: id: opportunity_editor label: 'Opportunity Editor' weight: 3 -is_admin: null +is_admin: false permissions: - 'assign opportunity_editor role' - 'create stanford_opportunity content' diff --git a/config/sync/user.role.site_builder.yml b/config/sync/user.role.site_builder.yml index ba9e158ac..acb8f5f9a 100644 --- a/config/sync/user.role.site_builder.yml +++ b/config/sync/user.role.site_builder.yml @@ -18,7 +18,6 @@ dependencies: - media.type.image - media.type.stanford_gallery_images - media.type.video - - node.type.spotlight - node.type.stanford_course - node.type.stanford_event - node.type.stanford_event_series @@ -183,7 +182,6 @@ permissions: - 'create media' - 'create new books' - 'create policy log' - - 'create spotlight content' - 'create stanford_event content' - 'create stanford_event_series content' - 'create stanford_gallery_images media' @@ -213,7 +211,6 @@ permissions: - 'delete any google_form media' - 'delete any image media' - 'delete any media' - - 'delete any spotlight content' - 'delete any stanford_course content' - 'delete any stanford_event content' - 'delete any stanford_event_series content' @@ -232,7 +229,6 @@ permissions: - 'delete own files' - 'delete own google_form media' - 'delete own image media' - - 'delete own spotlight content' - 'delete own stanford_event content' - 'delete own stanford_event_series content' - 'delete own stanford_gallery_images media' @@ -243,7 +239,6 @@ permissions: - 'delete own stanford_publication content' - 'delete own video media' - 'delete policy log' - - 'delete spotlight revisions' - 'delete stanford_course revisions' - 'delete stanford_event revisions' - 'delete stanford_event_series revisions' @@ -270,7 +265,6 @@ permissions: - 'edit any file media' - 'edit any google_form media' - 'edit any image media' - - 'edit any spotlight content' - 'edit any stanford_course content' - 'edit any stanford_event content' - 'edit any stanford_event_series content' @@ -291,7 +285,6 @@ permissions: - 'edit own file media' - 'edit own google_form media' - 'edit own image media' - - 'edit own spotlight content' - 'edit own stanford_course content' - 'edit own stanford_event content' - 'edit own stanford_event_series content' @@ -329,7 +322,6 @@ permissions: - 'rabbit hole administer taxonomy_term' - 'rabbit hole bypass node' - 'rabbit hole bypass taxonomy_term' - - 'revert spotlight revisions' - 'revert stanford_course revisions' - 'revert stanford_event revisions' - 'revert stanford_event_series revisions' @@ -365,7 +357,6 @@ permissions: - 'view own unpublished media' - 'view policy log' - 'view scheduled content' - - 'view spotlight revisions' - 'view stanford_course revisions' - 'view stanford_event revisions' - 'view stanford_event_series revisions' diff --git a/config/sync/user.role.site_developer.yml b/config/sync/user.role.site_developer.yml index 51c3c0cc2..16ff0cfab 100644 --- a/config/sync/user.role.site_developer.yml +++ b/config/sync/user.role.site_developer.yml @@ -18,7 +18,6 @@ dependencies: - media.type.image - media.type.stanford_gallery_images - media.type.video - - node.type.spotlight - node.type.stanford_course - node.type.stanford_event - node.type.stanford_event_series @@ -221,7 +220,6 @@ permissions: - 'create media' - 'create new books' - 'create policy log' - - 'create spotlight content' - 'create stanford_course content' - 'create stanford_event content' - 'create stanford_event_series content' @@ -253,7 +251,6 @@ permissions: - 'delete any google_form media' - 'delete any image media' - 'delete any media' - - 'delete any spotlight content' - 'delete any stanford_course content' - 'delete any stanford_event content' - 'delete any stanford_event_series content' @@ -273,7 +270,6 @@ permissions: - 'delete own files' - 'delete own google_form media' - 'delete own image media' - - 'delete own spotlight content' - 'delete own stanford_course content' - 'delete own stanford_event content' - 'delete own stanford_event_series content' @@ -285,7 +281,6 @@ permissions: - 'delete own stanford_publication content' - 'delete own video media' - 'delete policy log' - - 'delete spotlight revisions' - 'delete stanford_course revisions' - 'delete stanford_event revisions' - 'delete stanford_event_series revisions' @@ -312,7 +307,6 @@ permissions: - 'edit any file media' - 'edit any google_form media' - 'edit any image media' - - 'edit any spotlight content' - 'edit any stanford_course content' - 'edit any stanford_event content' - 'edit any stanford_event_series content' @@ -334,7 +328,6 @@ permissions: - 'edit own file media' - 'edit own google_form media' - 'edit own image media' - - 'edit own spotlight content' - 'edit own stanford_course content' - 'edit own stanford_event content' - 'edit own stanford_event_series content' @@ -375,7 +368,6 @@ permissions: - 'rabbit hole bypass node' - 'rabbit hole bypass taxonomy_term' - 'revert all revisions' - - 'revert spotlight revisions' - 'revert stanford_course revisions' - 'revert stanford_event revisions' - 'revert stanford_event_series revisions' @@ -411,7 +403,6 @@ permissions: - 'view own unpublished media' - 'view policy log' - 'view scheduled content' - - 'view spotlight revisions' - 'view stanford_course revisions' - 'view stanford_event revisions' - 'view stanford_event_series revisions' diff --git a/config/sync/user.role.site_editor.yml b/config/sync/user.role.site_editor.yml index 7e9da8fe9..ec388dc93 100644 --- a/config/sync/user.role.site_editor.yml +++ b/config/sync/user.role.site_editor.yml @@ -14,6 +14,7 @@ dependencies: - node.type.stanford_course - node.type.stanford_event - node.type.stanford_event_series + - node.type.stanford_media - node.type.stanford_news - node.type.stanford_opportunity - node.type.stanford_page @@ -110,6 +111,7 @@ permissions: - 'delete any stanford_course content' - 'delete any stanford_event content' - 'delete any stanford_event_series content' + - 'delete any stanford_media content' - 'delete any stanford_news content' - 'delete any stanford_opportunity content' - 'delete any stanford_page content' @@ -127,6 +129,7 @@ permissions: - 'delete own stanford_event content' - 'delete own stanford_event_series content' - 'delete own stanford_gallery_images media' + - 'delete own stanford_media content' - 'delete own stanford_news content' - 'delete own stanford_opportunity content' - 'delete own stanford_page content' @@ -138,6 +141,7 @@ permissions: - 'delete stanford_course revisions' - 'delete stanford_event revisions' - 'delete stanford_event_series revisions' + - 'delete stanford_media revisions' - 'delete stanford_news revisions' - 'delete stanford_opportunity revisions' - 'delete stanford_page revisions' @@ -163,6 +167,7 @@ permissions: - 'edit any stanford_event content' - 'edit any stanford_event_series content' - 'edit any stanford_gallery_images media' + - 'edit any stanford_media content' - 'edit any stanford_news content' - 'edit any stanford_opportunity content' - 'edit any stanford_page content' @@ -182,6 +187,7 @@ permissions: - 'edit own stanford_event content' - 'edit own stanford_event_series content' - 'edit own stanford_gallery_images media' + - 'edit own stanford_media content' - 'edit own stanford_news content' - 'edit own stanford_opportunity content' - 'edit own stanford_page content' @@ -207,6 +213,7 @@ permissions: - 'revert stanford_course revisions' - 'revert stanford_event revisions' - 'revert stanford_event_series revisions' + - 'revert stanford_media revisions' - 'revert stanford_news revisions' - 'revert stanford_opportunity revisions' - 'revert stanford_page revisions' @@ -242,6 +249,7 @@ permissions: - 'view stanford_course revisions' - 'view stanford_event revisions' - 'view stanford_event_series revisions' + - 'view stanford_media revisions' - 'view stanford_news revisions' - 'view stanford_opportunity revisions' - 'view stanford_page revisions' diff --git a/config/sync/user.role.site_manager.yml b/config/sync/user.role.site_manager.yml index 98cbd5bdf..0dd6ae076 100644 --- a/config/sync/user.role.site_manager.yml +++ b/config/sync/user.role.site_manager.yml @@ -15,6 +15,7 @@ dependencies: - node.type.stanford_course - node.type.stanford_event - node.type.stanford_event_series + - node.type.stanford_media - node.type.stanford_news - node.type.stanford_opportunity - node.type.stanford_page @@ -43,6 +44,7 @@ dependencies: - contextual - dropzonejs - editoria11y + - engineering_profile - field_permissions - file - filter @@ -146,6 +148,7 @@ permissions: - 'delete any stanford_event content' - 'delete any stanford_event_series content' - 'delete any stanford_gallery_images media' + - 'delete any stanford_media content' - 'delete any stanford_news content' - 'delete any stanford_opportunity content' - 'delete any stanford_page content' @@ -164,6 +167,7 @@ permissions: - 'delete own stanford_event content' - 'delete own stanford_event_series content' - 'delete own stanford_gallery_images media' + - 'delete own stanford_media content' - 'delete own stanford_news content' - 'delete own stanford_opportunity content' - 'delete own stanford_page content' @@ -175,6 +179,7 @@ permissions: - 'delete stanford_course revisions' - 'delete stanford_event revisions' - 'delete stanford_event_series revisions' + - 'delete stanford_media revisions' - 'delete stanford_news revisions' - 'delete stanford_opportunity revisions' - 'delete stanford_page revisions' @@ -202,6 +207,7 @@ permissions: - 'edit any stanford_event content' - 'edit any stanford_event_series content' - 'edit any stanford_gallery_images media' + - 'edit any stanford_media content' - 'edit any stanford_news content' - 'edit any stanford_opportunity content' - 'edit any stanford_page content' @@ -222,6 +228,7 @@ permissions: - 'edit own stanford_event content' - 'edit own stanford_event_series content' - 'edit own stanford_gallery_images media' + - 'edit own stanford_media content' - 'edit own stanford_news content' - 'edit own stanford_opportunity content' - 'edit own stanford_page content' @@ -261,6 +268,7 @@ permissions: - 'revert stanford_course revisions' - 'revert stanford_event revisions' - 'revert stanford_event_series revisions' + - 'revert stanford_media revisions' - 'revert stanford_news revisions' - 'revert stanford_opportunity revisions' - 'revert stanford_page revisions' diff --git a/config/sync/user.role.site_reviewer.yml b/config/sync/user.role.site_reviewer.yml index 8be4a271d..250b9313b 100644 --- a/config/sync/user.role.site_reviewer.yml +++ b/config/sync/user.role.site_reviewer.yml @@ -8,7 +8,7 @@ dependencies: id: site_reviewer label: 'Site Reviewer' weight: 4 -is_admin: null +is_admin: false permissions: - 'view any unpublished content' - 'view own su_imported' diff --git a/config/sync/user.role.soe_site_embedder.yml b/config/sync/user.role.soe_site_embedder.yml new file mode 100644 index 000000000..13451ce69 --- /dev/null +++ b/config/sync/user.role.soe_site_embedder.yml @@ -0,0 +1,16 @@ +uuid: 9dedbe8e-27b6-40de-95fd-29e4efe67be4 +langcode: en +status: true +dependencies: + module: + - field_permissions + - stanford_media +id: soe_site_embedder +label: 'Site Embedder' +weight: 1 +is_admin: null +permissions: + - 'bypass embed field validation' + - 'create field_media_embeddable_code' + - 'edit field_media_embeddable_code' + - 'edit own field_media_embeddable_code' diff --git a/config/sync/views.view.autocomplete_suggestions.yml b/config/sync/views.view.autocomplete_suggestions.yml new file mode 100644 index 000000000..122659e5b --- /dev/null +++ b/config/sync/views.view.autocomplete_suggestions.yml @@ -0,0 +1,549 @@ +uuid: 2d7063a4-c96d-478c-868e-3ca5310b5a7e +langcode: en +status: true +dependencies: + config: + - field.storage.node.su_media_season + - field.storage.node.su_media_series + module: + - node + - search_autocomplete + - user +id: autocomplete_suggestions +label: 'Autocomplete Suggestions' +module: views +description: '' +tag: '' +base_table: node_field_data +base_field: nid +display: + default: + id: default + display_title: Default + display_plugin: default + position: 0 + display_options: + title: 'Media Series' + fields: + su_media_series: + id: su_media_series + table: node__su_media_series + field: su_media_series + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + nid: + id: nid + table: node_field_data + field: nid + relationship: none + group_type: count + admin_label: '' + entity_type: node + entity_field: nid + plugin_id: field + label: '' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: number_integer + settings: { } + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + set_precision: false + precision: 0 + decimal: . + format_plural: 0 + format_plural_string: !!binary MQNAY291bnQ= + prefix: '' + suffix: '' + pager: + type: mini + options: + offset: 0 + pagination_heading_level: h4 + items_per_page: 10 + total_pages: null + id: 0 + tags: + next: ›› + previous: ‹‹ + expose: + items_per_page: false + items_per_page_label: 'Items per page' + items_per_page_options: '5, 10, 25, 50' + items_per_page_options_all: false + items_per_page_options_all_label: '- All -' + offset: false + offset_label: Offset + exposed_form: + type: basic + options: + submit_button: Apply + reset_button: false + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + access: + type: perm + options: + perm: 'create stanford_media content' + cache: + type: tag + options: { } + empty: { } + sorts: + su_media_series_value: + id: su_media_series_value + table: node__su_media_series + field: su_media_series_value + relationship: none + group_type: group + admin_label: '' + plugin_id: standard + order: ASC + expose: + label: '' + field_identifier: '' + exposed: false + arguments: { } + filters: { } + style: + type: default + options: + grouping: { } + row_class: '' + default_row_class: true + uses_fields: false + row: + type: fields + options: + default_field_elements: true + inline: { } + separator: '' + hide_empty: false + query: + type: views_query + options: + query_comment: '' + disable_sql_rewrite: false + distinct: false + replica: false + query_tags: { } + contextual_filters_or: false + relationships: { } + group_by: true + header: { } + footer: { } + display_extenders: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_media_series' + media_series: + id: media_series + display_title: 'Media Series' + display_plugin: autocompletion_callback + position: 1 + display_options: + filters: + su_media_series_value: + id: su_media_series_value + table: node__su_media_series + field: su_media_series_value + relationship: none + group_type: group + admin_label: '' + plugin_id: string + operator: contains + value: '' + group: 1 + exposed: true + expose: + operator_id: su_media_series_value_op + label: Series + description: '' + use_operator: false + operator: su_media_series_value_op + operator_limit_selection: false + operator_list: { } + identifier: series + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + filter_groups: + operator: AND + groups: + 1: AND + style: + type: callback_serializer + options: + grouping: { } + input_label: su_media_series + input_link: su_media_series + defaults: + filters: false + filter_groups: false + display_description: '' + display_extenders: { } + path: api/media/series + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_media_series' + media_seson: + id: media_seson + display_title: 'Media Season' + display_plugin: autocompletion_callback + position: 1 + display_options: + title: 'Media Season' + fields: + su_media_season: + id: su_media_season + table: node__su_media_season + field: su_media_season + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + nid: + id: nid + table: node_field_data + field: nid + relationship: none + group_type: count + admin_label: '' + entity_type: node + entity_field: nid + plugin_id: field + label: '' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: number_integer + settings: { } + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + set_precision: false + precision: 0 + decimal: . + format_plural: 0 + format_plural_string: !!binary MQNAY291bnQ= + prefix: '' + suffix: '' + sorts: + su_media_season_value: + id: su_media_season_value + table: node__su_media_season + field: su_media_season_value + relationship: none + group_type: group + admin_label: '' + plugin_id: standard + order: ASC + expose: + label: '' + field_identifier: '' + exposed: false + filters: + su_media_season_value: + id: su_media_season_value + table: node__su_media_season + field: su_media_season_value + relationship: none + group_type: group + admin_label: '' + plugin_id: string + operator: contains + value: '' + group: 1 + exposed: true + expose: + operator_id: su_media_season_value_op + label: Season + description: '' + use_operator: false + operator: su_media_season_value_op + operator_limit_selection: false + operator_list: { } + identifier: season + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + filter_groups: + operator: AND + groups: + 1: AND + style: + type: callback_serializer + options: + grouping: { } + input_label: su_media_season + input_link: su_media_season + defaults: + title: false + fields: false + sorts: false + filters: false + filter_groups: false + display_description: '' + display_extenders: { } + path: api/media/season + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_media_season' diff --git a/config/sync/views.view.autocompletion_callbacks_nodes.yml b/config/sync/views.view.autocompletion_callbacks_nodes.yml new file mode 100644 index 000000000..c13fc6031 --- /dev/null +++ b/config/sync/views.view.autocompletion_callbacks_nodes.yml @@ -0,0 +1,588 @@ +uuid: 858d153f-b400-4658-ab78-da3c66dc4e78 +langcode: en +status: true +dependencies: + module: + - node + - search_autocomplete + - user +_core: + default_config_hash: W22ChT17TUx5xSkHS_085h4zZqm14oiTP6QZcCeAL0E +id: autocompletion_callbacks_nodes +label: 'Nodes Autocompletion Callbacks' +module: views +description: 'This vew is used to store default nodes autocompletion callbacks for Search Autocomplete module.' +tag: '' +base_table: node_field_data +base_field: nid +display: + default: + id: default + display_title: Master + display_plugin: default + position: 0 + display_options: + fields: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: false + ellipsis: false + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + name: + id: name + table: users_field_data + field: name + relationship: uid + group_type: group + admin_label: '' + entity_type: user + entity_field: name + plugin_id: field + label: '' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: user_name + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + created: + id: created + table: node_field_data + field: created + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: created + plugin_id: field + label: '' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: true + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: true + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: timestamp + settings: + date_format: medium + custom_date_format: '' + timezone: UTC + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + type: + id: type + table: node_field_data + field: type + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: type + plugin_id: field + label: '' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: entity_reference_label + settings: + link: false + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + path: + id: path + table: node + field: view_node + relationship: none + group_type: group + admin_label: '' + entity_type: node + plugin_id: entity_link + label: '' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + output_url_as_text: true + absolute: true + nothing: + id: nothing + table: views + field: nothing + relationship: none + group_type: group + admin_label: '' + plugin_id: custom + label: '' + exclude: false + alter: + alter_text: true + text: 'by {{ name }} | {{ created }}' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: false + pager: + type: full + options: + offset: 0 + items_per_page: 10 + total_pages: null + id: 0 + tags: + next: 'next ›' + previous: '‹ previous' + first: '« first' + last: 'last »' + expose: + items_per_page: false + items_per_page_label: 'Items per page' + items_per_page_options: '5, 10, 25, 50' + items_per_page_options_all: false + items_per_page_options_all_label: '- All -' + offset: false + offset_label: Offset + quantity: 9 + exposed_form: + type: basic + options: + submit_button: Apply + reset_button: false + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + access: + type: perm + options: + perm: 'access content' + cache: + type: none + options: { } + empty: { } + sorts: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: standard + order: ASC + expose: + label: '' + exposed: false + arguments: { } + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + operator_limit_selection: false + operator_list: { } + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: string + operator: contains + value: '' + group: 1 + exposed: true + expose: + operator_id: title_op + label: Title + description: '' + use_operator: false + operator: title_op + operator_limit_selection: false + operator_list: { } + identifier: title + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + style: + type: default + options: + grouping: { } + row_class: '' + default_row_class: true + uses_fields: false + row: + type: fields + options: + default_field_elements: true + inline: { } + separator: '' + hide_empty: false + query: + type: views_query + options: + query_comment: '' + disable_sql_rewrite: false + distinct: false + replica: false + query_tags: { } + relationships: + uid: + id: uid + table: node_field_data + field: uid + relationship: none + group_type: group + admin_label: author + entity_type: node + entity_field: uid + plugin_id: standard + required: true + header: { } + footer: { } + display_extenders: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } + cacheable: false + nodes_autocompletion_callback: + id: nodes_autocompletion_callback + display_title: 'Nodes Autocompletion Callback' + display_plugin: autocompletion_callback + position: 1 + display_options: + style: + type: callback_serializer + options: + grouping: + - + field: type + input_label: title + input_link: path + row: + type: callback_fields + options: + field_options: + title: + alias: '' + name: + alias: '' + created: + alias: '' + type: + alias: '' + path: + alias: '' + nothing: + alias: created + display_description: '' + display_extenders: { } + path: callback/nodes + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: { } + cacheable: false diff --git a/config/sync/views.view.content.yml b/config/sync/views.view.content.yml index ce149b8f1..7f01e6347 100644 --- a/config/sync/views.view.content.yml +++ b/config/sync/views.view.content.yml @@ -78,19 +78,22 @@ display: buttons: false action_title: Action clear_on_exposed: true - force_selection_info: false + show_multipage_selection_box: default + show_select_all: always_hide selected_actions: - action_id: node_clone_action preconfiguration: add_confirmation: false confirm_help_text: '' + label_override: '' message_override: '' - action_id: views_bulk_edit preconfiguration: add_confirmation: false confirm_help_text: '' + label_override: '' message_override: '' get_bundles_from_results: true - @@ -98,6 +101,7 @@ display: preconfiguration: add_confirmation: true confirm_help_text: '' + label_override: '' message_override: '' title: id: title diff --git a/config/sync/views.view.courses_filtered.yml b/config/sync/views.view.courses_filtered.yml new file mode 100644 index 000000000..29ef19ff9 --- /dev/null +++ b/config/sync/views.view.courses_filtered.yml @@ -0,0 +1,384 @@ +uuid: 17d17bb7-3830-4a29-9aa9-db41607aedfd +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.node.stanford_h3_card + - core.entity_view_mode.node.teaser + - node.type.stanford_course + - taxonomy.vocabulary.course_filters + module: + - better_exposed_filters + - node + - stanford_fields + - taxonomy + - user + - views_infinite_scroll +id: courses_filtered +label: 'Courses - Filtered' +module: views +description: '' +tag: '' +base_table: node_field_data +base_field: nid +display: + default: + id: default + display_title: Default + display_plugin: default + position: 0 + display_options: + fields: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + make_link: false + absolute: false + word_boundary: false + ellipsis: false + strip_tags: false + trim: false + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + pager: + type: infinite_scroll + options: + offset: 0 + pagination_heading_level: h4 + items_per_page: 20 + total_pages: null + id: 0 + tags: + next: ›› + previous: ‹‹ + expose: + items_per_page: false + items_per_page_label: 'Items per page' + items_per_page_options: '5, 10, 25, 50' + items_per_page_options_all: false + items_per_page_options_all_label: '- All -' + offset: false + offset_label: Offset + views_infinite_scroll: + button_text: 'Load More' + automatically_load_content: false + initially_load_all_pages: false + exposed_form: + type: bef + options: + submit_button: Apply + reset_button: false + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + text_input_required: 'Select any filter and click on Apply to see results' + text_input_required_format: stanford_html + bef: + general: + autosubmit: true + auto_submit_sort_only: false + autosubmit_breakpoint: '' + autosubmit_exclude_textfield: false + autosubmit_textfield_delay: 500 + autosubmit_textfield_minimum_length: 3 + autosubmit_hide: true + input_required: false + allow_secondary: false + secondary_label: 'Advanced options' + secondary_open: false + reset_button_always_show: false + filter: + su_course_filters_target_id: + plugin_id: taxonomy_label_hierarchy_checkbox + advanced: + sort_options: false + sort_options_method: alphabetical_asc + sort_options_natural: true + rewrite: + filter_rewrite_values: '' + filter_rewrite_values_key: false + collapsible: false + collapsible_disable_automatic_open: false + open_by_default: false + is_secondary: false + hide_label: false + field_classes: '' + access: + type: perm + options: + perm: 'access content' + cache: + type: tag + options: { } + empty: + area: + id: area + table: views + field: area + relationship: none + group_type: group + admin_label: '' + plugin_id: text + empty: true + content: + value: 'No courses match the filters.
' + format: stanford_html + tokenize: false + sorts: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: standard + order: ASC + expose: + label: '' + field_identifier: '' + exposed: false + arguments: { } + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + type: + id: type + table: node_field_data + field: type + entity_type: node + entity_field: type + plugin_id: bundle + value: + stanford_course: stanford_course + su_course_filters_target_id: + id: su_course_filters_target_id + table: node__su_course_filters + field: su_course_filters_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: and + value: { } + group: 1 + exposed: true + expose: + operator_id: su_course_filters_target_id_op + label: 'Filter By' + description: '' + use_operator: false + operator: su_course_filters_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: courses + required: false + remember: false + multiple: true + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: course_filters + type: select + hierarchy: true + limit: true + error_message: true + style: + type: html_list + options: + grouping: { } + row_class: '' + default_row_class: true + type: ul + wrapper_class: item-list + class: 'su-list-unstyled su-course-list' + row: + type: 'entity:node' + options: + relationship: none + view_mode: teaser + query: + type: views_query + options: + query_comment: '' + disable_sql_rewrite: false + distinct: false + replica: false + query_tags: { } + contextual_filters_or: false + relationships: { } + use_ajax: true + header: { } + footer: { } + display_extenders: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } + card_grid: + id: card_grid + display_title: 'Card Grid' + display_plugin: viewfield_block + position: 2 + display_options: + display_extenders: { } + display_description: '' + style: + type: html_list + options: + row_class: '' + default_row_class: 1 + uses_fields: 0 + type: ul + wrapper_class: item-list + class: 'su-list-unstyled grid-container-3' + defaults: + style: false + row: false + row: + type: 'entity:node' + options: + relationship: none + view_mode: stanford_h3_card + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } + list: + id: list + display_title: '- Default List -' + display_plugin: viewfield_block + position: 1 + display_options: + display_extenders: { } + display_description: '' + exposed_form: + type: bef + options: + submit_button: Apply + reset_button: 0 + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + text_input_required: 'Select any filter and click on Apply to see results' + text_input_required_format: stanford_html + bef: + general: + autosubmit: 1 + autosubmit_exclude_textfield: 0 + autosubmit_textfield_delay: '500' + autosubmit_textfield_minimum_length: '3' + autosubmit_hide: 1 + input_required: 0 + allow_secondary: 0 + secondary_label: 'Advanced options' + secondary_open: 0 + reset_button_always_show: false + autosubmit_breakpoint: '' + auto_submit_sort_only: false + filter: + su_course_filters_target_id: + plugin_id: taxonomy_label_hierarchy_checkbox + advanced: + sort_options: 0 + rewrite: + filter_rewrite_values: '' + filter_rewrite_values_key: 0 + hide_label: 0 + collapsible: 0 + collapsible_disable_automatic_open: 0 + is_secondary: 0 + field_classes: '' + open_by_default: false + sort_options_method: alphabetical_asc + sort_options_natural: true + defaults: + exposed_form: false + block_hide_empty: 1 + block_category: 'Courses Lists (Views)' + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } diff --git a/config/sync/views.view.files.yml b/config/sync/views.view.files.yml index 98152e505..6960c6cd8 100644 --- a/config/sync/views.view.files.yml +++ b/config/sync/views.view.files.yml @@ -78,7 +78,8 @@ display: buttons: false action_title: Action clear_on_exposed: true - force_selection_info: false + show_multipage_selection_box: default + show_select_all: always_hide selected_actions: - action_id: views_bulk_operations_delete_entity diff --git a/config/sync/views.view.manage_content.yml b/config/sync/views.view.manage_content.yml index 77efb4d86..9cafa9d48 100644 --- a/config/sync/views.view.manage_content.yml +++ b/config/sync/views.view.manage_content.yml @@ -4,9 +4,12 @@ status: true dependencies: config: - field.storage.node.su_basic_page_type + - field.storage.node.su_course_quarters - field.storage.node.su_event_date_time - field.storage.node.su_event_type - field.storage.node.su_imported + - field.storage.node.su_media_date + - field.storage.node.su_media_types - field.storage.node.su_news_publishing_date - field.storage.node.su_news_topics - field.storage.node.su_opp_application_deadline @@ -15,17 +18,23 @@ dependencies: - field.storage.node.su_page_description - field.storage.node.su_page_image - field.storage.node.su_person_type_group + - field.storage.node.su_publication_topics - node.type.stanford_event + - node.type.stanford_media - node.type.stanford_news - node.type.stanford_opportunity - node.type.stanford_page - node.type.stanford_person + - node.type.stanford_publication - taxonomy.vocabulary.basic_page_types + - taxonomy.vocabulary.media_content_types - taxonomy.vocabulary.opportunity_tag_filters - taxonomy.vocabulary.opportunity_type - taxonomy.vocabulary.stanford_event_types - taxonomy.vocabulary.stanford_news_topics - taxonomy.vocabulary.stanford_person_types + - taxonomy.vocabulary.stanford_publication_topics + - taxonomy.vocabulary.su_course_quarters - taxonomy.vocabulary.su_shared_tags module: - datetime @@ -106,7 +115,8 @@ display: buttons: false action_title: Action clear_on_exposed: true - force_selection_info: false + show_multipage_selection_box: default + show_select_all: always_hide selected_actions: - action_id: node_clone_action @@ -438,13 +448,25 @@ display: pager: type: full options: + offset: 0 pagination_heading_level: h4 items_per_page: 50 + total_pages: null + id: 0 tags: next: 'Next ›' previous: '‹ Previous' first: '« First' last: 'Last »' + expose: + items_per_page: true + items_per_page_label: 'Items per page' + items_per_page_options: '50, 100, 200' + items_per_page_options_all: false + items_per_page_options_all_label: '- All -' + offset: false + offset_label: Offset + quantity: 9 exposed_form: type: basic options: @@ -672,13 +694,11 @@ display: columns: views_bulk_operations_bulk_form: views_bulk_operations_bulk_form title: title - su_event_type: su_event_type - su_event_date_time: su_event_date_time + su_publication_topics: su_publication_topics name: name changed: changed revision_uid: revision_uid status: status - su_imported: su_imported operations: operations default: changed info: @@ -694,14 +714,7 @@ display: separator: '' empty_column: false responsive: '' - su_event_type: - align: '' - separator: '' - empty_column: false - responsive: '' - su_event_date_time: - sortable: false - default_sort_order: asc + su_publication_topics: align: '' separator: '' empty_column: false @@ -734,13 +747,6 @@ display: separator: '' empty_column: false responsive: '' - su_imported: - sortable: true - default_sort_order: asc - align: '' - separator: '' - empty_column: false - responsive: '' operations: align: '' separator: '' @@ -842,7 +848,8 @@ display: buttons: false action_title: Action clear_on_exposed: true - force_selection_info: false + show_multipage_selection_box: default + show_select_all: always_hide selected_actions: - action_id: node_clone_action @@ -1596,19 +1603,16 @@ display: header: false display_description: '' header: - area: - id: area + result: + id: result table: views - field: area + field: result relationship: none group_type: group admin_label: '' - plugin_id: text + plugin_id: result empty: true - content: - value: "Basic Pages are the most flexible content type on Stanford Sites. They can be used to make everything from an informational page that consists of mostly text or a media-rich landing page.
\r\n\r\nLearn more about Basic Pages" - format: stanford_html - tokenize: false + content: "Basic Pages are the most flexible content type on Stanford Sites. They can be used to make everything from an informational page that consists of mostly text or a media-rich landing page.
\r\n\r\nTotal number of Basic Pages on this list: @total items
" display_extenders: { } path: admin/content/basic menu: @@ -1640,13 +1644,13 @@ display: - 'config:field.storage.node.su_basic_page_type' - 'config:field.storage.node.su_page_description' - 'config:field.storage.node.su_page_image' - manage_events: - id: manage_events - display_title: Events + manage_courses: + id: manage_courses + display_title: Courses display_plugin: page - position: 2 + position: 3 display_options: - title: Events + title: Courses fields: views_bulk_operations_bulk_form: id: views_bulk_operations_bulk_form @@ -1704,7 +1708,8 @@ display: buttons: false action_title: Action clear_on_exposed: true - force_selection_info: false + show_multipage_selection_box: default + show_select_all: always_hide selected_actions: - action_id: node_clone_action @@ -1745,15 +1750,15 @@ display: type: string settings: link_to_entity: true - su_event_type: - id: su_event_type - table: node__su_event_type - field: su_event_type + su_course_quarters: + id: su_course_quarters + table: node__su_course_quarters + field: su_course_quarters relationship: none group_type: group admin_label: '' plugin_id: field - label: 'Event Types' + label: 'Course Quarters' exclude: false alter: alter_text: false @@ -1786,7 +1791,7 @@ display: element_class: '' element_label_type: '' element_label_class: '' - element_label_colon: true + element_label_colon: false element_wrapper_type: '' element_wrapper_class: '' element_default_classes: true @@ -1797,26 +1802,26 @@ display: click_sort_column: target_id type: entity_reference_label settings: - link: false + link: true group_column: target_id group_columns: { } group_rows: true - delta_limit: 0 + delta_limit: 4 delta_offset: 0 delta_reversed: false delta_first_last: false multi_type: separator separator: ', ' field_api_classes: false - su_event_date_time: - id: su_event_date_time - table: node__su_event_date_time - field: su_event_date_time + su_media_date: + id: su_media_date + table: node__su_media_date + field: su_media_date relationship: none group_type: group admin_label: '' plugin_id: field - label: 'Date & Time' + label: 'Published Date' exclude: false alter: alter_text: false @@ -1849,7 +1854,7 @@ display: element_class: '' element_label_type: '' element_label_class: '' - element_label_colon: true + element_label_colon: false element_wrapper_type: '' element_wrapper_class: '' element_default_classes: true @@ -1858,23 +1863,10 @@ display: empty_zero: false hide_alter_empty: true click_sort_column: value - type: smartdate_default + type: datetime_default settings: timezone_override: '' - format: compact - force_chronological: false - add_classes: false - time_wrapper: true - localize: false - parts: - start: start - end: end - duration: '0' - duration: - separator: ' | ' - unit: '' - decimals: 2 - suffix: h + format_type: medium group_column: value group_columns: { } group_rows: true @@ -2155,18 +2147,18 @@ display: element_class: '' element_label_type: '' element_label_class: '' - element_label_colon: true + element_label_colon: false element_wrapper_type: '' element_wrapper_class: '' element_default_classes: true - empty: 'No' + empty: '' hide_empty: false empty_zero: false hide_alter_empty: true click_sort_column: value type: boolean settings: - format: yes-no + format: default format_custom_false: '' format_custom_true: '' group_column: value @@ -2270,10 +2262,10 @@ display: default_group: All default_group_multiple: { } group_items: { } - su_event_type_target_id: - id: su_event_type_target_id - table: node__su_event_type - field: su_event_type_target_id + su_course_quarters_target_id: + id: su_course_quarters_target_id + table: node__su_course_quarters + field: su_course_quarters_target_id relationship: none group_type: group admin_label: '' @@ -2283,14 +2275,14 @@ display: group: 1 exposed: true expose: - operator_id: su_event_type_target_id_op - label: 'Event Type' + operator_id: su_course_quarters_target_id_op + label: Quarter description: '' use_operator: false - operator: su_event_type_target_id_op + operator: su_course_quarters_target_id_op operator_limit_selection: false operator_list: { } - identifier: su_event_type_target_id + identifier: su_course_quarters_target_id required: false remember: false multiple: false @@ -2310,7 +2302,7 @@ display: default_group_multiple: { } group_items: { } reduce_duplicates: false - vid: stanford_event_types + vid: su_course_quarters type: textfield hierarchy: false limit: true @@ -2360,68 +2352,6 @@ display: hierarchy: true limit: true error_message: true - su_event_date_time_end_value: - id: su_event_date_time_end_value - table: node__su_event_date_time - field: su_event_date_time_end_value - relationship: none - group_type: group - admin_label: 'Event Status' - plugin_id: date - operator: '=' - value: - min: '' - max: '' - value: '' - type: date - granularity: hour - group: 1 - exposed: true - expose: - operator_id: su_event_date_time_end_value_op - label: 'Date & Time - End' - description: null - use_operator: false - operator: su_event_date_time_end_value_op - operator_limit_selection: false - operator_list: { } - identifier: su_event_date_time_end_value - required: false - remember: false - multiple: false - remember_roles: - authenticated: authenticated - min_placeholder: null - max_placeholder: null - placeholder: null - is_grouped: true - group_info: - label: 'Event Status' - description: '' - identifier: su_event_date_time_end_value - optional: true - widget: select - multiple: false - remember: false - default_group: All - default_group_multiple: { } - group_items: - 1: - title: 'Upcoming Events' - operator: '>=' - value: - min: '' - max: '' - value: now - type: offset - 2: - title: 'Past Events' - operator: '<' - value: - min: '' - max: '' - value: now - type: offset status: id: status table: node_field_data @@ -2482,7 +2412,7 @@ display: plugin_id: bundle operator: in value: - stanford_event: stanford_event + stanford_media: stanford_media group: 1 exposed: false expose: @@ -2524,48 +2454,6 @@ display: expose: operator_limit_selection: false operator_list: { } - su_imported_value: - id: su_imported_value - table: node__su_imported - field: su_imported_value - relationship: none - group_type: group - admin_label: '' - plugin_id: boolean - operator: '=' - value: All - group: 1 - exposed: true - expose: - operator_id: '' - label: Imported - description: '' - use_operator: false - operator: su_imported_value_op - operator_limit_selection: false - operator_list: { } - identifier: imported - required: false - remember: false - multiple: false - remember_roles: - authenticated: authenticated - is_grouped: true - group_info: - label: Imported - description: '' - identifier: imported - optional: true - widget: select - multiple: false - remember: false - default_group: '1' - default_group_multiple: { } - group_items: - 1: - title: 'Yes' - operator: '=' - value: '1' filter_groups: operator: AND groups: @@ -2575,12 +2463,24 @@ display: fields: false filters: false filter_groups: false + header: false display_description: '' + header: + result: + id: result + table: views + field: result + relationship: none + group_type: group + admin_label: '' + plugin_id: result + empty: true + content: "Courses can be importer to Stanford Sites from Registrars Office information. This content type only has a list display.
\r\nLearn more about the Courses and importing courses
\r\nTotal number of News items in this list: @total items
" display_extenders: { } - path: admin/content/events + path: admin/content/courses menu: type: tab - title: 'Manage Events' + title: 'Manage Courses' description: '' weight: 0 expanded: false @@ -2604,16 +2504,16 @@ display: - 'user.node_grants:view' - user.permissions tags: - - 'config:field.storage.node.su_event_date_time' - - 'config:field.storage.node.su_event_type' + - 'config:field.storage.node.su_course_quarters' - 'config:field.storage.node.su_imported' - manage_news: - id: manage_news - display_title: News + - 'config:field.storage.node.su_media_date' + manage_events: + id: manage_events + display_title: Events display_plugin: page - position: 3 + position: 2 display_options: - title: News + title: Events fields: views_bulk_operations_bulk_form: id: views_bulk_operations_bulk_form @@ -2671,7 +2571,8 @@ display: buttons: false action_title: Action clear_on_exposed: true - force_selection_info: false + show_multipage_selection_box: default + show_select_all: always_hide selected_actions: - action_id: node_clone_action @@ -2712,15 +2613,15 @@ display: type: string settings: link_to_entity: true - su_news_topics: - id: su_news_topics - table: node__su_news_topics - field: su_news_topics + su_event_type: + id: su_event_type + table: node__su_event_type + field: su_event_type relationship: none group_type: group admin_label: '' plugin_id: field - label: 'News Types' + label: 'Event Types' exclude: false alter: alter_text: false @@ -2775,15 +2676,15 @@ display: multi_type: separator separator: ', ' field_api_classes: false - su_news_publishing_date: - id: su_news_publishing_date - table: node__su_news_publishing_date - field: su_news_publishing_date + su_event_date_time: + id: su_event_date_time + table: node__su_event_date_time + field: su_event_date_time relationship: none group_type: group admin_label: '' plugin_id: field - label: 'News Publishing Date' + label: 'Date & Time' exclude: false alter: alter_text: false @@ -2825,10 +2726,23 @@ display: empty_zero: false hide_alter_empty: true click_sort_column: value - type: datetime_default + type: smartdate_default settings: timezone_override: '' - format_type: stanford_month_date_year + format: compact + force_chronological: false + add_classes: false + time_wrapper: true + localize: false + parts: + start: start + end: end + duration: '0' + duration: + separator: ' | ' + unit: '' + decimals: 2 + suffix: h group_column: value group_columns: { } group_rows: true @@ -3068,15 +2982,15 @@ display: format: custom format_custom_false: Unpublished format_custom_true: Published - operations: - id: operations - table: node - field: operations + su_imported: + id: su_imported + table: node__su_imported + field: su_imported relationship: none group_type: group admin_label: '' - plugin_id: entity_operations - label: Operations + plugin_id: field + label: Imported exclude: false alter: alter_text: false @@ -3113,24 +3027,2648 @@ display: element_wrapper_type: '' element_wrapper_class: '' element_default_classes: true - empty: '' + empty: 'No' hide_empty: false empty_zero: false hide_alter_empty: true - destination: true - filters: - title: - id: title - table: node_field_data - field: title - relationship: none - group_type: group - admin_label: '' - entity_type: node - entity_field: title - plugin_id: string - operator: contains - value: '' + click_sort_column: value + type: boolean + settings: + format: yes-no + format_custom_false: '' + format_custom_true: '' + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + operations: + id: operations + table: node + field: operations + relationship: none + group_type: group + admin_label: '' + plugin_id: entity_operations + label: Operations + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + destination: true + filters: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: string + operator: contains + value: '' + group: 1 + exposed: true + expose: + operator_id: title_op + label: Title + description: '' + use_operator: false + operator: title_op + operator_limit_selection: false + operator_list: { } + identifier: title + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + su_event_type_target_id: + id: su_event_type_target_id + table: node__su_event_type + field: su_event_type_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: or + value: { } + group: 1 + exposed: true + expose: + operator_id: su_event_type_target_id_op + label: 'Event Type' + description: '' + use_operator: false + operator: su_event_type_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: su_event_type_target_id + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: stanford_event_types + type: textfield + hierarchy: false + limit: true + error_message: true + su_shared_tags_target_id: + id: su_shared_tags_target_id + table: node__su_shared_tags + field: su_shared_tags_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: or + value: { } + group: 1 + exposed: true + expose: + operator_id: su_shared_tags_target_id_op + label: 'Shared Tags' + description: '' + use_operator: false + operator: su_shared_tags_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: su_shared_tags_target_id + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: su_shared_tags + type: select + hierarchy: true + limit: true + error_message: true + su_event_date_time_end_value: + id: su_event_date_time_end_value + table: node__su_event_date_time + field: su_event_date_time_end_value + relationship: none + group_type: group + admin_label: 'Event Status' + plugin_id: date + operator: '=' + value: + min: '' + max: '' + value: '' + type: date + granularity: hour + group: 1 + exposed: true + expose: + operator_id: su_event_date_time_end_value_op + label: 'Date & Time - End' + description: null + use_operator: false + operator: su_event_date_time_end_value_op + operator_limit_selection: false + operator_list: { } + identifier: su_event_date_time_end_value + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + min_placeholder: null + max_placeholder: null + placeholder: null + is_grouped: true + group_info: + label: 'Event Status' + description: '' + identifier: su_event_date_time_end_value + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: + 1: + title: 'Upcoming Events' + operator: '>=' + value: + min: '' + max: '' + value: now + type: offset + 2: + title: 'Past Events' + operator: '<' + value: + min: '' + max: '' + value: now + type: offset + status: + id: status + table: node_field_data + field: status + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: status + plugin_id: boolean + operator: '=' + value: '1' + group: 1 + exposed: true + expose: + operator_id: '' + label: Status + description: '' + use_operator: false + operator: status_op + operator_limit_selection: false + operator_list: { } + identifier: status + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: true + group_info: + label: 'Published status' + description: '' + identifier: status + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: + 1: + title: Published + operator: '=' + value: '1' + 2: + title: Unpublished + operator: '=' + value: '0' + type_1: + id: type_1 + table: node_field_data + field: type + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: type + plugin_id: bundle + operator: in + value: + stanford_event: stanford_event + group: 1 + exposed: false + expose: + operator_id: type_1_op + label: 'Content type' + description: null + use_operator: false + operator: type_1_op + operator_limit_selection: false + operator_list: { } + identifier: type_1 + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + status_extra: + id: status_extra + table: node_field_data + field: status_extra + entity_type: node + plugin_id: node_status + operator: '=' + value: false + group: 1 + expose: + operator_limit_selection: false + operator_list: { } + su_imported_value: + id: su_imported_value + table: node__su_imported + field: su_imported_value + relationship: none + group_type: group + admin_label: '' + plugin_id: boolean + operator: '=' + value: All + group: 1 + exposed: true + expose: + operator_id: '' + label: Imported + description: '' + use_operator: false + operator: su_imported_value_op + operator_limit_selection: false + operator_list: { } + identifier: imported + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: true + group_info: + label: Imported + description: '' + identifier: imported + optional: true + widget: select + multiple: false + remember: false + default_group: '1' + default_group_multiple: { } + group_items: + 1: + title: 'Yes' + operator: '=' + value: '1' + filter_groups: + operator: AND + groups: + 1: AND + defaults: + title: false + fields: false + filters: false + filter_groups: false + header: false + display_description: '' + header: + result: + id: result + table: views + field: result + relationship: none + group_type: group + admin_label: '' + plugin_id: result + empty: true + content: "Events can be created directly on the site or imported from https://events.stanford.edu.
\r\n\r\nTotal number of Events in this list: @total items
" + display_extenders: { } + path: admin/content/events + menu: + type: tab + title: 'Manage Events' + description: '' + weight: 0 + expanded: false + menu_name: admin + parent: '' + context: '0' + tab_options: + type: normal + title: Content + description: 'Find and manage content' + weight: -10 + menu_name: admin + cache_metadata: + max-age: 0 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - user + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_event_date_time' + - 'config:field.storage.node.su_event_type' + - 'config:field.storage.node.su_imported' + manage_media: + id: manage_media + display_title: Media + display_plugin: page + position: 3 + display_options: + title: Media + fields: + views_bulk_operations_bulk_form: + id: views_bulk_operations_bulk_form + table: views + field: views_bulk_operations_bulk_form + relationship: none + group_type: group + admin_label: '' + plugin_id: views_bulk_operations_bulk_form + label: Operations + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + batch: true + batch_size: 10 + form_step: true + ajax_loader: false + buttons: false + action_title: Action + clear_on_exposed: true + show_multipage_selection_box: default + show_select_all: always_hide + selected_actions: + - + action_id: node_clone_action + preconfiguration: + add_confirmation: false + confirm_help_text: '' + message_override: '' + - + action_id: views_bulk_edit + preconfiguration: + add_confirmation: false + confirm_help_text: '' + message_override: '' + get_bundles_from_results: true + - + action_id: views_bulk_operations_delete_entity + preconfiguration: + add_confirmation: true + confirm_help_text: '' + message_override: '' + title: + id: title + table: node_field_data + field: title + entity_type: node + entity_field: title + plugin_id: field + label: Title + exclude: false + alter: + alter_text: false + element_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + type: string + settings: + link_to_entity: true + su_media_types: + id: su_media_types + table: node__su_media_types + field: su_media_types + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: 'Media Types' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: entity_reference_label + settings: + link: false + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_media_date: + id: su_media_date + table: node__su_media_date + field: su_media_date + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: 'Published Date' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: datetime_default + settings: + timezone_override: '' + format_type: medium + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + name: + id: name + table: users_field_data + field: name + relationship: uid + group_type: group + admin_label: '' + entity_type: user + entity_field: name + plugin_id: field + label: 'Created by' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: user_name + settings: + link_to_entity: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + changed: + id: changed + table: node_field_data + field: changed + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: changed + plugin_id: field + label: 'Last updated' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: timestamp + settings: + date_format: short + custom_date_format: '' + timezone: '' + tooltip: + date_format: '' + custom_date_format: '' + time_diff: + enabled: false + future_format: '@interval hence' + past_format: '@interval ago' + granularity: 2 + refresh: 60 + description: '' + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + revision_uid: + id: revision_uid + table: node_revision + field: revision_uid + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: revision_uid + plugin_id: field + label: 'Updated by' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: entity_reference_label + settings: + link: true + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: field + label: Status + exclude: false + alter: + alter_text: false + element_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + type: boolean + settings: + format: custom + format_custom_false: Unpublished + format_custom_true: Published + operations: + id: operations + table: node + field: operations + relationship: none + group_type: group + admin_label: '' + plugin_id: entity_operations + label: Operations + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + destination: true + filters: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: string + operator: contains + value: '' + group: 1 + exposed: true + expose: + operator_id: title_op + label: Title + description: '' + use_operator: false + operator: title_op + operator_limit_selection: false + operator_list: { } + identifier: title + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + su_media_types_target_id: + id: su_media_types_target_id + table: node__su_media_types + field: su_media_types_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: or + value: { } + group: 1 + exposed: true + expose: + operator_id: su_media_types_target_id_op + label: 'Media Types' + description: '' + use_operator: false + operator: su_media_types_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: su_media_types_target_id + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: media_content_types + type: textfield + hierarchy: false + limit: true + error_message: true + su_shared_tags_target_id: + id: su_shared_tags_target_id + table: node__su_shared_tags + field: su_shared_tags_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: or + value: { } + group: 1 + exposed: true + expose: + operator_id: su_shared_tags_target_id_op + label: 'Shared Tags' + description: '' + use_operator: false + operator: su_shared_tags_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: su_shared_tags_target_id + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: su_shared_tags + type: select + hierarchy: true + limit: true + error_message: true + status: + id: status + table: node_field_data + field: status + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: status + plugin_id: boolean + operator: '=' + value: '1' + group: 1 + exposed: true + expose: + operator_id: '' + label: Status + description: '' + use_operator: false + operator: status_op + operator_limit_selection: false + operator_list: { } + identifier: status + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: true + group_info: + label: 'Published status' + description: '' + identifier: status + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: + 1: + title: Published + operator: '=' + value: '1' + 2: + title: Unpublished + operator: '=' + value: '0' + type_1: + id: type_1 + table: node_field_data + field: type + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: type + plugin_id: bundle + operator: in + value: + stanford_media: stanford_media + group: 1 + exposed: false + expose: + operator_id: type_1_op + label: 'Content type' + description: null + use_operator: false + operator: type_1_op + operator_limit_selection: false + operator_list: { } + identifier: type_1 + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + status_extra: + id: status_extra + table: node_field_data + field: status_extra + entity_type: node + plugin_id: node_status + operator: '=' + value: false + group: 1 + expose: + operator_limit_selection: false + operator_list: { } + filter_groups: + operator: AND + groups: + 1: AND + defaults: + title: false + fields: false + filters: false + filter_groups: false + header: false + display_description: '' + header: + result: + id: result + table: views + field: result + relationship: none + group_type: group + admin_label: '' + plugin_id: result + empty: true + content: "Media can be used for creating series/collections of videos, podcasts, or embedded content from the Stanford Digital Repository. Media is similar to News in that it has a published date, information about related people, and more.
\r\nLearn more about the Media content type
\r\nTotal number of News items in this list: @total items
" + display_extenders: { } + path: admin/content/media-content + menu: + type: tab + title: 'Manage Media' + description: '' + weight: 0 + expanded: false + menu_name: admin + parent: '' + context: '0' + tab_options: + type: normal + title: Content + description: 'Find and manage content' + weight: -10 + menu_name: admin + cache_metadata: + max-age: 0 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - user + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_media_date' + - 'config:field.storage.node.su_media_types' + manage_news: + id: manage_news + display_title: News + display_plugin: page + position: 3 + display_options: + title: News + fields: + views_bulk_operations_bulk_form: + id: views_bulk_operations_bulk_form + table: views + field: views_bulk_operations_bulk_form + relationship: none + group_type: group + admin_label: '' + plugin_id: views_bulk_operations_bulk_form + label: Operations + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + batch: true + batch_size: 10 + form_step: true + ajax_loader: false + buttons: false + action_title: Action + clear_on_exposed: true + show_multipage_selection_box: default + show_select_all: always_hide + selected_actions: + - + action_id: node_clone_action + preconfiguration: + add_confirmation: false + confirm_help_text: '' + message_override: '' + - + action_id: views_bulk_edit + preconfiguration: + add_confirmation: false + confirm_help_text: '' + message_override: '' + get_bundles_from_results: true + - + action_id: views_bulk_operations_delete_entity + preconfiguration: + add_confirmation: true + confirm_help_text: '' + message_override: '' + title: + id: title + table: node_field_data + field: title + entity_type: node + entity_field: title + plugin_id: field + label: Title + exclude: false + alter: + alter_text: false + element_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + type: string + settings: + link_to_entity: true + su_news_topics: + id: su_news_topics + table: node__su_news_topics + field: su_news_topics + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: 'News Types' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: entity_reference_label + settings: + link: false + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_news_publishing_date: + id: su_news_publishing_date + table: node__su_news_publishing_date + field: su_news_publishing_date + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: 'News Publishing Date' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: datetime_default + settings: + timezone_override: '' + format_type: stanford_month_date_year + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + name: + id: name + table: users_field_data + field: name + relationship: uid + group_type: group + admin_label: '' + entity_type: user + entity_field: name + plugin_id: field + label: 'Created by' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: user_name + settings: + link_to_entity: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + changed: + id: changed + table: node_field_data + field: changed + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: changed + plugin_id: field + label: 'Last updated' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: timestamp + settings: + date_format: short + custom_date_format: '' + timezone: '' + tooltip: + date_format: '' + custom_date_format: '' + time_diff: + enabled: false + future_format: '@interval hence' + past_format: '@interval ago' + granularity: 2 + refresh: 60 + description: '' + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + revision_uid: + id: revision_uid + table: node_revision + field: revision_uid + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: revision_uid + plugin_id: field + label: 'Updated by' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: entity_reference_label + settings: + link: true + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: field + label: Status + exclude: false + alter: + alter_text: false + element_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + type: boolean + settings: + format: custom + format_custom_false: Unpublished + format_custom_true: Published + operations: + id: operations + table: node + field: operations + relationship: none + group_type: group + admin_label: '' + plugin_id: entity_operations + label: Operations + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + destination: true + filters: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: string + operator: contains + value: '' + group: 1 + exposed: true + expose: + operator_id: title_op + label: Title + description: '' + use_operator: false + operator: title_op + operator_limit_selection: false + operator_list: { } + identifier: title + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + su_news_topics_target_id: + id: su_news_topics_target_id + table: node__su_news_topics + field: su_news_topics_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: or + value: { } + group: 1 + exposed: true + expose: + operator_id: su_news_topics_target_id_op + label: 'News Type' + description: '' + use_operator: false + operator: su_news_topics_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: su_news_topics_target_id + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: stanford_news_topics + type: textfield + hierarchy: false + limit: true + error_message: true + su_shared_tags_target_id: + id: su_shared_tags_target_id + table: node__su_shared_tags + field: su_shared_tags_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: or + value: { } + group: 1 + exposed: true + expose: + operator_id: su_shared_tags_target_id_op + label: 'Shared Tags' + description: '' + use_operator: false + operator: su_shared_tags_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: su_shared_tags_target_id + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: su_shared_tags + type: select + hierarchy: true + limit: true + error_message: true + status: + id: status + table: node_field_data + field: status + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: status + plugin_id: boolean + operator: '=' + value: '1' + group: 1 + exposed: true + expose: + operator_id: '' + label: Status + description: '' + use_operator: false + operator: status_op + operator_limit_selection: false + operator_list: { } + identifier: status + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: true + group_info: + label: 'Published status' + description: '' + identifier: status + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: + 1: + title: Published + operator: '=' + value: '1' + 2: + title: Unpublished + operator: '=' + value: '0' + type_1: + id: type_1 + table: node_field_data + field: type + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: type + plugin_id: bundle + operator: in + value: + stanford_news: stanford_news + group: 1 + exposed: false + expose: + operator_id: type_1_op + label: 'Content type' + description: null + use_operator: false + operator: type_1_op + operator_limit_selection: false + operator_list: { } + identifier: type_1 + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + status_extra: + id: status_extra + table: node_field_data + field: status_extra + entity_type: node + plugin_id: node_status + operator: '=' + value: false + group: 1 + expose: + operator_limit_selection: false + operator_list: { } + filter_groups: + operator: AND + groups: + 1: AND + defaults: + title: false + fields: false + filters: false + filter_groups: false + header: false + display_description: '' + header: + result: + id: result + table: views + field: result + relationship: none + group_type: group + admin_label: '' + plugin_id: result + empty: true + content: "News can be used for blogs, announcement, news, and more. You can create a story on your site, or you can use the News content type to point to news on other sites.
\r\n\r\nTotal number of News items in this list: @total items
" + display_extenders: { } + path: admin/content/news + menu: + type: tab + title: 'Manage News' + description: '' + weight: 0 + expanded: false + menu_name: admin + parent: '' + context: '0' + tab_options: + type: normal + title: Content + description: 'Find and manage content' + weight: -10 + menu_name: admin + cache_metadata: + max-age: 0 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - user + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_news_publishing_date' + - 'config:field.storage.node.su_news_topics' + manage_opportunities: + id: manage_opportunities + display_title: Opportunities + display_plugin: page + position: 4 + display_options: + title: Opportunities + fields: + views_bulk_operations_bulk_form: + id: views_bulk_operations_bulk_form + table: views + field: views_bulk_operations_bulk_form + relationship: none + group_type: group + admin_label: '' + plugin_id: views_bulk_operations_bulk_form + label: Operations + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + batch: true + batch_size: 10 + form_step: true + ajax_loader: false + buttons: false + action_title: Action + clear_on_exposed: true + show_multipage_selection_box: default + show_select_all: always_hide + selected_actions: + - + action_id: node_clone_action + preconfiguration: + add_confirmation: false + confirm_help_text: '' + message_override: '' + - + action_id: views_bulk_edit + preconfiguration: + add_confirmation: false + confirm_help_text: '' + message_override: '' + get_bundles_from_results: true + - + action_id: views_bulk_operations_delete_entity + preconfiguration: + add_confirmation: true + confirm_help_text: '' + message_override: '' + title: + id: title + table: node_field_data + field: title + entity_type: node + entity_field: title + plugin_id: field + label: Title + exclude: false + alter: + alter_text: false + element_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + type: string + settings: + link_to_entity: true + su_opp_type: + id: su_opp_type + table: node__su_opp_type + field: su_opp_type + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: 'Opportunity Type' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: entity_reference_label + settings: + link: true + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_opp_tags: + id: su_opp_tags + table: node__su_opp_tags + field: su_opp_tags + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: 'Opportunity Filters' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: entity_reference_label + settings: + link: false + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_opp_application_deadline: + id: su_opp_application_deadline + table: node__su_opp_application_deadline + field: su_opp_application_deadline + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: 'Application Deadline' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: datetime_default + settings: + timezone_override: '' + format_type: stanford_month_date_year + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + name: + id: name + table: users_field_data + field: name + relationship: uid + group_type: group + admin_label: '' + entity_type: user + entity_field: name + plugin_id: field + label: 'Created by' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: user_name + settings: + link_to_entity: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + changed: + id: changed + table: node_field_data + field: changed + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: changed + plugin_id: field + label: 'Last updated' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: timestamp + settings: + date_format: short + custom_date_format: '' + timezone: '' + tooltip: + date_format: '' + custom_date_format: '' + time_diff: + enabled: false + future_format: '@interval hence' + past_format: '@interval ago' + granularity: 2 + refresh: 60 + description: '' + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + revision_uid: + id: revision_uid + table: node_revision + field: revision_uid + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: revision_uid + plugin_id: field + label: 'Updated by' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: entity_reference_label + settings: + link: true + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: field + label: Status + exclude: false + alter: + alter_text: false + element_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + type: boolean + settings: + format: custom + format_custom_false: Unpublished + format_custom_true: Published + operations: + id: operations + table: node + field: operations + relationship: none + group_type: group + admin_label: '' + plugin_id: entity_operations + label: Operations + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + destination: true + filters: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: string + operator: contains + value: '' group: 1 exposed: true expose: @@ -3159,10 +5697,10 @@ display: default_group: All default_group_multiple: { } group_items: { } - su_news_topics_target_id: - id: su_news_topics_target_id - table: node__su_news_topics - field: su_news_topics_target_id + su_opp_type_target_id: + id: su_opp_type_target_id + table: node__su_opp_type + field: su_opp_type_target_id relationship: none group_type: group admin_label: '' @@ -3172,14 +5710,14 @@ display: group: 1 exposed: true expose: - operator_id: su_news_topics_target_id_op - label: 'News Type' + operator_id: su_opp_type_target_id_op + label: 'Opportunity Type' description: '' use_operator: false - operator: su_news_topics_target_id_op + operator: su_opp_type_target_id_op operator_limit_selection: false operator_list: { } - identifier: su_news_topics_target_id + identifier: su_opp_type_target_id required: false remember: false multiple: false @@ -3199,7 +5737,52 @@ display: default_group_multiple: { } group_items: { } reduce_duplicates: false - vid: stanford_news_topics + vid: opportunity_type + type: select + hierarchy: false + limit: true + error_message: true + su_opp_tags_target_id: + id: su_opp_tags_target_id + table: node__su_opp_tags + field: su_opp_tags_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: or + value: { } + group: 1 + exposed: true + expose: + operator_id: su_opp_tags_target_id_op + label: 'Opportunity Filters' + description: '' + use_operator: false + operator: su_opp_tags_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: su_opp_tags_target_id + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: opportunity_tag_filters type: textfield hierarchy: false limit: true @@ -3309,7 +5892,7 @@ display: plugin_id: bundle operator: in value: - stanford_news: stanford_news + stanford_opportunity: stanford_opportunity group: 1 exposed: false expose: @@ -3360,12 +5943,24 @@ display: fields: false filters: false filter_groups: false + header: false display_description: '' + header: + result: + id: result + table: views + field: result + relationship: none + group_type: group + admin_label: '' + plugin_id: result + empty: true + content: "Opportunities can be used to showcase opportunities like grants, fellowships, jobs, internships, and even courses.
\r\nLearn more about Opportunities
\r\nTotal number of Opportunities in this list: @total items
" display_extenders: { } - path: admin/content/news + path: admin/content/opportunities menu: type: tab - title: 'Manage News' + title: 'Manage Opportunities' description: '' weight: 0 expanded: false @@ -3389,15 +5984,15 @@ display: - 'user.node_grants:view' - user.permissions tags: - - 'config:field.storage.node.su_news_publishing_date' - - 'config:field.storage.node.su_news_topics' - manage_opportunities: - id: manage_opportunities - display_title: Opportunities + - 'config:field.storage.node.su_opp_application_deadline' + - 'config:field.storage.node.su_opp_tags' + - 'config:field.storage.node.su_opp_type' + manage_people: + id: manage_people + display_title: People display_plugin: page - position: 4 + position: 5 display_options: - title: Opportunities fields: views_bulk_operations_bulk_form: id: views_bulk_operations_bulk_form @@ -3455,7 +6050,8 @@ display: buttons: false action_title: Action clear_on_exposed: true - force_selection_info: false + show_multipage_selection_box: default + show_select_all: always_hide selected_actions: - action_id: node_clone_action @@ -3480,31 +6076,13 @@ display: id: title table: node_field_data field: title - entity_type: node - entity_field: title - plugin_id: field - label: Title - exclude: false - alter: - alter_text: false - element_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - type: string - settings: - link_to_entity: true - su_opp_type: - id: su_opp_type - table: node__su_opp_type - field: su_opp_type relationship: none group_type: group admin_label: '' + entity_type: node + entity_field: title plugin_id: field - label: 'Opportunity Type' + label: Name exclude: false alter: alter_text: false @@ -3545,11 +6123,11 @@ display: hide_empty: false empty_zero: false hide_alter_empty: true - click_sort_column: target_id - type: entity_reference_label + click_sort_column: value + type: string settings: - link: true - group_column: target_id + link_to_entity: true + group_column: value group_columns: { } group_rows: true delta_limit: 0 @@ -3559,15 +6137,15 @@ display: multi_type: separator separator: ', ' field_api_classes: false - su_opp_tags: - id: su_opp_tags - table: node__su_opp_tags - field: su_opp_tags + su_person_type_group: + id: su_person_type_group + table: node__su_person_type_group + field: su_person_type_group relationship: none group_type: group admin_label: '' plugin_id: field - label: 'Opportunity Filters' + label: 'Person Types' exclude: false alter: alter_text: false @@ -3622,70 +6200,6 @@ display: multi_type: separator separator: ', ' field_api_classes: false - su_opp_application_deadline: - id: su_opp_application_deadline - table: node__su_opp_application_deadline - field: su_opp_application_deadline - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: 'Application Deadline' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: true - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: datetime_default - settings: - timezone_override: '' - format_type: stanford_month_date_year - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false name: id: name table: users_field_data @@ -3915,6 +6429,71 @@ display: format: custom format_custom_false: Unpublished format_custom_true: Published + su_imported: + id: su_imported + table: node__su_imported + field: su_imported + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: Imported + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: 'No' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: boolean + settings: + format: yes-no + format_custom_false: '' + format_custom_true: '' + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false operations: id: operations table: node @@ -3965,6 +6544,7 @@ display: empty_zero: false hide_alter_empty: true destination: true + sorts: { } filters: title: id: title @@ -4006,55 +6586,10 @@ display: default_group: All default_group_multiple: { } group_items: { } - su_opp_type_target_id: - id: su_opp_type_target_id - table: node__su_opp_type - field: su_opp_type_target_id - relationship: none - group_type: group - admin_label: '' - plugin_id: taxonomy_index_tid - operator: or - value: { } - group: 1 - exposed: true - expose: - operator_id: su_opp_type_target_id_op - label: 'Opportunity Type' - description: '' - use_operator: false - operator: su_opp_type_target_id_op - operator_limit_selection: false - operator_list: { } - identifier: su_opp_type_target_id - required: false - remember: false - multiple: false - remember_roles: - authenticated: authenticated - reduce: false - is_grouped: false - group_info: - label: '' - description: '' - identifier: '' - optional: true - widget: select - multiple: false - remember: false - default_group: All - default_group_multiple: { } - group_items: { } - reduce_duplicates: false - vid: opportunity_type - type: select - hierarchy: false - limit: true - error_message: true - su_opp_tags_target_id: - id: su_opp_tags_target_id - table: node__su_opp_tags - field: su_opp_tags_target_id + su_person_type_group_target_id: + id: su_person_type_group_target_id + table: node__su_person_type_group + field: su_person_type_group_target_id relationship: none group_type: group admin_label: '' @@ -4064,14 +6599,14 @@ display: group: 1 exposed: true expose: - operator_id: su_opp_tags_target_id_op - label: 'Opportunity Filters' + operator_id: su_person_type_group_target_id_op + label: 'Person Type' description: '' use_operator: false - operator: su_opp_tags_target_id_op + operator: su_person_type_group_target_id_op operator_limit_selection: false operator_list: { } - identifier: su_opp_tags_target_id + identifier: su_person_type_group_target_id required: false remember: false multiple: false @@ -4091,7 +6626,7 @@ display: default_group_multiple: { } group_items: { } reduce_duplicates: false - vid: opportunity_tag_filters + vid: stanford_person_types type: textfield hierarchy: false limit: true @@ -4201,7 +6736,7 @@ display: plugin_id: bundle operator: in value: - stanford_opportunity: stanford_opportunity + stanford_person: stanford_person group: 1 exposed: false expose: @@ -4243,21 +6778,75 @@ display: expose: operator_limit_selection: false operator_list: { } + su_imported_value: + id: su_imported_value + table: node__su_imported + field: su_imported_value + relationship: none + group_type: group + admin_label: '' + plugin_id: boolean + operator: '=' + value: All + group: 1 + exposed: true + expose: + operator_id: '' + label: Imported + description: '' + use_operator: false + operator: su_imported_value_op + operator_limit_selection: false + operator_list: { } + identifier: imported + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: true + group_info: + label: Imported + description: '' + identifier: imported + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: + 3: + title: 'Yes' + operator: '=' + value: '1' filter_groups: operator: AND groups: 1: AND defaults: - title: false fields: false + sorts: false filters: false filter_groups: false + header: false display_description: '' + header: + result: + id: result + table: views + field: result + relationship: none + group_type: group + admin_label: '' + plugin_id: result + empty: true + content: "Enter Person Profiles on the site, or import profiles from Stanford Profiles (https://profiles.stanford.edu).
\r\nLearn more about Person Profiles
\r\nTotal number of Person Profiles in this list: @total items
" display_extenders: { } - path: admin/content/opportunities + path: admin/content/people menu: type: tab - title: 'Manage Opportunities' + title: 'Manage People' description: '' weight: 0 expanded: false @@ -4281,15 +6870,15 @@ display: - 'user.node_grants:view' - user.permissions tags: - - 'config:field.storage.node.su_opp_application_deadline' - - 'config:field.storage.node.su_opp_tags' - - 'config:field.storage.node.su_opp_type' - manage_people: - id: manage_people - display_title: People + - 'config:field.storage.node.su_imported' + - 'config:field.storage.node.su_person_type_group' + manage_publications: + id: manage_publications + display_title: Publications display_plugin: page - position: 5 + position: 6 display_options: + title: Publications fields: views_bulk_operations_bulk_form: id: views_bulk_operations_bulk_form @@ -4347,7 +6936,8 @@ display: buttons: false action_title: Action clear_on_exposed: true - force_selection_info: false + show_multipage_selection_box: default + show_select_all: always_hide selected_actions: - action_id: node_clone_action @@ -4372,76 +6962,31 @@ display: id: title table: node_field_data field: title - relationship: none - group_type: group - admin_label: '' entity_type: node entity_field: title plugin_id: field - label: Name + label: Title exclude: false alter: alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: true - element_wrapper_type: '' - element_wrapper_class: '' element_default_classes: true empty: '' hide_empty: false empty_zero: false hide_alter_empty: true - click_sort_column: value type: string settings: link_to_entity: true - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_person_type_group: - id: su_person_type_group - table: node__su_person_type_group - field: su_person_type_group + su_publication_topics: + id: su_publication_topics + table: node__su_publication_topics + field: su_publication_topics relationship: none group_type: group admin_label: '' plugin_id: field - label: 'Person Types' + label: 'Publication Types' exclude: false alter: alter_text: false @@ -4474,7 +7019,7 @@ display: element_class: '' element_label_type: '' element_label_class: '' - element_label_colon: true + element_label_colon: false element_wrapper_type: '' element_wrapper_class: '' element_default_classes: true @@ -4725,71 +7270,6 @@ display: format: custom format_custom_false: Unpublished format_custom_true: Published - su_imported: - id: su_imported - table: node__su_imported - field: su_imported - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: Imported - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: true - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: 'No' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: boolean - settings: - format: yes-no - format_custom_false: '' - format_custom_true: '' - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false operations: id: operations table: node @@ -4840,7 +7320,6 @@ display: empty_zero: false hide_alter_empty: true destination: true - sorts: { } filters: title: id: title @@ -4882,10 +7361,10 @@ display: default_group: All default_group_multiple: { } group_items: { } - su_person_type_group_target_id: - id: su_person_type_group_target_id - table: node__su_person_type_group - field: su_person_type_group_target_id + su_publication_topics_target_id: + id: su_publication_topics_target_id + table: node__su_publication_topics + field: su_publication_topics_target_id relationship: none group_type: group admin_label: '' @@ -4895,14 +7374,14 @@ display: group: 1 exposed: true expose: - operator_id: su_person_type_group_target_id_op - label: 'Person Type' + operator_id: su_publication_topics_target_id_op + label: 'Publication Type' description: '' use_operator: false - operator: su_person_type_group_target_id_op + operator: su_publication_topics_target_id_op operator_limit_selection: false operator_list: { } - identifier: su_person_type_group_target_id + identifier: su_publication_topics_target_id required: false remember: false multiple: false @@ -4922,7 +7401,7 @@ display: default_group_multiple: { } group_items: { } reduce_duplicates: false - vid: stanford_person_types + vid: stanford_publication_topics type: textfield hierarchy: false limit: true @@ -5032,7 +7511,7 @@ display: plugin_id: bundle operator: in value: - stanford_person: stanford_person + stanford_publication: stanford_publication group: 1 exposed: false expose: @@ -5074,63 +7553,33 @@ display: expose: operator_limit_selection: false operator_list: { } - su_imported_value: - id: su_imported_value - table: node__su_imported - field: su_imported_value - relationship: none - group_type: group - admin_label: '' - plugin_id: boolean - operator: '=' - value: All - group: 1 - exposed: true - expose: - operator_id: '' - label: Imported - description: '' - use_operator: false - operator: su_imported_value_op - operator_limit_selection: false - operator_list: { } - identifier: imported - required: false - remember: false - multiple: false - remember_roles: - authenticated: authenticated - is_grouped: true - group_info: - label: Imported - description: '' - identifier: imported - optional: true - widget: select - multiple: false - remember: false - default_group: All - default_group_multiple: { } - group_items: - 3: - title: 'Yes' - operator: '=' - value: '1' filter_groups: operator: AND groups: 1: AND defaults: + title: false fields: false - sorts: false filters: false filter_groups: false + header: false display_description: '' + header: + result: + id: result + table: views + field: result + relationship: none + group_type: group + admin_label: '' + plugin_id: result + empty: true + content: "Publications can be added to your site to create filterable lists of citations, create media-rich pages for your publications, and/or to populate publications lists on people profiles. Publications can also be uploaded in bulk.
\r\nTotal number of Basic Pages on this list: @total items
" display_extenders: { } - path: admin/content/people + path: admin/content/publications menu: type: tab - title: 'Manage People' + title: 'Manage Publications' description: '' weight: 0 expanded: false @@ -5154,5 +7603,4 @@ display: - 'user.node_grants:view' - user.permissions tags: - - 'config:field.storage.node.su_imported' - - 'config:field.storage.node.su_person_type_group' + - 'config:field.storage.node.su_publication_topics' diff --git a/config/sync/views.view.media_content.yml b/config/sync/views.view.media_content.yml new file mode 100644 index 000000000..80b3a44bd --- /dev/null +++ b/config/sync/views.view.media_content.yml @@ -0,0 +1,2032 @@ +uuid: aae434ef-547d-4254-a272-ab64879fc6d0 +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.node.stanford_h3_card + - core.entity_view_mode.node.teaser + - field.storage.media.su_media_description + - field.storage.media.su_video_duration + - field.storage.node.su_media_audio_video + - field.storage.node.su_media_date + - field.storage.node.su_media_image + - field.storage.node.su_person_short_title + - node.type.stanford_media + - taxonomy.vocabulary.media_content_filters + module: + - datetime + - graphql_compose_views + - media + - node + - stanford_fields + - stanford_media + - stanford_profile_helper + - taxonomy + - user + - views_taxonomy_term_name_depth +id: media_content +label: 'Media Content' +module: views +description: '' +tag: '' +base_table: node_field_data +base_field: nid +display: + default: + id: default + display_title: Default + display_plugin: default + position: 0 + display_options: + fields: + su_media_audio_video: + id: su_media_audio_video + table: node__su_media_audio_video + field: su_media_audio_video + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: entity_reference_label + settings: + link: false + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 1 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + pager: + type: some + options: + offset: 0 + items_per_page: 1 + exposed_form: + type: basic + options: + submit_button: Apply + reset_button: false + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + access: + type: perm + options: + perm: 'access content' + cache: + type: tag + options: { } + empty: { } + sorts: { } + arguments: + nid: + id: nid + table: node_field_data + field: nid + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: nid + plugin_id: node_nid + default_action: default + exception: + value: all + title_enable: false + title: All + title_enable: false + title: '' + default_argument_type: node + default_argument_options: { } + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + break_phrase: false + not: false + filters: + type: + id: type + table: node_field_data + field: type + entity_type: node + entity_field: type + plugin_id: bundle + value: + stanford_media: stanford_media + status: + id: status + table: node_field_data + field: status + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: status + plugin_id: boolean + operator: '=' + value: '1' + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + style: + type: default + options: + grouping: { } + row_class: '' + default_row_class: true + row: + type: fields + options: + default_field_elements: true + inline: + title: title + su_person_short_title: su_person_short_title + separator: '' + hide_empty: true + query: + type: views_query + options: + query_comment: '' + disable_sql_rewrite: false + distinct: false + replica: false + query_tags: { } + contextual_filters_or: false + relationships: { } + header: { } + footer: { } + display_extenders: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_media_audio_video' + after_first_media: + id: after_first_media + display_title: 'After First Media' + display_plugin: block + position: 4 + display_options: + title: 'Video clips' + fields: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: field + label: '' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + mid: + id: mid + table: media_field_data + field: mid + relationship: su_media_audio_video + group_type: group + admin_label: '' + entity_type: media + entity_field: mid + plugin_id: field + label: '' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: number_integer + settings: + thousand_separator: '' + prefix_suffix: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + name: + id: name + table: media_field_data + field: name + relationship: su_media_audio_video + group_type: group + admin_label: '' + entity_type: media + entity_field: name + plugin_id: field + label: '' + exclude: false + alter: + alter_text: true + text: '{{ name }}' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_video_duration: + id: su_video_duration + table: media__su_video_duration + field: su_video_duration + relationship: su_media_audio_video + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: time_duration + settings: + style: long + units: + - hour + - min + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_media_description: + id: su_media_description + table: media__su_media_description + field: su_media_description + relationship: su_media_audio_video + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: basic_string + settings: { } + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + pager: + type: none + options: + offset: 0 + sorts: + delta: + id: delta + table: node__su_media_audio_video + field: delta + relationship: none + group_type: group + admin_label: '' + plugin_id: standard + order: ASC + expose: + label: '' + field_identifier: '' + exposed: false + arguments: + nid: + id: nid + table: node_field_data + field: nid + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: nid + plugin_id: node_nid + default_action: default + exception: + value: all + title_enable: false + title: All + title_enable: true + title: 'Video clips from: {{ title }}' + default_argument_type: node + default_argument_options: { } + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + break_phrase: false + not: false + filters: + type: + id: type + table: node_field_data + field: type + entity_type: node + entity_field: type + plugin_id: bundle + value: + stanford_media: stanford_media + delta: + id: delta + table: node__su_media_audio_video + field: delta + relationship: none + group_type: group + admin_label: '' + plugin_id: numeric + operator: '>=' + value: + min: '' + max: '' + value: '1' + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + min_placeholder: '' + max_placeholder: '' + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + filter_groups: + operator: AND + groups: + 1: AND + style: + type: html_list + options: + grouping: { } + row_class: '' + default_row_class: true + type: ul + wrapper_class: item-list + class: su-list-unstyled + row: + type: fields + options: + default_field_elements: true + inline: + title: title + su_person_short_title: su_person_short_title + separator: '' + hide_empty: true + defaults: + title: false + pager: false + style: false + row: false + relationships: false + fields: false + sorts: false + arguments: false + filters: false + filter_groups: false + header: false + relationships: + su_media_audio_video: + id: su_media_audio_video + table: node__su_media_audio_video + field: su_media_audio_video + relationship: none + group_type: group + admin_label: 'su_media_audio_video: Media' + plugin_id: standard + required: false + display_description: '' + header: { } + display_extenders: { } + block_description: 'After First Media' + block_category: 'Media Lists (Views)' + block_hide_empty: true + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.media.su_media_description' + - 'config:field.storage.media.su_video_duration' + card_grid: + id: card_grid + display_title: 'Card Grid' + display_plugin: viewfield_block + position: 2 + display_options: + display_extenders: { } + pager: + type: some + options: + offset: 0 + items_per_page: 3 + sorts: + su_media_date_value: + id: su_media_date_value + table: node__su_media_date + field: su_media_date_value + relationship: none + group_type: group + admin_label: '' + plugin_id: datetime + order: DESC + expose: + label: '' + field_identifier: '' + exposed: false + granularity: second + arguments: + term_node_taxonomy_name_depth: + id: term_node_taxonomy_name_depth + table: node_field_data + field: term_node_taxonomy_name_depth + relationship: none + group_type: group + admin_label: '' + default_action: ignore + exception: + value: all + title_enable: 0 + title: All + title_enable: 0 + title: '' + default_argument_type: fixed + default_argument_options: + argument: '' + summary_options: + base_path: '' + count: 1 + override: 0 + items_per_page: '25' + summary: + sort_order: asc + number_of_records: '0' + format: default_summary + specify_validation: 0 + validate: + type: none + fail: 'not found' + validate_options: { } + depth: '10' + vocabularies: + media_content_types: media_content_types + break_phrase: 1 + use_taxonomy_term_path: false + entity_type: node + plugin_id: taxonomy_index_name_depth + style: + type: html_list + options: + row_class: '' + default_row_class: true + uses_fields: false + type: ul + wrapper_class: '' + class: 'su-list-unstyled grid-container-3' + row: + type: 'entity:node' + options: + relationship: none + view_mode: stanford_h3_card + defaults: + pager: false + style: false + row: false + sorts: false + arguments: false + display_description: '' + block_description: 'Default List' + block_category: 'Media Lists (Views)' + block_hide_empty: true + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_media_audio_video' + graphql: + id: graphql + display_title: GraphQL + display_plugin: graphql + position: 9 + display_options: + pager: + type: full + options: + offset: 0 + pagination_heading_level: h4 + items_per_page: 21 + total_pages: null + id: 0 + tags: + next: 'Next ›' + previous: '‹ Previous' + first: '« First' + last: 'Last »' + expose: + items_per_page: true + items_per_page_label: 'Items per page' + items_per_page_options: '3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,90,93,96,99' + items_per_page_options_all: true + items_per_page_options_all_label: all + offset: true + offset_label: offset + quantity: 9 + sorts: + changed: + id: changed + table: node_field_data + field: changed + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: changed + plugin_id: date + order: DESC + expose: + label: '' + field_identifier: '' + exposed: false + granularity: second + su_media_date_value: + id: su_media_date_value + table: node__su_media_date + field: su_media_date_value + relationship: none + group_type: group + admin_label: '' + plugin_id: datetime + order: DESC + expose: + label: '' + field_identifier: '' + exposed: false + granularity: second + arguments: + term_node_taxonomy_name_depth: + id: term_node_taxonomy_name_depth + table: node_field_data + field: term_node_taxonomy_name_depth + relationship: none + group_type: group + admin_label: '' + entity_type: node + plugin_id: taxonomy_index_name_depth + default_action: ignore + exception: + value: all + title_enable: false + title: All + title_enable: false + title: '' + default_argument_type: fixed + default_argument_options: + argument: '' + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + break_phrase: true + depth: '10' + use_taxonomy_term_path: false + vocabularies: + media_content_types: media_content_types + filters: + type: + id: type + table: node_field_data + field: type + entity_type: node + entity_field: type + plugin_id: bundle + value: + stanford_media: stanford_media + status: + id: status + table: node_field_data + field: status + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: status + plugin_id: boolean + operator: '=' + value: '1' + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + su_media_filters_target_id: + id: su_media_filters_target_id + table: node__su_media_filters + field: su_media_filters_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: and + value: { } + group: 1 + exposed: true + expose: + operator_id: su_media_filters_target_id_op + label: 'Media Filters' + description: '' + use_operator: false + operator: su_media_filters_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: filter + required: false + remember: false + multiple: true + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: media_content_filters + type: select + hierarchy: true + limit: true + error_message: true + su_media_person_target_id: + id: su_media_person_target_id + table: node__su_media_person + field: su_media_person_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: numeric + operator: '=' + value: + min: '' + max: '' + value: '' + group: 1 + exposed: true + expose: + operator_id: su_media_person_target_id_op + label: 'Related Person' + description: '' + use_operator: false + operator: su_media_person_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: person + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + min_placeholder: '' + max_placeholder: '' + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + su_media_season_value: + id: su_media_season_value + table: node__su_media_season + field: su_media_season_value + relationship: none + group_type: group + admin_label: '' + plugin_id: string + operator: '=' + value: '' + group: 1 + exposed: true + expose: + operator_id: su_media_season_value_op + label: Season + description: '' + use_operator: false + operator: su_media_season_value_op + operator_limit_selection: false + operator_list: { } + identifier: season + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + su_media_series_value: + id: su_media_series_value + table: node__su_media_series + field: su_media_series_value + relationship: none + group_type: group + admin_label: '' + plugin_id: string + operator: '=' + value: '' + group: 1 + exposed: true + expose: + operator_id: su_media_series_value_op + label: Series + description: '' + use_operator: false + operator: su_media_series_value_op + operator_limit_selection: false + operator_list: { } + identifier: series + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + filter_groups: + operator: AND + groups: + 1: AND + defaults: + sorts: false + arguments: false + filters: false + filter_groups: false + display_extenders: { } + graphql_query_name: stanfordMedia + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_media_audio_video' + list: + id: list + display_title: '- Default List -' + display_plugin: viewfield_block + position: 1 + display_options: + display_extenders: { } + pager: + type: some + options: + offset: 0 + items_per_page: 3 + sorts: + su_media_date_value: + id: su_media_date_value + table: node__su_media_date + field: su_media_date_value + relationship: none + group_type: group + admin_label: '' + plugin_id: datetime + order: DESC + expose: + label: '' + field_identifier: '' + exposed: false + granularity: second + su_media_episode_value: + id: su_media_episode_value + table: node__su_media_episode + field: su_media_episode_value + relationship: none + group_type: group + admin_label: '' + order: DESC + exposed: false + expose: + label: '' + field_identifier: '' + plugin_id: standard + arguments: + term_node_taxonomy_name_depth: + id: term_node_taxonomy_name_depth + table: node_field_data + field: term_node_taxonomy_name_depth + relationship: none + group_type: group + admin_label: '' + default_action: ignore + exception: + value: all + title_enable: 0 + title: All + title_enable: 0 + title: '' + default_argument_type: fixed + default_argument_options: + argument: '' + summary_options: + base_path: '' + count: 1 + override: 0 + items_per_page: '25' + summary: + sort_order: asc + number_of_records: '0' + format: default_summary + specify_validation: 0 + validate: + type: none + fail: 'not found' + validate_options: { } + depth: '10' + vocabularies: + media_content_types: media_content_types + break_phrase: 1 + use_taxonomy_term_path: false + entity_type: node + plugin_id: taxonomy_index_name_depth + style: + type: html_list + options: + row_class: 'su-margin-bottom-4 su-padding-bottom-4' + default_row_class: 1 + uses_fields: 0 + type: ul + wrapper_class: '' + class: su-list-unstyled + row: + type: 'entity:node' + options: + relationship: none + view_mode: teaser + defaults: + pager: false + style: false + row: false + sorts: false + arguments: false + display_description: '' + block_description: 'Default List' + block_category: 'Media Lists (Views)' + block_hide_empty: true + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_media_audio_video' + person_list: + id: person_list + display_title: 'Person Media' + display_plugin: block + position: 8 + display_options: + pager: + type: some + options: + offset: 0 + items_per_page: 3 + sorts: + su_media_date_value: + id: su_media_date_value + table: node__su_media_date + field: su_media_date_value + relationship: none + group_type: group + admin_label: '' + plugin_id: datetime + order: DESC + expose: + label: '' + field_identifier: '' + exposed: false + granularity: second + arguments: + su_media_person_target_id: + id: su_media_person_target_id + table: node__su_media_person + field: su_media_person_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: entity_target_id + default_action: default + exception: + value: all + title_enable: false + title: All + title_enable: false + title: '' + default_argument_type: node + default_argument_options: { } + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + break_phrase: false + not: false + style: + type: html_list + options: + row_class: '' + default_row_class: true + uses_fields: false + type: ul + wrapper_class: '' + class: 'su-list-unstyled grid-container-3' + row: + type: 'entity:node' + options: + relationship: none + view_mode: stanford_h3_card + defaults: + pager: false + style: false + row: false + sorts: false + arguments: false + display_description: '' + display_extenders: { } + block_description: 'Person: Related Media' + block_category: 'People Lists (Views)' + block_hide_empty: true + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_media_audio_video' + related_person: + id: related_person + display_title: Contributors + display_plugin: block + position: 7 + display_options: + fields: + title: + id: title + table: node_field_data + field: title + relationship: su_media_person + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_person_short_title: + id: su_person_short_title + table: node__su_person_short_title + field: su_person_short_title + relationship: su_media_person + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + pager: + type: some + options: + offset: 0 + items_per_page: 0 + filters: + type: + id: type + table: node_field_data + field: type + entity_type: node + entity_field: type + plugin_id: bundle + value: + stanford_media: stanford_media + status: + id: status + table: node_field_data + field: status + relationship: su_media_person + group_type: group + admin_label: '' + entity_type: node + entity_field: status + plugin_id: boolean + operator: '=' + value: '1' + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + filter_groups: + operator: AND + groups: + 1: AND + style: + type: html_list + options: + grouping: { } + row_class: '' + default_row_class: true + type: ul + wrapper_class: item-list + class: su-list-unstyled + row: + type: fields + options: + default_field_elements: true + inline: + title: title + su_person_short_title: su_person_short_title + separator: '' + hide_empty: true + defaults: + pager: false + style: false + row: false + relationships: false + fields: false + filters: false + filter_groups: false + relationships: + su_media_person: + id: su_media_person + table: node__su_media_person + field: su_media_person + relationship: none + group_type: group + admin_label: 'su_media_person: Content' + plugin_id: standard + required: true + display_description: '' + display_extenders: { } + block_category: 'Media Lists (Views)' + block_hide_empty: true + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_person_short_title' + related_series: + id: related_series + display_title: 'Related Series' + display_plugin: block + position: 5 + display_options: + fields: + view_node: + id: view_node + table: node_field_revision + field: view_node + relationship: none + group_type: group + admin_label: '' + entity_type: node + plugin_id: entity_link + label: '' + exclude: true + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + text: view + output_url_as_text: true + absolute: false + su_media_image: + id: su_media_image + table: node__su_media_image + field: su_media_image + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: media_image_formatter + settings: + view_mode: default + link: false + image_style: large + remove_alt: false + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: true + path: '{{ view_node }}' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: entity_title_heading + settings: + tag: h3 + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_media_date: + id: su_media_date + table: node__su_media_date + field: su_media_date + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: datetime_default + settings: + timezone_override: '' + format_type: stanford_month_two_digit_day_year + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + pager: + type: some + options: + offset: 0 + items_per_page: 5 + sorts: + su_media_date_value: + id: su_media_date_value + table: node__su_media_date + field: su_media_date_value + relationship: none + group_type: group + admin_label: '' + plugin_id: datetime + order: DESC + expose: + label: '' + field_identifier: '' + exposed: false + granularity: second + arguments: + su_media_series_value: + id: su_media_series_value + table: node__su_media_series + field: su_media_series_value + relationship: none + group_type: group + admin_label: '' + plugin_id: string + default_action: default + exception: + value: all + title_enable: false + title: All + title_enable: false + title: '' + default_argument_type: token + default_argument_options: + argument: '[node:su_media_series]' + process: 0 + and_or: + + all_option: 1 + debug: 0 + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + glossary: false + limit: 0 + case: none + path_case: none + transform_dash: false + break_phrase: false + nid: + id: nid + table: node_field_data + field: nid + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: nid + plugin_id: node_nid + default_action: default + exception: + value: all + title_enable: false + title: All + title_enable: false + title: '' + default_argument_type: node + default_argument_options: { } + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + break_phrase: false + not: true + style: + type: default + options: + grouping: { } + row_class: '' + default_row_class: true + row: + type: fields + options: + default_field_elements: true + inline: { } + separator: '' + hide_empty: false + defaults: + pager: false + style: false + row: false + fields: false + sorts: false + arguments: false + filters: true + filter_groups: true + display_description: '' + display_extenders: { } + block_category: 'Media Lists (Views)' + block_hide_empty: true + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_media_date' + - 'config:field.storage.node.su_media_image' diff --git a/config/sync/views.view.media_filtered.yml b/config/sync/views.view.media_filtered.yml new file mode 100644 index 000000000..535972140 --- /dev/null +++ b/config/sync/views.view.media_filtered.yml @@ -0,0 +1,340 @@ +uuid: 962327a7-fdc3-4cc5-a5ea-202fa5b9a64e +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.node.stanford_h3_card + - core.entity_view_mode.node.teaser + - node.type.stanford_media + - taxonomy.vocabulary.media_content_filters + module: + - better_exposed_filters + - datetime + - node + - stanford_fields + - taxonomy + - user + - views_infinite_scroll +id: media_filtered +label: 'Media - Filtered' +module: views +description: '' +tag: '' +base_table: node_field_data +base_field: nid +display: + default: + id: default + display_title: Default + display_plugin: default + position: 0 + display_options: + fields: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + make_link: false + absolute: false + word_boundary: false + ellipsis: false + strip_tags: false + trim: false + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + pager: + type: infinite_scroll + options: + offset: 0 + pagination_heading_level: h4 + items_per_page: 21 + total_pages: null + id: 0 + tags: + next: ›› + previous: ‹‹ + expose: + items_per_page: false + items_per_page_label: 'Items per page' + items_per_page_options: '5, 10, 25, 50' + items_per_page_options_all: false + items_per_page_options_all_label: '- All -' + offset: false + offset_label: Offset + views_infinite_scroll: + button_text: 'Load More' + automatically_load_content: false + initially_load_all_pages: false + exposed_form: + type: bef + options: + submit_button: Apply + reset_button: false + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + text_input_required: 'Select any filter and click on Apply to see results' + text_input_required_format: stanford_html + bef: + general: + autosubmit: true + auto_submit_sort_only: false + autosubmit_breakpoint: '' + autosubmit_exclude_textfield: false + autosubmit_textfield_delay: 500 + autosubmit_textfield_minimum_length: 3 + autosubmit_hide: true + input_required: false + allow_secondary: false + secondary_label: 'Advanced options' + secondary_open: false + reset_button_always_show: false + filter: + su_media_filters_target_id: + plugin_id: taxonomy_label_hierarchy_checkbox + advanced: + sort_options: false + sort_options_method: alphabetical_asc + sort_options_natural: true + rewrite: + filter_rewrite_values: '' + filter_rewrite_values_key: false + collapsible: false + collapsible_disable_automatic_open: false + open_by_default: false + is_secondary: false + hide_label: false + field_classes: '' + access: + type: perm + options: + perm: 'access content' + cache: + type: tag + options: { } + empty: + area: + id: area + table: views + field: area + relationship: none + group_type: group + admin_label: '' + plugin_id: text + empty: true + content: + value: 'No items match you search.
' + format: stanford_html + tokenize: false + sorts: + su_media_date_value: + id: su_media_date_value + table: node__su_media_date + field: su_media_date_value + relationship: none + group_type: group + admin_label: '' + plugin_id: datetime + order: DESC + expose: + label: '' + field_identifier: '' + exposed: false + granularity: second + arguments: { } + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + type: + id: type + table: node_field_data + field: type + entity_type: node + entity_field: type + plugin_id: bundle + value: + stanford_media: stanford_media + su_media_filters_target_id: + id: su_media_filters_target_id + table: node__su_media_filters + field: su_media_filters_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: and + value: { } + group: 1 + exposed: true + expose: + operator_id: su_media_filters_target_id_op + label: 'Filter by' + description: '' + use_operator: false + operator: su_media_filters_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: filter + required: false + remember: false + multiple: true + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: media_content_filters + type: select + hierarchy: true + limit: true + error_message: true + style: + type: html_list + options: + grouping: { } + row_class: 'su-margin-bottom-4 su-padding-bottom-4' + default_row_class: true + type: ul + wrapper_class: item-list + class: su-list-unstyled + row: + type: 'entity:node' + options: + relationship: none + view_mode: teaser + query: + type: views_query + options: + query_comment: '' + disable_sql_rewrite: false + distinct: false + replica: false + query_tags: { } + contextual_filters_or: false + relationships: { } + use_ajax: true + header: { } + footer: { } + display_extenders: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } + card_grid: + id: card_grid + display_title: 'Card Grid' + display_plugin: viewfield_block + position: 2 + display_options: + display_extenders: { } + style: + type: html_list + options: + row_class: '' + default_row_class: 1 + uses_fields: 0 + type: ul + wrapper_class: item-list + class: 'su-list-unstyled grid-container-3' + defaults: + style: false + row: false + row: + type: 'entity:node' + options: + relationship: none + view_mode: stanford_h3_card + display_description: '' + block_hide_empty: 1 + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } + default_list: + id: default_list + display_title: '- Default List -' + display_plugin: viewfield_block + position: 1 + display_options: + display_extenders: { } + display_description: '' + block_hide_empty: 1 + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } diff --git a/config/sync/views.view.people_filtered.yml b/config/sync/views.view.people_filtered.yml new file mode 100644 index 000000000..9c2f91da9 --- /dev/null +++ b/config/sync/views.view.people_filtered.yml @@ -0,0 +1,425 @@ +uuid: 9f25b92e-a322-4380-9b67-e256bf5c6dc8 +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.node.stanford_h3_card_plain + - node.type.stanford_person + - taxonomy.vocabulary.person_filters + module: + - better_exposed_filters + - node + - stanford_fields + - taxonomy + - user + - views_infinite_scroll + - views_taxonomy_term_name_depth +id: people_filtered +label: 'People - Filtered' +module: views +description: 'A list of people in a grid with node as the base table' +tag: '' +base_table: node_field_data +base_field: nid +display: + default: + id: default + display_title: Master + display_plugin: default + position: 0 + display_options: + title: 'People Grid - All Results' + fields: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + pager: + type: infinite_scroll + options: + offset: 0 + items_per_page: 39 + total_pages: null + id: 0 + tags: + next: 'Next ›' + previous: '‹ Previous' + expose: + items_per_page: false + items_per_page_label: 'Items per page' + items_per_page_options: '5, 10, 25, 50' + items_per_page_options_all: false + items_per_page_options_all_label: '- All -' + offset: false + offset_label: Offset + views_infinite_scroll: + button_text: 'Load More People' + automatically_load_content: false + exposed_form: + type: bef + options: + submit_button: Apply + reset_button: false + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + text_input_required: 'Select any filter and click on Apply to see results' + text_input_required_format: stanford_html + bef: + general: + autosubmit: true + auto_submit_sort_only: false + autosubmit_breakpoint: '' + autosubmit_exclude_textfield: false + autosubmit_textfield_delay: 500 + autosubmit_textfield_minimum_length: 3 + autosubmit_hide: true + input_required: false + allow_secondary: false + secondary_label: 'Advanced options' + secondary_open: false + reset_button_always_show: false + filter: + su_person_tags_target_id: + plugin_id: taxonomy_label_hierarchy_checkbox + advanced: + sort_options_method: alphabetical_asc + sort_options_natural: true + placeholder_text: '' + rewrite: + filter_rewrite_values: '' + filter_rewrite_values_key: false + collapsible: false + collapsible_disable_automatic_open: false + open_by_default: false + is_secondary: false + hide_label: false + field_classes: '' + access: + type: perm + options: + perm: 'access content' + cache: + type: tag + options: { } + empty: + area_text_custom: + id: area_text_custom + table: views + field: area_text_custom + relationship: none + group_type: group + admin_label: '' + plugin_id: text_custom + empty: true + content: 'Sorry, no results found. Try another filter.
' + tokenize: false + sorts: + su_person_last_name_value: + id: su_person_last_name_value + table: node__su_person_last_name + field: su_person_last_name_value + relationship: none + group_type: group + admin_label: '' + plugin_id: standard + order: ASC + expose: + label: 'Last Name (su_person_last_name)' + field_identifier: su_person_last_name_value + exposed: false + su_person_first_name_value: + id: su_person_first_name_value + table: node__su_person_first_name + field: su_person_first_name_value + relationship: none + group_type: group + admin_label: '' + plugin_id: standard + order: ASC + expose: + label: '' + field_identifier: su_person_first_name_value + exposed: false + created: + id: created + table: node_field_data + field: created + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: created + plugin_id: date + order: DESC + expose: + label: '' + field_identifier: created + exposed: false + granularity: second + arguments: { } + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + operator_limit_selection: false + operator_list: { } + type: + id: type + table: node_field_data + field: type + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: type + plugin_id: bundle + operator: in + value: + stanford_person: stanford_person + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + su_person_tags_target_id: + id: su_person_tags_target_id + table: node__su_person_tags + field: su_person_tags_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: and + value: { } + group: 1 + exposed: true + expose: + operator_id: su_person_tags_target_id_op + label: 'Filtered by' + description: '' + use_operator: false + operator: su_person_tags_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: tags + required: false + remember: false + multiple: true + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: person_filters + type: select + hierarchy: true + limit: true + error_message: true + style: + type: html_list + options: + grouping: { } + row_class: '' + default_row_class: true + type: ul + wrapper_class: '' + class: 'su-list-unstyled grid-container-3' + row: + type: 'entity:node' + options: + relationship: none + view_mode: stanford_h3_card_plain + query: + type: views_query + options: + query_comment: '' + disable_sql_rewrite: false + distinct: true + replica: false + query_tags: { } + relationships: { } + css_class: stanford-people-grid + use_ajax: true + header: { } + footer: { } + display_extenders: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } + grid_list_all: + id: grid_list_all + display_title: 'Card Grid' + display_plugin: viewfield_block + position: 1 + display_options: + display_extenders: { } + display_description: 'A filtered list of people in a grid' + block_description: '' + block_category: 'People Lists (Views)' + arguments: + term_node_taxonomy_name_depth: + id: term_node_taxonomy_name_depth + table: node_field_data + field: term_node_taxonomy_name_depth + relationship: none + group_type: group + admin_label: 'Taxonomy Name: Person Type or Person Filter' + default_action: ignore + exception: + value: all + title_enable: 0 + title: All + title_enable: 0 + title: '' + default_argument_type: fixed + default_argument_options: + argument: '' + summary_options: + base_path: '' + count: 1 + override: 0 + items_per_page: '25' + summary: + sort_order: asc + number_of_records: '0' + format: default_summary + specify_validation: 0 + validate: + type: none + fail: 'not found' + validate_options: { } + depth: '1' + vocabularies: + person_filters: person_filters + stanford_person_types: stanford_person_types + break_phrase: 1 + use_taxonomy_term_path: false + entity_type: node + plugin_id: taxonomy_index_name_depth + defaults: + arguments: false + relationships: false + fields: true + relationships: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } diff --git a/config/sync/views.view.stanford_courses.yml b/config/sync/views.view.stanford_courses.yml index cb1e57fda..dc4b1c5be 100644 --- a/config/sync/views.view.stanford_courses.yml +++ b/config/sync/views.view.stanford_courses.yml @@ -3,23 +3,15 @@ langcode: en status: true dependencies: config: - - field.storage.node.body - - field.storage.node.su_course_academic_year - - field.storage.node.su_course_code - - field.storage.node.su_course_id - - field.storage.node.su_course_instructors - - field.storage.node.su_course_quarters - - field.storage.node.su_course_subject + - core.entity_view_mode.node.stanford_h3_card + - core.entity_view_mode.node.teaser - node.type.stanford_course + - taxonomy.vocabulary.course_filters module: - - element_class_formatter - graphql_compose_views - node - - smart_trim - stanford_fields - taxonomy - - text - - ui_patterns_views - user - views_infinite_scroll - views_taxonomy_term_name_depth @@ -102,2505 +94,11 @@ display: multi_type: separator separator: ', ' field_api_classes: false - view_node: - id: view_node - table: node - field: view_node - relationship: none - group_type: group - admin_label: '' - entity_type: node - plugin_id: entity_link - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - text: view - output_url_as_text: true - absolute: false - su_course_academic_year: - id: su_course_academic_year - table: node__su_course_academic_year - field: su_course_academic_year - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - body: - id: body - table: node__body - field: body - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: text_default - settings: { } - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_code: - id: su_course_code - table: node__su_course_code - field: su_course_code - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_id: - id: su_course_id - table: node__su_course_id - field: su_course_id - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: number_integer - settings: - thousand_separator: '' - prefix_suffix: true - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_instructors: - id: su_course_instructors - table: node__su_course_instructors - field: su_course_instructors - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_subject: - id: su_course_subject - table: node__su_course_subject - field: su_course_subject - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: true - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: true - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: false - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: target_id - type: entity_reference_label - settings: - link: false - group_column: target_id - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - pager: - type: none - options: - offset: 0 - items_per_page: 0 - exposed_form: - type: basic - options: - submit_button: Apply - reset_button: false - reset_button_label: Reset - exposed_sorts_label: 'Sort by' - expose_sort_order: true - sort_asc_label: Asc - sort_desc_label: Desc - access: - type: perm - options: - perm: 'access content' - cache: - type: tag - options: { } - empty: { } - sorts: - title: - id: title - table: node_field_data - field: title - relationship: none - group_type: group - admin_label: '' - entity_type: node - entity_field: title - plugin_id: standard - order: ASC - expose: - label: Title - field_identifier: title - exposed: false - arguments: - term_node_taxonomy_name_depth: - id: term_node_taxonomy_name_depth - table: node_field_data - field: term_node_taxonomy_name_depth - relationship: none - group_type: group - admin_label: '' - entity_type: node - plugin_id: taxonomy_index_name_depth - default_action: ignore - exception: - value: all - title_enable: false - title: All - title_enable: false - title: '' - default_argument_type: fixed - default_argument_options: - argument: '' - summary_options: - base_path: '' - count: true - override: false - items_per_page: 25 - summary: - sort_order: asc - number_of_records: 0 - format: default_summary - specify_validation: false - validate: - type: none - fail: 'not found' - validate_options: { } - break_phrase: true - depth: '0' - use_taxonomy_term_path: false - vocabularies: - su_course_quarters: su_course_quarters - su_course_subjects: su_course_subjects - su_course_tags: su_course_tags - filters: - status: - id: status - table: node_field_data - field: status - entity_type: node - entity_field: status - plugin_id: boolean - value: '1' - group: 1 - expose: - operator: '' - operator_limit_selection: false - operator_list: { } - type: - id: type - table: node_field_data - field: type - entity_type: node - entity_field: type - plugin_id: bundle - value: - stanford_course: stanford_course - expose: - operator_limit_selection: false - operator_list: { } - style: - type: html_list - options: - grouping: { } - row_class: '' - default_row_class: true - type: ul - wrapper_class: '' - class: 'su-list-unstyled su-course-list' - row: - type: ui_patterns - options: - default_field_elements: 0 - inline: - su_course_subject: 0 - su_course_code: 0 - su_course_academic_year: 0 - su_course_quarters: 0 - title: 0 - view_node: 0 - body: 0 - su_course_instructors: 0 - edit_node: 0 - separator: '' - hide_empty: 0 - pattern: course_list - pattern_mapping: - 'views_row:title': - destination: course_list_title - weight: 0 - plugin: views_row - source: title - 'views_row:view_node': - destination: course_list_url - weight: 1 - plugin: views_row - source: view_node - 'views_row:body': - destination: course_list_description - weight: 2 - plugin: views_row - source: body - 'views_row:su_course_instructors': - destination: course_list_instructors - weight: 3 - plugin: views_row - source: su_course_instructors - 'views_row:su_course_quarters': - destination: course_list_quarters - weight: 4 - plugin: views_row - source: su_course_quarters - 'views_row:su_course_academic_year': - destination: course_list_academic_year - weight: 5 - plugin: views_row - source: su_course_academic_year - 'views_row:su_course_subject': - destination: course_list_code - weight: 6 - plugin: views_row - source: su_course_subject - 'views_row:su_course_code': - destination: course_list_code - weight: 7 - plugin: views_row - source: su_course_code - 'views_row:edit_node': - destination: course_list_description - weight: 8 - plugin: views_row - source: edit_node - pattern_variant: h3_header - query: - type: views_query - options: - query_comment: '' - disable_sql_rewrite: false - distinct: false - replica: false - query_tags: { } - contextual_filters_or: false - relationships: { } - group_by: false - header: { } - footer: { } - display_extenders: { } - cache_metadata: - max-age: -1 - contexts: - - 'languages:language_content' - - 'languages:language_interface' - - url - - 'user.node_grants:view' - - user.permissions - tags: - - 'config:field.storage.node.body' - - 'config:field.storage.node.su_course_academic_year' - - 'config:field.storage.node.su_course_code' - - 'config:field.storage.node.su_course_id' - - 'config:field.storage.node.su_course_instructors' - - 'config:field.storage.node.su_course_subject' - default_list_viewfield_block: - id: default_list_viewfield_block - display_title: '- Default List View -' - display_plugin: viewfield_block - position: 1 - display_options: - display_extenders: { } - display_description: 'The default list view field block' - fields: - su_course_subject: - id: su_course_subject - table: node__su_course_subject - field: su_course_subject - relationship: none - group_type: group - admin_label: '' - label: '' - exclude: 0 - alter: - alter_text: 0 - text: '' - make_link: 0 - path: '' - absolute: 0 - external: 0 - replace_spaces: 0 - path_case: none - trim_whitespace: 1 - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: 0 - max_length: '0' - word_boundary: 1 - ellipsis: 1 - more_link: 0 - more_link_text: '' - more_link_path: '' - strip_tags: 0 - trim: 0 - preserve_tags: '' - html: 0 - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: 0 - empty: '' - hide_empty: 0 - empty_zero: 0 - hide_alter_empty: 1 - click_sort_column: target_id - type: entity_reference_label - settings: - link: 0 - group_column: target_id - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: 0 - plugin_id: field - su_course_code: - id: su_course_code - table: node__su_course_code - field: su_course_code - relationship: none - group_type: group - admin_label: '' - label: '' - exclude: 0 - alter: - alter_text: 0 - text: '' - make_link: 0 - path: '' - absolute: 0 - external: 0 - replace_spaces: 0 - path_case: none - trim_whitespace: 1 - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: 0 - max_length: '0' - word_boundary: 1 - ellipsis: 1 - more_link: 0 - more_link_text: '' - more_link_path: '' - strip_tags: 0 - trim: 0 - preserve_tags: '' - html: 0 - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: 0 - empty: '' - hide_empty: 0 - empty_zero: 0 - hide_alter_empty: 1 - click_sort_column: value - type: string - settings: - link_to_entity: 0 - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: 0 - plugin_id: field - su_course_academic_year: - id: su_course_academic_year - table: node__su_course_academic_year - field: su_course_academic_year - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_quarters: - id: su_course_quarters - table: node__su_course_quarters - field: su_course_quarters - relationship: none - group_type: group - admin_label: '' - label: '' - exclude: 0 - alter: - alter_text: 0 - text: '' - make_link: 0 - path: '' - absolute: 0 - external: 0 - replace_spaces: 0 - path_case: none - trim_whitespace: 0 - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: 0 - max_length: '0' - word_boundary: 1 - ellipsis: 1 - more_link: 0 - more_link_text: '' - more_link_path: '' - strip_tags: 0 - trim: 0 - preserve_tags: '' - html: 0 - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: 1 - empty: '' - hide_empty: 0 - empty_zero: 0 - hide_alter_empty: 1 - click_sort_column: target_id - type: entity_reference_label - settings: - link: 0 - group_column: target_id - group_columns: { } - group_rows: 1 - delta_limit: '4' - delta_offset: '0' - delta_reversed: 0 - delta_first_last: 0 - multi_type: separator - separator: ', ' - field_api_classes: 0 - plugin_id: field - title: - id: title - table: node_field_data - field: title - relationship: none - group_type: group - admin_label: '' - label: '' - exclude: 0 - alter: - alter_text: 0 - text: '' - make_link: 0 - path: '' - absolute: 0 - external: 0 - replace_spaces: 0 - path_case: none - trim_whitespace: 0 - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: 0 - max_length: '0' - word_boundary: 1 - ellipsis: 1 - more_link: 0 - more_link_text: '' - more_link_path: '' - strip_tags: 0 - trim: 0 - preserve_tags: '' - html: 0 - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: 1 - empty: '' - hide_empty: 0 - empty_zero: 0 - hide_alter_empty: 1 - click_sort_column: value - type: string - settings: - link_to_entity: 0 - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: 0 - plugin_id: field - view_node: - id: view_node - table: node - field: view_node - relationship: none - group_type: group - admin_label: '' - entity_type: node - plugin_id: entity_link - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - text: view - output_url_as_text: true - absolute: false - body: - id: body - table: node__body - field: body - relationship: none - group_type: group - admin_label: '' - label: '' - exclude: 0 - alter: - alter_text: 0 - text: '' - make_link: 0 - path: '' - absolute: 0 - external: 0 - replace_spaces: 0 - path_case: none - trim_whitespace: 0 - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: 0 - max_length: '0' - word_boundary: 1 - ellipsis: 1 - more_link: 0 - more_link_text: '' - more_link_path: '' - strip_tags: 0 - trim: 0 - preserve_tags: '' - html: 0 - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: 1 - empty: '' - hide_empty: 0 - empty_zero: 0 - hide_alter_empty: 1 - click_sort_column: value - type: smart_trim - settings: - trim_length: '50' - trim_type: words - trim_suffix: ' ...' - summary_handler: ignore - trim_options: - text: text - trim_zero: 0 - replace_tokens: 0 - wrap_output: 0 - wrap_class: trimmed - more: - display_link: 0 - link_trim_only: 0 - target_blank: 0 - text: More - aria_label: 'Read more about [node:title]' - class: more-link - token_browser: '' - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: 0 - plugin_id: field - su_course_instructors: - id: su_course_instructors - table: node__su_course_instructors - field: su_course_instructors - relationship: none - group_type: group - admin_label: '' - label: '' - exclude: 0 - alter: - alter_text: 0 - text: '' - make_link: 0 - path: '' - absolute: 0 - external: 0 - replace_spaces: 0 - path_case: none - trim_whitespace: 0 - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: 0 - max_length: '0' - word_boundary: 1 - ellipsis: 1 - more_link: 0 - more_link_text: '' - more_link_path: '' - strip_tags: 0 - trim: 0 - preserve_tags: '' - html: 0 - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: 1 - empty: '' - hide_empty: 0 - empty_zero: 0 - hide_alter_empty: 1 - click_sort_column: value - type: string_list_class - settings: - list_type: ul - class: su-list-unstyled - group_column: value - group_columns: { } - group_rows: 1 - delta_limit: '0' - delta_offset: '0' - delta_reversed: 0 - delta_first_last: 0 - multi_type: separator - separator: ', ' - field_api_classes: 0 - plugin_id: field - defaults: - fields: false - pager: false - arguments: false - pager: - type: infinite_scroll - options: - items_per_page: '20' - offset: '0' - id: '0' - total_pages: '' - tags: - previous: '‹ Previous' - next: 'Next ›' - expose: - items_per_page: 0 - items_per_page_label: 'Items per page' - items_per_page_options: '5, 10, 25, 50' - items_per_page_options_all: 0 - items_per_page_options_all_label: '- All -' - offset: 0 - offset_label: Offset - views_infinite_scroll: - button_text: 'Load More Courses' - automatically_load_content: 0 - initially_load_all_pages: 0 - arguments: - term_node_taxonomy_name_depth: - id: term_node_taxonomy_name_depth - table: node_field_data - field: term_node_taxonomy_name_depth - relationship: none - group_type: group - admin_label: '' - default_action: ignore - exception: - value: all - title_enable: 0 - title: All - title_enable: 0 - title: '' - default_argument_type: fixed - default_argument_options: - argument: '' - summary_options: - base_path: '' - count: '1' - items_per_page: '25' - override: 0 - summary: - sort_order: asc - number_of_records: '0' - format: default_summary - specify_validation: 0 - validate: - type: none - fail: 'not found' - validate_options: { } - depth: '0' - vocabularies: - su_course_quarters: su_course_quarters - su_course_subjects: su_course_subjects - su_course_tags: su_course_tags - break_phrase: 1 - use_taxonomy_term_path: false - entity_type: node - plugin_id: taxonomy_index_name_depth - cache_metadata: - max-age: -1 - contexts: - - 'languages:language_content' - - 'languages:language_interface' - - url - - url.query_args - - 'user.node_grants:view' - - user.permissions - tags: - - 'config:field.storage.node.body' - - 'config:field.storage.node.su_course_academic_year' - - 'config:field.storage.node.su_course_code' - - 'config:field.storage.node.su_course_instructors' - - 'config:field.storage.node.su_course_quarters' - - 'config:field.storage.node.su_course_subject' - default_list_viewfield_block_graphql: - id: default_list_viewfield_block_graphql - display_title: 'GraphQL: List' - display_plugin: graphql - position: 99 - display_options: - fields: - su_course_subject: - id: su_course_subject - table: node__su_course_subject - field: su_course_subject - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: true - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: false - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: target_id - type: entity_reference_label - settings: - link: false - group_column: target_id - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_code: - id: su_course_code - table: node__su_course_code - field: su_course_code - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: true - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: false - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_academic_year: - id: su_course_academic_year - table: node__su_course_academic_year - field: su_course_academic_year - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_quarters: - id: su_course_quarters - table: node__su_course_quarters - field: su_course_quarters - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: target_id - type: entity_reference_label - settings: - link: false - group_column: target_id - group_columns: { } - group_rows: true - delta_limit: 4 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - title: - id: title - table: node_field_data - field: title - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - view_node: - id: view_node - table: node - field: view_node - relationship: none - group_type: group - admin_label: '' - entity_type: node - plugin_id: entity_link - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - text: view - output_url_as_text: true - absolute: false - body: - id: body - table: node__body - field: body - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: smart_trim - settings: - trim_length: 50 - trim_type: words - trim_suffix: ' ...' - wrap_output: false - wrap_class: trimmed - more: - display_link: false - target_blank: false - link_trim_only: false - class: more-link - text: More - aria_label: 'Read more about [node:title]' - token_browser: '' - summary_handler: ignore - trim_options: - text: true - trim_zero: false - replace_tokens: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_instructors: - id: su_course_instructors - table: node__su_course_instructors - field: su_course_instructors - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string_list_class - settings: - class: su-list-unstyled - list_type: ul - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - edit_node: - id: edit_node - table: node - field: edit_node - relationship: none - group_type: group - admin_label: '' - entity_type: node - plugin_id: entity_link_edit - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: div - element_class: su-courses-edit-article - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - text: 'Edit this course item' - output_url_as_text: false - absolute: false - pager: - type: full - options: - offset: 0 - pagination_heading_level: h4 - items_per_page: 21 - total_pages: null - id: 0 - tags: - next: 'Next ›' - previous: '‹ Previous' - first: '« First' - last: 'Last »' - expose: - items_per_page: true - items_per_page_label: items - items_per_page_options: '3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,90,93,96,99' - items_per_page_options_all: true - items_per_page_options_all_label: all - offset: true - offset_label: offset - quantity: 9 - exposed_form: - type: graphql - options: - submit_button: Apply - reset_button: 0 - reset_button_label: Reset - exposed_sorts_label: 'Sort by' - expose_sort_order: 1 - sort_asc_label: Asc - sort_desc_label: Desc - sorts: - title: - id: title - table: node_field_data - field: title - relationship: none - group_type: group - admin_label: '' - entity_type: node - entity_field: title - plugin_id: standard - order: ASC - expose: - label: Title - field_identifier: title - exposed: true - created: - id: created - table: node_field_data - field: created - relationship: none - group_type: group - admin_label: '' - entity_type: node - entity_field: created - plugin_id: date - order: ASC - expose: - label: 'Authored on' - field_identifier: created - exposed: true - granularity: second - changed: - id: changed - table: node_field_data - field: changed - relationship: none - group_type: group - admin_label: '' - entity_type: node - entity_field: changed - plugin_id: date - order: ASC - expose: - label: Changed - field_identifier: changed - exposed: true - granularity: second - nid: - id: nid - table: node_field_data - field: nid - relationship: none - group_type: group - admin_label: '' - entity_type: node - entity_field: nid - plugin_id: standard - order: ASC - expose: - label: '' - field_identifier: '' - exposed: false - arguments: - term_node_taxonomy_name_depth: - id: term_node_taxonomy_name_depth - table: node_field_data - field: term_node_taxonomy_name_depth - relationship: none - group_type: group - admin_label: '' - entity_type: node - plugin_id: taxonomy_index_name_depth - default_action: ignore - exception: - value: all - title_enable: false - title: All - title_enable: false - title: '' - default_argument_type: fixed - default_argument_options: - argument: '' - summary_options: - base_path: '' - count: true - override: false - items_per_page: 25 - summary: - sort_order: asc - number_of_records: 0 - format: default_summary - specify_validation: false - validate: - type: none - fail: 'not found' - validate_options: { } - break_phrase: true - depth: '0' - use_taxonomy_term_path: false - vocabularies: - su_course_quarters: su_course_quarters - su_course_subjects: su_course_subjects - su_course_tags: su_course_tags - defaults: - pager: false - fields: false - sorts: false - arguments: false - display_description: 'The default list view field block' - display_extenders: { } - graphql_query_name: stanfordCourses - cache_metadata: - max-age: -1 - contexts: - - 'languages:language_content' - - 'languages:language_interface' - - url - - url.query_args - - 'url.query_args:sort_by' - - 'url.query_args:sort_order' - - 'user.node_grants:view' - - user.permissions - tags: - - 'config:field.storage.node.body' - - 'config:field.storage.node.su_course_academic_year' - - 'config:field.storage.node.su_course_code' - - 'config:field.storage.node.su_course_instructors' - - 'config:field.storage.node.su_course_quarters' - - 'config:field.storage.node.su_course_subject' - taxonomy_term_page_list: - id: taxonomy_term_page_list - display_title: 'Taxonomy Term Page List' - display_plugin: block - position: 1 - display_options: - fields: - su_course_subject: - id: su_course_subject - table: node__su_course_subject - field: su_course_subject - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: true - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: false - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: target_id - type: entity_reference_label - settings: - link: false - group_column: target_id - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_code: - id: su_course_code - table: node__su_course_code - field: su_course_code - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: true - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: false - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_academic_year: - id: su_course_academic_year - table: node__su_course_academic_year - field: su_course_academic_year - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_quarters: - id: su_course_quarters - table: node__su_course_quarters - field: su_course_quarters - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: target_id - type: entity_reference_label - settings: - link: false - group_column: target_id - group_columns: { } - group_rows: true - delta_limit: 4 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - title: - id: title - table: node_field_data - field: title - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - view_node: - id: view_node - table: node - field: view_node - relationship: none - group_type: group - admin_label: '' - entity_type: node - plugin_id: entity_link - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - text: view - output_url_as_text: true - absolute: false - body: - id: body - table: node__body - field: body - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: smart_trim - settings: - trim_length: 50 - trim_type: words - trim_suffix: ' ...' - wrap_output: false - wrap_class: trimmed - more: - display_link: false - target_blank: false - link_trim_only: false - class: more-link - text: More - aria_label: 'Read more about [node:title]' - token_browser: '' - summary_handler: ignore - trim_options: - text: false - trim_zero: false - replace_tokens: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - su_course_instructors: - id: su_course_instructors - table: node__su_course_instructors - field: su_course_instructors - relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false pager: type: infinite_scroll options: offset: 0 + pagination_heading_level: h4 items_per_page: 20 total_pages: null id: 0 @@ -2619,30 +117,60 @@ display: button_text: 'Load More Courses' automatically_load_content: false initially_load_all_pages: false + exposed_form: + type: basic + options: + submit_button: Apply + reset_button: false + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + access: + type: perm + options: + perm: 'access content' + cache: + type: tag + options: { } + empty: { } + sorts: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: standard + order: ASC + expose: + label: Title + field_identifier: title + exposed: false arguments: - term_node_tid_depth: - id: term_node_tid_depth + term_node_taxonomy_name_depth: + id: term_node_taxonomy_name_depth table: node_field_data - field: term_node_tid_depth + field: term_node_taxonomy_name_depth relationship: none group_type: group admin_label: '' entity_type: node - plugin_id: taxonomy_index_tid_depth - default_action: default + plugin_id: taxonomy_index_name_depth + default_action: ignore exception: value: all title_enable: false title: All title_enable: false title: '' - default_argument_type: taxonomy_tid + default_argument_type: fixed default_argument_options: - term_page: '1' - node: false - limit: false - vids: { } - anyall: ',' + argument: '' summary_options: base_path: '' count: true @@ -2657,14 +185,66 @@ display: type: none fail: 'not found' validate_options: { } - break_phrase: false - depth: 0 + break_phrase: true + depth: '0' use_taxonomy_term_path: false - defaults: - pager: false - fields: false - arguments: false - display_description: 'Term Block - Filtered' + vocabularies: + su_course_quarters: su_course_quarters + su_course_subjects: su_course_subjects + su_course_tags: su_course_tags + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + operator_limit_selection: false + operator_list: { } + type: + id: type + table: node_field_data + field: type + entity_type: node + entity_field: type + plugin_id: bundle + value: + stanford_course: stanford_course + expose: + operator_limit_selection: false + operator_list: { } + style: + type: html_list + options: + grouping: { } + row_class: '' + default_row_class: true + type: ul + wrapper_class: '' + class: 'su-list-unstyled su-course-list' + row: + type: 'entity:node' + options: + relationship: none + view_mode: teaser + query: + type: views_query + options: + query_comment: '' + disable_sql_rewrite: false + distinct: false + replica: false + query_tags: { } + contextual_filters_or: false + relationships: { } + group_by: false + header: { } + footer: { } display_extenders: { } cache_metadata: max-age: -1 @@ -2675,568 +255,344 @@ display: - url.query_args - 'user.node_grants:view' - user.permissions - tags: - - 'config:field.storage.node.body' - - 'config:field.storage.node.su_course_academic_year' - - 'config:field.storage.node.su_course_code' - - 'config:field.storage.node.su_course_instructors' - - 'config:field.storage.node.su_course_quarters' - - 'config:field.storage.node.su_course_subject' - vertical_teaser_viewfield_block: - id: vertical_teaser_viewfield_block - display_title: 'Card Grid' + tags: { } + default_list_viewfield_block: + id: default_list_viewfield_block + display_title: '- Default List View -' display_plugin: viewfield_block position: 1 display_options: display_extenders: { } - display_description: 'The card grid list view field block' + display_description: 'The default list view field block' defaults: - fields: false - style: false - row: false - pager: false - style: - type: html_list - options: - grouping: { } - row_class: '' - default_row_class: 1 - type: ul - wrapper_class: '' - class: 'su-list-unstyled grid-container-3' - row: - type: ui_patterns - options: - default_field_elements: 0 - inline: - su_course_subject: 0 - su_course_code: 0 - su_course_academic_year: 0 - title: 0 - body: 0 - su_course_instructors: 0 - view_node: 0 - su_course_id: 0 - separator: '' - hide_empty: 0 - pattern: course_vertical_teaser - pattern_mapping: - 'views_row:title': - destination: course_title - weight: 0 - plugin: views_row - source: title - 'views_row:su_course_subject': - destination: course_code - weight: 1 - plugin: views_row - source: su_course_subject - 'views_row:su_course_academic_year': - destination: course_academic_year - weight: 2 - plugin: views_row - source: su_course_academic_year - 'views_row:su_course_code': - destination: course_code - weight: 3 - plugin: views_row - source: su_course_code - pattern_variant: h3_header - fields: - su_course_subject: - id: su_course_subject - table: node__su_course_subject - field: su_course_subject + fields: true + pager: true + arguments: false + arguments: + term_node_taxonomy_name_depth: + id: term_node_taxonomy_name_depth + table: node_field_data + field: term_node_taxonomy_name_depth relationship: none group_type: group admin_label: '' - label: '' - exclude: 0 - alter: - alter_text: 0 - text: '' - make_link: 0 - path: '' - absolute: 0 - external: 0 - replace_spaces: 0 - path_case: none - trim_whitespace: 1 - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: 0 - max_length: '0' - word_boundary: 1 - ellipsis: 1 - more_link: 0 - more_link_text: '' - more_link_path: '' - strip_tags: 1 - trim: 0 - preserve_tags: '' - html: 0 - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: 0 - empty: '' - hide_empty: 0 - empty_zero: 0 - hide_alter_empty: 1 - click_sort_column: target_id - type: entity_reference_label - settings: - link: 0 - group_column: target_id - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: 0 - plugin_id: field - su_course_code: - id: su_course_code - table: node__su_course_code - field: su_course_code + default_action: ignore + exception: + value: all + title_enable: 0 + title: All + title_enable: 0 + title: '' + default_argument_type: fixed + default_argument_options: + argument: '' + summary_options: + base_path: '' + count: '1' + items_per_page: '25' + override: 0 + summary: + sort_order: asc + number_of_records: '0' + format: default_summary + specify_validation: 0 + validate: + type: none + fail: 'not found' + validate_options: { } + depth: '0' + vocabularies: + su_course_quarters: su_course_quarters + su_course_subjects: su_course_subjects + su_course_tags: su_course_tags + break_phrase: 1 + use_taxonomy_term_path: false + entity_type: node + plugin_id: taxonomy_index_name_depth + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } + graphql: + id: graphql + display_title: GraphQL + display_plugin: graphql + position: 4 + display_options: + pager: + type: full + options: + offset: 0 + pagination_heading_level: h4 + items_per_page: 21 + total_pages: null + id: 0 + tags: + next: 'Next ›' + previous: '‹ Previous' + first: '« First' + last: 'Last »' + expose: + items_per_page: true + items_per_page_label: items + items_per_page_options: '3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,90,93,96,99' + items_per_page_options_all: true + items_per_page_options_all_label: all + offset: true + offset_label: offset + quantity: 9 + sorts: + title: + id: title + table: node_field_data + field: title relationship: none group_type: group admin_label: '' - label: '' - exclude: 0 - alter: - alter_text: 0 - text: '' - make_link: 0 - path: '' - absolute: 0 - external: 0 - replace_spaces: 0 - path_case: none - trim_whitespace: 1 - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: 0 - max_length: '0' - word_boundary: 1 - ellipsis: 1 - more_link: 0 - more_link_text: '' - more_link_path: '' - strip_tags: 0 - trim: 0 - preserve_tags: '' - html: 0 - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: 0 - empty: '' - hide_empty: 0 - empty_zero: 0 - hide_alter_empty: 1 - click_sort_column: value - type: string - settings: - link_to_entity: 0 - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: 0 - plugin_id: field - su_course_academic_year: - id: su_course_academic_year - table: node__su_course_academic_year - field: su_course_academic_year + entity_type: node + entity_field: title + plugin_id: standard + order: ASC + expose: + label: Title + field_identifier: title + exposed: true + created: + id: created + table: node_field_data + field: created relationship: none group_type: group admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - title: - id: title + entity_type: node + entity_field: created + plugin_id: date + order: ASC + expose: + label: 'Authored on' + field_identifier: created + exposed: true + granularity: second + changed: + id: changed table: node_field_data - field: title + field: changed relationship: none group_type: group admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: true - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: true - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - body: - id: body - table: node__body - field: body + entity_type: node + entity_field: changed + plugin_id: date + order: ASC + expose: + label: Changed + field_identifier: changed + exposed: true + granularity: second + nid: + id: nid + table: node_field_data + field: nid relationship: none group_type: group admin_label: '' - label: '' - exclude: 0 - alter: - alter_text: 0 - text: '' - make_link: 0 - path: '' - absolute: 0 - external: 0 - replace_spaces: 0 - path_case: none - trim_whitespace: 0 - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: 0 - max_length: '0' - word_boundary: 1 - ellipsis: 1 - more_link: 0 - more_link_text: '' - more_link_path: '' - strip_tags: 0 - trim: 0 - preserve_tags: '' - html: 0 - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: 1 - empty: '' - hide_empty: 0 - empty_zero: 0 - hide_alter_empty: 1 - click_sort_column: value - type: text_default - settings: { } - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: 0 - plugin_id: field - su_course_instructors: - id: su_course_instructors - table: node__su_course_instructors - field: su_course_instructors + entity_type: node + entity_field: nid + plugin_id: standard + order: ASC + expose: + label: ID + field_identifier: nid + exposed: false + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + operator_limit_selection: false + operator_list: { } + type: + id: type + table: node_field_data + field: type + entity_type: node + entity_field: type + plugin_id: bundle + value: + stanford_course: stanford_course + expose: + operator_limit_selection: false + operator_list: { } + su_course_filters_target_id: + id: su_course_filters_target_id + table: node__su_course_filters + field: su_course_filters_target_id relationship: none group_type: group admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: false - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - view_node: - id: view_node - table: node - field: view_node + plugin_id: taxonomy_index_tid + operator: and + value: { } + group: 1 + exposed: true + expose: + operator_id: su_course_filters_target_id_op + label: 'Course Filters' + description: '' + use_operator: false + operator: su_course_filters_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: filter + required: false + remember: false + multiple: true + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: course_filters + type: select + hierarchy: true + limit: true + error_message: true + filter_groups: + operator: AND + groups: + 1: AND + defaults: + sorts: false + filters: false + filter_groups: false + display_extenders: { } + graphql_query_name: stanfordCourses + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'url.query_args:sort_by' + - 'url.query_args:sort_order' + - 'user.node_grants:view' + - user.permissions + tags: { } + taxonomy_term_page_list: + id: taxonomy_term_page_list + display_title: 'Taxonomy Term Page List' + display_plugin: block + position: 1 + display_options: + arguments: + term_node_tid_depth: + id: term_node_tid_depth + table: node_field_data + field: term_node_tid_depth relationship: none group_type: group admin_label: '' entity_type: node - plugin_id: entity_link - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - text: view - output_url_as_text: true - absolute: false - su_course_id: - id: su_course_id - table: node__su_course_id - field: su_course_id + plugin_id: taxonomy_index_tid_depth + default_action: default + exception: + value: all + title_enable: false + title: All + title_enable: false + title: '' + default_argument_type: taxonomy_tid + default_argument_options: + term_page: '1' + node: false + limit: false + vids: { } + anyall: ',' + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + break_phrase: false + depth: 0 + use_taxonomy_term_path: false + defaults: + pager: true + fields: true + arguments: false + display_description: 'Term Block - Filtered' + display_extenders: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } + vertical_teaser_viewfield_block: + id: vertical_teaser_viewfield_block + display_title: 'Card Grid' + display_plugin: viewfield_block + position: 1 + display_options: + display_extenders: { } + display_description: 'The card grid list view field block' + defaults: + fields: true + style: false + row: false + pager: false + style: + type: html_list + options: + grouping: { } + row_class: '' + default_row_class: 1 + type: ul + wrapper_class: '' + class: 'su-list-unstyled grid-container-3' + row: + type: 'entity:node' + options: relationship: none - group_type: group - admin_label: '' - plugin_id: field - label: '' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: false - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: number_integer - settings: - thousand_separator: '' - prefix_suffix: true - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false + view_mode: stanford_h3_card allow: items_per_page: items_per_page pager: @@ -3252,10 +608,4 @@ display: - url - 'user.node_grants:view' - user.permissions - tags: - - 'config:field.storage.node.body' - - 'config:field.storage.node.su_course_academic_year' - - 'config:field.storage.node.su_course_code' - - 'config:field.storage.node.su_course_id' - - 'config:field.storage.node.su_course_instructors' - - 'config:field.storage.node.su_course_subject' + tags: { } diff --git a/config/sync/views.view.stanford_events.yml b/config/sync/views.view.stanford_events.yml index 38f60e78d..d3980f3b9 100644 --- a/config/sync/views.view.stanford_events.yml +++ b/config/sync/views.view.stanford_events.yml @@ -5,6 +5,7 @@ dependencies: config: - core.entity_view_mode.node.stanford_card - core.entity_view_mode.node.stanford_h3_card + - core.entity_view_mode.node.teaser - field.storage.node.su_event_alt_loc - field.storage.node.su_event_date_time - field.storage.node.su_event_dek @@ -25,7 +26,6 @@ dependencies: - smart_date - stanford_fields - taxonomy - - ui_patterns_views - user - views_infinite_scroll - views_taxonomy_term_name_depth @@ -45,19 +45,21 @@ display: display_options: title: Events fields: - su_event_date_time: - id: su_event_date_time - table: node__su_event_date_time - field: su_event_date_time + title: + id: title + table: node_field_data + field: title relationship: none group_type: group admin_label: '' + entity_type: node + entity_field: title plugin_id: field label: '' exclude: false alter: - alter_text: false - text: '' + alter_text: true + text: 'Please try another option from the filter list.
" format: stanford_html tokenize: false + sorts: + su_news_publishing_date_value: + id: su_news_publishing_date_value + table: node__su_news_publishing_date + field: su_news_publishing_date_value + relationship: none + group_type: group + admin_label: '' + plugin_id: datetime + order: DESC + expose: + label: 'Publishing Date (su_news_publishing_date)' + field_identifier: publishingDate + exposed: true + granularity: second + created: + id: created + table: node_field_data + field: created + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: created + plugin_id: date + order: DESC + expose: + label: 'Authored on' + field_identifier: created + exposed: true + granularity: second + changed: + id: changed + table: node_field_data + field: changed + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: changed + plugin_id: date + order: ASC + expose: + label: Changed + field_identifier: changed + exposed: true + granularity: second + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: standard + order: ASC + expose: + label: Title + field_identifier: title + exposed: true + nid: + id: nid + table: node_field_data + field: nid + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: nid + plugin_id: standard + order: ASC + expose: + label: '' + field_identifier: '' + exposed: false arguments: term_node_taxonomy_name_depth: id: term_node_taxonomy_name_depth @@ -1007,6 +1087,90 @@ display: default_group: All default_group_multiple: { } group_items: { } + su_news_spotlight_filters_target_id: + id: su_news_spotlight_filters_target_id + table: node__su_news_spotlight_filters + field: su_news_spotlight_filters_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: and + value: { } + group: 1 + exposed: true + expose: + operator_id: su_news_spotlight_filters_target_id_op + label: 'Spotlight Filters' + description: '' + use_operator: false + operator: su_news_spotlight_filters_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: spotlight + required: false + remember: false + multiple: true + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: stanford_news_spotlight_filters + type: select + hierarchy: true + limit: true + error_message: true + layout_selection_target_id: + id: layout_selection_target_id + table: node__layout_selection + field: layout_selection_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: string + operator: '=' + value: '' + group: 1 + exposed: true + expose: + operator_id: layout_selection_target_id_op + label: Layout + description: '' + use_operator: false + operator: layout_selection_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: layout + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } filter_groups: operator: AND groups: @@ -1025,6 +1189,7 @@ display: style: false row: false relationships: false + sorts: false arguments: false filters: false filter_groups: false @@ -1032,7 +1197,7 @@ display: use_ajax: true display_description: 'List of all content' display_extenders: { } - graphql_query_name: stanfordNewsDefaultList + graphql_query_name: stanfordNews cache_metadata: max-age: -1 contexts: @@ -1040,6 +1205,8 @@ display: - 'languages:language_interface' - url - url.query_args + - 'url.query_args:sort_by' + - 'url.query_args:sort_order' - 'user.node_grants:view' - user.permissions tags: @@ -1048,46 +1215,44 @@ display: - 'config:field.storage.node.su_news_publishing_date' - 'config:field.storage.node.su_news_source' - 'config:field.storage.node.su_news_topics' - term_block: - id: term_block - display_title: 'Taxonomy Term Page List' + related_person: + id: related_person + display_title: 'Person Related News' display_plugin: block - position: 1 + position: 3 display_options: - exposed_form: - type: basic + pager: + type: infinite_scroll options: - submit_button: Apply - reset_button: false - reset_button_label: Reset - exposed_sorts_label: 'Sort by' - expose_sort_order: true - sort_asc_label: Asc - sort_desc_label: Desc - empty: - area: - id: area - table: views - field: area - relationship: none - group_type: group - admin_label: '' - plugin_id: text - empty: true - content: - value: "Please try another option from the filter list.
" - format: stanford_html - tokenize: false + offset: 0 + pagination_heading_level: h4 + items_per_page: 6 + total_pages: null + id: 0 + tags: + next: 'Next ›' + previous: '‹ Previous' + expose: + items_per_page: false + items_per_page_label: 'Items per page' + items_per_page_options: '5, 10, 25, 50' + items_per_page_options_all: false + items_per_page_options_all_label: '- All -' + offset: false + offset_label: Offset + views_infinite_scroll: + button_text: 'Load More' + automatically_load_content: false + initially_load_all_pages: false arguments: - term_node_tid_depth: - id: term_node_tid_depth - table: node_field_data - field: term_node_tid_depth + su_news_person_target_id: + id: su_news_person_target_id + table: node__su_news_person + field: su_news_person_target_id relationship: none group_type: group admin_label: '' - entity_type: node - plugin_id: taxonomy_index_tid_depth + plugin_id: entity_target_id default_action: default exception: value: all @@ -1095,13 +1260,8 @@ display: title: All title_enable: false title: '' - default_argument_type: taxonomy_tid - default_argument_options: - term_page: '1' - node: false - limit: false - vids: { } - anyall: ',' + default_argument_type: node + default_argument_options: { } summary_options: base_path: '' count: true @@ -1117,164 +1277,43 @@ display: fail: 'not found' validate_options: { } break_phrase: false - depth: 10 - use_taxonomy_term_path: false - filters: - status: - id: status - table: node_field_data - field: status - entity_type: node - entity_field: status - plugin_id: boolean - value: '1' - group: 1 - expose: - operator: '' - operator_limit_selection: false - operator_list: { } - type: - id: type - table: node_field_data - field: type - relationship: none - group_type: group - admin_label: '' - entity_type: node - entity_field: type - plugin_id: bundle - operator: in - value: - stanford_news: stanford_news - group: 1 - exposed: false - expose: - operator_id: '' - label: '' - description: '' - use_operator: false - operator: '' - operator_limit_selection: false - operator_list: { } - identifier: '' - required: false - remember: false - multiple: false - remember_roles: - authenticated: authenticated - reduce: false - is_grouped: false - group_info: - label: '' - description: '' - identifier: '' - optional: true - widget: select - multiple: false - remember: false - default_group: All - default_group_multiple: { } - group_items: { } - filter_groups: - operator: AND - groups: - 1: AND + not: false style: type: html_list options: - grouping: { } - row_class: su-news-list + row_class: '' default_row_class: true + uses_fields: false type: ul wrapper_class: '' - class: su-list-unstyled + class: 'su-list-unstyled grid-container-3' row: - type: ui_patterns + type: 'entity:node' options: - default_field_elements: 0 - inline: - su_news_publishing_date: 0 - su_news_featured_media: 0 - title: 0 - su_news_dek: 0 - su_news_topics: 0 - su_news_source: 0 - view_node: 0 - edit_node: 0 - separator: '' - hide_empty: 0 - pattern: news-list - variants: - alert: default - brandbar: default - button: default - card: default - cta: default - date-stacked: default - hero: default - link: default - lockup: a - media: default - pattern_mapping: - 'views_row:view_node': - destination: news_url - weight: 0 - plugin: views_row - source: view_node - 'views_row:title': - destination: news_list_headline - weight: 1 - plugin: views_row - source: title - 'views_row:su_news_publishing_date': - destination: news_list_publishing_date - weight: 2 - plugin: views_row - source: su_news_publishing_date - 'views_row:su_news_source': - destination: news_source - weight: 3 - plugin: views_row - source: su_news_source - 'views_row:su_news_featured_media': - destination: news_list_image - weight: 4 - plugin: views_row - source: su_news_featured_media - 'views_row:su_news_dek': - destination: news_list_dek - weight: 5 - plugin: views_row - source: su_news_dek - 'views_row:su_news_topics': - destination: news_list_topics - weight: 6 - plugin: views_row - source: su_news_topics - 'views_row:edit_node': - destination: news_list_footer - weight: 7 - plugin: views_row - source: edit_node + relationship: none + view_mode: stanford_h3_card defaults: - empty: false css_class: false - use_ajax: false - exposed_form: false + pager: false + use_more: false + use_more_always: false + use_more_text: false + link_display: false + link_url: false style: false row: false - relationships: false arguments: false - filters: false - filter_groups: false - relationships: { } - css_class: 'stanford-news--list stanford-news--list-filtered' - use_ajax: true - display_description: 'Term Block - Filtered' - exposed_block: false + css_class: 'stanford-news--cards stanford-news--cards-any' + display_description: 'Vertical Cards' + use_more: false + use_more_always: false + use_more_text: 'See All News' + link_display: custom_url + link_url: /news display_extenders: { } block_description: '' block_category: 'News Lists (Views)' + block_hide_empty: true cache_metadata: max-age: -1 contexts: @@ -1290,18 +1329,17 @@ display: - 'config:field.storage.node.su_news_publishing_date' - 'config:field.storage.node.su_news_source' - 'config:field.storage.node.su_news_topics' - topics_list: - id: topics_list - display_title: 'Topics Links - With Filter' + related_spotlights: + id: related_spotlights + display_title: 'Related Spotlights' display_plugin: block - position: 5 + position: 11 display_options: - title: 'News Topics' fields: - su_news_topics: - id: su_news_topics - table: node__su_news_topics - field: su_news_topics + su_news_publishing_date: + id: su_news_publishing_date + table: node__su_news_publishing_date + field: su_news_publishing_date relationship: none group_type: group admin_label: '' @@ -1312,10 +1350,74 @@ display: alter_text: false text: '' make_link: false - path: '/news/{{ su_news_topics }}' + path: '' absolute: false external: false - replace_spaces: true + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: datetime_custom + settings: + timezone_override: '' + date_format: 'F d, Y' + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_news_featured_media: + id: su_news_featured_media + table: node__su_news_featured_media + field: su_news_featured_media + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false path_case: none trim_whitespace: false alt: '' @@ -1348,23 +1450,3416 @@ display: empty_zero: false hide_alter_empty: true click_sort_column: target_id - type: entity_reference_label + type: media_multimedia_formatter settings: - link: true + image: + image_formatter: image_style + image_formatter_image_style: su_news_list + image_formatter_responsive_image_style: full_responsive + image_formatter_view_mode: default + video: + video_formatter: entity + video_formatter_view_mode: default + other: + view_mode: default + vt_settings: + options__settings__vt_settings__active_tab: edit-image group_column: target_id group_columns: { } group_rows: true - delta_limit: 3 + delta_limit: 0 delta_offset: 0 delta_reversed: false delta_first_last: false multi_type: separator separator: ', ' field_api_classes: false - su_soe_mag_topics: - id: su_soe_mag_topics - table: node__su_soe_mag_topics - field: su_soe_mag_topics + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: field + label: '' + exclude: false + alter: + alter_text: true + text: 'Spotlight - {{ title }}{{ title }}' + make_link: true + path: '{{ view_node }}' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: true + class: '' + link_text: '' + screenreader_text: 'Spotlight - {{ title }}' + tag: '' + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + view_node: + id: view_node + table: node + field: view_node + relationship: none + group_type: group + admin_label: '' + entity_type: node + plugin_id: entity_link + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: true + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: true + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: false + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + text: view + output_url_as_text: true + absolute: false + su_news_quote: + id: su_news_quote + table: node__su_news_quote + field: su_news_quote + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: basic_string + settings: { } + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_news_spotlight_filters: + id: su_news_spotlight_filters + table: node__su_news_spotlight_filters + field: su_news_spotlight_filters + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: target_id + type: entity_reference_label + settings: + link: true + group_column: target_id + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + pager: + type: some + options: + offset: 0 + items_per_page: 3 + arguments: + nid: + id: nid + table: node_field_data + field: nid + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: nid + plugin_id: node_nid + default_action: default + exception: + value: all + title_enable: false + title: All + title_enable: false + title: '' + default_argument_type: node + default_argument_options: { } + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + break_phrase: false + not: true + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + operator_limit_selection: false + operator_list: { } + type: + id: type + table: node_field_data + field: type + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: type + plugin_id: bundle + operator: in + value: + stanford_news: stanford_news + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + layout_selection_target_id: + id: layout_selection_target_id + table: node__layout_selection + field: layout_selection_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: string + operator: '=' + value: news_spotlight + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + filter_groups: + operator: AND + groups: + 1: AND + style: + type: html_list + options: + grouping: { } + row_class: '' + default_row_class: false + type: ul + wrapper_class: item-list + class: 'su-list-unstyled grid-container-3' + row: + type: 'entity:node' + options: + relationship: none + view_mode: stanford_h3_card + defaults: + pager: false + style: false + row: false + relationships: false + fields: false + arguments: false + filters: false + filter_groups: false + header: false + relationships: { } + display_description: '' + header: + area_text_custom: + id: area_text_custom + table: views + field: area_text_custom + relationship: none + group_type: group + admin_label: '' + plugin_id: text_custom + empty: false + content: 'Please try another option from the filter list.
" + format: stanford_html + tokenize: false + arguments: + term_node_tid_depth: + id: term_node_tid_depth + table: node_field_data + field: term_node_tid_depth + relationship: none + group_type: group + admin_label: '' + entity_type: node + plugin_id: taxonomy_index_tid_depth + default_action: default + exception: + value: all + title_enable: false + title: All + title_enable: false + title: '' + default_argument_type: taxonomy_tid + default_argument_options: + term_page: '1' + node: false + limit: false + vids: { } + anyall: ',' + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + break_phrase: false + depth: 10 + use_taxonomy_term_path: false + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + operator_limit_selection: false + operator_list: { } + type: + id: type + table: node_field_data + field: type + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: type + plugin_id: bundle + operator: in + value: + stanford_news: stanford_news + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + filter_groups: + operator: AND + groups: + 1: AND + style: + type: html_list + options: + grouping: { } + row_class: su-news-list + default_row_class: true + type: ul + wrapper_class: '' + class: su-list-unstyled + row: + type: ui_patterns + options: + default_field_elements: 0 + inline: + su_news_publishing_date: 0 + su_news_featured_media: 0 + title: 0 + su_news_dek: 0 + su_news_topics: 0 + su_news_source: 0 + view_node: 0 + edit_node: 0 + separator: '' + hide_empty: 0 + pattern: news-list + variants: + alert: default + brandbar: default + button: default + card: default + cta: default + date-stacked: default + hero: default + link: default + lockup: a + media: default + pattern_mapping: + 'views_row:view_node': + destination: news_url + weight: 0 + plugin: views_row + source: view_node + 'views_row:title': + destination: news_list_headline + weight: 1 + plugin: views_row + source: title + 'views_row:su_news_publishing_date': + destination: news_list_publishing_date + weight: 2 + plugin: views_row + source: su_news_publishing_date + 'views_row:su_news_source': + destination: news_source + weight: 3 + plugin: views_row + source: su_news_source + 'views_row:su_news_featured_media': + destination: news_list_image + weight: 4 + plugin: views_row + source: su_news_featured_media + 'views_row:su_news_dek': + destination: news_list_dek + weight: 5 + plugin: views_row + source: su_news_dek + 'views_row:su_news_topics': + destination: news_list_topics + weight: 6 + plugin: views_row + source: su_news_topics + 'views_row:edit_node': + destination: news_list_footer + weight: 7 + plugin: views_row + source: edit_node + defaults: + empty: false + css_class: false + use_ajax: false + exposed_form: false + style: false + row: false + relationships: false + arguments: false + filters: false + filter_groups: false + relationships: { } + css_class: 'stanford-news--list stanford-news--list-filtered' + use_ajax: true + display_description: 'Term Block - Filtered' + exposed_block: false + display_extenders: { } + block_description: '' + block_category: 'News Lists (Views)' + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_news_dek' + - 'config:field.storage.node.su_news_featured_media' + - 'config:field.storage.node.su_news_publishing_date' + - 'config:field.storage.node.su_news_source' + - 'config:field.storage.node.su_news_topics' + topic_rss: + id: topic_rss + display_title: 'News RSS Topics Feed' + display_plugin: feed + position: 8 + display_options: + fields: + su_news_publishing_date: + id: su_news_publishing_date + table: node__su_news_publishing_date + field: su_news_publishing_date + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '0' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: false + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: datetime_custom + settings: + timezone_override: '' + date_format: 'D, d M Y H:i:s O' + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + su_news_dek: + id: su_news_dek + table: node__su_news_dek + field: su_news_dek + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + view_node: + id: view_node + table: node + field: view_node + relationship: none + group_type: group + admin_label: '' + entity_type: node + plugin_id: entity_link + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: true + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: true + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: false + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + text: view + output_url_as_text: true + absolute: false + su_news_byline: + id: su_news_byline + table: node__su_news_byline + field: su_news_byline + relationship: none + group_type: group + admin_label: '' + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + uuid: + id: uuid + table: node + field: uuid + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: uuid + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + text: '' + make_link: false + path: '' + absolute: false + external: false + replace_spaces: false + path_case: none + trim_whitespace: false + alt: '' + rel: '' + link_class: '' + prefix: '' + suffix: '' + target: '' + nl2br: false + max_length: 0 + word_boundary: true + ellipsis: true + more_link: false + more_link_text: '' + more_link_path: '' + strip_tags: false + trim: false + preserve_tags: '' + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: false + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + sorts: + su_news_publishing_date_value: + id: su_news_publishing_date_value + table: node__su_news_publishing_date + field: su_news_publishing_date_value + relationship: none + group_type: group + admin_label: '' + plugin_id: datetime + order: DESC + expose: + label: 'Publishing Date (su_news_publishing_date)' + field_identifier: su_news_publishing_date_value + exposed: false + granularity: second + arguments: + term_node_taxonomy_name_depth: + id: term_node_taxonomy_name_depth + table: node_field_data + field: term_node_taxonomy_name_depth + relationship: none + group_type: group + admin_label: '' + entity_type: node + plugin_id: taxonomy_index_name_depth + default_action: ignore + exception: + value: all + title_enable: false + title: All + title_enable: false + title: '' + default_argument_type: fixed + default_argument_options: + argument: '' + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + break_phrase: true + depth: '1' + use_taxonomy_term_path: false + vocabularies: + stanford_news_topics: stanford_news_topics + su_shared_tags: su_shared_tags + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + operator_limit_selection: false + operator_list: { } + type: + id: type + table: node_field_data + field: type + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: type + plugin_id: bundle + operator: in + value: + stanford_news: stanford_news + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + su_news_source_uri: + id: su_news_source_uri + table: node__su_news_source + field: su_news_source_uri + relationship: none + group_type: group + admin_label: '' + plugin_id: string + operator: empty + value: '' + group: 1 + exposed: false + expose: + operator_id: su_news_source_uri_op + label: 'External Source (su_news_source:uri)' + description: null + use_operator: false + operator: su_news_source_uri_op + operator_limit_selection: false + operator_list: { } + identifier: su_news_source_uri + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + placeholder: null + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + filter_groups: + operator: AND + groups: + 1: AND + style: + type: rss + options: + grouping: { } + description: 'Recent news' + row: + type: rss_fields + options: + title_field: title + link_field: view_node + description_field: su_news_dek + creator_field: su_news_byline + date_field: su_news_publishing_date + guid_field_options: + guid_field: uuid + guid_field_is_permalink: false + defaults: + css_class: false + fields: false + sorts: false + arguments: false + filters: false + filter_groups: false + css_class: '' + display_description: '' + display_extenders: { } + path: news/%/rss + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - 'user.node_grants:view' + - user.permissions + tags: + - 'config:field.storage.node.su_news_byline' + - 'config:field.storage.node.su_news_dek' + - 'config:field.storage.node.su_news_publishing_date' + topics_list: + id: topics_list + display_title: 'Topics Links - With Filter' + display_plugin: block + position: 5 + display_options: + title: 'News Topics' + fields: + su_news_topics: + id: su_news_topics + table: node__su_news_topics + field: su_news_topics relationship: none group_type: group admin_label: '' @@ -1375,10 +4870,10 @@ display: alter_text: false text: '' make_link: false - path: '' + path: '/news/{{ su_news_topics }}' absolute: false external: false - replace_spaces: false + replace_spaces: true path_case: none trim_whitespace: false alt: '' @@ -1417,13 +4912,17 @@ display: group_column: target_id group_columns: { } group_rows: true - delta_limit: 0 + delta_limit: 3 delta_offset: 0 delta_reversed: false delta_first_last: false multi_type: separator separator: ', ' field_api_classes: false + su_soe_mag_topics: + alter: { } + settings: { } + group_columns: { } pager: type: some options: @@ -1507,7 +5006,7 @@ display: - 'config:field.storage.node.su_soe_mag_topics' vertical_cards: id: vertical_cards - display_title: 'Card Grid' + display_title: 'News Card Grid' display_plugin: viewfield_block position: 3 display_options: @@ -1640,34 +5139,17 @@ display: - 'config:field.storage.node.su_news_publishing_date' - 'config:field.storage.node.su_news_source' - 'config:field.storage.node.su_news_topics' - vertical_cards_graphql: - id: vertical_cards_graphql - display_title: 'GraphQL: Card Grid' - display_plugin: graphql - position: 99 + vertical_teaser_term: + id: vertical_teaser_term + display_title: 'Vertical Teaser Term' + display_plugin: block + position: 3 display_options: pager: - type: full + type: some options: offset: 0 - pagination_heading_level: h4 items_per_page: 3 - total_pages: null - id: 0 - tags: - next: 'Next ›' - previous: '‹ Previous' - first: '« First' - last: 'Last »' - expose: - items_per_page: true - items_per_page_label: items - items_per_page_options: '3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,90,93,96,99' - items_per_page_options_all: true - items_per_page_options_all_label: all - offset: true - offset_label: offset - quantity: 9 arguments: term_node_taxonomy_name_depth: id: term_node_taxonomy_name_depth @@ -1703,7 +5185,7 @@ display: fail: 'not found' validate_options: { } break_phrase: true - depth: '1' + depth: '0' use_taxonomy_term_path: false vocabularies: stanford_news_topics: stanford_news_topics @@ -1742,132 +5224,105 @@ display: validate_options: { } break_phrase: false not: true - style: - type: graphql - options: - uses_fields: false - row: - type: graphql_entity - options: null - defaults: - css_class: false - pager: false - use_more: false - use_more_always: false - use_more_text: false - link_display: false - link_url: false - style: false - row: false - arguments: false - display_description: 'Vertical Cards' - use_more: false - use_more_always: false - use_more_text: 'See All News' - link_display: custom_url - link_url: /news - display_extenders: { } - graphql_query_name: stanfordNewsCardGrid - cache_metadata: - max-age: -1 - contexts: - - 'languages:language_content' - - 'languages:language_interface' - - url - - url.query_args - - 'user.node_grants:view' - - user.permissions - tags: - - 'config:field.storage.node.su_news_dek' - - 'config:field.storage.node.su_news_featured_media' - - 'config:field.storage.node.su_news_publishing_date' - - 'config:field.storage.node.su_news_source' - - 'config:field.storage.node.su_news_topics' - vertical_teaser_term: - id: vertical_teaser_term - display_title: 'Vertical Teaser Term' - display_plugin: block - position: 3 - display_options: - pager: - type: some - options: - offset: 0 - items_per_page: 3 - arguments: - term_node_taxonomy_name_depth: - id: term_node_taxonomy_name_depth + filters: + status: + id: status table: node_field_data - field: term_node_taxonomy_name_depth + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + operator_limit_selection: false + operator_list: { } + type: + id: type + table: node_field_data + field: type relationship: none group_type: group admin_label: '' entity_type: node - plugin_id: taxonomy_index_name_depth - default_action: ignore - exception: - value: all - title_enable: false - title: All - title_enable: false - title: '' - default_argument_type: fixed - default_argument_options: - argument: '' - summary_options: - base_path: '' - count: true - override: false - items_per_page: 25 - summary: - sort_order: asc - number_of_records: 0 - format: default_summary - specify_validation: false - validate: - type: none - fail: 'not found' - validate_options: { } - break_phrase: true - depth: '0' - use_taxonomy_term_path: false - vocabularies: - stanford_news_topics: stanford_news_topics - nid: - id: nid - table: node_field_data - field: nid + entity_field: type + plugin_id: bundle + operator: in + value: + stanford_news: stanford_news + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + layout_selection_target_id: + id: layout_selection_target_id + table: node__layout_selection + field: layout_selection_target_id relationship: none group_type: group admin_label: '' - entity_type: node - entity_field: nid - plugin_id: node_nid - default_action: default - exception: - value: all - title_enable: false - title: All - title_enable: false - title: '' - default_argument_type: node - default_argument_options: { } - summary_options: - base_path: '' - count: true - override: false - items_per_page: 25 - summary: - sort_order: asc - number_of_records: 0 - format: default_summary - specify_validation: true - validate: - type: none - fail: ignore - validate_options: { } - break_phrase: false - not: true + plugin_id: string + operator: empty + value: '' + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + filter_groups: + operator: AND + groups: + 1: AND style: type: html_list options: @@ -1893,6 +5348,8 @@ display: style: false row: false arguments: false + filters: false + filter_groups: false css_class: 'stanford-news--cards stanford-news--cards-any' display_description: 'Vertical Teaser Term' use_more: true diff --git a/config/sync/views.view.stanford_news_filtered.yml b/config/sync/views.view.stanford_news_filtered.yml new file mode 100644 index 000000000..48548a5d3 --- /dev/null +++ b/config/sync/views.view.stanford_news_filtered.yml @@ -0,0 +1,506 @@ +uuid: e8b6e7d9-57be-4624-b30d-05d85370b71e +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.node.stanford_h3_card + - node.type.stanford_news + - taxonomy.vocabulary.stanford_news_spotlight_filters + module: + - better_exposed_filters + - node + - stanford_fields + - taxonomy + - user + - views_infinite_scroll + - views_taxonomy_term_name_depth +id: stanford_news_filtered +label: 'News - Filtered' +module: views +description: '' +tag: '' +base_table: node_field_data +base_field: nid +display: + default: + id: default + display_title: Default + display_plugin: default + position: 0 + display_options: + title: 'Default List' + fields: + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: title + plugin_id: field + label: '' + exclude: false + alter: + alter_text: false + make_link: false + absolute: false + word_boundary: false + ellipsis: false + strip_tags: false + trim: false + html: false + element_type: '' + element_class: '' + element_label_type: '' + element_label_class: '' + element_label_colon: false + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + click_sort_column: value + type: string + settings: + link_to_entity: true + group_column: value + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: separator + separator: ', ' + field_api_classes: false + pager: + type: infinite_scroll + options: + offset: 0 + pagination_heading_level: h4 + items_per_page: 39 + total_pages: null + id: 0 + tags: + next: 'Next ›' + previous: '‹ Previous' + expose: + items_per_page: false + items_per_page_label: 'Items per page' + items_per_page_options: '5, 10, 25, 50' + items_per_page_options_all: false + items_per_page_options_all_label: '- All -' + offset: false + offset_label: Offset + views_infinite_scroll: + button_text: 'Load More Spotlights' + automatically_load_content: false + initially_load_all_pages: false + exposed_form: + type: bef + options: + submit_button: Apply + reset_button: false + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + text_input_required: 'Select any filter and click on Apply to see results' + text_input_required_format: null + bef: + general: + autosubmit: false + auto_submit_sort_only: false + autosubmit_breakpoint: '' + autosubmit_exclude_textfield: false + autosubmit_textfield_delay: 500 + autosubmit_textfield_minimum_length: 3 + autosubmit_hide: false + input_required: false + allow_secondary: false + secondary_label: 'Advanced options' + secondary_open: false + reset_button_always_show: false + sort: + plugin_id: default + filter: + su_news_spotlight_filters_target_id: + plugin_id: default + advanced: + sort_options_method: alphabetical_asc + sort_options_natural: true + open_by_default: false + field_classes: '' + access: + type: perm + options: + perm: 'access content' + cache: + type: tag + options: { } + empty: { } + sorts: + created: + id: created + table: node_field_data + field: created + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: created + plugin_id: date + order: DESC + expose: + label: '' + field_identifier: '' + exposed: false + granularity: second + arguments: + term_node_taxonomy_name_depth: + id: term_node_taxonomy_name_depth + table: node_field_data + field: term_node_taxonomy_name_depth + relationship: none + group_type: group + admin_label: 'Taxonomy Name: News Spotlight Filters' + entity_type: node + plugin_id: taxonomy_index_name_depth + default_action: ignore + exception: + value: all + title_enable: false + title: All + title_enable: false + title: '' + default_argument_type: fixed + default_argument_options: + argument: '' + summary_options: + base_path: '' + count: true + override: false + items_per_page: 25 + summary: + sort_order: asc + number_of_records: 0 + format: default_summary + specify_validation: false + validate: + type: none + fail: 'not found' + validate_options: { } + break_phrase: true + depth: '1' + use_taxonomy_term_path: false + vocabularies: + stanford_news_spotlight_filters: stanford_news_spotlight_filters + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + type: + id: type + table: node_field_data + field: type + entity_type: node + entity_field: type + plugin_id: bundle + value: + stanford_news: stanford_news + layout_selection_target_id: + id: layout_selection_target_id + table: node__layout_selection + field: layout_selection_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: string + operator: '=' + value: news_spotlight + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + su_news_spotlight_filters_target_id: + id: su_news_spotlight_filters_target_id + table: node__su_news_spotlight_filters + field: su_news_spotlight_filters_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: and + value: { } + group: 1 + exposed: true + expose: + operator_id: su_news_spotlight_filters_target_id_op + label: 'Filtered by' + description: '' + use_operator: false + operator: su_news_spotlight_filters_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: su_news_spotlight_filters_target_id + required: false + remember: false + multiple: true + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: stanford_news_spotlight_filters + type: select + hierarchy: true + limit: true + error_message: true + style: + type: html_list + options: + row_class: '' + default_row_class: true + uses_fields: false + type: ul + wrapper_class: '' + class: 'su-list-unstyled grid-container-3' + row: + type: 'entity:node' + options: + relationship: none + view_mode: stanford_h3_card + query: + type: views_query + options: + query_comment: '' + disable_sql_rewrite: false + distinct: true + replica: false + query_tags: { } + contextual_filters_or: false + relationships: { } + use_ajax: true + header: { } + footer: { } + display_extenders: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } + spotlight_cards: + id: spotlight_cards + display_title: 'Spotlights - Card Grid' + display_plugin: viewfield_block + position: 2 + display_options: + display_extenders: { } + display_description: '' + exposed_form: + type: bef + options: + submit_button: Apply + reset_button: 0 + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + text_input_required: 'Select any filter and click on Apply to see results' + text_input_required_format: stanford_html + bef: + general: + autosubmit: 1 + autosubmit_exclude_textfield: 0 + autosubmit_textfield_delay: '500' + autosubmit_textfield_minimum_length: '3' + autosubmit_hide: 1 + input_required: 0 + allow_secondary: 0 + secondary_label: 'Advanced options' + secondary_open: 0 + reset_button_always_show: false + autosubmit_breakpoint: '' + auto_submit_sort_only: false + filter: + su_news_spotlight_filters_target_id: + plugin_id: taxonomy_label_hierarchy_checkbox + advanced: + sort_options: 0 + rewrite: + filter_rewrite_values: '' + filter_rewrite_values_key: 0 + hide_label: 0 + collapsible: 0 + collapsible_disable_automatic_open: 0 + is_secondary: 0 + field_classes: '' + open_by_default: false + sort_options_method: alphabetical_asc + sort_options_natural: true + defaults: + exposed_form: false + title: false + style: false + row: false + block_hide_empty: 1 + title: 'Filtered Spotlights Card Grid' + style: + type: html_list + options: + row_class: '' + default_row_class: 1 + uses_fields: 0 + type: ul + wrapper_class: '' + class: 'su-list-unstyled grid-container-3' + row: + type: 'entity:node' + options: + relationship: none + view_mode: stanford_h3_card + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } + spotlight_list_page: + id: spotlight_list_page + display_title: 'Spotlights - Default List' + display_plugin: viewfield_block + position: 1 + display_options: + display_extenders: { } + display_description: '' + exposed_form: + type: bef + options: + submit_button: Apply + reset_button: 0 + reset_button_label: Reset + exposed_sorts_label: 'Sort by' + expose_sort_order: true + sort_asc_label: Asc + sort_desc_label: Desc + text_input_required: 'Select any filter and click on Apply to see results' + text_input_required_format: stanford_html + bef: + general: + autosubmit: 1 + autosubmit_exclude_textfield: 0 + autosubmit_textfield_delay: '500' + autosubmit_textfield_minimum_length: '3' + autosubmit_hide: 1 + input_required: 0 + allow_secondary: 0 + secondary_label: 'Advanced options' + secondary_open: 0 + reset_button_always_show: false + autosubmit_breakpoint: '' + auto_submit_sort_only: false + filter: + su_news_spotlight_filters_target_id: + plugin_id: taxonomy_label_hierarchy_checkbox + advanced: + sort_options: 0 + rewrite: + filter_rewrite_values: '' + filter_rewrite_values_key: 0 + hide_label: 0 + collapsible: 0 + collapsible_disable_automatic_open: 0 + is_secondary: 0 + field_classes: '' + open_by_default: false + sort_options_method: alphabetical_asc + sort_options_natural: true + defaults: + exposed_form: false + style: false + row: false + block_hide_empty: 1 + style: + type: html_list + options: + row_class: '' + default_row_class: 1 + uses_fields: 0 + type: ul + wrapper_class: '' + class: 'su-list-unstyled grid-container-3' + row: + type: 'entity:node' + options: + relationship: none + view_mode: stanford_h3_card + enabled: false + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + tags: { } diff --git a/config/sync/views.view.stanford_opportunities.yml b/config/sync/views.view.stanford_opportunities.yml index c81507dcb..8dee89b52 100644 --- a/config/sync/views.view.stanford_opportunities.yml +++ b/config/sync/views.view.stanford_opportunities.yml @@ -17,7 +17,6 @@ dependencies: - taxonomy.vocabulary.opportunity_type - taxonomy.vocabulary.opportunity_units module: - - datetime - element_class_formatter - graphql_compose_views - link @@ -993,20 +992,6 @@ display: sort_asc_label: Asc sort_desc_label: Desc sorts: - su_opp_start_date_value: - id: su_opp_start_date_value - table: node__su_opp_start_date - field: su_opp_start_date_value - relationship: none - group_type: group - admin_label: '' - plugin_id: datetime - order: ASC - expose: - label: 'Start Date (su_opp_start_date)' - field_identifier: start - exposed: true - granularity: second title: id: title table: node_field_data diff --git a/config/sync/views.view.stanford_opportunities_filtered.yml b/config/sync/views.view.stanford_opportunities_filtered.yml index 6f63ad4cc..b4d2e48c6 100644 --- a/config/sync/views.view.stanford_opportunities_filtered.yml +++ b/config/sync/views.view.stanford_opportunities_filtered.yml @@ -133,6 +133,8 @@ display: bef: general: autosubmit: true + auto_submit_sort_only: false + autosubmit_breakpoint: '' autosubmit_exclude_textfield: false autosubmit_textfield_delay: 500 autosubmit_textfield_minimum_length: 3 @@ -147,13 +149,17 @@ display: plugin_id: taxonomy_label_hierarchy_checkbox advanced: sort_options: false + sort_options_method: alphabetical_asc + sort_options_natural: true rewrite: filter_rewrite_values: '' filter_rewrite_values_key: false collapsible: false collapsible_disable_automatic_open: false + open_by_default: false is_secondary: false hide_label: false + field_classes: '' access: type: perm options: diff --git a/config/sync/views.view.stanford_person.yml b/config/sync/views.view.stanford_person.yml index 1944f57c0..f9e47eb66 100644 --- a/config/sync/views.view.stanford_person.yml +++ b/config/sync/views.view.stanford_person.yml @@ -5,6 +5,7 @@ dependencies: config: - core.entity_view_mode.node.stanford_h3_card_plain - node.type.stanford_person + - taxonomy.vocabulary.person_filters module: - graphql_compose_views - node @@ -509,6 +510,111 @@ display: use_taxonomy_term_path: false vocabularies: stanford_person_types: stanford_person_types + filters: + status: + id: status + table: node_field_data + field: status + entity_type: node + entity_field: status + plugin_id: boolean + value: '1' + group: 1 + expose: + operator: '' + operator_limit_selection: false + operator_list: { } + type: + id: type + table: node_field_data + field: type + relationship: none + group_type: group + admin_label: '' + entity_type: node + entity_field: type + plugin_id: bundle + operator: in + value: + stanford_person: stanford_person + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + operator_limit_selection: false + operator_list: { } + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + su_person_tags_target_id: + id: su_person_tags_target_id + table: node__su_person_tags + field: su_person_tags_target_id + relationship: none + group_type: group + admin_label: '' + plugin_id: taxonomy_index_tid + operator: and + value: { } + group: 1 + exposed: true + expose: + operator_id: su_person_tags_target_id_op + label: 'Person Filters' + description: '' + use_operator: false + operator: su_person_tags_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: filter + required: false + remember: false + multiple: true + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + vid: person_filters + type: select + hierarchy: true + limit: true + error_message: true + filter_groups: + operator: AND + groups: + 1: AND row: type: graphql_entity options: { } @@ -517,6 +623,8 @@ display: fields: true sorts: false arguments: false + filters: false + filter_groups: false relationships: { } display_description: 'A list of people on a grid page view' display_extenders: { } diff --git a/config/sync/views.view.stanford_publications.yml b/config/sync/views.view.stanford_publications.yml index c5a8b1719..794289e3b 100644 --- a/config/sync/views.view.stanford_publications.yml +++ b/config/sync/views.view.stanford_publications.yml @@ -1597,7 +1597,7 @@ display: pattern_variant: default defaults: title: false - css_class: true + css_class: false pager: false use_more: false use_more_always: false @@ -1609,6 +1609,7 @@ display: fields: false sorts: false arguments: false + css_class: related-publications display_description: '' use_more: true use_more_always: true diff --git a/content/taxonomy_term/849e72ee-29f5-481d-921f-769d99814af4.yml b/content/taxonomy_term/849e72ee-29f5-481d-921f-769d99814af4.yml deleted file mode 100644 index 18b90f4af..000000000 --- a/content/taxonomy_term/849e72ee-29f5-481d-921f-769d99814af4.yml +++ /dev/null @@ -1,36 +0,0 @@ -_meta: - version: '1.0' - entity_type: taxonomy_term - uuid: 849e72ee-29f5-481d-921f-769d99814af4 - bundle: su_shared_tags - default_langcode: en -default: - status: - - - value: true - name: - - - value: Spotlights - weight: - - - value: 0 - parent: - - - target_id: 0 - revision_translation_affected: - - - value: true - path: - - - alias: '' - langcode: en - pathauto: 1 - rh_action: - - - value: bundle_default - rh_redirect_response: - - - value: 301 - rh_redirect_fallback_action: - - - value: bundle_default diff --git a/engineering_profile.install b/engineering_profile.install index 9d78195cb..dd3b6d20e 100644 --- a/engineering_profile.install +++ b/engineering_profile.install @@ -4,6 +4,9 @@ * @file * engineering_profile.install */ + +use Drupal\field\Entity\FieldStorageConfig; + /** * Implements hook_update_last_removed(). */ @@ -22,3 +25,41 @@ function engineering_profile_update_11000() { $config->save(TRUE); \Drupal::keyValue('system.schema')->delete('pdb_react'); } + +/** + * Increase the size of a "string" field. + * + * @param string $entityType + * Entity type id. + * @param string $fieldName + * Field machine name. + * @param int $newSize + * New size of the field. + */ +function _stanford_profile_update_field_size(string $entityType, string $fieldName, int $newSize): void { + $database = \Drupal::database(); + $database->query("ALTER TABLE {$entityType}__$fieldName MODIFY {$fieldName}_value VARCHAR($newSize)"); + $database->query("ALTER TABLE {$entityType}_revision__$fieldName MODIFY {$fieldName}_value VARCHAR($newSize)"); + + $storage_key = "node.field_schema_data.$fieldName"; + $storage_schema = \Drupal::keyValue('entity.storage_schema.sql'); + $field_schema = $storage_schema->get($storage_key); + $field_schema["{$entityType}__$fieldName"]['fields']["{$fieldName}_value"]['length'] = $newSize; + $field_schema["{$entityType}_revision__$fieldName"]['fields']["{$fieldName}_value"]['length'] = $newSize; + $storage_schema->set($storage_key, $field_schema); + + $config = \Drupal::configFactory() + ->getEditable("field.storage.node.$fieldName"); + $config->set('settings.max_length', $newSize); + $config->save(TRUE); + + // Update field storage configuration. + FieldStorageConfig::loadByName($entityType, $fieldName)->save(); +} + +/** + * Increase News Dek field size to 500 characters. + */ +function soe_profile_update_11001() { + _stanford_profile_update_field_size('node', 'su_news_dek', 500); +} diff --git a/modules/soe_paragraphs/dist/css/cta-list-paragraph.styles.css b/modules/soe_paragraphs/dist/css/cta-list-paragraph.styles.css index 7db6739f5..1da608969 100644 --- a/modules/soe_paragraphs/dist/css/cta-list-paragraph.styles.css +++ b/modules/soe_paragraphs/dist/css/cta-list-paragraph.styles.css @@ -1 +1 @@ -.su-cta-list-paragraph{border-top:1px solid #d2d3d4}@media only screen and (min-width:0){.su-cta-list-paragraph{padding-top:4rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph{padding-top:4.5rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph{padding-top:4.75rem}}@media only screen and (min-width:0){.su-cta-list-paragraph{padding-left:3.2rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph{padding-left:3.6rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph{padding-left:3.8rem}}@media only screen and (min-width:0){.su-cta-list-paragraph{padding-right:3.2rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph{padding-right:3.6rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph{padding-right:3.8rem}}@media only screen and (max-width:991px) and (min-width:0){.su-cta-list-paragraph{padding-left:1.6rem}}@media only screen and (max-width:991px) and (min-width:768px){.su-cta-list-paragraph{padding-left:1.8rem}}@media only screen and (max-width:991px) and (min-width:1500px){.su-cta-list-paragraph{padding-left:1.9rem}}@media only screen and (max-width:991px) and (min-width:0){.su-cta-list-paragraph{padding-right:1.6rem}}@media only screen and (max-width:991px) and (min-width:768px){.su-cta-list-paragraph{padding-right:1.8rem}}@media only screen and (max-width:991px) and (min-width:1500px){.su-cta-list-paragraph{padding-right:1.9rem}}.su-cta-list-paragraph .su-cta-list-paragraph__header{font-size:1.5625em;font-weight:700;letter-spacing:-.012em}@media only screen and (min-width:0){.su-cta-list-paragraph .su-cta-list-paragraph__header{margin-bottom:2.31rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list-paragraph__header{margin-bottom:2.6rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph .su-cta-list-paragraph__header{margin-bottom:2.74rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list-paragraph__description{font-size:2.1rem;line-height:1.7}}@media only screen and (min-width:0){.su-cta-list-paragraph .su-cta-list-paragraph__description{margin-bottom:2.31rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list-paragraph__description{margin-bottom:2.6rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph .su-cta-list-paragraph__description{margin-bottom:2.74rem}}.su-cta-list-paragraph .su-cta-list__links{display:flex;flex-direction:row;flex-wrap:wrap;width:100%}@media only screen and (min-width:0) and (max-width:575px){.su-cta-list-paragraph .su-cta-list__links{display:block;width:100%}}@media only screen and (min-width:0) and (max-width:575px) and (min-width:0){.su-cta-list-paragraph .su-cta-list__links{padding-bottom:2.31rem}}@media only screen and (min-width:0) and (max-width:575px) and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links{padding-bottom:2.6rem}}@media only screen and (min-width:0) and (max-width:575px) and (min-width:1500px){.su-cta-list-paragraph .su-cta-list__links{padding-bottom:2.74rem}}.su-cta-list-paragraph .su-cta-list__links .su-link--action{display:block;position:relative;width:100%}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links .su-link--action{font-size:2.1rem;line-height:1.7}}@media only screen and (min-width:0){.su-cta-list-paragraph .su-cta-list__links .su-link--action{margin-bottom:1.07rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links .su-link--action{margin-bottom:1.2rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph .su-cta-list__links .su-link--action{margin-bottom:1.27rem}}@media (max-width:1199px){.su-cta-list-paragraph .su-cta-list__links .su-link--action{font-size:1.8rem;line-height:1.3}}@media (max-width:1199px) and (max-width:767px){.su-cta-list-paragraph .su-cta-list__links .su-link--action{font-size:1.6rem}}.su-cta-list-paragraph .su-cta-list__links .su-link--action:after{bottom:5px;position:absolute}.su-cta-list-paragraph .su-cta-list__links .col-1{display:flex;flex:1;flex-direction:column;min-width:200px}@media only screen and (min-width:0){.su-cta-list-paragraph .su-cta-list__links .col-1{margin-right:2.31rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links .col-1{margin-right:2.6rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph .su-cta-list__links .col-1{margin-right:2.74rem}}.su-cta-list-paragraph .su-cta-list__links .col-1 a{color:#b1040e}.su-cta-list-paragraph .su-cta-list__links .col-1 a:focus,.su-cta-list-paragraph .su-cta-list__links .col-1 a:hover{color:#2e2d29;text-decoration:underline}.su-cta-list-paragraph .su-cta-list__links .col-1 a:after,.su-cta-list-paragraph .su-cta-list__links .col-1 a:after:active,.su-cta-list-paragraph .su-cta-list__links .col-1 a:after:focus,.su-cta-list-paragraph .su-cta-list__links .col-1 a:after:hover{background-color:#b1040e}@media only screen and (min-width:0) and (max-width:575px){.su-cta-list-paragraph .su-cta-list__links .col-1{display:block;width:100%}}.su-cta-list-paragraph .su-cta-list__links .col-2{display:flex;flex:1;flex-direction:column}@media only screen and (min-width:0){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:9.6rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:10.8rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:11.4rem}}.su-cta-list-paragraph .su-cta-list__links .col-2 a{color:#b1040e}.su-cta-list-paragraph .su-cta-list__links .col-2 a:focus,.su-cta-list-paragraph .su-cta-list__links .col-2 a:hover{color:#2e2d29;text-decoration:underline}.su-cta-list-paragraph .su-cta-list__links .col-2 a:after,.su-cta-list-paragraph .su-cta-list__links .col-2 a:after:active,.su-cta-list-paragraph .su-cta-list__links .col-2 a:after:focus,.su-cta-list-paragraph .su-cta-list__links .col-2 a:after:hover{background-color:#b1040e}@media (max-width:1199px){.su-cta-list-paragraph .su-cta-list__links .col-2{min-width:150px}}@media only screen and (max-width:1199px) and (min-width:0){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:2.31rem}}@media only screen and (max-width:1199px) and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:2.6rem}}@media only screen and (max-width:1199px) and (min-width:1500px){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:2.74rem}}@media only screen and (min-width:0) and (max-width:575px){.su-cta-list-paragraph .su-cta-list__links .col-2{display:block;width:100%}}.su-cta-list--without-border{border-top:none} \ No newline at end of file +.su-cta-list-paragraph{border-top:1px solid #d2d3d4}@media only screen and (min-width:0){.su-cta-list-paragraph{padding-top:4rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph{padding-top:4.5rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph{padding-top:4.75rem}}@media only screen and (min-width:0){.su-cta-list-paragraph{padding-left:3.2rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph{padding-left:3.6rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph{padding-left:3.8rem}}@media only screen and (min-width:0){.su-cta-list-paragraph{padding-right:3.2rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph{padding-right:3.6rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph{padding-right:3.8rem}}@media only screen and (max-width:991px) and (min-width:0){.su-cta-list-paragraph{padding-left:1.6rem}}@media only screen and (max-width:991px) and (min-width:768px){.su-cta-list-paragraph{padding-left:1.8rem}}@media only screen and (max-width:991px) and (min-width:1500px){.su-cta-list-paragraph{padding-left:1.9rem}}@media only screen and (max-width:991px) and (min-width:0){.su-cta-list-paragraph{padding-right:1.6rem}}@media only screen and (max-width:991px) and (min-width:768px){.su-cta-list-paragraph{padding-right:1.8rem}}@media only screen and (max-width:991px) and (min-width:1500px){.su-cta-list-paragraph{padding-right:1.9rem}}.su-cta-list-paragraph .su-cta-list-paragraph__header{font-size:1.5625em;font-weight:700;letter-spacing:-.012em}@media only screen and (min-width:0){.su-cta-list-paragraph .su-cta-list-paragraph__header{margin-bottom:2.31rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list-paragraph__header{margin-bottom:2.6rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph .su-cta-list-paragraph__header{margin-bottom:2.74rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list-paragraph__description{font-size:2.1rem;line-height:1.7}}@media only screen and (min-width:0){.su-cta-list-paragraph .su-cta-list-paragraph__description{margin-bottom:2.31rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list-paragraph__description{margin-bottom:2.6rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph .su-cta-list-paragraph__description{margin-bottom:2.74rem}}.su-cta-list-paragraph .su-cta-list__links{display:flex;flex-direction:row;flex-wrap:wrap;width:100%}@media only screen and (min-width:0) and (max-width:575px){.su-cta-list-paragraph .su-cta-list__links{display:block;width:100%}}@media only screen and (min-width:0) and (max-width:575px) and (min-width:0){.su-cta-list-paragraph .su-cta-list__links{padding-bottom:2.31rem}}@media only screen and (min-width:0) and (max-width:575px) and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links{padding-bottom:2.6rem}}@media only screen and (min-width:0) and (max-width:575px) and (min-width:1500px){.su-cta-list-paragraph .su-cta-list__links{padding-bottom:2.74rem}}.su-cta-list-paragraph .su-cta-list__links .su-link--action{display:block;position:relative;width:100%}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links .su-link--action{font-size:2.1rem;line-height:1.7}}@media only screen and (min-width:0){.su-cta-list-paragraph .su-cta-list__links .su-link--action{margin-bottom:1.07rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links .su-link--action{margin-bottom:1.2rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph .su-cta-list__links .su-link--action{margin-bottom:1.27rem}}@media (max-width:1199px){.su-cta-list-paragraph .su-cta-list__links .su-link--action{font-size:1.8rem;line-height:1.3}}@media (max-width:1199px) and (max-width:767px){.su-cta-list-paragraph .su-cta-list__links .su-link--action{font-size:1.6rem}}.su-cta-list-paragraph .su-cta-list__links .su-link--action:after{bottom:10px;position:absolute}@media (max-width:1199px){.su-cta-list-paragraph .su-cta-list__links .su-link--action:after{bottom:5px}}.su-cta-list-paragraph .su-cta-list__links .col-1{display:flex;flex:1;flex-direction:column;min-width:200px}@media only screen and (min-width:0){.su-cta-list-paragraph .su-cta-list__links .col-1{margin-right:2.31rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links .col-1{margin-right:2.6rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph .su-cta-list__links .col-1{margin-right:2.74rem}}.su-cta-list-paragraph .su-cta-list__links .col-1 a{color:#b1040e}.su-cta-list-paragraph .su-cta-list__links .col-1 a:focus,.su-cta-list-paragraph .su-cta-list__links .col-1 a:hover{color:#2e2d29;text-decoration:underline}.su-cta-list-paragraph .su-cta-list__links .col-1 a:after,.su-cta-list-paragraph .su-cta-list__links .col-1 a:after:active,.su-cta-list-paragraph .su-cta-list__links .col-1 a:after:focus,.su-cta-list-paragraph .su-cta-list__links .col-1 a:after:hover{background-color:#b1040e}@media only screen and (min-width:0) and (max-width:575px){.su-cta-list-paragraph .su-cta-list__links .col-1{display:block;width:100%}}.su-cta-list-paragraph .su-cta-list__links .col-2{display:flex;flex:1;flex-direction:column}@media only screen and (min-width:0){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:9.6rem}}@media only screen and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:10.8rem}}@media only screen and (min-width:1500px){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:11.4rem}}.su-cta-list-paragraph .su-cta-list__links .col-2 a{color:#b1040e}.su-cta-list-paragraph .su-cta-list__links .col-2 a:focus,.su-cta-list-paragraph .su-cta-list__links .col-2 a:hover{color:#2e2d29;text-decoration:underline}.su-cta-list-paragraph .su-cta-list__links .col-2 a:after,.su-cta-list-paragraph .su-cta-list__links .col-2 a:after:active,.su-cta-list-paragraph .su-cta-list__links .col-2 a:after:focus,.su-cta-list-paragraph .su-cta-list__links .col-2 a:after:hover{background-color:#b1040e}@media (max-width:1199px){.su-cta-list-paragraph .su-cta-list__links .col-2{min-width:150px}}@media only screen and (max-width:1199px) and (min-width:0){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:2.31rem}}@media only screen and (max-width:1199px) and (min-width:768px){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:2.6rem}}@media only screen and (max-width:1199px) and (min-width:1500px){.su-cta-list-paragraph .su-cta-list__links .col-2{margin-right:2.74rem}}@media only screen and (min-width:0) and (max-width:575px){.su-cta-list-paragraph .su-cta-list__links .col-2{display:block;width:100%}}.su-cta-list--without-border{border-top:none} \ No newline at end of file diff --git a/modules/soe_paragraphs/lib/scss/components/cta-list/_cta-list.scss b/modules/soe_paragraphs/lib/scss/components/cta-list/_cta-list.scss index e268e9614..3289ab606 100644 --- a/modules/soe_paragraphs/lib/scss/components/cta-list/_cta-list.scss +++ b/modules/soe_paragraphs/lib/scss/components/cta-list/_cta-list.scss @@ -48,8 +48,12 @@ } &:after { - bottom: 5px; + bottom: 10px; position: absolute; + + @include grid-media-max('lg') { + bottom: 5px; + } } } @@ -98,7 +102,6 @@ flex-direction: column; flex: 1; - a { color: $su-color-bright-red; diff --git a/tests/codeception/acceptance/Content/BasicPageCest.php b/tests/codeception/acceptance/Content/BasicPageCest.php index eeba4b438..cce649e2a 100644 --- a/tests/codeception/acceptance/Content/BasicPageCest.php +++ b/tests/codeception/acceptance/Content/BasicPageCest.php @@ -456,4 +456,17 @@ public function testLayoutBackgrounds(AcceptanceTester $I, Example $example) { } } + #[CodeceptionAttribute\Group('body')] + public function testBodyField(AcceptanceTester $I) { + $body_text = ''. implode('
', $this->faker->paragraphs()) . '
'; + $node = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->words(3, TRUE), + 'body' => ['value' => $body_text, 'format' => 'stanford_html'], + ]); + $I->amOnPage($node->toUrl()->toString()); + $I->canSee($node->label(), 'h1'); + $I->canSee(strip_tags($body_text)); + } + } diff --git a/tests/codeception/acceptance/Content/NewsCest.php b/tests/codeception/acceptance/Content/NewsCest.php index 4ca69b6ee..ad1594253 100644 --- a/tests/codeception/acceptance/Content/NewsCest.php +++ b/tests/codeception/acceptance/Content/NewsCest.php @@ -1,6 +1,7 @@ assertEquals($values['featured_image_alt'], $I->grabAttributeFrom('meta[name="twitter:image:alt"]', 'content'), 'Metadata "twitter:image:alt" should match.'); } + #[CodeceptionAttribute\Group('body')] + public function testBodyField(AcceptanceTester $I) { + $dek = substr($this->faker->sentences(20, TRUE), 0, 499); + + $body_text = '' . implode('
', $this->faker->paragraphs()) . '
'; + $node = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => $this->faker->words(3, TRUE), + 'body' => ['value' => $body_text, 'format' => 'stanford_html'], + 'su_news_dek' => $dek, + ]); + $I->amOnPage($node->toUrl()->toString()); + $I->canSee($node->label(), 'h1'); + $I->canSee(strip_tags($body_text)); + $I->canSee($dek); + } + + #[CodeceptionAttribute\Group('related-news')] + private function testRelatedNewsPerson(AcceptanceTester $I) { + $person = $I->createEntity([ + 'type' => 'stanford_person', + 'su_person_first_name' => $this->faker->firstName(), + 'su_person_last_name' => $this->faker->lastName(), + ]); + $otherPerson = $I->createEntity([ + 'type' => 'stanford_person', + 'su_person_first_name' => $this->faker->firstName(), + 'su_person_last_name' => $this->faker->lastName(), + ]); + $news = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => $this->faker->words(3, TRUE), + 'su_news_person' => $person->id(), + ]); + $otherNews = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => $this->faker->words(3, TRUE), + ]); + $I->amOnPage($person->toUrl()->toString()); + $I->canSee($person->label(), 'h1'); + $I->canSee('Related News', 'h2'); + $I->canSee($news->label(), 'h3'); + $I->cantSee($otherNews->label()); + + $I->amOnPage($otherPerson->toUrl()->toString()); + $I->canSee($otherPerson->label(), 'h1'); + $I->cantSee('Related News'); + $I->cantSee($news->label()); + $I->cantSee($otherNews->label()); + } + + /** + * Test that news variants display correct fields and can be populated with + * contributor roles. + * + * We don't use the news variant for Engineering, so disabling. + */ + #[CodeceptionAttribute\Group('news_variant')] + private function testNewsVariantFieldsDisplay(AcceptanceTester $I) { + $I->logInWithRole('contributor'); + $I->amOnPage('/node/add/stanford_news'); + $I->canSeeResponseCodeIs(200); + + // Verify contributor role can see the Variant field + $I->canSee('Variant'); + $I->canSeeElement('[name="layout_selection"]'); + + // Generate test data using faker + $testData = [ + 'Dek' => $this->faker->sentence(), + 'Byline' => $this->faker->name(), + 'Banner Caption' => $this->faker->sentence(), + 'Quote' => $this->faker->sentence(), + ]; + + // Fill in required title field + $I->fillField('Headline / Name', $this->faker->words(3, TRUE)); + + // Verify fields are initially empty using canSeeInField() + $I->canSeeInField('Dek', ''); + $I->canSeeInField('Byline', ''); + $I->canSeeInField('Banner Caption', ''); + $I->canSeeInField('Quote / Big Text', ''); + + // Fill in the fields + $I->fillField('Dek', $testData['Dek']); + $I->fillField('Byline', $testData['Byline']); + $I->fillField('Banner Caption', $testData['Banner Caption']); + $I->fillField('Quote / Big Text', $testData['Quote']); + + // Save the node + $I->click('Save'); + $I->canSeeResponseCodeIs(200); + $I->canSee('has been created'); + + // Verify the information is reflected on the page + $I->canSee($testData['Dek']); + $I->canSee($testData['Byline']); + $I->canSee($testData['Banner Caption']); + } + + /** + * Test that roles with layout selection permission can select spotlight variant. + */ + #[CodeceptionAttribute\Group('news_variant')] + #[CodeceptionAttribute\Examples(role: 'contributor')] + #[CodeceptionAttribute\Examples(role: 'site_editor')] + #[CodeceptionAttribute\Examples(role: 'site_manager')] + private function testRoleCanSelectSpotlightVariant(AcceptanceTester $I, Example $example) { + $I->logInWithRole($example['role']); + $I->amOnPage('/node/add/stanford_news'); + $I->canSeeResponseCodeIs(200); + + // Verify Variant field is visible and accessible + $I->canSee('Variant'); + $I->canSeeElement('[name="layout_selection"]'); + + // Fill in required title + $title = $this->faker->words(3, TRUE); + $I->fillField('Headline / Name', $title); + + // Select Spotlight variant + $I->selectOption('Variant', 'Spotlight'); + + // Fill in spotlight-specific field + $quote = $this->faker->sentence(); + $I->fillField('Quote / Big Text', $quote); + + // Save the node + $I->click('Save'); + $I->canSeeResponseCodeIs(200); + $I->canSee('has been created'); + + // Verify the spotlight label is displayed + $I->canSee('Spotlight', '.su-spotlight-label p'); + } + + /** + * Test that Related Spotlights filters by matching taxonomy terms. + * + * Engineering uses different spotlights, so disabling. + */ + #[CodeceptionAttribute\Group('news_variant')] + private function testRelatedSpotlightsFiltersByTaxonomy(AcceptanceTester $I) { + // Create taxonomy terms. + $term_a = $I->createEntity([ + 'name' => $this->faker->words(3, TRUE), + 'vid' => 'stanford_news_spotlight_filters', + ], 'taxonomy_term'); + + $term_b = $I->createEntity([ + 'name' => $this->faker->words(3, TRUE), + 'vid' => 'stanford_news_spotlight_filters', + ], 'taxonomy_term'); + + // Create 3 spotlight nodes with term A and 2 with term B. + $spotlight_a1 = $I->createEntity([ + 'title' => $this->faker->words(3, TRUE), + 'type' => 'stanford_news', + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => [$term_a->id()], + 'status' => 1, + ]); + + $spotlight_a2 = $I->createEntity([ + 'title' => $this->faker->words(3, TRUE), + 'type' => 'stanford_news', + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => [$term_a->id()], + 'status' => 1, + ]); + + $spotlight_a3 = $I->createEntity([ + 'title' => $this->faker->words(3, TRUE), + 'type' => 'stanford_news', + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => [$term_a->id()], + 'status' => 1, + ]); + + $spotlight_b1 = $I->createEntity([ + 'title' => $this->faker->words(3, TRUE), + 'type' => 'stanford_news', + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => [$term_b->id()], + 'status' => 1, + ]); + + $spotlight_b2 = $I->createEntity([ + 'title' => $this->faker->words(3, TRUE), + 'type' => 'stanford_news', + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => [$term_b->id()], + 'status' => 1, + ]); + + // Create a spotlight with no terms. + $spotlight_c = $I->createEntity([ + 'title' => $this->faker->words(3, TRUE), + 'type' => 'stanford_news', + 'layout_selection' => 'news_spotlight', + 'status' => 1, + ]); + + // Visit spotlight A1 - should show other nodes with term A. + $I->amOnPage($spotlight_a1->toUrl()->toString()); + // Make sure there's an h2 + $I->see('More Spotlights', 'h2'); + // Make sure the links are h3s + $I->seeLink($spotlight_a2->label()); + $I->see($spotlight_a2->label(), 'h3'); + $I->seeLink($spotlight_a3->label()); + $I->see($spotlight_a3->label(), 'h3'); + $I->dontSee($spotlight_b1->label()); + $I->dontSee($spotlight_b2->label()); + + // If there are no terms attached, we should see three spotlights. + $I->amOnPage($spotlight_c->toUrl()->toString()); + $I->see('More Spotlights', 'h2'); + $I->seeNumberOfElements('.related-spotlights article', 3); + } + + /** + * Test spotlight label displayed correctly on the news spotlight variant page. + * + * disabled for engineering. + */ + #[CodeceptionAttribute\Group('news_variant')] + #[CodeceptionAttribute\Group('spotlight_page')] + private function testSpotlightCreationAndDisplay(AcceptanceTester $I) { + // Create a spotlight node. + $spotlight = $I->createEntity([ + 'title' => $this->faker->words(3, TRUE), + 'type' => 'stanford_news', + 'layout_selection' => 'news_spotlight', + 'status' => 1, + ]); + + // Visit the spotlight page. + $I->amOnPage($spotlight->toUrl()->toString()); + + // Verify the spotlight label exists + $I->canSee('Spotlight', '.su-spotlight-label p'); + } + + #[CodeceptionAttribute\Group('unpublished-terms')] + private function testUnpublishedTerms(AcceptanceTester $I) { + $term = $I->createEntity([ + 'vid' => 'stanford_news_topics', + 'name' => $this->faker->uuid(), + ], 'taxonomy_term'); + $node = $I->createEntity([ + 'title' => $this->faker->words(3, TRUE), + 'type' => 'stanford_news', + 'su_news_topics' => $term->id(), + ]); + $I->logInWithRole('site_manager'); + $I->amOnPage($node->toUrl('edit-form')->toString()); + $I->canSeeOptionIsSelected('News Types (value 1)', $term->label()); + + $term->setUnpublished()->save(); + $I->amOnPage($node->toUrl('edit-form')->toString()); + $I->canSeeOptionIsSelected('News Types (value 1)', $term->label()); + } + } diff --git a/tests/codeception/acceptance/Content/PersonCest.php b/tests/codeception/acceptance/Content/PersonCest.php index 7fbab30f2..b2ba99c80 100644 --- a/tests/codeception/acceptance/Content/PersonCest.php +++ b/tests/codeception/acceptance/Content/PersonCest.php @@ -23,6 +23,29 @@ public function __construct() { $this->faker = Factory::create(); } + /** + * Sidebar "Contact" header should only appear once. + */ + public function testDoubleHeader(AcceptanceTester $I){ + $node = $I->createEntity([ + 'type' => 'stanford_person', + 'title' => 'Foo Bar', + 'su_person_first_name' => 'Foo', + 'su_person_last_name' => 'Bar', + 'su_person_telephone' => '1234567890', + ]); + $I->amOnPage($node->toUrl()->toString()); + $I->canSee('Foo Bar', 'h1'); + $headers = $I->grabMultiple('h2'); + $contacts = 0; + foreach ($headers as $header) { + if (strpos(strtolower($header), 'contact') !== FALSE) { + $contacts++; + } + } + $I->assertEquals(1, $contacts); + } + /** * Test that the default content has installed and is unpublished. */ @@ -78,12 +101,9 @@ public function testCreatePerson(AcceptanceTester $I) { ]); $I->amOnPage($node->toUrl()->toString()); $I->see("$first_name $last_name", 'h1'); - - /* $I->amOnPage('/people'); $I->see("$first_name $last_name", 'h3'); $I->seeLink("$first_name $last_name"); - */ $I->amOnPage($term->toUrl()->toString()); $I->canSee($term->label(), 'h1'); diff --git a/tests/codeception/acceptance/Contrib/ViewsBulkEditCest.php b/tests/codeception/acceptance/Contrib/ViewsBulkEditCest.php index 1e2301f9d..d442bc759 100644 --- a/tests/codeception/acceptance/Contrib/ViewsBulkEditCest.php +++ b/tests/codeception/acceptance/Contrib/ViewsBulkEditCest.php @@ -7,7 +7,7 @@ * Test out the views bulk edit module. */ #[CodeceptionAttribute\Group('contrib')] -#[CodeceptionAttribute\Group('bulk_edit')] +#[CodeceptionAttribute\Group('vbo')] class ViewsBulkEditCest { /** @@ -51,7 +51,7 @@ public function testBulkEdits(AcceptanceTester $I) { $I->amOnPage('/admin/content'); $I->selectOption('Action', 'Modify field values'); - foreach ($this->nodes as $delta => $node) { + foreach ($this->nodes as $node) { $I->canSee($node->label(), 'tr'); $I->checkOption('tr:contains("' . $node->label() . '") input[name^="views_bulk_operations_bulk_form"]'); } diff --git a/tests/codeception/acceptance/GlobalMessage/GlobalMessageCest.php b/tests/codeception/acceptance/GlobalMessage/GlobalMessageCest.php index 53ec1a227..e18118674 100644 --- a/tests/codeception/acceptance/GlobalMessage/GlobalMessageCest.php +++ b/tests/codeception/acceptance/GlobalMessage/GlobalMessageCest.php @@ -62,8 +62,7 @@ private function testFormSettings(AcceptanceTester $I) { $I->see('Global Message has been', '.messages-list'); $I->amOnPage('/'); - $I->runDrush('cr'); - $I->seeElement(".su-alert--success"); + $I->seeElement(".su-alert"); $I->canSee("MESSAGE LABEL"); $I->canSee("MESSAGE HEADER"); $I->canSee("This is the message body"); @@ -74,7 +73,7 @@ private function testFormSettings(AcceptanceTester $I) { $I->see('Global Message has been', '.messages-list'); $I->amOnPage('/'); - $I->seeElement('.su-alert--error'); + $I->seeElement('.su-alert'); } /** diff --git a/tests/codeception/acceptance/LocalFooter/LocalFooterCest.php b/tests/codeception/acceptance/LocalFooter/LocalFooterCest.php index fa9411298..e70233462 100644 --- a/tests/codeception/acceptance/LocalFooter/LocalFooterCest.php +++ b/tests/codeception/acceptance/LocalFooter/LocalFooterCest.php @@ -1,12 +1,24 @@ faker = Factory::create(); + } /** * Tidy up after oneself. @@ -20,6 +32,36 @@ public function _after(AcceptanceTester $I) { } } + #[CodeceptionAttribute\Group('login-link')] + public function testLoginLinkDestination(AcceptanceTester $I) { + $link_text = $this->faker->word(); + $I->runDrush('config:pages-set-field-value stanford_local_footer su_footer_enabled 1'); + $I->runDrush("config:pages-set-field-value stanford_local_footer su_local_foot_sunet_t $link_text"); + $I->runDrush('cr'); + + for ($i = 0; $i < 5; $i++) { + $page = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->slug(), + ]); + $destination = $page->toUrl()->toString(); + $query = $this->faker->slug(); + $key = strtolower($this->faker->word()); + + $I->amOnPage("$destination?$key=/$query"); + $I->canSeeLink($link_text, "/saml/login?destination=$destination"); + } + for ($i = 0; $i < 5; $i++) { + $destination = $this->faker->slug(); + $query = $this->faker->slug(); + $key = strtolower($this->faker->word()); + + $I->amOnPage("$destination?$key=/$query"); + $I->canSeeResponseCodeIs(404); + $I->canSeeLink($link_text, '/saml/login?destination=/'); + } + } + /** * Only site manager and higher should have access. */ @@ -36,9 +78,11 @@ public function testAccess(AcceptanceTester $I) { /** * Changes to the local footer should display correctly. + * + * Engineering uses a different footer, so disabling. */ #[CodeceptionAttribute\Group('social-links')] - public function testCustomLocalFooter(AcceptanceTester $I) { + private function testCustomLocalFooter(AcceptanceTester $I) { $I->logInWithRole('site_manager'); $I->amOnPage('/admin/config/system/local-footer'); $I->checkOption('Enabled'); @@ -121,8 +165,10 @@ public function testCustomContentLocalFooter(AcceptanceTester $I) { /** * Route urls and no link urls should function correctly in the footer. + * + * Engineering uses a different footer, so disabling. */ - public function testNodeRoutesAndNoLink(AcceptanceTester $I) { + private function testNodeRoutesAndNoLink(AcceptanceTester $I) { $node = $I->createEntity([ 'type' => 'stanford_page', 'title' => 'Test Page', diff --git a/tests/codeception/acceptance/LocalFooter/LocalFooterLockupCest.php b/tests/codeception/acceptance/LocalFooter/LocalFooterLockupCest.php index 49eec9333..848254856 100644 --- a/tests/codeception/acceptance/LocalFooter/LocalFooterLockupCest.php +++ b/tests/codeception/acceptance/LocalFooter/LocalFooterLockupCest.php @@ -10,7 +10,7 @@ */ #[CodeceptionAttribute\Group('local-footer')] #[CodeceptionAttribute\Group('local-footer-lockup')] -class LocalFooterLockupCestDisabled { +class LocalFooterLockupCest { use TestFilesTrait; diff --git a/tests/codeception/acceptance/Media/MediaCest.php b/tests/codeception/acceptance/Media/MediaCest.php index 868775c60..e881cdfc0 100644 --- a/tests/codeception/acceptance/Media/MediaCest.php +++ b/tests/codeception/acceptance/Media/MediaCest.php @@ -125,6 +125,8 @@ public function testForEmbeddableFields(AcceptanceTester $I) { /** * Embeddable form fields. + * + * @group foobar */ public function testForEmbeddableFormFields(AcceptanceTester $I) { $I->logInWithRole('administrator'); @@ -137,6 +139,7 @@ public function testForEmbeddableFormFields(AcceptanceTester $I) { $I->fillField('Name', $name); $I->fillField('oEmbed URL', 'https://purl.stanford.edu/mb185ft2131'); $I->click('Save'); + $I->canSee('has been created'); $I->amOnPage('/admin/content/media'); $I->fillField('Media name', $name); @@ -198,6 +201,7 @@ public function testForGoogleFormFields(AcceptanceTester $I) { /** * Administrative file listing can delete files. */ + #[CodeceptionAttribute\Group('vbo')] public function testDeleteFiles(AcceptanceTester $I) { $I->logInWithRole('site_manager'); $I->amOnPage('/admin/content/files'); @@ -244,7 +248,7 @@ public function testDeleteFiles(AcceptanceTester $I) { $I->canSee('Are you sure you wish to perform'); $I->canSee($this->filePath); $I->click('Execute action'); - // $I->canSee('Delete entities'); + $I->canSee('Delete file entities (1)'); $I->amOnPage('/admin/content/files'); $I->cantSee($this->filePath); diff --git a/tests/codeception/acceptance/Media/MediaPermissionsCest.php b/tests/codeception/acceptance/Media/MediaPermissionsCest.php index a1aac3c1a..802fafbd0 100644 --- a/tests/codeception/acceptance/Media/MediaPermissionsCest.php +++ b/tests/codeception/acceptance/Media/MediaPermissionsCest.php @@ -36,7 +36,7 @@ public function testAdminPerms(AcceptanceTester $I) { * Test site embedder perms */ public function testSiteEmbedderPerms(AcceptanceTester $I) { - $user = $I->createUserWithRoles(['su_site_embedder', 'site_manager']); + $user = $I->createUserWithRoles(['soe_site_embedder','site_manager']); $I->logInAs($user->getAccountName()); $I->amOnPage('/media/add/embeddable'); $I->canSeeResponseCodeIs(200); diff --git a/tests/codeception/acceptance/Paragraphs/FilteredListsSpotlightsCest.php b/tests/codeception/acceptance/Paragraphs/FilteredListsSpotlightsCest.php new file mode 100644 index 000000000..b67cf461d --- /dev/null +++ b/tests/codeception/acceptance/Paragraphs/FilteredListsSpotlightsCest.php @@ -0,0 +1,353 @@ +faker = Factory::create(); + } + + /** + * Test that stanford_news_filtered view is available in filtered lists paragraph. + */ + private function testNewsFilteredViewAvailable(AcceptanceTester $I) { + $I->logInWithRole('site_manager'); + + // Create a filtered list paragraph. + $paragraph = $I->createEntity([ + 'type' => 'stanford_filtered_lists', + ], 'paragraph'); + + $node = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->text(30), + 'su_page_components' => [ + 'target_id' => $paragraph->id(), + 'entity' => $paragraph, + ], + ]); + + $I->amOnPage("/paragraphs_edit/node/{$node->id()}/paragraphs/{$paragraph->id()}/edit"); + $I->canSee('View'); + $I->seeElement("//label[contains(text(), 'View')]"); + $I->seeElement("//select/option[contains(text(), 'News - Filtered')]"); + } + + /** + * Test news spotlights filtered view displays spotlight news items. + */ + private function testNewsSpotlightsFilteredViewDisplaysSpotlightNews(AcceptanceTester $I) { + // Create spotlight filter terms. + $filter_term = $I->createEntity([ + 'vid' => 'stanford_news_spotlight_filters', + 'name' => $this->faker->words(3, TRUE), + ], 'taxonomy_term'); + + // Create a news item with spotlight layout and filter. + $spotlight_news = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => 'Spotlight News ' . $this->faker->words(3, TRUE), + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => $filter_term->id(), + ]); + + // Create a regular news item (should not appear). + $regular_news = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => 'Regular News ' . $this->faker->words(3, TRUE), + ]); + + // Create filtered list paragraph with stanford_news_filtered view. + $paragraph = $I->createEntity([ + 'type' => 'stanford_filtered_lists', + 'su_filtered_list_view' => [ + 'target_id' => 'stanford_news_filtered', + 'display_id' => 'spotlight_cards', + ], + ], 'paragraph'); + + $node = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->text(30), + 'su_page_components' => [ + 'target_id' => $paragraph->id(), + 'entity' => $paragraph, + ], + ]); + + $I->amOnPage($node->toUrl()->toString()); + $I->canSee($spotlight_news->label(), 'h3'); + $I->cantSee($regular_news->label()); + } + + /** + * Test filtering spotlight news by taxonomy term. + */ + private function testSpotlightNewsFilteringByTerm(AcceptanceTester $I) { + // Create multiple spotlight filter terms. + $filter_term_1 = $I->createEntity([ + 'vid' => 'stanford_news_spotlight_filters', + 'name' => 'FilterTermOne', + ], 'taxonomy_term'); + + $filter_term_2 = $I->createEntity([ + 'vid' => 'stanford_news_spotlight_filters', + 'name' => 'FilterTermTwo', + ], 'taxonomy_term'); + + // Create spotlight news with filter term 1. + $spotlight_news_1 = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => 'Spotlight One ' . $this->faker->words(3, TRUE), + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => $filter_term_1->id(), + ]); + + // Create spotlight news with filter term 2. + $spotlight_news_2 = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => 'Spotlight Two ' . $this->faker->words(3, TRUE), + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => $filter_term_2->id(), + ]); + + // Create filtered list paragraph with argument for term 1. + $paragraph = $I->createEntity([ + 'type' => 'stanford_filtered_lists', + 'su_filtered_list_view' => [ + 'target_id' => 'stanford_news_filtered', + 'display_id' => 'spotlight_cards', + 'arguments' => $filter_term_1->label(), + ], + ], 'paragraph'); + + $node = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->text(30), + 'su_page_components' => [ + 'target_id' => $paragraph->id(), + 'entity' => $paragraph, + ], + ]); + + // Should show only spotlight news 1. + $I->amOnPage($node->toUrl()->toString()); + $I->canSee($spotlight_news_1->label()); + $I->cantSee($spotlight_news_2->label()); + } + + /** + * Test spotlight news with hierarchical filter terms. + */ + private function testSpotlightNewsHierarchicalFiltering(AcceptanceTester $I) { + // Create parent and child filter terms. + $parent_term = $I->createEntity([ + 'vid' => 'stanford_news_spotlight_filters', + 'name' => $this->faker->words(2, TRUE), + ], 'taxonomy_term'); + + $child_term = $I->createEntity([ + 'vid' => 'stanford_news_spotlight_filters', + 'name' => $this->faker->words(2, TRUE), + 'parent' => $parent_term->id(), + ], 'taxonomy_term'); + + // Create spotlight news with child term. + $spotlight_news = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => 'Child Term Spotlight ' . $this->faker->words(3, TRUE), + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => $child_term->id(), + ]); + + // Create filtered list with parent term argument. + $paragraph = $I->createEntity([ + 'type' => 'stanford_filtered_lists', + 'su_filtered_list_view' => [ + 'target_id' => 'stanford_news_filtered', + 'display_id' => 'spotlight_cards', + 'arguments' => $parent_term->label(), + ], + ], 'paragraph'); + + $node = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->text(30), + 'su_page_components' => [ + 'target_id' => $paragraph->id(), + 'entity' => $paragraph, + ], + ]); + + // Should show spotlight news with child term when filtering by parent. + $I->amOnPage($node->toUrl()->toString()); + $I->canSee($spotlight_news->label(), 'h3'); + } + + /** + * Test exposed filter functionality in card grid display. + */ + private function testExposedFilterFunctionality(AcceptanceTester $I) { + // Create filter terms. + $filter_term_1 = $I->createEntity([ + 'vid' => 'stanford_news_spotlight_filters', + 'name' => $this->faker->words(2, TRUE), + ], 'taxonomy_term'); + + $filter_term_2 = $I->createEntity([ + 'vid' => 'stanford_news_spotlight_filters', + 'name' => $this->faker->words(2, TRUE), + ], 'taxonomy_term'); + + // Create spotlight news items. + $spotlight_news_1 = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => 'Filter Test One ' . $this->faker->words(2, TRUE), + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => $filter_term_1->id(), + ]); + + $spotlight_news_2 = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => 'Filter Test Two ' . $this->faker->words(2, TRUE), + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => $filter_term_2->id(), + ]); + + // Create filtered list paragraph. + $paragraph = $I->createEntity([ + 'type' => 'stanford_filtered_lists', + 'su_filtered_list_view' => [ + 'target_id' => 'stanford_news_filtered', + 'display_id' => 'spotlight_cards', + ], + ], 'paragraph'); + + $node = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->text(30), + 'su_page_components' => [ + 'target_id' => $paragraph->id(), + 'entity' => $paragraph, + ], + ]); + + $I->amOnPage($node->toUrl()->toString()); + + // Both items should be visible initially. + $I->canSee($spotlight_news_1->label(), 'h3'); + $I->canSee($spotlight_news_2->label(), 'h3'); + + // Exposed filter should be present. + $I->canSee('Filtered by'); + } + + /** + * Test that only news with spotlight layout are shown. + */ + private function testOnlySpotlightLayoutNewsDisplayed(AcceptanceTester $I) { + $filter_term = $I->createEntity([ + 'vid' => 'stanford_news_spotlight_filters', + 'name' => $this->faker->words(2, TRUE), + ], 'taxonomy_term'); + + // Create news with spotlight layout. + $spotlight_news = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => 'Has Spotlight Layout ' . $this->faker->words(3, TRUE), + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => $filter_term->id(), + ]); + + // Create news with different layout but same filter. + $non_spotlight_news = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => 'No Spotlight Layout ' . $this->faker->words(3, TRUE), + 'su_news_spotlight_filters' => $filter_term->id(), + ]); + + // Create filtered list paragraph. + $paragraph = $I->createEntity([ + 'type' => 'stanford_filtered_lists', + 'su_filtered_list_view' => [ + 'target_id' => 'stanford_news_filtered', + 'display_id' => 'spotlight_cards', + ], + ], 'paragraph'); + + $node = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->text(30), + 'su_page_components' => [ + 'target_id' => $paragraph->id(), + 'entity' => $paragraph, + ], + ]); + + $I->amOnPage($node->toUrl()->toString()); + + // Only spotlight layout should appear. + $I->canSee($spotlight_news->label(), 'h3'); + $I->cantSee($non_spotlight_news->label()); + } + + /** + * Test list page display. + */ + protected function testListPageDisplay(AcceptanceTester $I) { + $filter_term = $I->createEntity([ + 'vid' => 'stanford_news_spotlight_filters', + 'name' => $this->faker->words(2, TRUE), + ], 'taxonomy_term'); + + $spotlight_news = $I->createEntity([ + 'type' => 'stanford_news', + 'title' => 'List Display Test ' . $this->faker->words(3, TRUE), + 'layout_selection' => 'news_spotlight', + 'su_news_spotlight_filters' => $filter_term->id(), + ]); + + // Create filtered list paragraph with list_page display. + $paragraph = $I->createEntity([ + 'type' => 'stanford_filtered_lists', + 'su_filtered_list_view' => [ + 'target_id' => 'stanford_news_filtered', + 'display_id' => 'spotlight_list_page', + ], + ], 'paragraph'); + + $node = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->text(30), + 'su_page_components' => [ + 'target_id' => $paragraph->id(), + 'entity' => $paragraph, + ], + ]); + + $I->amOnPage($node->toUrl()->toString()); + $I->canSee($spotlight_news->label(), 'h3'); + } + +} diff --git a/tests/codeception/acceptance/SystemCest.php b/tests/codeception/acceptance/SystemCest.php index 7aeef0502..4ea17efc1 100644 --- a/tests/codeception/acceptance/SystemCest.php +++ b/tests/codeception/acceptance/SystemCest.php @@ -37,7 +37,7 @@ public function testSiteStatus(AcceptanceTester $I) { public function testLoginPage(AcceptanceTester $I) { $I->amOnPage('/admin/config'); $I->canSeeInCurrentUrl('/user/login'); - $I->canSeeNumberOfElements('h1', 2); + $I->canSeeNumberOfElements('h1', 1); } /** diff --git a/tests/codeception/acceptance/Users/RolesCest.php b/tests/codeception/acceptance/Users/RolesCest.php index d654eca90..fb6c41bb4 100644 --- a/tests/codeception/acceptance/Users/RolesCest.php +++ b/tests/codeception/acceptance/Users/RolesCest.php @@ -1,6 +1,8 @@ faker = Factory::create(); + } + /** * Default roles should exist. */ @@ -204,6 +215,73 @@ public function testSiteEmbedderStacking(AcceptanceTester $I) { $I->canSee('Embeddable test embed has been created'); } + #[CodeceptionAttribute\Group('media-content')] + #[CodeceptionAttribute\Examples(role: 'contributor', access: FALSE)] + #[CodeceptionAttribute\Examples(role: 'site_manager', access: FALSE)] + #[CodeceptionAttribute\Examples(role: 'administrator', access: TRUE)] + public function testMediaContentCreateAccess(AcceptanceTester $I, Example $example) { + $I->logInWithRole($example['role']); + $I->amOnPage('/node/add/stanford_media'); + if ($example['access']) { + $I->canSeeResponseCodeIs(200); + } + else { + $I->canSeeResponseCodeIs(403); + } + } + + #[CodeceptionAttribute\Group('media-content')] + #[CodeceptionAttribute\Examples(role: 'contributor', access: TRUE)] + #[CodeceptionAttribute\Examples(role: 'site_manager', access: TRUE)] + public function testMediaContentEditAccess(AcceptanceTester $I, Example $example) { + $node = $I->createEntity([ + 'type' => 'stanford_media', + 'title' => $this->faker->words(3, TRUE), + ]); + $I->logInWithRole($example['role']); + $I->amOnPage($node->toUrl('edit-form')->toString()); + + if ($example['access']) { + $I->canSeeResponseCodeIs(200); + $I->canSeeInField('Title', $node->label()); + } + else { + $I->canSeeResponseCodeIs(403); + } + } + + #[CodeceptionAttribute\Group('media-content')] + #[CodeceptionAttribute\Examples(role: 'contributor', access: FALSE)] + #[CodeceptionAttribute\Examples(role: 'site_manager', access: FALSE)] + public function testMediaTaxonomyAccess(AcceptanceTester $I, Example $example) { + $node = $I->createEntity([ + 'type' => 'stanford_media', + 'title' => $this->faker->words(3, TRUE), + ]); + $I->logInWithRole($example['role']); + $I->amOnPage('/admin/structure/taxonomy'); + + if ($example['access']) { + $I->canSee('Media Types'); + $I->canSee('Media Content Filters'); + } + else { + $I->cantSee('Media Types'); + $I->cantSee('Media Content Filters'); + } + + foreach (['media_content_types', 'media_content_filters'] as $type) { + $I->amOnPage("/admin/structure/taxonomy/manage/$type/overview"); + + if ($example['access']) { + $I->canSeeLink('Add term', '#taxonomy'); + } + else { + $I->cantSeeLink('Add term', '#taxonomy'); + } + } + } + /** * Run access checks on an array of paths. * diff --git a/tests/codeception/functional/Content/CoursesCest.php b/tests/codeception/functional/Content/CoursesCest.php new file mode 100644 index 000000000..87e8fc414 --- /dev/null +++ b/tests/codeception/functional/Content/CoursesCest.php @@ -0,0 +1,165 @@ +faker = Factory::create(); + } + + public function testContentType(FunctionalTester $I) { + [ + $parent_1, + $parent_2, + $child_1_1, + $child_2_1, + $child_1_2, + $child_2_2, + ] = $this->buildTaxonomyTerms($I); + + $node = $I->createEntity([ + 'type' => 'stanford_course', + 'title' => $this->faker->words(3, TRUE), + ]); + + $I->logInWithRole('site_manager'); + + $I->amOnPage($node->toUrl('edit-form')->toString()); + $I->fillField('Course Link', $this->faker->url()); + + $I->canSee($parent_1->label(), 'legend'); + $I->canSee($parent_2->label(), 'legend'); + + $parent_1_id = preg_replace('@[^a-z0-9_.]+@', '_', mb_strtolower($parent_1->label())); + $parent_2_id = preg_replace('@[^a-z0-9_.]+@', '_', mb_strtolower($parent_2->label())); + + $I->selectOption("#$parent_1_id select.simpler-select", $child_1_1->label()); + $I->click('Add More', "#$parent_1_id"); + $I->waitForElementVisible("#$parent_1_id [class*='1-target-id'] select.simpler-select"); + $I->selectOption("#$parent_1_id [class*='1-target-id'] select.simpler-select", $child_1_2->label()); + + $I->selectOption("#$parent_2_id select.simpler-select", $child_2_1->label()); + + $I->waitForElementVisible("#$parent_2_id [class*='--level-1'] select.simpler-select"); + $I->selectOption("#$parent_2_id [class*='--level-1'] select.simpler-select", $child_2_2->label()); + + $I->click('Save'); + $I->canSeeInCurrentUrl($node->toUrl()->toString()); + $I->canSee($node->label(), 'h1'); + } + + #[CodeceptionAttribute\Group('course-filters')] + public function testFilteringCourse(FunctionalTester $I) { + [ + $parent_1, + $parent_2, + $child_1_1, + $child_2_1, + $child_1_2, + $child_2_2, + ] = $this->buildTaxonomyTerms($I); + $course = $I->createEntity([ + 'type' => 'stanford_course', + 'title' => $this->faker->words(3, TRUE), + 'su_course_filters' => [ + ['target_id' => $child_1_1->id()], + ['target_id' => $child_2_1->id()], + ], + ]); + $paragraph = $I->createEntity([ + 'type' => 'stanford_filtered_lists', + 'su_list_headline' => $this->faker->words(3, TRUE), + 'su_filtered_list_view' => [ + 'target_id' => 'courses_filtered', + 'display_id' => 'list', + 'arguments' => '', + 'items_to_display' => NULL, + ], + ], 'paragraph'); + $page = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->words(3, TRUE), + 'su_page_components' => [ + 'target_id' => $paragraph->id(), + 'entity' => $paragraph, + ], + ]); + $I->amOnPage($page->toUrl()->toString()); + $I->canSee($course->label()); + + $I->waitForText($parent_1->label(), 2, 'fieldset'); + + $I->checkOption($child_1_2->label()); + $I->waitForAjaxToFinish(); + $I->cantSee($course->label()); + + $I->checkOption($child_1_1->label()); + $I->waitForAjaxToFinish(); + $I->canSee($course->label()); + } + + protected function buildTaxonomyTerms(FunctionalTester $I) { + $parent_1 = $I->createEntity([ + 'vid' => 'course_filters', + 'name' => $this->faker->words(2, TRUE), + 'weight' => 0, + ], 'taxonomy_term'); + $parent_2 = $I->createEntity([ + 'vid' => 'course_filters', + 'name' => $this->faker->words(2, TRUE), + 'weight' => 10, + ], 'taxonomy_term'); + + $child_1_1 = $I->createEntity([ + 'vid' => 'course_filters', + 'name' => $this->faker->words(2, TRUE), + 'parent' => $parent_1->id(), + ], 'taxonomy_term'); + + $child_1_2 = $I->createEntity([ + 'vid' => 'course_filters', + 'name' => $this->faker->words(2, TRUE), + 'parent' => $parent_1->id(), + ], 'taxonomy_term'); + + $child_2_1 = $I->createEntity([ + 'vid' => 'course_filters', + 'name' => $this->faker->words(2, TRUE), + 'parent' => $parent_2->id(), + ], 'taxonomy_term'); + + $child_2_2 = $I->createEntity([ + 'vid' => 'course_filters', + 'name' => $this->faker->words(2, TRUE), + 'parent' => $child_2_1->id(), + ], 'taxonomy_term'); + return [ + $parent_1, + $parent_2, + $child_1_1, + $child_2_1, + $child_1_2, + $child_2_2, + ]; + } + +} diff --git a/tests/codeception/functional/Content/MediaCest.php b/tests/codeception/functional/Content/MediaCest.php new file mode 100644 index 000000000..5a0fd5e9b --- /dev/null +++ b/tests/codeception/functional/Content/MediaCest.php @@ -0,0 +1,111 @@ +faker = Factory::create(); + } + + #[CodeceptionAttribute\Examples(videos: ['https://www.youtube.com/watch?v=WNEyg3UKTVQ'])] + #[CodeceptionAttribute\Examples(videos: [ + 'https://www.youtube.com/watch?v=WNEyg3UKTVQ', + 'https://www.youtube.com/watch?v=myjrQS_7zNk', + ])] + public function testAddImageMedia(FunctionalTester $I, Example $example) { + foreach ($example['videos'] as $videoUrl) { + $mediaVideos[] = $I->createEntity([ + 'bundle' => 'video', + 'field_media_oembed_video' => $videoUrl, + ], 'media'); + } + + $mediaType = $I->createEntity([ + 'vid' => 'media_content_types', + 'name' => $this->faker->words(3, TRUE), + ], 'taxonomy_term'); + $person = $I->createEntity([ + 'type' => 'stanford_person', + 'title' => $this->faker->words(4, TRUE), + 'su_person_first_name' => $this->faker->firstName(), + 'su_person_last_name' => $this->faker->lastName(), + ]); + $series = $this->faker->word(); + $otherMedia = $I->createEntity([ + 'type' => 'stanford_media', + 'title' => $this->faker->words(4, TRUE), + 'su_media_episode' => $this->faker->word(), + 'su_media_season' => $this->faker->word(), + 'su_media_series' => $series, + ]); + + $mediaNode = $I->createEntity([ + 'type' => 'stanford_media', + 'title' => $this->faker->words(4, TRUE), + 'su_media_audio_video' => array_map(fn($media) => $media->id(), $mediaVideos), + 'su_media_dek' => $this->faker->sentences(1, TRUE), + 'body' => [ + 'value' => '' . implode('
', $this->faker->paragraphs(4)) . '
', + 'format' => 'stanford_html', + ], + 'su_media_episode' => $this->faker->word(), + 'su_media_season' => $this->faker->word(), + 'su_media_series' => $series, + 'su_media_transcript' => $this->faker->paragraphs(10, TRUE), + 'su_media_person' => $person->id(), + 'su_media_date' => date(DateTimeItemInterface::DATE_STORAGE_FORMAT), + 'su_media_types' => $mediaType->id(), + ]); + + $I->amOnPage($mediaNode->toUrl()->toString()); + $I->canSee($mediaNode->label(), 'h1'); + $I->canSee($mediaType->label()); + $I->canSeeLink($person->label(), $person->toUrl()->toString()); + $I->canSeeLink('Read Transcript'); + $I->canSeeElement('iframe[src*="WNEyg3UKTVQ"]'); + + $I->canSee('Part of Series'); + $I->canSee($series); + + $I->canSee('Next', 'h2'); + $I->canSee($otherMedia->label(), 'h3'); + $I->canSee('Related Topics', 'h2'); + + if (count($mediaVideos) > 1) { + $I->canSee('Video clips from: ' . $mediaNode->label(), 'h2'); + for ($j = 1; $j < count($mediaVideos); $j++) { + $I->canSeeLink($mediaVideos[$j]->label()); + } + + $lastVideo = end($mediaVideos); + $I->click($lastVideo->label()); + $I->waitForText($lastVideo->label(), 10, '.ui-dialog'); + $I->canSeeElement('.ui-dialog iframe'); + } + else { + $I->cantSee('Video clips from'); + } + + $I->amOnPage($person->toUrl()->toString()); + $I->canSee($person->label(), 'h1'); + $I->canSee('Media', 'h2'); + $I->canSee($mediaNode->label(), 'h3'); + $I->canSeeLink($mediaNode->label(), $mediaNode->toUrl()->toString()); + } + +} diff --git a/tests/codeception/functional/Content/PersonCest.php b/tests/codeception/functional/Content/PersonCest.php index 7fdd0c499..ef22d6991 100644 --- a/tests/codeception/functional/Content/PersonCest.php +++ b/tests/codeception/functional/Content/PersonCest.php @@ -65,6 +65,59 @@ public function testContentType(FunctionalTester $I) { $I->canSee($node->label(), 'h1'); } + + #[CodeceptionAttribute\Group('people-filters')] + public function testFilteringPeople(FunctionalTester $I) { + [ + $parent_1, + $parent_2, + $child_1_1, + $child_2_1, + $child_1_2, + $child_2_2, + ] = $this->buildTaxonomyTerms($I); + $person = $I->createEntity([ + 'type' => 'stanford_person', + 'title' => $this->faker->words(3, TRUE), + 'su_person_first_name' => $this->faker->firstName(), + 'su_person_last_name' => $this->faker->lastName(), + 'su_person_tags' => [ + ['target_id' => $child_1_1->id()], + ['target_id' => $child_2_1->id()], + ], + ]); + $paragraph = $I->createEntity([ + 'type' => 'stanford_filtered_lists', + 'su_list_headline' => $this->faker->words(3, TRUE), + 'su_filtered_list_view' => [ + 'target_id' => 'people_filtered', + 'display_id' => 'grid_list_all', + 'arguments' => '', + 'items_to_display' => NULL, + ], + ], 'paragraph'); + $page = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->words(3, TRUE), + 'su_page_components' => [ + 'target_id' => $paragraph->id(), + 'entity' => $paragraph, + ], + ]); + $I->amOnPage($page->toUrl()->toString()); + $I->canSee($person->label()); + + $I->waitForText($parent_1->label(), 2, 'fieldset'); + + $I->checkOption($child_1_2->label()); + $I->waitForAjaxToFinish(); + $I->cantSee($person->label()); + + $I->checkOption($child_1_1->label()); + $I->waitForAjaxToFinish(); + $I->canSee($person->label()); + } + protected function buildTaxonomyTerms(FunctionalTester $I) { $parent_1 = $I->createEntity([ 'vid' => 'person_filters', diff --git a/tests/codeception/functional/Content/StanfordNewsCest.php b/tests/codeception/functional/Content/StanfordNewsCest.php index 3b90c2468..01d3e5a81 100644 --- a/tests/codeception/functional/Content/StanfordNewsCest.php +++ b/tests/codeception/functional/Content/StanfordNewsCest.php @@ -25,9 +25,11 @@ public function __construct() { /** * Taxonomy terms in SHS should save in the order they were chosen. + * + * Engineering uses a different news functionality, so disabling. */ #[CodeceptionAttribute\Group('D8CORE-6003')] - public function testTermOrder(FunctionalTester $I) { + private function testTermOrder(FunctionalTester $I) { $first_term = $I->createEntity([ 'name' => 'c-' . $this->faker->word(), 'vid' => 'stanford_news_topics', @@ -49,6 +51,7 @@ public function testTermOrder(FunctionalTester $I) { $I->amOnPage($node->toUrl('edit-form')->toString()); $I->canSeeInField('Headline', $node->label()); + $I->click('#edit-group-taxonomy summary'); $I->waitForElementVisible('.form-item--su-news-topics-0-target-id select.simpler-select'); $I->selectOption('.form-item--su-news-topics-0-target-id select.simpler-select', $first_term->id()); @@ -64,6 +67,7 @@ public function testTermOrder(FunctionalTester $I) { $I->canSee($first_term->label() . ', ' . $second_term->label() . ', ' . $third_term->label()); $I->amOnPage($node->toUrl('edit-form')->toString()); + $I->click('#edit-group-taxonomy summary'); $I->waitForElementVisible('.form-item--su-news-topics-2-target-id select.simpler-select'); $I->selectOption('.form-item--su-news-topics-0-target-id select.simpler-select', $second_term->id()); $I->selectOption('.form-item--su-news-topics-1-target-id select.simpler-select', $first_term->id()); @@ -74,6 +78,7 @@ public function testTermOrder(FunctionalTester $I) { $I->canSee($second_term->label() . ', ' . $first_term->label() . ', ' . $third_term->label()); $I->amOnPage($node->toUrl('edit-form')->toString()); + $I->click('#edit-group-taxonomy summary'); $I->waitForElementVisible('.form-item--su-news-topics-2-target-id select.simpler-select'); $I->selectOption('.form-item--su-news-topics-0-target-id select.simpler-select', $third_term->id()); $I->selectOption('.form-item--su-news-topics-1-target-id select.simpler-select', $second_term->id()); @@ -84,6 +89,7 @@ public function testTermOrder(FunctionalTester $I) { $I->canSee($third_term->label() . ', ' . $second_term->label() . ', ' . $first_term->label()); $I->amOnPage($node->toUrl('edit-form')->toString()); + $I->click('#edit-group-taxonomy summary'); $I->waitForElementVisible('.form-item--su-news-topics-2-target-id select.simpler-select'); $I->selectOption('.form-item--su-news-topics-0-target-id select.simpler-select', $third_term->id()); $I->selectOption('.form-item--su-news-topics-1-target-id select.simpler-select', $first_term->id()); diff --git a/tests/codeception/functional/Paragraphs/ListCest.php b/tests/codeception/functional/Paragraphs/ListCest.php new file mode 100644 index 000000000..bb30ad797 --- /dev/null +++ b/tests/codeception/functional/Paragraphs/ListCest.php @@ -0,0 +1,106 @@ +faker = Factory::create(); + } + + #[CodeceptionAttribute\Group('argument-suggestion')] + public function testArgumentSuggestion(FunctionalTester $I) { + $news_term = $I->createEntity([ + 'vid' => 'stanford_news_topics', + 'name' => $this->faker->unique()->uuid(), + ], 'taxonomy_term'); + + $event_term = $I->createEntity([ + 'vid' => 'stanford_event_types', + 'name' => $this->faker->unique()->uuid(), + ], 'taxonomy_term'); + + $person_term = $I->createEntity([ + 'vid' => 'stanford_person_types', + 'name' => $this->faker->unique()->uuid(), + ], 'taxonomy_term'); + + $paragraph = $I->createEntity([ + 'type' => 'stanford_lists', + 'su_list_headline' => $this->faker->words(3, TRUE), + ], 'paragraph'); + + $node = $I->createEntity([ + 'type' => 'stanford_page', + 'title' => $this->faker->text(30), + 'su_page_components' => [ + 'target_id' => $paragraph->id(), + 'entity' => $paragraph, + ], + ]); + + $I->logInWithRole('site_manager'); + $I->amOnPage($node->toUrl('edit-form')->toString()); + $I->scrollTo('.js-lpb-component', 0, -100); + $I->moveMouseOver('.js-lpb-component', 10, 10); + $I->click('Edit', '.lpb-controls'); + $I->waitForText('List Format'); + $I->canSee('Advanced Options'); + + $I->selectOption('View', 'News'); + $I->waitForAjaxToFinish(); + $I->selectOption('Display', 'News Card Grid'); + $I->click('.viewfield-autocomplete summary'); + $I->fillField('Arguments', substr($person_term->label(), 0, 3)); + $I->wait(1); + $I->cantSee($person_term->label()); + $I->fillField('Arguments', substr($news_term->label(), 0, 3)); + + $I->waitForText($news_term->label()); + $I->click($news_term->label()); + $I->canSeeInField('Arguments', $news_term->label()); + $I->clearField('Arguments'); + + $I->selectOption('View', 'Events'); + $I->waitForAjaxToFinish(); + + $I->fillField('Arguments', substr($person_term->label(), 0, 3)); + $I->wait(1); + $I->cantSee($person_term->label()); + $I->fillField('Arguments', substr($event_term->label(), 0, 3)); + + $I->waitForText($event_term->label()); + $I->click($event_term->label()); + $I->canSeeInField('Arguments', $event_term->label()); + $I->clearField('Arguments'); + + $I->selectOption('View', 'People'); + $I->waitForAjaxToFinish(); + + $I->fillField('Arguments', substr($event_term->label(), 0, 3)); + $I->wait(1); + $I->cantSee($event_term->label()); + $I->fillField('Arguments', substr($person_term->label(), 0, 3)); + + $I->waitForText($person_term->label()); + $I->click($person_term->label()); + $I->canSeeInField('Arguments', $person_term->label()); + } + +} diff --git a/tests/codeception/functional/Paragraphs/WYSIWYGCest.php b/tests/codeception/functional/Paragraphs/WYSIWYGCest.php index 3c0f1e845..4682324ec 100644 --- a/tests/codeception/functional/Paragraphs/WYSIWYGCest.php +++ b/tests/codeception/functional/Paragraphs/WYSIWYGCest.php @@ -101,10 +101,10 @@ public function testWysiwygButtons(FunctionalTester $I) { // Wait a second for any click events to be applied. $I->wait(1); - $I->click('[data-cke-tooltip-text="Insert table"]'); + $I->click('.ui-dialog [data-cke-tooltip-text="Insert table"]'); $I->click('[data-row="5"][data-column="3"]'); - $I->click('[data-cke-tooltip-text="Link (Ctrl+K)"]'); + $I->click('.ui-dialog [data-cke-tooltip-text="Link (Ctrl+K)"]'); $url = $this->faker->url(); $I->fillField('Link URL', $url); $I->click('Insert'); @@ -136,7 +136,7 @@ public function testEmbeddedImage(FunctionalTester $I) { // Wait a second for any click events to be applied. $I->wait(1); - $I->click('[data-cke-tooltip-text="Insert Media"]'); + $I->click('.ui-dialog [data-cke-tooltip-text="Insert Media"]'); $I->waitForElementVisible('.dropzone'); $I->dropFileInDropzone(__DIR__ . '/logo.jpg'); $I->click('Upload and Continue'); @@ -195,7 +195,7 @@ public function testImageCategory(FunctionalTester $I) { // Wait a second for any click events to be applied. $I->wait(1); - $I->click('[data-cke-tooltip-text="Insert Media"]'); + $I->click('.ui-dialog [data-cke-tooltip-text="Insert Media"]'); $I->waitForElementVisible('.dropzone'); $I->selectOption('Category', $unrelated_term->label()); @@ -237,7 +237,7 @@ public function testEmbeddedVideo(FunctionalTester $I) { // Wait a second for any click events to be applied. $I->wait(1); - $I->click('[data-cke-tooltip-text="Insert Media"]'); + $I->click('.ui-dialog [data-cke-tooltip-text="Insert Media"]'); $I->waitForElementVisible('.dropzone'); $I->click('Video', '.media-library-menu-video'); $I->waitForElementVisible('.media-library-add-form-oembed-url'); @@ -277,7 +277,7 @@ public function testEmbeddedDocument(FunctionalTester $I) { // Wait a second for any click events to be applied. $I->wait(1); - $I->click('[data-cke-tooltip-text="Insert Media"]'); + $I->click('.ui-dialog [data-cke-tooltip-text="Insert Media"]'); $I->waitForElementVisible('.dropzone'); $I->click('File', '.media-library-menu-file'); $I->waitForText('txt, rtf, doc, docx'); @@ -356,7 +356,7 @@ public function testEmbedCode(FunctionalTester $I){ // Wait a second for any click events to be applied. $I->wait(1); - $I->click('[data-cke-tooltip-text="Insert Media"]'); + $I->click('.ui-dialog [data-cke-tooltip-text="Insert Media"]'); $I->waitForElementVisible('.dropzone'); $I->click('Embeddable', '.media-library-menu'); $I->waitForText('oEmbed URL'); diff --git a/tests/codeception/functional/Users/RolesCest.php b/tests/codeception/functional/Users/RolesCest.php index 61e43a4cf..8aa8e821b 100644 --- a/tests/codeception/functional/Users/RolesCest.php +++ b/tests/codeception/functional/Users/RolesCest.php @@ -56,7 +56,9 @@ protected function saveStateValue($key) { /** * D8CORE-1200 Prevent deleteing the homepage from bulk delete. */ - private function testBulkDeleteHomePage(FunctionalTester $I) { + #[CodeceptionAttribute\Group('D8CORE-1200')] + #[CodeceptionAttribute\Group('vbo')] + public function testBulkDeleteHomePage(FunctionalTester $I) { $test_home = $I->createEntity([ 'type' => 'stanford_page', 'title' => $this->faker->words(3, TRUE), @@ -77,7 +79,7 @@ private function testBulkDeleteHomePage(FunctionalTester $I) { $I->selectOption('Action', 'Delete selected entities'); $I->click('Apply to selected items'); $I->click('Execute action'); - // $I->waitForText('Delete entities'); + $I->waitForText('Delete content item entities (1)'); $I->canSee('Access denied (1)'); $I->runDrush('cache-rebuild'); $I->amOnPage('/'); diff --git a/themes/engineering/dist/css/engineering.styles.css b/themes/engineering/dist/css/engineering.styles.css index a8c4ccb4f..da23cbac0 100644 --- a/themes/engineering/dist/css/engineering.styles.css +++ b/themes/engineering/dist/css/engineering.styles.css @@ -1 +1 @@ -@import url(https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@400&700&300&100&display=swap);.soe-spotlight--cards img{border-radius:50%;border-style:solid;border-width:5px;display:block;margin:auto}.soe-spotlight--cards .su-link--action{color:#006cb8}.soe-spotlight--cards .su-link--action:after{background-color:#006cb8}.soe-spotlight--cards .views-row{display:-webkit-box;display:-ms-flexbox;display:flex}@media (min-width:1200px){.soe-spotlight--cards .views-row{margin-bottom:3.2rem}}@media only screen and (min-width:1200px) and (min-width:768px){.soe-spotlight--cards .views-row{margin-bottom:4.5rem}}@media only screen and (min-width:1200px) and (min-width:1500px){.soe-spotlight--cards .views-row{margin-bottom:4.8rem}}@media (max-width:767px){.soe-spotlight--cards .views-row.flex-container{display:block}.soe-spotlight--cards .views-row.flex-container>div{max-width:100%}}.soe-spotlight--cards .views-row .su-card{margin:1.5rem;padding:3rem}@media only screen and (min-width:768px){.soe-spotlight--cards .views-row .su-card{margin:1.8rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards .views-row .su-card{margin:1.9rem}}@media only screen and (min-width:768px){.soe-spotlight--cards .views-row .su-card{padding:3.6rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards .views-row .su-card{padding:3.8rem}}@media (max-width:767px){.soe-spotlight--cards .views-row .su-card{margin-bottom:3.2rem}}@media only screen and (max-width:767px) and (min-width:768px){.soe-spotlight--cards .views-row .su-card{margin-bottom:4.5rem}}@media only screen and (max-width:767px) and (min-width:1500px){.soe-spotlight--cards .views-row .su-card{margin-bottom:4.8rem}}.soe-spotlight--cards .views-row .su-card .image{-webkit-box-flex:1;display:block;-ms-flex:1;flex:1;width:100%}.soe-spotlight--cards .views-row .su-card .su-card__contents{-webkit-box-flex:3;-ms-flex:3;flex:3}.soe-spotlight--cards .views-row .su-card .su-card__contents span{margin-bottom:30px}.soe-spotlight--cards .views-view-grid .su-card__contents{padding-bottom:0;padding-left:0;padding-right:0}.soe-spotlight--cards .su-card__contents .su-card__superhead{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.soe-spotlight--cards .su-card__contents .su-card__superhead time{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.soe-spotlight--cards .su-card__contents h2{-webkit-box-ordinal-group:3;-ms-flex-order:2;font-size:1.25em;font-weight:900;letter-spacing:-.01em;margin-bottom:1.1rem;order:2}@media only screen and (min-width:768px){.soe-spotlight--cards .su-card__contents h2{margin-bottom:1.2rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards .su-card__contents h2{margin-bottom:1.3rem}}.soe-spotlight--cards .su-card__contents .soe--person-title{-webkit-box-ordinal-group:4;-ms-flex-order:3;font-size:1em;font-weight:400;order:3}.soe-spotlight--cards .su-card__contents .soe-quote{font-size:1.25em;font-weight:700;letter-spacing:-.01em;margin-top:1.5rem}@media only screen and (min-width:768px){.soe-spotlight--cards .su-card__contents .soe-quote{margin-top:1.8rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards .su-card__contents .soe-quote{margin-top:1.9rem}}.soe-spotlight--cards .su-card__contents .su-link{font-size:1.6rem;font-weight:600;padding-top:2rem;position:relative}@media only screen and (min-width:768px){.soe-spotlight--cards .su-card__contents .su-link{padding-top:2.6rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards .su-card__contents .su-link{padding-top:2.7rem}}@media (min-width:992px){.soe-spotlight--cards .su-card__contents .su-link{font-size:1.9rem}}.soe-spotlight--cards .su-card__contents .su-link:after{bottom:15%;position:absolute}.soe-spotlight--cards--banner.spotlights .views-row{margin-bottom:0}@media (max-width:1199px){.soe-spotlight--cards--banner.spotlights .views-row .su-card{display:block}.soe-spotlight--cards--banner.spotlights .views-row .su-card img{max-width:300px}}.soe-spotlight--cards--banner.spotlights .views-row h2{font-size:1.5625em;font-weight:900;letter-spacing:-.012em;margin-bottom:.5rem}.soe-spotlight--cards--banner.spotlights .views-row .soe--person-title{font-size:1.5625em;font-weight:400;letter-spacing:-.012em}.soe-spotlight--cards--banner.spotlights .views-row .spotlight__quote{font-size:1.95312em;font-weight:900;letter-spacing:-.016em;margin-top:2rem}@media (max-width:767px){.soe-spotlight--cards--banner.spotlights .views-row .spotlight__quote{font-size:1.66016em}}@media only screen and (min-width:768px){.soe-spotlight--cards--banner.spotlights .views-row .spotlight__quote{margin-top:2.6rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards--banner.spotlights .views-row .spotlight__quote{margin-top:2.7rem}}.soe-spotlight--cards--banner.spotlights .su-card__contents .su-link{font-size:1.25em;font-weight:600;letter-spacing:-.01em;margin-top:0;padding-top:3rem}@media only screen and (min-width:768px){.soe-spotlight--cards--banner.spotlights .su-card__contents .su-link{padding-top:3.6rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards--banner.spotlights .su-card__contents .su-link{padding-top:3.8rem}}@media (min-width:1200px){.viewfield-block__cardgrid .soe-spotlight--cards .views-row{margin-bottom:2rem}}@media only screen and (min-width:1200px) and (min-width:768px){.viewfield-block__cardgrid .soe-spotlight--cards .views-row{margin-bottom:2.6rem}}@media only screen and (min-width:1200px) and (min-width:1500px){.viewfield-block__cardgrid .soe-spotlight--cards .views-row{margin-bottom:2.7rem}}.ds-entity--spotlight .su-card .engineering-accent-color__image{margin-top:2rem}@media only screen and (min-width:768px){.ds-entity--spotlight .su-card .engineering-accent-color__image{margin-top:2.6rem}}@media only screen and (min-width:1500px){.ds-entity--spotlight .su-card .engineering-accent-color__image{margin-top:2.7rem}}.ds-entity--spotlight .su-card img{border-radius:50%;border-style:solid;border-width:5px;display:block;margin:auto}.ds-entity--spotlight .su-card h2{font-size:1.25em;font-weight:900;letter-spacing:-.01em;margin-bottom:1.1rem}@media only screen and (min-width:768px){.ds-entity--spotlight .su-card h2{margin-bottom:1.2rem}}@media only screen and (min-width:1500px){.ds-entity--spotlight .su-card h2{margin-bottom:1.3rem}}.ds-entity--spotlight .su-card .soe--person-title{font-size:1.25em;font-weight:400;letter-spacing:-.01em}.ds-entity--spotlight .su-card .soe-quote{font-size:1.5625em;font-size:1em;font-weight:700;letter-spacing:-.012em}.ds-entity--spotlight .su-card .node-link{margin-top:3.4rem}@media only screen and (min-width:768px){.ds-entity--spotlight .su-card .node-link{margin-top:5.8rem}}@media only screen and (min-width:1500px){.ds-entity--spotlight .su-card .node-link{margin-top:6.1rem}}.ds-entity--spotlight .su-card .su-link{color:#006cb8;font-size:1.25em;font-weight:600;letter-spacing:-.01em}.ds-entity--spotlight .su-card .su-link :hover{text-decoration:underline}.soe-spotlight--cards--banner .views-row .su-card{border:none;-webkit-box-shadow:none;box-shadow:none;display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.soe-spotlight--cards--banner .views-row .su-card .image{display:block;width:100%}.page-media-coverage .su-news-article .su-news-list__headline-dek h3,.page-media-mentions .su-news-article .su-news-list__headline-dek h3{color:#000;text-decoration:underline;text-decoration-color:#00ece9}.page-media-coverage .su-news-article .su-news-list__headline-dek h3:hover,.page-media-mentions .su-news-article .su-news-list__headline-dek h3:hover{text-decoration-color:#000}.page-media-coverage .su-news-article .su-news-list__topics,.page-media-mentions .su-news-article .su-news-list__topics{display:none}.ds-entity--node.ds-entity--stanford-news .su-card.su-news-vertical-teaser .su-news-header .su-card__link.su-link--action,.ds-entity--node.ds-entity--stanford-news .su-card.su-news-vertical-teaser .su-news-header .su-link.su-card__link.su-link--external{border-bottom:0;text-decoration:underline;text-decoration-color:#00ece9}.ds-entity--node.ds-entity--stanford-news .su-card.su-news-vertical-teaser .su-news-header .su-card__link.su-link--action:hover,.ds-entity--node.ds-entity--stanford-news .su-card.su-news-vertical-teaser .su-news-header .su-link.su-card__link.su-link--external:hover{text-decoration-color:#2e2d29}.su-card.su-news-vertical-teaser a .su-news-header{margin-bottom:1.5rem}@media only screen and (min-width:768px){.su-card.su-news-vertical-teaser a .su-news-header{margin-bottom:1.8rem}}@media only screen and (min-width:1500px){.su-card.su-news-vertical-teaser a .su-news-header{margin-bottom:1.9rem}}.news-card__external-source-text{background-color:#2e2d29;color:#fff;font-size:16px;margin-top:3rem;max-width:-webkit-fit-content;max-width:-moz-fit-content;max-width:fit-content;padding:6px 13px 7px}@media only screen and (min-width:768px){.news-card__external-source-text{margin-top:3.6rem}}@media only screen and (min-width:1500px){.news-card__external-source-text{margin-top:3.8rem}}@media (max-width:767px){.news-card__external-source-text{font-size:15px}}.section-magazine-views-views .su-card .su-card__contents>:last-child:not(.su-card__button){padding-bottom:7px}.soe-link__button .button,.soe-link__button .js-pager__items .pager__item .button,.soe-link__button .js-pager__items .soe-link__button.pager__item .button{background-color:#00ece9;color:#2e2d29;display:block;text-align:center;width:100%}.more-link.soe-link__button{display:inline-block}.more-link.soe-link__button,.soe-spotlight--cards .js-pager__items.pager{margin-bottom:13.3rem}.soe-more-stories-link__button .button{text-align:center}input#edit-submit-spotlights{display:none}input#edit-submit-spotlights.show-spotlight-apply__button{display:block}#views-exposed-form-spotlights-block-1{-webkit-box-pack:end;-ms-flex-pack:end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:18px;justify-content:flex-end;margin-bottom:2rem;margin-left:1.5rem;margin-right:3.2rem;padding-top:2rem}@media only screen and (min-width:768px){#views-exposed-form-spotlights-block-1{padding-top:2.6rem}}@media only screen and (min-width:1500px){#views-exposed-form-spotlights-block-1{padding-top:2.7rem}}@media only screen and (min-width:768px){#views-exposed-form-spotlights-block-1{margin-bottom:2.6rem;margin-left:1.8rem;margin-right:4.5rem}}@media only screen and (min-width:1500px){#views-exposed-form-spotlights-block-1{margin-bottom:2.7rem;margin-left:1.9rem;margin-right:4.8rem}}@media (max-width:1199px){#views-exposed-form-spotlights-block-1{margin-bottom:3.2rem}}@media only screen and (max-width:1199px) and (min-width:768px){#views-exposed-form-spotlights-block-1{margin-bottom:4.5rem}}@media only screen and (max-width:1199px) and (min-width:1500px){#views-exposed-form-spotlights-block-1{margin-bottom:4.8rem}}@media (max-width:1199px){#views-exposed-form-spotlights-block-1>div{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%}}#views-exposed-form-spotlights-block-1 .form-item-tid,#views-exposed-form-spotlights-block-1 .form-item-tid-1{max-width:280px;width:280px}@media (max-width:1199px){#views-exposed-form-spotlights-block-1 .form-item-tid,#views-exposed-form-spotlights-block-1 .form-item-tid-1{margin:0;max-width:100%;width:100%}}#views-exposed-form-spotlights-block-1 input,#views-exposed-form-spotlights-block-1 select,#views-exposed-form-spotlights-block-1 textarea{font-family:Source Sans\ 3,Source Sans Pro,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:21px;font-weight:400;height:unset;line-height:32px;max-width:70rem}#views-exposed-form-spotlights-block-1 select{border-color:#d5d5d4}#views-exposed-form-spotlights-block-1 .form-actions{margin:0}#views-exposed-form-spotlights-block-1 .form-actions .show-spotlight-apply__button{display:inline-block;margin:0 auto;max-width:135px;width:135px}.spotlight-banner{-webkit-box-pack:start;-ms-flex-pack:start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:18px;justify-content:flex-start;margin-bottom:3.8rem;margin-top:4.5rem}@media only screen and (min-width:768px){.spotlight-banner{margin-bottom:7.2rem;margin-top:9rem}}@media only screen and (min-width:1500px){.spotlight-banner{margin-bottom:7.6rem;margin-top:9.5rem}}.spotlight-banner .su-spotlight-feature-image{max-width:360px}@media only screen and (min-width:768px){.spotlight-banner .su-spotlight-feature-image{max-width:100%}}.spotlight-banner .su-spotlight-feature-image img{border-radius:50%;border-style:solid;border-width:5px;display:block;margin-right:0}.spotlight-banner__text{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-bottom:3.4rem;margin-top:3.4rem}@media only screen and (min-width:768px){.spotlight-banner__text{margin-bottom:5.8rem;margin-top:5.8rem}}@media only screen and (min-width:1500px){.spotlight-banner__text{margin-bottom:6.1rem;margin-top:6.1rem}}.spotlight-banner__text .node-spotlight-type{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.spotlight-banner__text .node-spotlight-title{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.spotlight-banner__text .node-spotlight-su-spotlight-person-title{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.spotlight-banner__text .node-spotlight-su-soe-department{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.spotlight-banner__text .spotlight{font-size:1.5625em;font-weight:900;letter-spacing:-.012em;margin-bottom:2rem}@media only screen and (min-width:768px){.spotlight-banner__text .spotlight{margin-bottom:2.6rem}}@media only screen and (min-width:1500px){.spotlight-banner__text .spotlight{margin-bottom:2.7rem}}.spotlight-banner__text .spotlight.su-soe-department,.spotlight-banner__text .spotlight.su-spotlight-degrees{color:#43423e;font-size:1.5625em;font-weight:400;letter-spacing:-.012em;max-width:40ch}.spotlight-banner__text .spotlight h1{font-size:1.95312em;font-weight:900;letter-spacing:-.016em;margin-bottom:0}@media (max-width:767px){.spotlight-banner__text .spotlight h1{font-size:1.66016em}}.spotlight-banner__text .su-spotlight-person-title{margin-bottom:0}.node-spotlight-created{max-width:100%}.node.spotlight.su-people-spotlight-quote{font-family:Source Sans\ 3,Source Sans Pro,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:400;line-height:normal}@media only screen and (min-width:768px){.node.spotlight.su-people-spotlight-quote{font-size:2.1rem;line-height:1.7}}.spotlight.spotlight-header__date{font-style:italic;font-weight:400;margin-bottom:1.5rem;text-align:right;width:100%}@media only screen and (min-width:768px){.spotlight.spotlight-header__date{font-size:2.1rem;line-height:1.7;margin-bottom:1.8rem}}@media only screen and (min-width:1500px){.spotlight.spotlight-header__date{margin-bottom:1.9rem}}.soe-departments__term-list{list-style-type:none}.soe-departments__term-list li{display:inline}.soe-departments__term-list li:after{content:", "}.soe-departments__term-list li:last-of-type:after{content:""}.su-people-spotlight-quote{font-size:1.5625em;letter-spacing:-.012em;margin-bottom:3.2rem}@media only screen and (min-width:768px){.su-people-spotlight-quote{margin-bottom:4.5rem}}@media only screen and (min-width:1500px){.su-people-spotlight-quote{margin-bottom:4.8rem}}@media only screen and (min-width:0){.su-hero{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;justify-content:center;min-height:208px}}@media only screen and (min-width:576px){.su-hero{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;justify-content:center;min-height:208px}}@media only screen and (min-width:768px){.su-hero{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;justify-content:center;min-height:320px}}@media only screen and (min-width:992px){.su-hero{min-height:409px}}@media only screen and (min-width:1200px){.su-hero{min-height:520px}}.su-hero .su-hero__card{max-width:120rem;width:100%}.su-hero .su-hero__card .su-card__superhead{margin:0 auto;max-width:340px}.su-hero .su-hero__card p{margin:0 auto;max-width:750px}@media only screen and (min-width:0){.su-hero .su-hero__card{margin-bottom:20px;margin-top:20px}}@media only screen and (min-width:576px){.su-hero .su-hero__card{margin-bottom:20px;margin-top:20px}}@media only screen and (min-width:768px){.su-hero .su-hero__card{margin-bottom:45px;margin-top:45px}}@media only screen and (min-width:1200px){.su-hero .su-hero__card{bottom:48px;margin-bottom:0;margin-top:96px;top:auto}}.su-hero__media picture:after{content:"";display:inline-block;height:100%;left:0;position:absolute;top:0;width:100%}@media only screen and (min-width:0){.su-hero__media{min-height:208px;position:absolute}}@media only screen and (min-width:576px){.su-hero__media{min-height:208px;position:absolute}}@media only screen and (min-width:768px){.su-hero__media{min-height:320px;position:absolute}}@media only screen and (min-width:992px){.su-hero__media{min-height:409px;position:absolute}}@media only screen and (min-width:1200px){.su-hero__media{min-height:520px;position:absolute}}@media only screen and (min-width:768px){.su-lockup--option-a .su-lockup__line1{line-height:1.15em;margin-bottom:-6px;margin-top:-8px}}.su-lockup__custom-logo{max-width:150px}.su-lockup--option-none .su-lockup__cell1{border-right:0}.su-lockup--option-none .su-lockup__custom-logo{max-width:300px}@media (max-width:991px){.su-lockup--option-none .su-lockup__custom-logo{max-width:220px}}@media (max-width:767px){.su-lockup--option-none .su-lockup__custom-logo{max-width:80%;width:180px}}.su-lockup--option-s .su-lockup__line4:after,.su-lockup--option-t .su-lockup__line4:after{width:auto}.su-lockup__cell2{max-width:475px}.su-lockup__cell1 .su-lockup__line4{overflow-wrap:break-word;word-break:break-all}.su-lockup--option-d .su-lockup__line3,.su-lockup--option-e .su-lockup__line3,.su-lockup--option-h .su-lockup__line3,.su-lockup--option-i .su-lockup__line3,.su-lockup--option-q .su-lockup__line3,.su-lockup--option-t .su-lockup__line3{line-height:1.5}.bare-header{margin-top:95px}.node_view ul.pre_links li a[href$="printable/print"]{display:none}.su-news-list .su-news-article .su-news-list__topics a{color:#b1040e;text-decoration:underline}.su-wysiwyg-text .su-link,.su-wysiwyg-text a:not([class*=su-button]),.su-wysiwyg-text su-link--action,.su-wysiwyg-text su-link--external{color:#b1040e}.su-wysiwyg-text .su-link:after,.su-wysiwyg-text a:not([class*=su-button]):after,.su-wysiwyg-text su-link--action:after,.su-wysiwyg-text su-link--external:after{background-color:#b1040e}.su-wysiwyg-text .su-link:focus,.su-wysiwyg-text .su-link:hover,.su-wysiwyg-text a:not([class*=su-button]):focus,.su-wysiwyg-text a:not([class*=su-button]):hover,.su-wysiwyg-text su-link--action:focus,.su-wysiwyg-text su-link--action:hover,.su-wysiwyg-text su-link--external:focus,.su-wysiwyg-text su-link--external:hover{color:#2e2d29;text-decoration:underline}.su-wysiwyg-text .su-link:focus:after,.su-wysiwyg-text .su-link:hover:after,.su-wysiwyg-text a:not([class*=su-button]):focus:after,.su-wysiwyg-text a:not([class*=su-button]):hover:after,.su-wysiwyg-text su-link--action:focus:after,.su-wysiwyg-text su-link--action:hover:after,.su-wysiwyg-text su-link--external:focus:after,.su-wysiwyg-text su-link--external:hover:after{background-color:#2e2d29}.page-spotlight .jumpstart-ui--one-column.centered-container{max-width:1500px;width:100%}.spotlight-main-content .main-region{margin-bottom:83px}.spotlights-block-1 .form-item-tid label,.spotlights-block-1 .form-item-tid-1 label{clip:rect(1px,1px,1px,1px);border:0;-webkit-clip-path:inset(100%);clip-path:inset(100%);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.soe-spotlight--cards.block-1 .su-card__contents time,.soe-spotlight--cards.block-2 .su-card__contents time{color:#2e2d29;font-family:Source Sans\ 3,Source Sans Pro,Helvetica Neue,Helvetica,Arial,"sans-serif";font-size:1em;font-weight:400;line-height:26.6px}.su-people-spotlight-quote{font-size:30px;font-weight:900;line-height:48px}.spotlights-block-3 h2.block__title{text-align:center}.soe-mag-landing__heading_1,.soe-mag-landing__heading_2{margin:auto;text-align:center}.soe-mag-landing__heading_2{font-family:Source Sans Pro,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:400;max-width:30ch}.card-grid__row{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media (min-width:576px){.card-grid__row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.card-grid__row .card-grid__column:first-child{-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row .card-grid__column:nth-child(2){-webkit-box-flex:2;-ms-flex:2;flex:2}.card-grid__row .card-grid__column:nth-child(3){-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row:nth-of-type(2n) .card-grid__column:first-child{-webkit-box-flex:2;-ms-flex:2;flex:2}.card-grid__row:nth-of-type(2n) .card-grid__column:nth-child(2),.card-grid__row:nth-of-type(2n) .card-grid__column:nth-child(3),.card-grid__row:nth-of-type(3n) .card-grid__column:first-child,.card-grid__row:nth-of-type(3n) .card-grid__column:nth-child(2){-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row:nth-of-type(3n) .card-grid__column:nth-child(3){-webkit-box-flex:2;-ms-flex:2;flex:2}}.card-grid__row .card-grid__column{-webkit-box-align:start;-ms-flex-align:start;-webkit-box-pack:center;-ms-flex-pack:center;align-items:flex-start;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center}.card-grid__row .card-grid__column .su-card{margin:1em;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.card-grid__row .card-grid__column .su-card h2 a{color:#2e2d29;font-size:1em;margin-bottom:1.5rem}@media only screen and (min-width:768px){.card-grid__row .card-grid__column .su-card h2 a{margin-bottom:1.8rem}}@media only screen and (min-width:1500px){.card-grid__row .card-grid__column .su-card h2 a{margin-bottom:1.9rem}}.card-grid__row .card-grid__column .su-card h2 a:hover{text-decoration:underline;text-decoration-color:#333}.card-grid__row .card-grid__column .su-card .soe-mag-card__date-published{-webkit-box-ordinal-group:2;-ms-flex-order:1;color:#585754;font-size:1em;font-weight:400;margin-bottom:10px;order:1}.card-grid__row .card-grid__column .su-card .soe-mag-card__title{font-size:1em}.card-grid__row .card-grid__column .su-card .soe-mag-card__title a{color:#2e2d29}.card-grid__row .card-grid__column .su-card .soe-mag-card__title a:hover{text-decoration:underline;text-decoration-color:#000}.card-grid__row .card-grid__column .su-card .soe-mag-card__topics{margin-top:0}.card-grid__row .card-grid__column .su-card .soe-mag-card__topics a{color:#b1040e;font-size:18px;font-weight:400;text-decoration:underline}.card-grid__row .card-grid__column .su-card .soe-mag-card__topics a:hover{color:#2e2d29;text-decoration-color:#2e2d29}.card-grid__row .card-grid__column .su-card .soe-mag-card__issue{color:#fff;display:block;margin-top:30px;padding:.5em;text-align:center;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.card-grid__row .card-grid__column .su-card .soe-mag-card__issue a{color:#000;text-decoration:none}.card-grid__row .card-grid__column .su-card .soe-mag-card__issue a:hover{text-decoration:underline;text-decoration-color:#333}.soe-load-more{margin:3.8rem}@media only screen and (min-width:768px){.soe-load-more{margin:7.2rem}}@media only screen and (min-width:1500px){.soe-load-more{margin:7.6rem}}.view.magazine .views-infinite-scroll-content-wrapper>h3,.view.magazine header h1{text-align:center}.article-collection__link{margin-left:auto;margin-right:auto}.su-mag--mag_topics{margin-bottom:30px}.su-mag--mag_topics a{color:#b1040e;font-size:18px;font-weight:700;text-decoration:none}.su-mag--mag_topics a:hover{text-decoration:underline;text-decoration-color:#000}.stanford-news.su-soe-department a{color:#b1040e;text-decoration:none}.stanford-news.su-soe-department a:hover{text-decoration:underline}.spotlights-block-4 .soe-spotlight--cards{-webkit-box-pack:justify;-ms-flex-pack:justify;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:2em;justify-content:space-between}.spotlights-block-4 .soe-spotlight--cards .views-row{-webkit-box-flex:1;border:1px solid #e3e3e3;-webkit-box-shadow:0 3px 6px rgba(0,0,0,.13),0 3px 6px rgba(0,0,0,.1);box-shadow:0 3px 6px rgba(0,0,0,.13),0 3px 6px rgba(0,0,0,.1);-ms-flex:1 0 45%;flex:1 0 45%;margin-left:1em;margin-right:1em}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card{padding:.5em}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-box-pack:left;-ms-flex-pack:left;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;justify-content:left;padding:0}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .soe-mag-card__date-published{-webkit-box-ordinal-group:2;-ms-flex-order:1;color:#585754;font-size:1em;font-weight:400;margin-bottom:10px;order:1}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{height:125px;margin:.5em auto;width:125px}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .su-spotlight--superhead{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-size:.9em;margin-right:nul;margin-top:1em}@media only screen and (min-width:0) and (max-width:575px){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .su-spotlight--superhead{margin-top:1.5em}}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .views-field:has(.soe-spotlight-mag-card__title){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .soe-spotlight-mag-card__title{font-size:1.5625em;margin-bottom:0!important}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .soe-spotlight-mag-card__title a{color:#2e2d29}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .soe-spotlight-mag-card__title a:hover{text-decoration:underline;text-decoration-color:#333}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .field-content.soe--person-title{-webkit-box-ordinal-group:4;-ms-flex-order:3;font-size:1.1em;margin-top:.5em;order:3}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .field-content.soe--person-department{-webkit-box-ordinal-group:5;-ms-flex-order:4;font-size:1.1em;order:4}@media only screen and (min-width:0){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;-ms-flex-direction:column;flex-direction:column;justify-content:center}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{height:225px;margin-left:auto;margin-right:auto;width:225px}}@media only screen and (min-width:768px){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-box-pack:left;-ms-flex-pack:left;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;justify-content:left}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{-webkit-box-flex:0;-ms-flex-positive:0;display:block;flex-grow:0;float:left;height:125px;margin-right:3rem;width:125px}}@media only screen and (min-width:768px) and (min-width:768px){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{margin-right:3.6rem}}@media only screen and (min-width:768px) and (min-width:1500px){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{margin-right:3.8rem}}@media only screen and (min-width:992px){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{height:200px;width:200px}}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .spotlight__quote{-ms-flex-preferred-size:100%;-webkit-box-ordinal-group:6;-ms-flex-order:5;flex-basis:100%;font-size:1.25em;font-weight:900;letter-spacing:-.01em;margin-top:1em;order:5}.spotlights-block-4 .soe-spotlight--cards footer{-ms-flex-preferred-size:100%;flex-basis:100%;font-size:1.5em;margin:auto auto 1em;text-align:center}.view.magazine-issues h3{font-size:2.44141em;letter-spacing:-.016em;margin:auto;text-align:center}@media (max-width:767px){.view.magazine-issues h3{font-size:2.0752em}}@media only screen and (min-width:0){.view.magazine-issues h3{margin-top:2.31rem}}@media only screen and (min-width:768px){.view.magazine-issues h3{margin-top:2.6rem}}@media only screen and (min-width:1500px){.view.magazine-issues h3{margin-top:2.74rem}}@media only screen and (min-width:0){.view.magazine-issues h3{margin-bottom:2.31rem}}@media only screen and (min-width:768px){.view.magazine-issues h3{margin-bottom:2.6rem}}@media only screen and (min-width:1500px){.view.magazine-issues h3{margin-bottom:2.74rem}}.view.magazine-issues h3 a{color:#2e2d29}.view.magazine-issues h3:hover{text-decoration:underline}.view.magazine-issues header h1{color:#606060;font-size:1.3em;text-align:center}.soe-article-collection__term-content{background:#efefef;padding:1em;width:100%}.soe-article-collection__term-content .article-collection.su-collect-subtitle h2{margin:1em auto 2em;max-width:50ch;text-align:center}.soe-article-collection__term-content .article-collection.description p{margin:auto;max-width:100ch;text-align:center}.view.magazine-article-collection.block-5 .card-grid__row .card-grid__column{-webkit-box-flex:1;-ms-flex:1 1 25%;flex:1 1 25%;margin-left:auto;margin-right:auto}.soe-quote,.spotlight__quote,.su-drop-cap,.su-drop-cap:first-letter,.su-hero .su-hero__card .su-card__contents h1,.su-hero .su-hero__card .su-card__contents h2,.su-hero .su-hero__card .su-card__contents h3,.su-hero .su-hero__card .su-card__contents h4,.su-hero .su-hero__card .su-card__contents h5,.su-intro-text,.su-people-spotlight-quote,.su-wysiwyg-text h1,.su-wysiwyg-text h2,.su-wysiwyg-text h3,.su-wysiwyg-text h4,.su-wysiwyg-text h5,h1,h2,h3,h4,h5{font-family:Roboto Slab,serif}a.su-link--external{font-weight:600}.card-grid__row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.card-grid__row .card-grid__column{margin-left:auto;margin-right:auto;max-width:1192px;padding-bottom:2em}.card-grid__row .card-grid__column .su-card .views-field-title a{color:#000}.card-grid__row .card-grid__column .su-card .views-field-title a:hover{text-decoration-color:#000}.card-grid__row .card-grid__column .su-card .views-field-su-news-publishing-date{color:#606060;font-size:1em;font-weight:100;margin-bottom:10px}.card-grid__row .card-grid__column .su-card .views-field-su-soe-mag-topics{margin-top:1em}.card-grid__row .card-grid__column .su-card .views-field-su-soe-mag-topics a{color:#8c1515;font-weight:400;text-decoration:none}.card-grid__row .card-grid__column .su-card .views-field-su-soe-mag-topics a:hover{color:#333;text-decoration:underline}.card-grid__row .card-grid__column .su-card .views-field-su-magazine-issue{background-color:#8c1515;color:#fff;display:block;margin-top:2em;padding:.5em;text-align:center;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.card-grid__row .card-grid__column .su-card .views-field-su-magazine-issue a{color:#333;text-decoration:none}.card-grid__row .card-grid__column .su-card .views-field-su-magazine-issue a:hover{text-decoration:underline}.card-grid__row .card-grid__column:first-child{-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row .card-grid__column:nth-child(2){-webkit-box-flex:2;-ms-flex:2;flex:2}.card-grid__row .card-grid__column:nth-child(3){-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row:nth-of-type(2n) .card-grid__column:first-child{-webkit-box-flex:2;-ms-flex:2;flex:2}.card-grid__row:nth-of-type(2n) .card-grid__column:nth-child(2),.card-grid__row:nth-of-type(2n) .card-grid__column:nth-child(3),.card-grid__row:nth-of-type(3n) .card-grid__column:first-child,.card-grid__row:nth-of-type(3n) .card-grid__column:nth-child(2){-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row:nth-of-type(3n) .card-grid__column:nth-child(3){-webkit-box-flex:2;-ms-flex:2;flex:2}.stanford-people-grid .flex-container{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-top:1em}.engineering-accent-color__border-accent__teal{border-color:#00ece9}.engineering-accent-color__border-accent__orange{border-color:#ff525c}.engineering-accent-color__border-accent__yellow{border-color:#ffbd54}.engineering-accent-color__link-accent__teal{text-decoration:underline;text-decoration-color:#00ece9}.engineering-accent-color__link-accent__teal:hover{text-decoration-color:#000}.engineering-accent-color__link-accent__orange{text-decoration:underline;text-decoration-color:#ff525c}.engineering-accent-color__link-accent__orange:hover{text-decoration-color:#000}.engineering-accent-color__link-accent__yellow{text-decoration:underline;text-decoration-color:#ffbd54}.engineering-accent-color__link-accent__yellow:hover{text-decoration-color:#000}.engineering-accent-color__background-accent__teal{background-color:#00ece9}.engineering-accent-color__background-accent__orange{background-color:#ff525c}.engineering-accent-color__background-accent__yellow{background-color:#ffbd54}.su-local-footer a.su-button{color:#fff}.su-local-footer a.su-button :hover{color:#aaa}.section-media-mentions .su-news-article{padding-bottom:1em}.stanford-news.su-soe-department.entity-reference div{font-size:25px;padding:.25em} \ No newline at end of file +@import url(https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@400&700&300&100&display=swap);.soe-spotlight--cards img{border-radius:50%;border-style:solid;border-width:5px;display:block;margin:auto}.soe-spotlight--cards .su-link--action{color:#006cb8}.soe-spotlight--cards .su-link--action:after{background-color:#006cb8}.soe-spotlight--cards .views-row{display:-webkit-box;display:-ms-flexbox;display:flex}@media (min-width:1200px){.soe-spotlight--cards .views-row{margin-bottom:3.2rem}}@media only screen and (min-width:1200px) and (min-width:768px){.soe-spotlight--cards .views-row{margin-bottom:4.5rem}}@media only screen and (min-width:1200px) and (min-width:1500px){.soe-spotlight--cards .views-row{margin-bottom:4.8rem}}@media (max-width:767px){.soe-spotlight--cards .views-row.flex-container{display:block}.soe-spotlight--cards .views-row.flex-container>div{max-width:100%}}.soe-spotlight--cards .views-row .su-card{margin:1.5rem;padding:3rem}@media only screen and (min-width:768px){.soe-spotlight--cards .views-row .su-card{margin:1.8rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards .views-row .su-card{margin:1.9rem}}@media only screen and (min-width:768px){.soe-spotlight--cards .views-row .su-card{padding:3.6rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards .views-row .su-card{padding:3.8rem}}@media (max-width:767px){.soe-spotlight--cards .views-row .su-card{margin-bottom:3.2rem}}@media only screen and (max-width:767px) and (min-width:768px){.soe-spotlight--cards .views-row .su-card{margin-bottom:4.5rem}}@media only screen and (max-width:767px) and (min-width:1500px){.soe-spotlight--cards .views-row .su-card{margin-bottom:4.8rem}}.soe-spotlight--cards .views-row .su-card .image{-webkit-box-flex:1;display:block;-ms-flex:1;flex:1;width:100%}.soe-spotlight--cards .views-row .su-card .su-card__contents{-webkit-box-flex:3;-ms-flex:3;flex:3}.soe-spotlight--cards .views-row .su-card .su-card__contents span{margin-bottom:30px}.soe-spotlight--cards .views-view-grid .su-card__contents{padding-bottom:0;padding-left:0;padding-right:0}.soe-spotlight--cards .su-card__contents .su-card__superhead{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.soe-spotlight--cards .su-card__contents .su-card__superhead time{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.soe-spotlight--cards .su-card__contents h2{-webkit-box-ordinal-group:3;-ms-flex-order:2;font-size:1.25em;font-weight:900;letter-spacing:-.01em;margin-bottom:1.1rem;order:2}@media only screen and (min-width:768px){.soe-spotlight--cards .su-card__contents h2{margin-bottom:1.2rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards .su-card__contents h2{margin-bottom:1.3rem}}.soe-spotlight--cards .su-card__contents .soe--person-title{-webkit-box-ordinal-group:4;-ms-flex-order:3;font-size:1em;font-weight:400;order:3}.soe-spotlight--cards .su-card__contents .soe-quote{font-size:1.25em;font-weight:700;letter-spacing:-.01em;margin-top:1.5rem}@media only screen and (min-width:768px){.soe-spotlight--cards .su-card__contents .soe-quote{margin-top:1.8rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards .su-card__contents .soe-quote{margin-top:1.9rem}}.soe-spotlight--cards .su-card__contents .su-link{font-size:1.6rem;font-weight:600;padding-top:2rem;position:relative}@media only screen and (min-width:768px){.soe-spotlight--cards .su-card__contents .su-link{padding-top:2.6rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards .su-card__contents .su-link{padding-top:2.7rem}}@media (min-width:992px){.soe-spotlight--cards .su-card__contents .su-link{font-size:1.9rem}}.soe-spotlight--cards .su-card__contents .su-link:after{bottom:15%;position:absolute}.soe-spotlight--cards--banner.spotlights .views-row{margin-bottom:0}@media (max-width:1199px){.soe-spotlight--cards--banner.spotlights .views-row .su-card{display:block}.soe-spotlight--cards--banner.spotlights .views-row .su-card img{max-width:300px}}.soe-spotlight--cards--banner.spotlights .views-row h2{font-size:1.5625em;font-weight:900;letter-spacing:-.012em;margin-bottom:.5rem}.soe-spotlight--cards--banner.spotlights .views-row .soe--person-title{font-size:1.5625em;font-weight:400;letter-spacing:-.012em}.soe-spotlight--cards--banner.spotlights .views-row .spotlight__quote{font-size:1.95312em;font-weight:900;letter-spacing:-.016em;margin-top:2rem}@media (max-width:767px){.soe-spotlight--cards--banner.spotlights .views-row .spotlight__quote{font-size:1.66016em}}@media only screen and (min-width:768px){.soe-spotlight--cards--banner.spotlights .views-row .spotlight__quote{margin-top:2.6rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards--banner.spotlights .views-row .spotlight__quote{margin-top:2.7rem}}.soe-spotlight--cards--banner.spotlights .su-card__contents .su-link{font-size:1.25em;font-weight:600;letter-spacing:-.01em;margin-top:0;padding-top:3rem}@media only screen and (min-width:768px){.soe-spotlight--cards--banner.spotlights .su-card__contents .su-link{padding-top:3.6rem}}@media only screen and (min-width:1500px){.soe-spotlight--cards--banner.spotlights .su-card__contents .su-link{padding-top:3.8rem}}@media (min-width:1200px){.viewfield-block__cardgrid .soe-spotlight--cards .views-row{margin-bottom:2rem}}@media only screen and (min-width:1200px) and (min-width:768px){.viewfield-block__cardgrid .soe-spotlight--cards .views-row{margin-bottom:2.6rem}}@media only screen and (min-width:1200px) and (min-width:1500px){.viewfield-block__cardgrid .soe-spotlight--cards .views-row{margin-bottom:2.7rem}}.ds-entity--spotlight .su-card .engineering-accent-color__image{margin-top:2rem}@media only screen and (min-width:768px){.ds-entity--spotlight .su-card .engineering-accent-color__image{margin-top:2.6rem}}@media only screen and (min-width:1500px){.ds-entity--spotlight .su-card .engineering-accent-color__image{margin-top:2.7rem}}.ds-entity--spotlight .su-card img{border-radius:50%;border-style:solid;border-width:5px;display:block;margin:auto}.ds-entity--spotlight .su-card h2{font-size:1.25em;font-weight:900;letter-spacing:-.01em;margin-bottom:1.1rem}@media only screen and (min-width:768px){.ds-entity--spotlight .su-card h2{margin-bottom:1.2rem}}@media only screen and (min-width:1500px){.ds-entity--spotlight .su-card h2{margin-bottom:1.3rem}}.ds-entity--spotlight .su-card .soe--person-title{font-size:1.25em;font-weight:400;letter-spacing:-.01em}.ds-entity--spotlight .su-card .soe-quote{font-size:1.5625em;font-size:1em;font-weight:700;letter-spacing:-.012em}.ds-entity--spotlight .su-card .node-link{margin-top:3.4rem}@media only screen and (min-width:768px){.ds-entity--spotlight .su-card .node-link{margin-top:5.8rem}}@media only screen and (min-width:1500px){.ds-entity--spotlight .su-card .node-link{margin-top:6.1rem}}.ds-entity--spotlight .su-card .su-link{color:#006cb8;font-size:1.25em;font-weight:600;letter-spacing:-.01em}.ds-entity--spotlight .su-card .su-link :hover{text-decoration:underline}.soe-spotlight--cards--banner .views-row .su-card{border:none;-webkit-box-shadow:none;box-shadow:none;display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.soe-spotlight--cards--banner .views-row .su-card .image{display:block;width:100%}.page-media-coverage .su-news-article .su-news-list__headline-dek h3,.page-media-mentions .su-news-article .su-news-list__headline-dek h3{color:#000;text-decoration:underline;text-decoration-color:#00ece9}.page-media-coverage .su-news-article .su-news-list__headline-dek h3:hover,.page-media-mentions .su-news-article .su-news-list__headline-dek h3:hover{text-decoration-color:#000}.page-media-coverage .su-news-article .su-news-list__topics,.page-media-mentions .su-news-article .su-news-list__topics{display:none}.ds-entity--node.ds-entity--stanford-news .su-card.su-news-vertical-teaser .su-news-header .su-card__link.su-link--action,.ds-entity--node.ds-entity--stanford-news .su-card.su-news-vertical-teaser .su-news-header .su-link.su-card__link.su-link--external{border-bottom:0;text-decoration:underline;text-decoration-color:#00ece9}.ds-entity--node.ds-entity--stanford-news .su-card.su-news-vertical-teaser .su-news-header .su-card__link.su-link--action:hover,.ds-entity--node.ds-entity--stanford-news .su-card.su-news-vertical-teaser .su-news-header .su-link.su-card__link.su-link--external:hover{text-decoration-color:#2e2d29}.su-card.su-news-vertical-teaser a .su-news-header{margin-bottom:1.5rem}@media only screen and (min-width:768px){.su-card.su-news-vertical-teaser a .su-news-header{margin-bottom:1.8rem}}@media only screen and (min-width:1500px){.su-card.su-news-vertical-teaser a .su-news-header{margin-bottom:1.9rem}}.news-card__external-source-text{background-color:#2e2d29;color:#fff;font-size:16px;margin-top:3rem;max-width:-webkit-fit-content;max-width:-moz-fit-content;max-width:fit-content;padding:6px 13px 7px}@media only screen and (min-width:768px){.news-card__external-source-text{margin-top:3.6rem}}@media only screen and (min-width:1500px){.news-card__external-source-text{margin-top:3.8rem}}@media (max-width:767px){.news-card__external-source-text{font-size:15px}}.section-magazine-views-views .su-card .su-card__contents>:last-child:not(.su-card__button){padding-bottom:7px}.soe-link__button .button,.soe-link__button .js-pager__items .pager__item .button,.soe-link__button .js-pager__items .soe-link__button.pager__item .button{background-color:#00ece9;color:#2e2d29;display:block;text-align:center;width:100%}.more-link.soe-link__button{display:inline-block}.more-link.soe-link__button,.soe-spotlight--cards .js-pager__items.pager{margin-bottom:13.3rem}.soe-more-stories-link__button .button{text-align:center}input#edit-submit-spotlights{display:none}input#edit-submit-spotlights.show-spotlight-apply__button{display:block}#views-exposed-form-spotlights-block-1{-webkit-box-pack:end;-ms-flex-pack:end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:18px;justify-content:flex-end;margin-bottom:2rem;margin-left:1.5rem;margin-right:3.2rem;padding-top:2rem}@media only screen and (min-width:768px){#views-exposed-form-spotlights-block-1{padding-top:2.6rem}}@media only screen and (min-width:1500px){#views-exposed-form-spotlights-block-1{padding-top:2.7rem}}@media only screen and (min-width:768px){#views-exposed-form-spotlights-block-1{margin-bottom:2.6rem;margin-left:1.8rem;margin-right:4.5rem}}@media only screen and (min-width:1500px){#views-exposed-form-spotlights-block-1{margin-bottom:2.7rem;margin-left:1.9rem;margin-right:4.8rem}}@media (max-width:1199px){#views-exposed-form-spotlights-block-1{margin-bottom:3.2rem}}@media only screen and (max-width:1199px) and (min-width:768px){#views-exposed-form-spotlights-block-1{margin-bottom:4.5rem}}@media only screen and (max-width:1199px) and (min-width:1500px){#views-exposed-form-spotlights-block-1{margin-bottom:4.8rem}}@media (max-width:1199px){#views-exposed-form-spotlights-block-1>div{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%}}#views-exposed-form-spotlights-block-1 .form-item-tid,#views-exposed-form-spotlights-block-1 .form-item-tid-1{max-width:280px;width:280px}@media (max-width:1199px){#views-exposed-form-spotlights-block-1 .form-item-tid,#views-exposed-form-spotlights-block-1 .form-item-tid-1{margin:0;max-width:100%;width:100%}}#views-exposed-form-spotlights-block-1 input,#views-exposed-form-spotlights-block-1 select,#views-exposed-form-spotlights-block-1 textarea{font-family:Source Sans\ 3,Source Sans Pro,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:21px;font-weight:400;height:unset;line-height:32px;max-width:70rem}#views-exposed-form-spotlights-block-1 select{border-color:#d5d5d4}#views-exposed-form-spotlights-block-1 .form-actions{margin:0}#views-exposed-form-spotlights-block-1 .form-actions .show-spotlight-apply__button{display:inline-block;margin:0 auto;max-width:135px;width:135px}.spotlight-banner{-webkit-box-pack:start;-ms-flex-pack:start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:18px;justify-content:flex-start;margin-bottom:3.8rem;margin-top:4.5rem}@media only screen and (min-width:768px){.spotlight-banner{margin-bottom:7.2rem;margin-top:9rem}}@media only screen and (min-width:1500px){.spotlight-banner{margin-bottom:7.6rem;margin-top:9.5rem}}.spotlight-banner .su-spotlight-feature-image{max-width:360px}@media only screen and (min-width:768px){.spotlight-banner .su-spotlight-feature-image{max-width:100%}}.spotlight-banner .su-spotlight-feature-image img{border-radius:50%;border-style:solid;border-width:5px;display:block;margin-right:0}.spotlight-banner__text{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-bottom:3.4rem;margin-top:3.4rem}@media only screen and (min-width:768px){.spotlight-banner__text{margin-bottom:5.8rem;margin-top:5.8rem}}@media only screen and (min-width:1500px){.spotlight-banner__text{margin-bottom:6.1rem;margin-top:6.1rem}}.spotlight-banner__text .node-spotlight-type{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.spotlight-banner__text .node-spotlight-title{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.spotlight-banner__text .node-spotlight-su-spotlight-person-title{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.spotlight-banner__text .node-spotlight-su-soe-department{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.spotlight-banner__text .spotlight{font-size:1.5625em;font-weight:900;letter-spacing:-.012em;margin-bottom:2rem}@media only screen and (min-width:768px){.spotlight-banner__text .spotlight{margin-bottom:2.6rem}}@media only screen and (min-width:1500px){.spotlight-banner__text .spotlight{margin-bottom:2.7rem}}.spotlight-banner__text .spotlight.su-soe-department,.spotlight-banner__text .spotlight.su-spotlight-degrees{color:#43423e;font-size:1.5625em;font-weight:400;letter-spacing:-.012em;max-width:40ch}.spotlight-banner__text .spotlight h1{font-size:1.95312em;font-weight:900;letter-spacing:-.016em;margin-bottom:0}@media (max-width:767px){.spotlight-banner__text .spotlight h1{font-size:1.66016em}}.spotlight-banner__text .su-spotlight-person-title{margin-bottom:0}.node-spotlight-created{max-width:100%}.node.spotlight.su-people-spotlight-quote{font-family:Source Sans\ 3,Source Sans Pro,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:400;line-height:normal}@media only screen and (min-width:768px){.node.spotlight.su-people-spotlight-quote{font-size:2.1rem;line-height:1.7}}.spotlight.spotlight-header__date{font-style:italic;font-weight:400;margin-bottom:1.5rem;text-align:right;width:100%}@media only screen and (min-width:768px){.spotlight.spotlight-header__date{font-size:2.1rem;line-height:1.7;margin-bottom:1.8rem}}@media only screen and (min-width:1500px){.spotlight.spotlight-header__date{margin-bottom:1.9rem}}.soe-departments__term-list{list-style-type:none}.soe-departments__term-list li{display:inline}.soe-departments__term-list li:after{content:", "}.soe-departments__term-list li:last-of-type:after{content:""}.su-people-spotlight-quote{font-size:1.5625em;letter-spacing:-.012em;margin-bottom:3.2rem}@media only screen and (min-width:768px){.su-people-spotlight-quote{margin-bottom:4.5rem}}@media only screen and (min-width:1500px){.su-people-spotlight-quote{margin-bottom:4.8rem}}@media only screen and (min-width:0){.su-hero{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;justify-content:center;min-height:208px}}@media only screen and (min-width:576px){.su-hero{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;justify-content:center;min-height:208px}}@media only screen and (min-width:768px){.su-hero{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;justify-content:center;min-height:320px}}@media only screen and (min-width:992px){.su-hero{min-height:409px}}@media only screen and (min-width:1200px){.su-hero{min-height:520px}}.su-hero .su-hero__card{max-width:120rem;width:100%}.su-hero .su-hero__card .su-card__superhead{margin:0 auto;max-width:340px}.su-hero .su-hero__card p{margin:0 auto;max-width:750px}@media only screen and (min-width:0){.su-hero .su-hero__card{margin-bottom:20px;margin-top:20px}}@media only screen and (min-width:576px){.su-hero .su-hero__card{margin-bottom:20px;margin-top:20px}}@media only screen and (min-width:768px){.su-hero .su-hero__card{margin-bottom:45px;margin-top:45px}}@media only screen and (min-width:1200px){.su-hero .su-hero__card{bottom:48px;margin-bottom:0;margin-top:96px;top:auto}}.su-hero__media picture:after{content:"";display:inline-block;height:100%;left:0;position:absolute;top:0;width:100%}@media only screen and (min-width:0){.su-hero__media{min-height:208px;position:absolute}}@media only screen and (min-width:576px){.su-hero__media{min-height:208px;position:absolute}}@media only screen and (min-width:768px){.su-hero__media{min-height:320px;position:absolute}}@media only screen and (min-width:992px){.su-hero__media{min-height:409px;position:absolute}}@media only screen and (min-width:1200px){.su-hero__media{min-height:520px;position:absolute}}@media only screen and (min-width:768px){.su-lockup--option-a .su-lockup__line1{line-height:1.15em;margin-bottom:-6px;margin-top:-8px}}.su-lockup__custom-logo{max-width:150px}.su-lockup--option-none .su-lockup__cell1{border-right:0}.su-lockup--option-none .su-lockup__custom-logo{max-width:300px}@media (max-width:991px){.su-lockup--option-none .su-lockup__custom-logo{max-width:220px}}@media (max-width:767px){.su-lockup--option-none .su-lockup__custom-logo{max-width:80%;width:180px}}.su-lockup--option-s .su-lockup__line4:after,.su-lockup--option-t .su-lockup__line4:after{width:auto}.su-lockup__cell2{max-width:475px}.su-lockup__cell1 .su-lockup__line4{overflow-wrap:break-word;word-break:break-all}.su-lockup--option-d .su-lockup__line3,.su-lockup--option-e .su-lockup__line3,.su-lockup--option-h .su-lockup__line3,.su-lockup--option-i .su-lockup__line3,.su-lockup--option-q .su-lockup__line3,.su-lockup--option-t .su-lockup__line3{line-height:1.5}.bare-header{margin-top:95px}.node_view ul.pre_links li a[href$="printable/print"]{display:none}.su-news-list .su-news-article .su-news-list__topics a{color:#b1040e;text-decoration:underline}.su-wysiwyg-text .su-link,.su-wysiwyg-text a:not([class*=su-button]),.su-wysiwyg-text su-link--action,.su-wysiwyg-text su-link--external{color:#b1040e}.su-wysiwyg-text .su-link:after,.su-wysiwyg-text a:not([class*=su-button]):after,.su-wysiwyg-text su-link--action:after,.su-wysiwyg-text su-link--external:after{background-color:#b1040e}.su-wysiwyg-text .su-link:focus,.su-wysiwyg-text .su-link:hover,.su-wysiwyg-text a:not([class*=su-button]):focus,.su-wysiwyg-text a:not([class*=su-button]):hover,.su-wysiwyg-text su-link--action:focus,.su-wysiwyg-text su-link--action:hover,.su-wysiwyg-text su-link--external:focus,.su-wysiwyg-text su-link--external:hover{color:#2e2d29;text-decoration:underline}.su-wysiwyg-text .su-link:focus:after,.su-wysiwyg-text .su-link:hover:after,.su-wysiwyg-text a:not([class*=su-button]):focus:after,.su-wysiwyg-text a:not([class*=su-button]):hover:after,.su-wysiwyg-text su-link--action:focus:after,.su-wysiwyg-text su-link--action:hover:after,.su-wysiwyg-text su-link--external:focus:after,.su-wysiwyg-text su-link--external:hover:after{background-color:#2e2d29}.page-spotlight .jumpstart-ui--one-column.centered-container{max-width:1500px;width:100%}.spotlight-main-content .main-region{margin-bottom:83px}.spotlights-block-1 .form-item-tid label,.spotlights-block-1 .form-item-tid-1 label{clip:rect(1px,1px,1px,1px);border:0;-webkit-clip-path:inset(100%);clip-path:inset(100%);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.soe-spotlight--cards.block-1 .su-card__contents time,.soe-spotlight--cards.block-2 .su-card__contents time{color:#2e2d29;font-family:Source Sans\ 3,Source Sans Pro,Helvetica Neue,Helvetica,Arial,"sans-serif";font-size:1em;font-weight:400;line-height:26.6px}.su-people-spotlight-quote{font-size:30px;font-weight:900;line-height:48px}.spotlights-block-3 h2.block__title{text-align:center}.soe-mag-landing__heading_1,.soe-mag-landing__heading_2{margin:auto;text-align:center}.soe-mag-landing__heading_2{font-family:Source Sans Pro,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:400;max-width:30ch}.card-grid__row{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media (min-width:576px){.card-grid__row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.card-grid__row .card-grid__column:first-child{-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row .card-grid__column:nth-child(2){-webkit-box-flex:2;-ms-flex:2;flex:2}.card-grid__row .card-grid__column:nth-child(3){-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row:nth-of-type(2n) .card-grid__column:first-child{-webkit-box-flex:2;-ms-flex:2;flex:2}.card-grid__row:nth-of-type(2n) .card-grid__column:nth-child(2),.card-grid__row:nth-of-type(2n) .card-grid__column:nth-child(3),.card-grid__row:nth-of-type(3n) .card-grid__column:first-child,.card-grid__row:nth-of-type(3n) .card-grid__column:nth-child(2){-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row:nth-of-type(3n) .card-grid__column:nth-child(3){-webkit-box-flex:2;-ms-flex:2;flex:2}}.card-grid__row .card-grid__column{-webkit-box-align:start;-ms-flex-align:start;-webkit-box-pack:center;-ms-flex-pack:center;align-items:flex-start;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center}.card-grid__row .card-grid__column .su-card{margin:1em;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.card-grid__row .card-grid__column .su-card h2 a{color:#2e2d29;font-size:1em;margin-bottom:1.5rem}@media only screen and (min-width:768px){.card-grid__row .card-grid__column .su-card h2 a{margin-bottom:1.8rem}}@media only screen and (min-width:1500px){.card-grid__row .card-grid__column .su-card h2 a{margin-bottom:1.9rem}}.card-grid__row .card-grid__column .su-card h2 a:hover{text-decoration:underline;text-decoration-color:#333}.card-grid__row .card-grid__column .su-card .soe-mag-card__date-published{-webkit-box-ordinal-group:2;-ms-flex-order:1;color:#585754;font-size:1em;font-weight:400;margin-bottom:10px;order:1}.card-grid__row .card-grid__column .su-card .soe-mag-card__title{font-size:1em}.card-grid__row .card-grid__column .su-card .soe-mag-card__title a{color:#2e2d29}.card-grid__row .card-grid__column .su-card .soe-mag-card__title a:hover{text-decoration:underline;text-decoration-color:#000}.card-grid__row .card-grid__column .su-card .soe-mag-card__topics{margin-top:0}.card-grid__row .card-grid__column .su-card .soe-mag-card__topics a{color:#b1040e;font-size:18px;font-weight:400;text-decoration:underline}.card-grid__row .card-grid__column .su-card .soe-mag-card__topics a:hover{color:#2e2d29;text-decoration-color:#2e2d29}.card-grid__row .card-grid__column .su-card .soe-mag-card__issue{color:#fff;display:block;margin-top:30px;padding:.5em;text-align:center;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.card-grid__row .card-grid__column .su-card .soe-mag-card__issue a{color:#000;text-decoration:none}.card-grid__row .card-grid__column .su-card .soe-mag-card__issue a:hover{text-decoration:underline;text-decoration-color:#333}.soe-load-more{margin:3.8rem}@media only screen and (min-width:768px){.soe-load-more{margin:7.2rem}}@media only screen and (min-width:1500px){.soe-load-more{margin:7.6rem}}.view.magazine .views-infinite-scroll-content-wrapper>h3,.view.magazine header h1{text-align:center}.article-collection__link{margin-left:auto;margin-right:auto}.su-mag--mag_topics{margin-bottom:30px}.su-mag--mag_topics a{color:#b1040e;font-size:18px;font-weight:700;text-decoration:none}.su-mag--mag_topics a:hover{text-decoration:underline;text-decoration-color:#000}.stanford-news.su-soe-department a{color:#b1040e;text-decoration:none}.stanford-news.su-soe-department a:hover{text-decoration:underline}.spotlights-block-4 .soe-spotlight--cards{-webkit-box-pack:justify;-ms-flex-pack:justify;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:2em;justify-content:space-between}.spotlights-block-4 .soe-spotlight--cards .views-row{-webkit-box-flex:1;border:1px solid #e3e3e3;-webkit-box-shadow:0 3px 6px rgba(0,0,0,.13),0 3px 6px rgba(0,0,0,.1);box-shadow:0 3px 6px rgba(0,0,0,.13),0 3px 6px rgba(0,0,0,.1);-ms-flex:1 0 45%;flex:1 0 45%;margin-left:1em;margin-right:1em}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card{padding:.5em}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-box-pack:left;-ms-flex-pack:left;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;justify-content:left;padding:0}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .soe-mag-card__date-published{-webkit-box-ordinal-group:2;-ms-flex-order:1;color:#585754;font-size:1em;font-weight:400;margin-bottom:10px;order:1}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{height:125px;margin:.5em auto;width:125px}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .su-spotlight--superhead{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-size:.9em;margin-right:nul;margin-top:1em}@media only screen and (min-width:0) and (max-width:575px){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .su-spotlight--superhead{margin-top:1.5em}}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .views-field:has(.soe-spotlight-mag-card__title){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .soe-spotlight-mag-card__title{font-size:1.5625em;margin-bottom:0!important}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .soe-spotlight-mag-card__title a{color:#2e2d29}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .soe-spotlight-mag-card__title a:hover{text-decoration:underline;text-decoration-color:#333}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .field-content.soe--person-title{-webkit-box-ordinal-group:4;-ms-flex-order:3;font-size:1.1em;margin-top:.5em;order:3}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .field-content.soe--person-department{-webkit-box-ordinal-group:5;-ms-flex-order:4;font-size:1.1em;order:4}@media only screen and (min-width:0){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;-ms-flex-direction:column;flex-direction:column;justify-content:center}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{height:225px;margin-left:auto;margin-right:auto;width:225px}}@media only screen and (min-width:768px){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-box-pack:left;-ms-flex-pack:left;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;justify-content:left}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{-webkit-box-flex:0;-ms-flex-positive:0;display:block;flex-grow:0;float:left;height:125px;margin-right:3rem;width:125px}}@media only screen and (min-width:768px) and (min-width:768px){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{margin-right:3.6rem}}@media only screen and (min-width:768px) and (min-width:1500px){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{margin-right:3.8rem}}@media only screen and (min-width:992px){.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .image{height:200px;width:200px}}.spotlights-block-4 .soe-spotlight--cards .views-row .su-card .su-card__contents .spotlight__quote{-ms-flex-preferred-size:100%;-webkit-box-ordinal-group:6;-ms-flex-order:5;flex-basis:100%;font-size:1.25em;font-weight:900;letter-spacing:-.01em;margin-top:1em;order:5}.spotlights-block-4 .soe-spotlight--cards footer{-ms-flex-preferred-size:100%;flex-basis:100%;font-size:1.5em;margin:auto auto 1em;text-align:center}.view.magazine-issues h3{font-size:2.44141em;letter-spacing:-.016em;margin:auto;text-align:center}@media (max-width:767px){.view.magazine-issues h3{font-size:2.0752em}}@media only screen and (min-width:0){.view.magazine-issues h3{margin-top:2.31rem}}@media only screen and (min-width:768px){.view.magazine-issues h3{margin-top:2.6rem}}@media only screen and (min-width:1500px){.view.magazine-issues h3{margin-top:2.74rem}}@media only screen and (min-width:0){.view.magazine-issues h3{margin-bottom:2.31rem}}@media only screen and (min-width:768px){.view.magazine-issues h3{margin-bottom:2.6rem}}@media only screen and (min-width:1500px){.view.magazine-issues h3{margin-bottom:2.74rem}}.view.magazine-issues h3 a{color:#2e2d29}.view.magazine-issues h3:hover{text-decoration:underline}.view.magazine-issues header h1{color:#606060;font-size:1.3em;text-align:center}.soe-article-collection__term-content{background:#efefef;padding:1em;width:100%}.soe-article-collection__term-content .article-collection.su-collect-subtitle h2{margin:1em auto 2em;max-width:50ch;text-align:center}.soe-article-collection__term-content .article-collection.description p{margin:auto;max-width:100ch;text-align:center}.view.magazine-article-collection.block-5 .card-grid__row .card-grid__column{-webkit-box-flex:1;-ms-flex:1 1 25%;flex:1 1 25%;margin-left:auto;margin-right:auto}.soe-quote,.spotlight__quote,.su-drop-cap,.su-drop-cap:first-letter,.su-hero .su-hero__card .su-card__contents h1,.su-hero .su-hero__card .su-card__contents h2,.su-hero .su-hero__card .su-card__contents h3,.su-hero .su-hero__card .su-card__contents h4,.su-hero .su-hero__card .su-card__contents h5,.su-intro-text,.su-people-spotlight-quote,.su-wysiwyg-text h1,.su-wysiwyg-text h2,.su-wysiwyg-text h3,.su-wysiwyg-text h4,.su-wysiwyg-text h5,h1,h2,h3,h4,h5{font-family:Roboto Slab,serif}a.su-link--external{font-weight:600}.card-grid__row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.card-grid__row .card-grid__column{margin-left:auto;margin-right:auto;max-width:1192px;padding-bottom:2em}.card-grid__row .card-grid__column .su-card .views-field-title a{color:#000}.card-grid__row .card-grid__column .su-card .views-field-title a:hover{text-decoration-color:#000}.card-grid__row .card-grid__column .su-card .views-field-su-news-publishing-date{color:#606060;font-size:1em;font-weight:100;margin-bottom:10px}.card-grid__row .card-grid__column .su-card .views-field-su-soe-mag-topics{margin-top:1em}.card-grid__row .card-grid__column .su-card .views-field-su-soe-mag-topics a{color:#8c1515;font-weight:400;text-decoration:none}.card-grid__row .card-grid__column .su-card .views-field-su-soe-mag-topics a:hover{color:#333;text-decoration:underline}.card-grid__row .card-grid__column .su-card .views-field-su-magazine-issue{background-color:#8c1515;color:#fff;display:block;margin-top:2em;padding:.5em;text-align:center;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.card-grid__row .card-grid__column .su-card .views-field-su-magazine-issue a{color:#333;text-decoration:none}.card-grid__row .card-grid__column .su-card .views-field-su-magazine-issue a:hover{text-decoration:underline}.card-grid__row .card-grid__column:first-child{-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row .card-grid__column:nth-child(2){-webkit-box-flex:2;-ms-flex:2;flex:2}.card-grid__row .card-grid__column:nth-child(3){-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row:nth-of-type(2n) .card-grid__column:first-child{-webkit-box-flex:2;-ms-flex:2;flex:2}.card-grid__row:nth-of-type(2n) .card-grid__column:nth-child(2),.card-grid__row:nth-of-type(2n) .card-grid__column:nth-child(3),.card-grid__row:nth-of-type(3n) .card-grid__column:first-child,.card-grid__row:nth-of-type(3n) .card-grid__column:nth-child(2){-webkit-box-flex:1;-ms-flex:1;flex:1}.card-grid__row:nth-of-type(3n) .card-grid__column:nth-child(3){-webkit-box-flex:2;-ms-flex:2;flex:2}.stanford-people-grid .flex-container{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-top:1em}.engineering-accent-color__border-accent__teal{border-color:#00ece9}.engineering-accent-color__border-accent__orange{border-color:#ff525c}.engineering-accent-color__border-accent__yellow{border-color:#ffbd54}.engineering-accent-color__link-accent__teal{text-decoration:underline;text-decoration-color:#00ece9}.engineering-accent-color__link-accent__teal:hover{text-decoration-color:#000}.engineering-accent-color__link-accent__orange{text-decoration:underline;text-decoration-color:#ff525c}.engineering-accent-color__link-accent__orange:hover{text-decoration-color:#000}.engineering-accent-color__link-accent__yellow{text-decoration:underline;text-decoration-color:#ffbd54}.engineering-accent-color__link-accent__yellow:hover{text-decoration-color:#000}.engineering-accent-color__background-accent__teal{background-color:#00ece9}.engineering-accent-color__background-accent__orange{background-color:#ff525c}.engineering-accent-color__background-accent__yellow{background-color:#ffbd54}.su-local-footer a.su-button{color:#fff}.su-local-footer a.su-button :hover{color:#aaa}.section-media-mentions .su-news-article{padding-bottom:1em}.stanford-news.su-soe-department.entity-reference div{font-size:25px;padding:.25em}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px} \ No newline at end of file diff --git a/themes/engineering/engineering.theme b/themes/engineering/engineering.theme index 7adfb3ebc..3f1ecc686 100644 --- a/themes/engineering/engineering.theme +++ b/themes/engineering/engineering.theme @@ -71,3 +71,23 @@ function engineer_preprocess_pattern_localfooter(&$variables){ } } + +/** + * Implements hook_preprocess_pattern_card(). + */ +function engineering_preprocess_pattern_card(&$variables) { + // Check if this is from a views pattern and get the created date. + // The created field value comes through in card_super_headline as a render array. + if (isset($variables['card_super_headline'])) { + $superhead = $variables['card_super_headline']; + + // Render the superhead to get the full text content. + $rendered = \Drupal::service('renderer')->renderPlain($superhead); + $text = strip_tags($rendered); + + // Use regex to extract a date pattern (Month DD, YYYY). + if (preg_match('/(\w+ \d{1,2}, \d{4})/', $text, $matches)) { + $variables['created'] = $matches[1]; + } + } +} diff --git a/themes/engineering/lib/scss/engineering.scss b/themes/engineering/lib/scss/engineering.scss index 0a333fa57..2049016d6 100644 --- a/themes/engineering/lib/scss/engineering.scss +++ b/themes/engineering/lib/scss/engineering.scss @@ -1,10 +1,7 @@ @charset "UTF-8"; -@import "./config", -"utilities/variables/index", -"components/index", -"base/index", -"page/index"; +@import "./config", "utilities/variables/index", "components/index", + "base/index", "page/index"; h1, h2, @@ -26,7 +23,7 @@ h5 { // Various Roboto applications .soe-quote, -.spotlight__quote , +.spotlight__quote, .su-people-spotlight-quote, .su-intro-text { font-family: $roboto-slab; @@ -60,16 +57,13 @@ a.su-link--external { display: flex; flex-wrap: wrap; - .card-grid__column { - padding-bottom: 2em; max-width: 1192px; // TODO: This needs to be replaced with a relative value margin-left: auto; margin-right: auto; .su-card { - .views-field-title { a { color: black; @@ -80,8 +74,8 @@ a.su-link--external { } } - .views-field-su-news-publishing-date{ - color:#606060; + .views-field-su-news-publishing-date { + color: #606060; font-size: 1em; font-weight: 100; margin-bottom: 10px; @@ -104,11 +98,11 @@ a.su-link--external { .views-field-su-magazine-issue { display: block; margin-top: 2em; - padding: .5em; + padding: 0.5em; text-align: center; width: fit-content; background-color: #8c1515; - color:white; + color: white; a { color: #333333; @@ -118,9 +112,7 @@ a.su-link--external { text-decoration: underline; } } - } - } } @@ -133,19 +125,17 @@ a.su-link--external { &:nth-of-type(3n) { @include magazine-grid-rows(3); } - } // Fix for stanford people grid .stanford-people-grid { - .flex-container { - justify-content: space-between; - margin-top: 1em; - } + .flex-container { + justify-content: space-between; + margin-top: 1em; + } } .engineering-accent-color { - &__border-accent { &__teal { border-color: #00ece9; @@ -193,7 +183,6 @@ a.su-link--external { background-color: #ffbd54; } } - } .su-local-footer a.su-button { @@ -212,6 +201,18 @@ a.su-link--external { .stanford-news.su-soe-department.entity-reference { div { font-size: 25px; - padding: .25em; + padding: 0.25em; } - } +} + +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border: 0; +} diff --git a/themes/engineering/templates/component/pattern-card--views-row--spotlights--block-1.html.twig b/themes/engineering/templates/component/pattern-card--views-row--spotlights--block-1.html.twig new file mode 100644 index 000000000..3c575aae7 --- /dev/null +++ b/themes/engineering/templates/component/pattern-card--views-row--spotlights--block-1.html.twig @@ -0,0 +1,121 @@ +{# +/** + * @file + * Card Component. Default is a vertical card with an image above text content. + * + * Available variants: + * - .su-card--horizontal: Media field and text content are side by side. + * - .su-card--link: Whole card is a link with no button or call to action link. + * - .su-card--minimal: No background, drop shadow and space around. Do not use with the .su-card--link class. + * - .su-card--icon: An image icon above text content. + * - .su-card--video: A video above text content. + * + * Available variables: + * - attributes: Additional HTML attributes not already provided. + * - modifier_class: Additional CSS classes to change look and behavior. + * - card_headline: Main headind text for the card. + * - card_allow_headline_link: Boolean. If set to true, headline links to card_link. + * - card_super_headline: Text super headline. Often used for metadata such as category. + * - card_body: An open variable for anything including HTML. Generally this would be for WYSIWYG editor contents. + * - card_link: The href value for the card. A single card is only allowed to link to one URL. + * - card_cta_attributes: Any html attributes on the link that need to be added. For example: rel='noopener', target='_blank'. + * This acts as the attributes for the link button and headline link as well. + * - card_cta_label: The clickable text for the CTA link + * - card_button_label: The text label of the button component. + * - card_icon_font_class: If using icon font, e.g., FontAwesome, the class(es) of the icon including modifier classes, + e.g. 'fas fa-globe fa-2x', 'far fa-thumbs-up fa-rotate-90' + * - card_media_image_src: The src link to the image file. + * - card_media_image_srcset: The srcset of the image if exists. + * - card_media_icon_image_src: The src link to the icon image file. + * - card_media_video_src: The src link to the video file. + * - card_media_video_poster: Optional preview image of the video. + * - card_media_fallback_content: Fallback content to display when browser doesn't support video or audio format. + * - card_allow_media_link: Boolean. If set to true, media element (image or self-hosted video) links to card_link. + * - card_media_type: Type of the media file, e.g. mp4, webm, quicktime (self-hosted video only). + * - card_media_custom: An open field for the full HTML element of the media content, e.g., an embedded YouTube iframe. + * - card_media_modifier_class: Additional CSS classes to change look and behavior of the media media element. + * - card_media_attributes: Additional HTML attributes for the media element not already provided. + * - card_media_wrapper_modifier_class: Additional CSS classes to change look and behavior of the media wrapper, e.g. "su-aspect-ratio" to provide aspect ratio constraint. + * - card_media_content_attributes: Additional HTML attributes for the media content, e.g., for