You are here

class RoleLoginRoutes in Multiple role login pages 8

Defines dynamic routes.

Hierarchy

Expanded class hierarchy of RoleLoginRoutes

File

src/Routing/RoleLoginRoutes.php, line 11

Namespace

Drupal\role_login_page\Routing
View source
class RoleLoginRoutes {
  protected $connection;

  /**
   * RoleLoginRoutes constructor.
   */
  public function __construct() {
    $this->connection = Database::getConnection();
  }

  /**
   * {@inheritdoc}
   * Create dynamic routes for the new login pages.
   */
  public function routes() {
    $routes = [];
    $login_menu_arr = $this->connection
      ->select('role_login_page_settings', 'rlps')
      ->fields('rlps')
      ->execute()
      ->fetchAll();
    $i = 0;
    foreach ($login_menu_arr as $login_menu_data) {

      // Returns an array of Route objects.
      $routes['role_login_page.route' . $i] = new Route('/' . $login_menu_data->url, [
        '_form' => '\\Drupal\\role_login_page\\Form\\RoleLoginForm',
        '_title' => $login_menu_data->page_title,
        'data' => $login_menu_data,
      ], [
        '_user_is_logged_in' => 'FALSE',
      ]);
      $i++;
    }
    return $routes;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
RoleLoginRoutes::$connection protected property
RoleLoginRoutes::routes public function Create dynamic routes for the new login pages.
RoleLoginRoutes::__construct public function RoleLoginRoutes constructor.