Commit ff3cf1fa authored by Wesley Wanderley's avatar Wesley Wanderley
Browse files

Issue #3247060 by wesleyl, matheusbm: List of nodes that have redirection rule

parent 76b24791
Loading
Loading
Loading
Loading
+346 −0
Original line number Diff line number Diff line
langcode: en
status: true
dependencies:
  module:
    - redirect_page_by_role
    - user
id: redirect_page_by_role
label: 'Redirect Page By Role'
module: views
description: ''
tag: ''
base_table: redirect_page_by_role_node
base_field: nid
display:
  default:
    id: default
    display_title: Default
    display_plugin: default
    position: 0
    display_options:
      title: 'Redirect Page By Role'
      fields:
        nid:
          id: nid
          table: redirect_page_by_role_node
          field: nid
          relationship: none
          group_type: group
          admin_label: ''
          entity_type: null
          entity_field: null
          plugin_id: standard
          label: Node
          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
        redirect_to:
          id: redirect_to
          table: redirect_page_by_role_node
          field: redirect_to
          relationship: none
          group_type: group
          admin_label: ''
          plugin_id: standard
          label: 'Redirect to'
          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
        role:
          id: role
          table: redirect_page_by_role_node
          field: role
          relationship: none
          group_type: group
          admin_label: ''
          plugin_id: standard
          label: Role
          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
        status_code:
          id: status_code
          table: redirect_page_by_role_node
          field: status_code
          relationship: none
          group_type: group
          admin_label: ''
          plugin_id: standard
          label: 'Status code'
          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
        weight:
          id: weight
          table: redirect_page_by_role_node
          field: weight
          relationship: none
          group_type: group
          admin_label: ''
          plugin_id: standard
          label: Weight
          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
      pager:
        type: mini
        options:
          offset: 0
          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: 'administer redirect page by role'
      cache:
        type: tag
        options: {  }
      empty: {  }
      sorts: {  }
      arguments: {  }
      filters: {  }
      style:
        type: table
      row:
        type: fields
      query:
        type: views_query
        options:
          query_comment: ''
          disable_sql_rewrite: false
          distinct: false
          replica: false
          query_tags: {  }
      relationships: {  }
      header: {  }
      footer: {  }
      display_extenders: {  }
    cache_metadata:
      max-age: -1
      contexts:
        - 'languages:language_interface'
        - url.query_args
        - user.permissions
      tags: {  }
  page_1:
    id: page_1
    display_title: Page
    display_plugin: page
    position: 1
    display_options:
      display_extenders: {  }
      path: admin/config/redirect-page-by-role/list
    cache_metadata:
      max-age: -1
      contexts:
        - 'languages:language_interface'
        - url.query_args
        - user.permissions
      tags: {  }
+3 −0
Original line number Diff line number Diff line
@@ -6,3 +6,6 @@ type: module
core: 8.x
core_version_requirement: ^8 || ^9
configure: redirect_page_by_role.admin_settings

dependencies:
  - drupal:views
+9 −0
Original line number Diff line number Diff line
redirect_page_by_role.admin_settings:
  route_name: redirect_page_by_role.admin_settings
  base_route: redirect_page_by_role.admin_settings
  title: Settings

redirect_page_by_role.list:
  route_name: redirect_page_by_role.list
  base_route: redirect_page_by_role.admin_settings
  title: Redirect list
+6 −0
Original line number Diff line number Diff line
@@ -5,3 +5,9 @@ redirect_page_by_role.admin_settings:
    _title: 'Redirect Page By Role'
  requirements:
    _permission: 'administer redirect page by role'

redirect_page_by_role.list:
  path: '/admin/config/redirect-page-by-role/list'
  defaults:
    _entity_list: 'redirect_page_by_role.list'
    _title: 'List of Nodes with rules'
+113 −0
Original line number Diff line number Diff line
<?php

/**
 * @file
 * Provide views data for Redirect Page by Role module.
 *
 * @ingroup views_module_handlers
 */

/**
 * Implements hook_views_data().
 */
function redirect_page_by_role_views_data() {
  $data = [];
  $data['redirect_page_by_role_node'] = [];

  $data['redirect_page_by_role_node']['table'] = [
    'group' => t('Redirect Page By Role'),
    'provider' => 'redirect_page_by_role',
    'base' => [
      'field' => 'nid',
      'title' => t('Redirect Page By Role'),
      'help' => t('Redirect Page By Role custom table'),
    ],
  ];

  $data['redirect_page_by_role_node']['nid'] = [
    'title' => t('Node'),
    'help' => t('Node with redirection rule.'),
    'field' => [
      'id' => 'standard',
    ],
    'sort' => [
      'id' => 'standard',
    ],
    'filter' => [
      'id' => 'string',
    ],
    'argument' => [
      'id' => 'string',
    ],
  ];

  $data['redirect_page_by_role_node']['role'] = [
    'title' => t('Role'),
    'help' => t('User role to be redirected.'),
    'field' => [
      'id' => 'standard',
    ],
    'sort' => [
      'id' => 'standard',
    ],
    'filter' => [
      'id' => 'string',
    ],
    'argument' => [
      'id' => 'string',
    ],
  ];

  $data['redirect_page_by_role_node']['redirect_to'] = [
    'title' => t('Redirect to'),
    'help' => t('Where the user will be redirected.'),
    'field' => [
      'id' => 'standard',
    ],
    'sort' => [
      'id' => 'standard',
    ],
    'filter' => [
      'id' => 'string',
    ],
    'argument' => [
      'id' => 'string',
    ],
  ];

  $data['redirect_page_by_role_node']['status_code'] = [
    'title' => t('Status code'),
    'help' => t('Status code that the user will be redirected.'),
    'field' => [
      'id' => 'standard',
    ],
    'sort' => [
      'id' => 'standard',
    ],
    'filter' => [
      'id' => 'string',
    ],
    'argument' => [
      'id' => 'string',
    ],
  ];

  $data['redirect_page_by_role_node']['weight'] = [
    'title' => t('Weight'),
    'help' => t('Weight of the rule.'),
    'field' => [
      'id' => 'standard',
    ],
    'sort' => [
      'id' => 'standard',
    ],
    'filter' => [
      'id' => 'string',
    ],
    'argument' => [
      'id' => 'string',
    ],
  ];

  return $data;
}