diff --git a/config/optional/views.view.workbench_recent_content.yml b/config/optional/views.view.workbench_recent_content.yml index 84f215e..920b0a8 100644 --- a/config/optional/views.view.workbench_recent_content.yml +++ b/config/optional/views.view.workbench_recent_content.yml @@ -40,7 +40,7 @@ display: type: basic options: submit_button: Apply - reset_button: false + reset_button: true reset_button_label: Reset exposed_sorts_label: 'Sort by' expose_sort_order: true @@ -80,11 +80,15 @@ display: description: '' columns: title: title + view_node: view_node type: type status: status name: name changed: changed + view_node_1: view_node_1 edit_node: edit_node + delete_node: delete_node + nothing: nothing info: title: sortable: true @@ -93,13 +97,20 @@ display: separator: '' empty_column: false responsive: '' + view_node: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' type: sortable: true default_sort_order: asc align: '' separator: '' empty_column: false - responsive: priority-low + responsive: priority-medium status: sortable: true default_sort_order: asc @@ -121,6 +132,13 @@ display: separator: '' empty_column: false responsive: priority-low + view_node_1: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' edit_node: sortable: false default_sort_order: asc @@ -128,6 +146,20 @@ display: separator: '' empty_column: false responsive: priority-medium + delete_node: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' + nothing: + sortable: false + default_sort_order: asc + align: '' + separator: '' + empty_column: false + responsive: '' default: changed empty_table: false row: @@ -143,7 +175,7 @@ display: group_type: group admin_label: '' label: Title - exclude: false + exclude: true alter: alter_text: false text: '' @@ -186,7 +218,7 @@ display: click_sort_column: value type: string settings: - link_to_entity: true + link_to_entity: false group_column: value group_columns: { } group_rows: true @@ -198,6 +230,57 @@ display: separator: ', ' field_api_classes: false plugin_id: field + view_node: + id: view_node + table: node + field: view_node + relationship: none + group_type: group + admin_label: '' + label: Title + exclude: false + alter: + alter_text: true + text: '{{ title }}' + 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: false + empty: '{{ title }}' + hide_empty: false + empty_zero: false + hide_alter_empty: true + text: view + entity_type: node + plugin_id: entity_link type: id: type table: node_field_data @@ -270,7 +353,7 @@ display: relationship: none group_type: group admin_label: '' - label: Published + label: Status exclude: false alter: alter_text: false @@ -314,9 +397,9 @@ display: click_sort_column: value type: boolean settings: - format: yes-no - format_custom_true: '' - format_custom_false: '' + format: custom + format_custom_true: Published + format_custom_false: Unpublished group_column: value group_columns: { } group_rows: true @@ -469,8 +552,8 @@ display: relationship: none group_type: group admin_label: '' - label: Actions - exclude: false + label: '' + exclude: true alter: alter_text: false text: '' @@ -502,7 +585,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 @@ -513,6 +596,106 @@ display: text: edit entity_type: node plugin_id: entity_link_edit + delete_node: + id: delete_node + table: node + field: delete_node + relationship: none + group_type: group + admin_label: '' + label: 'Link to delete Content' + 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: true + element_wrapper_type: '' + element_wrapper_class: '' + element_default_classes: true + empty: '' + hide_empty: false + empty_zero: false + hide_alter_empty: true + text: delete + entity_type: node + plugin_id: entity_link_delete + nothing: + id: nothing + table: views + field: nothing + relationship: none + group_type: group + admin_label: '' + label: Actions + exclude: false + alter: + alter_text: true + text: '{{ edit_node }} {{ delete_node }}' + 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: false + plugin_id: custom filters: title: id: title @@ -605,7 +788,7 @@ display: group_type: group admin_label: '' operator: '=' - value: true + value: All group: 1 exposed: true expose: @@ -622,59 +805,29 @@ display: authenticated: authenticated anonymous: '0' administrator: '0' - editor: '0' - is_grouped: false + is_grouped: true group_info: - label: '' + label: Status description: '' - identifier: '' + identifier: status optional: true widget: select multiple: false - remember: false + remember: true default_group: All default_group_multiple: { } - group_items: { } + group_items: + 1: + title: Published + operator: '=' + value: '1' + 2: + title: Unpublished + operator: '=' + value: '0' plugin_id: boolean entity_type: node entity_field: status - status_extra: - id: status_extra - table: node_field_data - field: status_extra - relationship: none - group_type: group - admin_label: '' - operator: '=' - value: false - group: 1 - exposed: false - expose: - operator_id: '' - label: '' - description: '' - use_operator: false - operator: '' - 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: { } - entity_type: node - plugin_id: node_status sorts: changed: id: changed @@ -731,6 +884,8 @@ display: operator: AND groups: 1: AND + link_url: '' + link_display: page_1 cache_metadata: max-age: 0 contexts: @@ -738,7 +893,6 @@ display: - 'languages:language_interface' - url - url.query_args - - user - 'user.node_grants:view' - user.permissions tags: { } @@ -753,7 +907,7 @@ display: style: true row: true pager: false - fields: false + fields: true filters: false filter_groups: false use_more: false @@ -766,381 +920,27 @@ display: items_per_page: 10 offset: 0 display_description: '' - filters: - status: - id: status - table: node_field_data - field: status + use_more: true + use_more_always: false + use_more_text: 'view all' + header: + area: + id: area + table: views + field: area relationship: none group_type: group admin_label: '' - operator: '=' - value: true - group: 1 - exposed: false - expose: - operator_id: '' - label: Published - description: '' - use_operator: false - operator: status_op - identifier: published - required: false - remember: false - multiple: false - remember_roles: - authenticated: authenticated - anonymous: '0' - administrator: '0' - editor: '0' - is_grouped: false - group_info: - label: '' - description: '' - identifier: '' - optional: true - widget: select - multiple: false - remember: false - default_group: All - default_group_multiple: { } - group_items: { } - plugin_id: boolean - entity_type: node - entity_field: status + empty: false + tokenize: false + content: + value: '

