Commit 72c7ce31 authored by Thiago Pereira's avatar Thiago Pereira Committed by Jeroen Tubex
Browse files

Issue #3269896 by tmaiochi, DieterHolvoet, hershy.k, S3b0uN3t, Guilherme...

Issue #3269896 by tmaiochi, DieterHolvoet, hershy.k, S3b0uN3t, Guilherme Rabelo, Rashmisoni, JeroenT, sophiavs, gquisini: Drupal 10 compatibility
parent 2f848d4f
Loading
Loading
Loading
Loading
+1 −2
Changes for menu_admin_per_menu.info.yml: 1 added line, 2 removed lines.
Original line number Diff line number Diff line
@@ -2,8 +2,7 @@ name: Menu Admin per Menu
type: module
description: Allows to give roles per menu admin permissions without giving them full administer menu permission.
package: Administration
core: 8.x
core_version_requirement: ^8 || ^9
core_version_requirement: ^9 || ^10
dependencies:
  - drupal:menu_ui
  - drupal:menu_link_content
+2 −2
Changes for menu_admin_per_menu.module: 2 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -116,14 +116,14 @@ function menu_admin_per_menu_menu_link_content_access(EntityInterface $entity, $
}

/**
 * Implements hook_field_widget_multivalue_form_alter().
 * Implements hook_field_widget_complete_form_alter().
 *
 * Check for a menu entity reference field. When the default value is a menu
 * the current user doesn't have access to, hide the field.
 *
 * @see \Drupal\menu_admin_per_menu\Plugin\EntityReferenceSelection\MenuSelection
 */
function menu_admin_per_menu_field_widget_multivalue_form_alter(&$elements, FormStateInterface $form_state, array $context) {
function menu_admin_per_menu_field_widget_complete_form_alter(&$elements, FormStateInterface $form_state, array $context) {
  $account = \Drupal::currentUser();
  if ($account->hasPermission('administer menu')) {
    return;
+4 −1
Changes for src/Access/MenuAdminPerMenuAccess.php: 4 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -21,7 +21,10 @@ class MenuAdminPerMenuAccess implements MenuAdminPerMenuAccessInterface {
    $perms_menu = &drupal_static(__FUNCTION__, []);

    if (!isset($perms_menu[$account->id()])) {
      $menus = menu_ui_get_menus();
      $menus = array_map(function ($menu) {
        return $menu->label();
      }, Menu::loadMultiple());
      asort($menus);
      foreach ($menus as $name => $title) {
        $permission = 'administer ' . $name . ' menu items';
        if ($account->hasPermission($permission)) {
+6 −1
Changes for src/MenuAdminPerMenuPermissions.php: 6 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@

namespace Drupal\menu_admin_per_menu;

use Drupal\system\Entity\Menu;
use Drupal\Core\StringTranslation\StringTranslationTrait;

/**
@@ -23,7 +24,11 @@ class MenuAdminPerMenuPermissions {
   *   Array of existing menus on the site.
   */
  protected function getExistingMenus() {
    return menu_ui_get_menus();
    $menu_list = array_map(function ($menu) {
      return $menu->label();
    }, Menu::loadMultiple());
    asort($menu_list);
    return $menu_list;
  }

  /**
+1 −1
Changes for src/Routing/RouteSubscriber.php: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -49,7 +49,7 @@ class RouteSubscriber extends RouteSubscriberBase {
  /**
   * {@inheritdoc}
   */
  public static function getSubscribedEvents() {
  public static function getSubscribedEvents(): array {
    // Run after content_translation, which has priority -210.
    $events[RoutingEvents::ALTER] = ['onAlterRoutes', -220];
    return $events;
Loading