From c54053a12576dc8e4faf8a82750dd1195f087841 Mon Sep 17 00:00:00 2001 From: Kevin Paxman <kpaxman@uwaterloo.ca> Date: Mon, 21 Oct 2024 15:14:44 -0400 Subject: [PATCH] EXPHR: add support for newly-created (in uw_cfg_common) website lead role --- css/uw_dashboard.css | 1 + uw_dashboard.module | 21 +++++++++++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/css/uw_dashboard.css b/css/uw_dashboard.css index ec50314..e1c0776 100644 --- a/css/uw_dashboard.css +++ b/css/uw_dashboard.css @@ -13,4 +13,5 @@ .dashboard__site-info { float: right; + margin-bottom: 0.2rem; } diff --git a/uw_dashboard.module b/uw_dashboard.module index 888781f..65ec482 100644 --- a/uw_dashboard.module +++ b/uw_dashboard.module @@ -168,8 +168,25 @@ function uw_dashboard_preprocess_page(&$variables) { $string .= \Drupal::service('extension.list.profile')->getList()['uw_base_profile']->info['version']; // Get the website lead(s). - $string .= ' • Website lead: '; - $string .= 'not set'; + $query = \Drupal::entityQuery('user') + ->condition('status', 1) + ->condition('roles', 'uw_role_website_lead') + ->sort('field_uw_last_name', 'ASC') + ->sort('field_uw_first_name', 'ASC'); + $uids = $query->execute(); + $users = User::loadMultiple($uids); + $user_list = []; + foreach ($users as $user) { + $user_list[] = Link::fromTextAndUrl($user->getDisplayName(), Url::fromUri('mailto:' . $user->getEmail()))->toString(); + } + if (!$user_list) { + $user_list[] = 'not set'; + } + $string .= ' • Website lead'; + if (count($user_list) > 1) { + $string .= 's'; + } + $string .= ': ' . implode(', ', $user_list); // Get the site owner(s). $query = \Drupal::entityQuery('user') -- GitLab