Recent content

' + format: basic_html + plugin_id: text + filters: { } filter_groups: operator: AND - groups: - 1: AND - fields: - title: - id: title - table: node_field_data - field: title - relationship: none - group_type: group - admin_label: '' - 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 - plugin_id: field - type: - id: type - table: node_field_data - field: type - relationship: none - group_type: group - admin_label: '' - label: 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 - entity_type: node - entity_field: type - plugin_id: field - name: - id: name - table: users_field_data - field: name - relationship: uid - group_type: group - admin_label: '' - label: Author - 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 - entity_type: user - entity_field: name - plugin_id: field - changed: - id: changed - table: node_field_data - field: changed - relationship: none - group_type: group - admin_label: '' - 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_ago - settings: - date_format: medium - custom_date_format: '' - timezone: '' - 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 - entity_type: node - entity_field: changed - plugin_id: field - edit_node: - id: edit_node - table: node - field: edit_node - relationship: none - group_type: group - admin_label: '' - label: Actions - 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 - text: edit - entity_type: node - plugin_id: entity_link_edit - use_more: true - use_more_always: false - use_more_text: 'view all' - header: - area: - id: area - table: views - field: area - relationship: none - group_type: group - admin_label: '' - empty: false - tokenize: false - content: - value: '

Recent content

' - format: basic_html - plugin_id: text + groups: { } cache_metadata: max-age: 0 contexts: @@ -1174,7 +974,6 @@ display: - 'languages:language_interface' - url - url.query_args - - user - 'user.node_grants:view' - user.permissions tags: { } diff --git a/css/workbench.views.css b/css/workbench.views.css new file mode 100644 index 0000000..6a4eb51 --- /dev/null +++ b/css/workbench.views.css @@ -0,0 +1,8 @@ +/** + * CSS for Workbench views. + */ + +.view[class*=workbench] .workbench-action-link { + width: 3em; + display: inline-block; +} diff --git a/workbench.libraries.yml b/workbench.libraries.yml index aa58257..90ec912 100644 --- a/workbench.libraries.yml +++ b/workbench.libraries.yml @@ -13,3 +13,8 @@ workbench.toolbar: css: theme: css/workbench.toolbar.css: {} +workbench.views: + version: VERSION + css: + theme: + css/workbench.views.css: {} diff --git a/workbench.module b/workbench.module index 5d8520c..683a862 100644 --- a/workbench.module +++ b/workbench.module @@ -78,3 +78,14 @@ function workbench_toolbar_prerender_tray(array $element) { $element['administration_menu'] = $menu_tree->build($tree); return $element; } + +/** + * Implements hook_views_pre_render(). + * + * Add custom CSS to Workbench views. + */ +function workbench_views_pre_render(\Drupal\views\ViewExecutable $view) { + if (isset($view) && $view->storage->get('tag') == 'Workbench') { + $view->element['#attached']['library'][] = 'workbench/workbench.views'; + } +} diff --git a/workbench.permissions.yml b/workbench.permissions.yml index c1859f6..36e29c5 100644 --- a/workbench.permissions.yml +++ b/workbench.permissions.yml @@ -1,2 +1,3 @@ access workbench: - title: 'Access My Workbench' \ No newline at end of file + title: 'Access My Workbench' + description: 'Users with this permission will see titles of unpublished content in the default "All Recent Content" listing.'