Commit 6f929088 authored by David Surville's avatar David Surville
Browse files

Quelques corrections nécessaires après l'intégration de la branche...

Quelques corrections nécessaires après l'intégration de la branche release/1.3.0 dans la branche 5.x
parent 249ac38d
Loading
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -88,6 +88,7 @@ return [
                        'recharger-role',
                        'supprimer-perimetre',
                        'supprimer-role',
                        'flash-message',
                    ],
                    'privileges' => [
                        UtilisateurPrivileges::UTILISATEUR_MODIFIERROLE,
@@ -322,6 +323,16 @@ return [
                            ],
                        ],
                    ],
                    'flash-message' => [
                        'type' => 'Literal',
                        'options' => [
                            'route' => '/flash-message',
                            'defaults' => [
                                'controller' => UtilisateurController::class,
                                'action' => 'flash-message',
                            ],
                        ],
                    ],
                ],
            ],
        ],
+13 −17
Original line number Diff line number Diff line
@@ -291,18 +291,15 @@ class UtilisateurController extends AbstractActionController
        if ($utilisateur !== null && $role !== null) {
            try {
                $this->userService->addRole($utilisateur, $role);
                $result = true;
                $this->flashMessenger()->addSuccessMessage(
                    sprintf("Ajout du rôle <strong>%s</strong> à l'utilisateur <strong>%s</strong>.", $role->getLibelle(), $utilisateur->getDisplayName()));
            } catch (RuntimeException $e) {
                $result = false;
                $this->flashMessenger()->addErrorMessage(
                    sprintf("Erreur lors de l'ajout du rôle <strong>%s</strong> à l'utilisateur <strong>%s</strong>.", $role->getLibelle(), $utilisateur->getDisplayName()));
            }
        }

        return new JsonModel([
            "result" => $result ?: false,
            "message" => $result
                ? sprintf("Ajout du rôle <strong>%s</strong> à l'utilisateur <strong>%s</strong>.", $role->getLibelle(), $utilisateur->getDisplayName())
                : sprintf("Erreur lors de l'ajout du rôle <strong>%s</strong> à l'utilisateur <strong>%s</strong>.", $role->getLibelle(), $utilisateur->getDisplayName())
        ]);
        exit;
    }

    public function changerStatutAction()
@@ -527,22 +524,21 @@ class UtilisateurController extends AbstractActionController
        $utilisateur = $this->userService->getRequestedUser($this);
        $roleId = $this->params()->fromRoute("role");
        $role = $this->roleService->find($roleId);
        $result = false;

        if ($utilisateur !== null && $role !== null && !$role->isAuto()) {
            try {
                $this->userService->removeRole($utilisateur, $role);
                $result = true;
                $this->flashMessenger()->addSuccessMessage(
                    sprintf("Suppression du rôle <strong>%s</strong> de l'utilisateur <strong>%s</strong>.", $role->getLibelle(), $utilisateur->getDisplayName()));
            } catch (RuntimeException $e) {
                $result = false;
                $this->flashMessenger()->addErrorMessage(
                    sprintf("Erreur lors de la suppression du rôle <strong>%s</strong> de l'utilisateur <strong>%s</strong>.", $role->getLibelle(), $utilisateur->getDisplayName()));
            }
        }

        return new JsonModel([
            "result" => $result ?: false,
            "message" => $result
                ? sprintf("Suppression du rôle <strong>%s</strong> de l'utilisateur <strong>%s</strong>.", $role->getLibelle(), $utilisateur->getDisplayName())
                : sprintf("Erreur lors de la suppression du rôle <strong>%s</strong> de l'utilisateur <strong>%s</strong>.", $role->getLibelle(), $utilisateur->getDisplayName())
        ]);
        exit;
    }

    public function flashMessageAction()
    {}
}
 No newline at end of file
+3 −2
Original line number Diff line number Diff line
@@ -53,8 +53,9 @@ class UserRole extends AbstractHelper
            ? sprintf(
                '<a href="%s"
                   class="remove-role"
                   title="Suppression du rôle">
                    <i class="far fa-trash-alt text-danger" title="Supprimer le rôle"></i>
                   data-bs-placement="left"
                   title="Supprimer le rôle">
                    <i class="far fa-trash-alt text-danger"></i>
                </a>',
                $this->view->url('unicaen-utilisateur/supprimer-role', ['utilisateur' => $this->user->getId(), 'role' => $role->getId()], [], true)
            )
+1 −1
Original line number Diff line number Diff line
@@ -72,7 +72,7 @@ if($categories->isEmpty()):
                    <?php endforeach; ?>
                </ul>
            </div>
            <?php if(!$userPerimetres->isEmpty()): ?>
            <?php if($userPerimetres && !$userPerimetres->isEmpty()): ?>
                <div class="list-group mt-3">
                    <?php
                    foreach($userPerimetres as $p) {
+12 −55
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@ use UnicaenUtilisateur\View\Helper\UserRole;
$canRole = $this->isAllowed(UtilisateurPrivileges::getResourceId(UtilisateurPrivileges::UTILISATEUR_MODIFIERROLE));
?>

<table id="user-role-liste" class="table table-sm">
<table id="user-role-liste" class="table table-sm table-hover">
    <thead>
    <tr>
        <th>Rôle</th>
@@ -56,61 +56,18 @@ $canRole = $this->isAllowed(UtilisateurPrivileges::getResourceId(UtilisateurPriv
                    'emptyTable': "Aucune donnée disponible.",
                },
                "createdRow": function (row, data, index) {
                    $('.pop-ajax', row).popAjax();
                },
                    $(".remove-role", row).popAjax({
                        confirm: true,
                        content: '<p>Voulez-vous supprimer le rôle de l\'utilisateur ?</p>',
                        submitClose: true,
                        submitEvent: 'event-unicaen-utilisateur-supprimer-role',
                    });
        }

        $(".remove-role")
            .on('click', function (e) {
                e.preventDefault();
                $.ajax({
                    type: "GET",
                    url: $(this).attr('href'),
                    success: function (data) {
                        if (data.result == true) {
                            $('body').find('#user-roles').refresh();
                            $('#role-message').addClass('alert-success')
                                .html(data.message)
                                .show();
                        } else {
                            $('#role-message').addClass('alert-danger')
                                .html(data.message)
                                .show();
                        }
                },
                    complete: function (data) {
                        var select1 = $('#role-add');
                        $.ajax({
                            type: "GET",
                            url: '/utilisateur/recharger-role/' + <?php echo $user->getId(); ?>,
                            dataType: "json",
                            beforeSend: function (xhr, object) {
                                select1.find('option:not(:first)').remove();
                            },
                            success: function (data) {
                                $.each(data, function (key, value) {
                                    $('<option>').val(key).text(value).appendTo(select1);
                "columnDefs": [{
                    "targets": 2,
                    "orderable": false
                }],
            });
        }
    });
                        var select2 = $('#role-perimetre');
                        $.ajax({
                            type: "GET",
                            url: '/utilisateur/recharger-perimetre-role/' + <?php echo $user->getId(); ?>,
                            dataType: "json",
                            beforeSend: function(xhr, object) {
                                select2.find('option:not(:first)').remove();
                            },
                            success: function (data) {
                                $.each(data, function(key, value) {
                                    $('<option>').val(key).text(value).appendTo(select2);
                                });
                                $('#user-role-perimetres').html('');
                            }
                        });
                    },
                });
            });
    });
</script>
 No newline at end of file
Loading