diff --git a/VERSIONS_HOTLINE/181902 b/VERSIONS_HOTLINE/181902
new file mode 100644
index 0000000000000000000000000000000000000000..1b613c787e81e67726197873e39bb3ccf419c378
--- /dev/null
+++ b/VERSIONS_HOTLINE/181902
@@ -0,0 +1 @@
+ - correctif #181902 : Administration : Avec les droits "Administration: accès en lecture aux fiches adhérents SIGB", un administrateur bibliothèque peut aller sur la gestion des utilisateurs, filtré par sa propre bibliothèque
\ No newline at end of file
diff --git a/library/Class/User/SearchCriteria.php b/library/Class/User/SearchCriteria.php
index 7c0b01de92e4da6f9e6ef672dd1e11cb38d57f9f..5c947f202954b8904b6ad85b1e2bc6fc2d3c1625 100644
--- a/library/Class/User/SearchCriteria.php
+++ b/library/Class/User/SearchCriteria.php
@@ -51,12 +51,30 @@ class Class_User_SearchCriteria extends Class_SearchCriteria {
 
 
 class Class_User_SearchCriteriaLibrary extends Class_SearchCriteria_Select {
+
   protected $_name = 'id_site';
 
   public function buildElement() {
-    return parent::buildElement()
-      ->setLabel($this->_('Bibliothèque'))
-      ->setMultiOptions(['all' => $this->_('Toutes')] + Class_Bib::findAllLabels());
+    return $this->_isAdminBib()
+      ? null
+      : (parent::buildElement()
+         ->setLabel($this->_('Bibliothèque'))
+         ->setMultiOptions(['all' => $this->_('Toutes')] + Class_Bib::findAllLabels()));
+  }
+
+
+  public function acceptSearchVisitor($visitor) : Class_SearchCriteria_Abstract {
+    if ( ! $this->_isAdminBib())
+      return parent::acceptSearchVisitor($visitor);
+
+    $visitor->addParam($this->_name, Class_Users::getIdentity()
+                       ->getIdSite());
+    return $this;
+  }
+
+
+  protected function _isAdminBib() : bool {
+    return ($user = Class_Users::getIdentity()) && $user->isAdminBib();
   }
 }
 
@@ -70,13 +88,13 @@ class Class_User_SearchCriteriaValidSubscription
     $_name = 'valid_subscription',
     $_value = 0;
 
-
   public static function newFor($params){
     return (Class_User_Membership::isUserMembershipContext())
       ? Class_User_SearchCriteriaValidSubscriptionUserMembership::newFor($params)
       : Class_User_SearchCriteriaValidSubscriptionUser::newFor($params);
   }
 
+
   public function buildElement() {
     return new Zend_Form_Element_Checkbox($this->getName(),
                                           ['label' => $this->_('Abonnement valide'),
diff --git a/tests/application/modules/admin/controllers/UsersControllerRolesTest.php b/tests/application/modules/admin/controllers/UsersControllerRolesTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..f5650b6087a01cb908e492b3a4b1719bed29dda3
--- /dev/null
+++ b/tests/application/modules/admin/controllers/UsersControllerRolesTest.php
@@ -0,0 +1,157 @@
+<?php
+/**
+ * Copyright (c) 2012-2023, Agence Française Informatique (AFI). All rights reserved.
+ *
+ * BOKEH is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
+ * the Free Software Foundation.
+ *
+ * There are special exceptions to the terms and conditions of the AGPL as it
+ * is applied to this software (see README file).
+ *
+ * BOKEH is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * along with BOKEH; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+
+abstract class UsersControllerRolesTestCase
+  extends Admin_AbstractControllerTestCase {
+
+  public function setUp() {
+    parent::setUp();
+
+    $this->fixture(Class_Bib::class,
+                   ['id' => 1,
+                    'libelle' => 'Annecy']);
+    $this->fixture(Class_Bib::class,
+                   ['id' => 2,
+                    'libelle' => 'Meythet']);
+
+    $this->fixture(Class_Users::class,
+                   ['id' => 10,
+                    'idabon' => '65656',
+                    'login' => 'bobo',
+                    'password' => 'oo',
+                    'mail' => 'bobo@bo.com',
+                    'id_site' => 1,
+                    'role_level' => ZendAfi_Acl_AdminControllerRoles::ABONNE_SIGB,
+                    'last_login' => 0]);
+    $this->fixture(Class_Users::class,
+                   ['id' => 20,
+                    'idabon' => '656789',
+                    'login' => 'tutu',
+                    'password' => 'ru',
+                    'mail' => 'tutu@ru.com',
+                    'id_site' => 2,
+                    'role_level' => ZendAfi_Acl_AdminControllerRoles::ABONNE_SIGB,
+                    'last_login' => 0]);
+
+    ZendAfi_Auth::getInstance()->logUser($this->_createUser());
+
+    $this->dispatch('/admin/users');
+  }
+
+
+  protected function _createUser() : ?Class_Users {
+    return null;
+  }
+}
+
+
+
+
+class UsersControllerRolesAdminBibTest
+  extends UsersControllerRolesTestCase {
+
+  protected function _createUser() : ?Class_Users {
+    $admin_bib = $this->fixture(Class_Users::class,
+                                ['id' => 1,
+                                 'login' => 'toto',
+                                 'password' => 'ro',
+                                 'mail' => 'toto@ro.com',
+                                 'id_site' => 1,
+                                 'role_level' => ZendAfi_Acl_AdminControllerRoles::ADMIN_BIB,
+                                 'last_login' => 0]);
+
+    $user_group = $this->fixture(Class_UserGroup::class,
+                                 ['id' => 28,
+                                  'libelle' => 'Admin Bib',
+                                  'rights' => [Class_UserGroup::RIGHT_USER_SIGB_USER_READ]]);
+
+    $admin_bib->addUserGroup($user_group);
+
+    return $admin_bib;
+  }
+
+
+  /** @test */
+  public function pageShouldContainsH1_GestionDesUtilisateurs() {
+    $this->assertXPathContentContains('//h1', 'Gestion des utilisateurs');
+  }
+
+
+  /** @test */
+  public function inputBibliothequeShouldNotExist() {
+    $this->assertNotXPath('//select[@id="search_id_site"]');
+  }
+
+
+  /** @test */
+  public function usersTableShouldContainIdentifiantBobo() {
+    $this->assertXPath('//table[@id="users_table"]/tbody/tr/td[text()="bobo"]');
+  }
+
+
+  /** @test */
+  public function usersTableShouldNotContainIdentifiantTutu() {
+    $this->assertNotXPath('//table[@id="users_table"]//td[text()="tutu"]');
+  }
+}
+
+
+
+
+class UsersControllerRolesAdminPortailTest
+  extends UsersControllerRolesTestCase {
+
+  protected function _createUser() : ?Class_Users {
+    return $this->fixture(Class_Users::class,
+                          ['id' => 1,
+                           'login' => 'toto',
+                           'password' => 'ro',
+                           'mail' => 'toto@ro.com',
+                           'id_site' => 1,
+                           'role_level' => ZendAfi_Acl_AdminControllerRoles::ADMIN_PORTAIL,
+                           'last_login' => 0]);
+  }
+
+
+  /** @test */
+  public function pageShouldContainsH1_GestionDesUtilisateurs() {
+    $this->assertXPathContentContains('//h1', 'Gestion des utilisateurs');
+  }
+
+
+  /** @test */
+  public function inputBibliothequeShouldExist() {
+    $this->assertXPath('//select[@id="search_id_site"]');
+  }
+
+
+  /** @test */
+  public function usersTableShouldContainIdentifiantBobo() {
+    $this->assertXPath('//table[@id="users_table"]/tbody/tr/td[text()="bobo"]');
+  }
+
+
+  /** @test */
+  public function usersTableShouldContainIdentifiantTutu() {
+    $this->assertXPath('//table[@id="users_table"]/tbody/tr/td[text()="tutu"]');
+  }
+}
diff --git a/tests/scenarios/RendezVous/UsergroupAgendaAdminTest.php b/tests/scenarios/RendezVous/UsergroupAgendaAdminTest.php
index 1f1c63e74b49d477bb87a7e38b6924f60024f50d..da424053c98ddf22fef8819da4d2a56607ff8c79 100644
--- a/tests/scenarios/RendezVous/UsergroupAgendaAdminTest.php
+++ b/tests/scenarios/RendezVous/UsergroupAgendaAdminTest.php
@@ -21,12 +21,12 @@
 
 
 class UsergroupAgendaAdminIndexInvalidTest extends Admin_AbstractControllerTestCase {
-  protected $_storm_default_to_volatile = true;
 
   public function setUp() {
     parent::setUp();
+
     ZendAfi_Auth::getInstance()
-      ->logUser($this->fixture('Class_Users',
+      ->logUser($this->fixture(Class_Users::class,
                                ['id' => 34,
                                 'login' => 'adminportail',
                                 'password' => 's3cr3t \o/',
@@ -52,21 +52,25 @@ class UsergroupAgendaAdminIndexInvalidTest extends Admin_AbstractControllerTestC
 
 
 
-abstract class UsergroupAgendaAdminModoPortailLoggedTestCase extends Admin_AbstractControllerTestCase {
-  protected $_storm_default_to_volatile = true;
+
+abstract class UsergroupAgendaAdminModoPortailLoggedTestCase
+  extends Admin_AbstractControllerTestCase {
 
   public function setUp() {
     parent::setUp();
+
     Class_AdminVar::set('ENABLE_RENDEZ_VOUS', 1);
 
-    $group = $this->fixture('Class_UserGroup_Agenda', ['id' => 4,
-                                                       'libelle'=>"UtilisateursRendezvous"]);
+    $group = $this->fixture(Class_UserGroup_Agenda::class,
+                            ['id' => 4,
+                             'libelle' => 'UtilisateursRendezvous']);
     $group->addRight(Class_UserGroup::RIGHT_USER_RENDEZ_VOUS);
 
-    $user = $this->fixture('Class_Users',
+    $user = $this->fixture(Class_Users::class,
                            ['id' => 34,
                             'login' => 'adminportail',
                             'password' => 's3cr3t \o/',
+                            'id_site' => 4,
                             'role_level' => ZendAfi_Acl_AdminControllerRoles::MODO_PORTAIL,
                             'user_groups' => [$group]]);
 
@@ -76,12 +80,15 @@ abstract class UsergroupAgendaAdminModoPortailLoggedTestCase extends Admin_Abstr
 
 
 
+
 /** @see https://forge.afi-sa.net/issues/95499  */
 class UsergroupAgendaAdminIndexWithoutCustomFieldsTest
   extends UsergroupAgendaAdminModoPortailLoggedTestCase {
+
   public function setUp() {
     parent::setUp();
-    $groupagenda = $this->fixture('Class_UserGroup_Agenda',
+
+    $groupagenda = $this->fixture(Class_UserGroup_Agenda::class,
                                   ['id' => 5,
                                    'libelle' => 'MonAgenda',
                                    'model_class' => 'Class_RendezVous']);
@@ -102,14 +109,16 @@ class UsergroupAgendaAdminIndexWithoutCustomFieldsTest
 
 
 class UsergroupAgendaAdminIndexValidTest extends UsergroupAgendaAdminModoPortailLoggedTestCase {
+
   public function setUp() {
     parent::setUp();
-    $groupagenda = $this->fixture('Class_UserGroup_Agenda',
+
+    $groupagenda = $this->fixture(Class_UserGroup_Agenda::class,
                                   ['id' => 5,
                                    'libelle' => 'MonAgenda',
                                    'model_class' => 'Class_RendezVous']);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 7,
                     'label' => 'Note',
                     'field_type' => Class_CustomField_Meta::TEXT_INPUT,
@@ -117,7 +126,7 @@ class UsergroupAgendaAdminIndexValidTest extends UsergroupAgendaAdminModoPortail
                     'priority' => 5,
                     'model' => 'UserGroup_Agenda']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 32,
                     'custom_field_id' => 7,
                     'value' => 'Ma petite Note',
@@ -186,18 +195,21 @@ class UsergroupAgendaAdminIndexValidTest extends UsergroupAgendaAdminModoPortail
 
 
 
+
 class UsergroupAgendaAdminDeleteTest extends UsergroupAgendaAdminModoPortailLoggedTestCase {
+
   public function setUp() {
     parent::setUp();
 
-    $this->fixture('Class_UserGroup_Agenda', ['id' => 43,
-                                              'model_class'=> 'Class_RendezVous',
-                                              'libelle' => "MonSuperAgenda"]);
+    $this->fixture(Class_UserGroup_Agenda::class,
+                   ['id' => 43,
+                    'model_class' => 'Class_RendezVous',
+                    'libelle' => "MonSuperAgenda"]);
 
-    $this->fixture('Class_RendezVous',
+    $this->fixture(Class_RendezVous::class,
                    ['id' => 4,
                     'agenda' => Class_UserGroup_Agenda::find(43),
-                    'location' => $this->fixture('Class_Lieu',
+                    'location' => $this->fixture(Class_Lieu::class,
                                                  ['id' => 8,
                                                   'libelle' => 'Bellevue']),
                     'date' => '2019-03-19',
@@ -225,19 +237,20 @@ class UsergroupAgendaAdminDeleteTest extends UsergroupAgendaAdminModoPortailLogg
 
 
 class UsergroupAgendaAdminAllTest extends UsergroupAgendaAdminModoPortailLoggedTestCase {
+
   public function setUp() {
     parent::setUp();
 
-    $this->fixture('Class_UserGroup_Agenda',
+    $this->fixture(Class_UserGroup_Agenda::class,
                    ['id' => 43,
-                    'model_class'=> 'Class_RendezVous',
+                    'model_class' => 'Class_RendezVous',
                     'libelle' => "MonSuperAgenda"]);
 
-    $this->fixture('Class_RendezVous',
+    $this->fixture(Class_RendezVous::class,
                    ['id' => 4,
                     'agenda' => Class_UserGroup_Agenda::find(43),
                     'group_id' => 43,
-                    'location' => $this->fixture('Class_Lieu',
+                    'location' => $this->fixture(Class_Lieu::class,
                                                  ['id' => 8,
                                                   'libelle' => 'Bellevue']),
                     'date' => '2019-03-19',
@@ -245,11 +258,11 @@ class UsergroupAgendaAdminAllTest extends UsergroupAgendaAdminModoPortailLoggedT
                     'end_time' => '10:30',
                     'comment' => 'with Arnaud']);
 
-
     $this->dispatch('/admin/usergroup-agenda/all');
   }
 
-  protected function lastCallOnFindallByRendezvous(){
+
+  protected function lastCallOnFindallByRendezvous() {
     Class_RendezVous::getFirstAttributeForLastCallOn('findAllBy');
   }
 
@@ -340,23 +353,27 @@ class UsergroupAgendaAdminAllTest extends UsergroupAgendaAdminModoPortailLoggedT
 
 
 
+
 class UsergroupAgendaAdminAllSearchTest extends UsergroupAgendaAdminModoPortailLoggedTestCase {
   protected $_users_params = [];
 
   public function setUp() {
     parent::setUp();
-    $this->fixture('Class_UserGroup_Agenda', ['id' => 43,
-                                       'model_class'=> 'Class_RendezVous',
-                                       'libelle' => "MonSuperAgenda"]);
 
-    $this->fixture('Class_UserGroup', ['id' => 43,
-                                       'model_class'=> 'Class_RendezVous',
-                                       'libelle' => "MonSuperAgenda"]);
+    $this->fixture(Class_UserGroup_Agenda::class,
+                   ['id' => 43,
+                    'model_class'=> 'Class_RendezVous',
+                    'libelle' => "MonSuperAgenda"]);
+
+    $this->fixture(Class_UserGroup::class,
+                   ['id' => 43,
+                    'model_class'=> 'Class_RendezVous',
+                    'libelle' => "MonSuperAgenda"]);
 
-    $this->fixture('Class_RendezVous',
+    $this->fixture(Class_RendezVous::class,
                    ['id' => 4,
                     'agenda' => Class_UserGroup_Agenda::find(43),
-                    'location' => $this->fixture('Class_Lieu',
+                    'location' => $this->fixture(Class_Lieu::class,
                                                  ['id' => 8,
                                                   'libelle' => 'Bellevue']),
                     'date' => '2019-03-19',
@@ -368,7 +385,7 @@ class UsergroupAgendaAdminAllSearchTest extends UsergroupAgendaAdminModoPortailL
          ->whenCalled('findAllBy')->answers([])
          ->whenCalled('countBy')->answers(0);
 
-    $arcadia = $this->fixture('Class_Users',
+    $arcadia = $this->fixture(Class_Users::class,
                               ['id' => 999,
                                'login' => 'Arcadia',
                                'password' => '!Cosmos',
@@ -376,17 +393,17 @@ class UsergroupAgendaAdminAllSearchTest extends UsergroupAgendaAdminModoPortailL
 
     $this->onLoaderOfModel('Class_UserGroup_Agenda');
 
-    $this->fixture('Class_Lieu',
+    $this->fixture(Class_Lieu::class,
                    ['id' => 3,
                     'libelle' => 'Arcadia']);
 
     $this->onLoaderOfModel('Class_Users')
          ->whenCalled('findAllBy')
          ->willDo(function($params) use($arcadia)
-                  {
-                    $this->_users_params = $params;
-                    return [ $arcadia ];
-                  });
+         {
+           $this->_users_params = $params;
+           return [ $arcadia ];
+         });
 
     Class_RendezVous_SearchCriteria_Date::setTimeSource(new TimeSourceForTest('2019-03-27 11:46:18'));
   }
@@ -512,9 +529,12 @@ class UsergroupAgendaAdminAllSearchTest extends UsergroupAgendaAdminModoPortailL
 
 
 
+
 class UsergroupAgendaAdminAddActionTest extends UsergroupAgendaAdminModoPortailLoggedTestCase {
+
   public function setUp() {
     parent::setUp();
+
     $this->dispatch('/admin/usergroup-agenda/add');
   }
 
@@ -535,27 +555,29 @@ class UsergroupAgendaAdminAddActionTest extends UsergroupAgendaAdminModoPortailL
 
   /** @test */
   public function currentUsersTableShouldBePresent() {
-    $this->assertXPath('//table[@id="current_user_selection_users"]', $this->_response->getBody());
+    $this->assertXPath('//table[@id="current_user_selection_users"]');
   }
 
 
   /** @test */
   public function currentUsersTableShouldContainsActionColumn() {
-    $this->assertXPathContentContains('//table[@id="current_user_selection_users"]//thead//th',"Actions", $this->_response->getBody());
+    $this->assertXPathContentContains('//table[@id="current_user_selection_users"]//thead//th',"Actions");
   }
 
 
   /** @test */
   public function currentUsersTableShouldContainAucunParticipant() {
     $this->assertXPathContentContains('//table[@id="current_user_selection_users"][contains(@data-emptymessage, "Aucun participant")]//td',
-                                      "Aucun participant",
-                                      $this->_response->getBody());
+                                      "Aucun participant");
   }
 }
 
 
 
-class UsergroupAgendaAdminUserSelectActionTest extends UsergroupAgendaAdminModoPortailLoggedTestCase {
+
+class UsergroupAgendaAdminUserSelectActionTest
+  extends UsergroupAgendaAdminModoPortailLoggedTestCase {
+
   public function setUp() {
     parent::setUp();
 
@@ -604,13 +626,15 @@ class UsergroupAgendaAdminUserSelectActionTest extends UsergroupAgendaAdminModoP
 
 
 
+
 class UsergroupAgendaAdminPostAddActionTest extends UsergroupAgendaAdminModoPortailLoggedTestCase {
+
   protected $_created_group;
 
   public function setUp() {
     parent::setUp();
 
-    $this->fixture('Class_Users',
+    $this->fixture(Class_Users::class,
                    ['id' => 35,
                     'login' => 'padawan',
                     'id_site' => 4,
@@ -647,6 +671,7 @@ class UsergroupAgendaAdminPostAddActionTest extends UsergroupAgendaAdminModoPort
 
 
 
+
 class UsergroupAgendaAdminEditActionTest
   extends UsergroupAgendaAdminModoPortailLoggedTestCase {
 
@@ -699,13 +724,14 @@ class UsergroupAgendaAdminEditActionTest
 
 
 
+
 class UsergroupAgendaAdminAllWithCustomFieldsTest
   extends UsergroupAgendaAdminModoPortailLoggedTestCase {
 
   public function setUp() {
     parent::setUp();
 
-    $this->fixture('Class_Users',
+    $this->fixture(Class_Users::class,
                    ['id' => 35,
                     'login' => 'padawan',
                     'id_site' => 4,
@@ -714,22 +740,22 @@ class UsergroupAgendaAdminAllWithCustomFieldsTest
                     'role_level' => ZendAfi_Acl_AdminControllerRoles::ABONNE_SIGB]);
 
 
-    $this->fixture('Class_UserGroup',
+    $this->fixture(Class_UserGroup::class,
                    ['id' => 43,
                     'model_class'=> 'Class_RendezVous',
                     'libelle' => "MonSuperAgenda",
                     'users' => [Class_Users::find(35)]]);
 
-    $this->fixture('Class_UserGroup_Agenda',
+    $this->fixture(Class_UserGroup_Agenda::class,
                    ['id' => 43,
                     'model_class'=> 'Class_RendezVous',
                     'libelle' => "MonSuperAgenda",
                     'users' => [Class_Users::find(35)]]);
 
-    $this->fixture('Class_RendezVous',
+    $this->fixture(Class_RendezVous::class,
                    ['id' => 4,
                     'agenda' => Class_UserGroup::find(43),
-                    'location' => $this->fixture('Class_Lieu',
+                    'location' => $this->fixture(Class_Lieu::class,
                                                  ['id' => 8,
                                                   'libelle' => 'Bellevue']),
                     'date' => '2019-03-19',
@@ -737,27 +763,27 @@ class UsergroupAgendaAdminAllWithCustomFieldsTest
                     'end_time' => '10:30',
                     'comment' => 'with Arnaud']);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 5,
                     'type' => Class_CustomField_Meta::TEXT_INPUT,
                     'label' => 'Secteur',
                     'model' => 'UserGroup_Agenda']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 12,
                     'model_id' => 43,
                     'custom_field_id' => 5,
                     'value' => 'Yonne Nord'
                    ]);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 7,
                     'priority' => 5,
                     'label' => 'Notes',
                     'field_type' => Class_CustomField_Meta::TEXT_INPUT,
                     'model' => 'RendezVous']);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 11,
                     'priority' => 5,
                     'label' => 'Public',
@@ -765,7 +791,7 @@ class UsergroupAgendaAdminAllWithCustomFieldsTest
                     'options_list' => 'Adultes; Enfants; Adolescent; ',
                     'model' => 'RendezVous']);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 12,
                     'priority' => 5,
                     'label' => 'CSP',
@@ -773,40 +799,40 @@ class UsergroupAgendaAdminAllWithCustomFieldsTest
                     'options_list' => 'Pro; Sans Emploi; Test; ',
                     'model' => 'RendezVous']);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 10,
                     'priority' => 5,
                     'label' => 'Date suivi',
                     'field_type' => Class_CustomField_Meta::DATE,
                     'model' => 'RendezVous']);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 9,
                     'priority' => 5,
                     'label' => 'CheckList Préparation',
                     'field_type' => Class_CustomField_Meta::TEXT_AREA,
                     'model' => 'RendezVous']);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 8,
                     'priority' => 5,
                     'label' => 'Description Détaillée',
                     'field_type' => Class_CustomField_Meta::CKEDITOR,
                     'model' => 'RendezVous']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 25,
                     'custom_field_id' => 7,
                     'model_id' => 4,
                     'value' => 'ma blue note jolie']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 26,
                     'custom_field_id' => 11,
                     'model_id' => 5,
                     'value' => 'Adultes']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 27,
                     'custom_field_id' => 12,
                     'model_id' => 4,
@@ -817,7 +843,6 @@ class UsergroupAgendaAdminAllWithCustomFieldsTest
   }
 
 
-
   public function tearDown() {
     Class_RendezVous::setTimeSource(new TimeSourceForTest(null));
     parent::tearDown();
@@ -920,14 +945,16 @@ abstract class UsergroupAgendaAdminSearchCustomFieldsActionTestCase
 
   public function setUp() {
     parent::setUp();
-    $this->fixture('Class_UserGroup_Agenda', ['id' => 43,
-                                              'model_class'=> 'Class_RendezVous',
-                                              'libelle' => "MonSuperAgenda"]);
 
-    $this->fixture('Class_RendezVous',
+    $this->fixture(Class_UserGroup_Agenda::class,
+                   ['id' => 43,
+                    'model_class'=> 'Class_RendezVous',
+                    'libelle' => "MonSuperAgenda"]);
+
+    $this->fixture(Class_RendezVous::class,
                    ['id' => 4,
                     'agenda' => Class_UserGroup_Agenda::find(43),
-                    'location' => $this->fixture('Class_Lieu',
+                    'location' => $this->fixture(Class_Lieu::class,
                                                  ['id' => 8,
                                                   'libelle' => 'Bellevue']),
                     'date' => '2019-03-19',
@@ -935,10 +962,10 @@ abstract class UsergroupAgendaAdminSearchCustomFieldsActionTestCase
                     'end_time' => '10:30',
                     'comment' => 'with Arnaud']);
 
-    $this->fixture('Class_RendezVous',
+    $this->fixture(Class_RendezVous::class,
                    ['id' => 5,
                     'agenda' => Class_UserGroup_Agenda::find(43),
-                    'location' => $this->fixture('Class_Lieu',
+                    'location' => $this->fixture(Class_Lieu::class,
                                                  ['id' => 12,
                                                   'libelle' => 'Bron']),
                     'date' => '2019-07-19',
@@ -948,40 +975,40 @@ abstract class UsergroupAgendaAdminSearchCustomFieldsActionTestCase
 
     $this->onLoaderOfModel('Class_RendezVous');
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 5,
                     'type' => Class_CustomField_Meta::TEXT_INPUT,
                     'label' => 'Secteur',
                     'model' => 'UserGroup_Agenda']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 12,
                     'model_id' => 43,
                     'custom_field_id' => 5,
                     'value' => 'Yonne Nord'
                    ]);
 
-    $this->fixture('Class_CustomField_Meta',
+    $this->fixture(Class_CustomField_Meta::class,
                    ['id' => 1,
                     'field_type' => Class_CustomField_Meta::MULTI_CHECKBOX,
                     'options_list' => 'fromage;dessert;l\'association',
                     'indexable' => 1,
                    ]);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 3,
                     'meta_id' => 1,
                     'model' => 'RendezVous'
                    ]);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 7,
                     'priority' => 5,
                     'field_type' => Class_CustomField_Meta::TEXT_INPUT,
                     'indexable' => 1,
                     'model' => 'RendezVous']);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 10,
                     'priority' => 5,
                     'field_type' => Class_CustomField_Meta::SELECT,
@@ -989,44 +1016,44 @@ abstract class UsergroupAgendaAdminSearchCustomFieldsActionTestCase
                     'indexable' => 1,
                     'model' => 'RendezVous']);
 
-    $this->fixture('Class_CustomField_Meta',
+    $this->fixture(Class_CustomField_Meta::class,
                    ['id' => 2,
                     'field_type' => Class_CustomField_Meta::DATE,
                     'indexable' => 1,
                    ]);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 11,
                     'priority' => 5,
                     'meta_id' => 2,
                     'indexable' => 1,
                     'model' => 'RendezVous']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 25,
                     'custom_field_id' => 7,
                     'model_id' => 4,
                     'value' => 'ma blue note jolie']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 26,
                     'custom_field_id' => 10,
                     'model_id' => 5,
                     'value' => 'included']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 27,
                     'custom_field_id' => 10,
                     'model_id' => 4,
                     'value' => 'not included']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 28,
                     'custom_field_id' => 3,
                     'model_id' => 4,
                     'value' => 'fromage;dessert']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 29,
                     'custom_field_id' => 11,
                     'model_id' => 5,
@@ -1055,11 +1082,13 @@ abstract class UsergroupAgendaAdminSearchCustomFieldsActionTestCase
 
 
 
+
 class UsergroupAgendaAdminSearchCustomFieldsTextTest
   extends UsergroupAgendaAdminSearchCustomFieldsActionTestCase {
 
   public function setUp() {
     parent::setUp();
+
     $this->dispatchWithQuery(['search_field_7' => 'note']);
   }
 
@@ -1078,11 +1107,13 @@ class UsergroupAgendaAdminSearchCustomFieldsTextTest
 
 
 
+
 class UsergroupAgendaAdminSearchCustomFieldsTextWithQuoteTest
   extends UsergroupAgendaAdminSearchCustomFieldsActionTestCase {
 
   public function setUp() {
     parent::setUp();
+
     $this->dispatchWithQuery(['search_field_7' => "no'te en plus"]);
   }
 
@@ -1108,11 +1139,13 @@ class UsergroupAgendaAdminSearchCustomFieldsTextWithQuoteTest
 
 
 
+
 class UsergroupAgendaAdminSearchCustomFieldsMultiTest
   extends UsergroupAgendaAdminSearchCustomFieldsActionTestCase {
 
   public function setUp() {
     parent::setUp();
+
     $this->dispatchWithQuery(['search_field_10[]' => 'included']);
   }
 
@@ -1132,11 +1165,13 @@ class UsergroupAgendaAdminSearchCustomFieldsMultiTest
 
 
 
+
 class UsergroupAgendaAdminSearchCustomFieldsSelectTest
   extends UsergroupAgendaAdminSearchCustomFieldsActionTestCase {
 
   public function setUp() {
     parent::setUp();
+
     $this->dispatch($this->urlWithParams([])
                     . '&search_field_3[]=fromage&search_field_3[]=dessert&search_field_3[]=l\'association');
   }
@@ -1165,6 +1200,7 @@ class UsergroupAgendaAdminSearchCustomFieldsSelectTest
 
 
 
+
 class UsergroupAgendaAdminSearchCustomFieldsSelectWithoutResultTest
   extends UsergroupAgendaAdminSearchCustomFieldsActionTestCase {
 
@@ -1206,11 +1242,13 @@ class UsergroupAgendaAdminSearchCustomFieldsSelectWithoutResultTest
 
 
 
+
 class UsergroupAgendaAdminSearchCustomFieldDateRangeTest
   extends UsergroupAgendaAdminSearchCustomFieldsActionTestCase {
 
   public function setUp() {
     parent::setUp();
+
     $this->dispatchWithQuery(['search_field_11_start' => '01/06/2019',
                               'search_field_11_end' => '31/07/2019']);
   }
@@ -1237,11 +1275,13 @@ class UsergroupAgendaAdminSearchCustomFieldDateRangeTest
 
 
 
+
 class UsergroupAgendaAdminSearchCustomFieldOfAgendaTest
   extends UsergroupAgendaAdminSearchCustomFieldsActionTestCase {
 
   public function setUp() {
     parent::setUp();
+
     $this->dispatchWithQuery(['search_field_5' => 'nord']);
   }
 
@@ -1267,6 +1307,7 @@ class UsergroupAgendaAdminSearchCustomFieldOfAgendaTest
 
 
 
+
 class UsergroupAgendaAdminSearchCustomFieldOfAgendaWithoutResultTest
   extends UsergroupAgendaAdminSearchCustomFieldsActionTestCase {
 
@@ -1298,6 +1339,7 @@ class UsergroupAgendaAdminSearchCustomFieldOfAgendaWithoutResultTest
 
 
 
+
 class UsergroupAgendaAdminExportActionTest
   extends UsergroupAgendaAdminModoPortailLoggedTestCase {
 
@@ -1305,7 +1347,8 @@ class UsergroupAgendaAdminExportActionTest
 
   public function setUp() {
     parent::setUp();
-    $this->fixture('Class_Users',
+
+    $this->fixture(Class_Users::class,
                    ['id' => 35,
                     'login' => 'padawan',
                     'id_site' => 4,
@@ -1313,7 +1356,7 @@ class UsergroupAgendaAdminExportActionTest
                     'password' => 's3cr3t \o/',
                     'role_level' => ZendAfi_Acl_AdminControllerRoles::ABONNE_SIGB]);
 
-    $this->fixture('Class_Users',
+    $this->fixture(Class_Users::class,
                    ['id' => 36,
                     'login' => 'Yogi',
                     'prenom' => 'Yoda',
@@ -1322,15 +1365,16 @@ class UsergroupAgendaAdminExportActionTest
                     'password' => 's3cr3t \o/',
                     'role_level' => ZendAfi_Acl_AdminControllerRoles::ABONNE_SIGB]);
 
-    $this->fixture('Class_UserGroup_Agenda', ['id' => 43,
-                                              'model_class'=> 'Class_RendezVous',
-                                              'libelle' => "MonSuperAgenda",
-                                              'users' => [Class_Users::find(35),Class_Users::find(36)]]);
+    $this->fixture(Class_UserGroup_Agenda::class,
+                   ['id' => 43,
+                    'model_class'=> 'Class_RendezVous',
+                    'libelle' => "MonSuperAgenda",
+                    'users' => [Class_Users::find(35), Class_Users::find(36)]]);
 
-    $this->fixture('Class_RendezVous',
+    $this->fixture(Class_RendezVous::class,
                    ['id' => 4,
                     'agenda' => Class_UserGroup_Agenda::find(43),
-                    'location' => $this->fixture('Class_Lieu',
+                    'location' => $this->fixture(Class_Lieu::class,
                                                  ['id' => 8,
                                                   'libelle' => 'Bellevue']),
                     'date' => '2019-03-19',
@@ -1338,27 +1382,27 @@ class UsergroupAgendaAdminExportActionTest
                     'end_time' => '10:30',
                     'comment' => 'with Arnaud']);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 5,
                     'type' => Class_CustomField_Meta::TEXT_INPUT,
                     'label' => 'Secteur',
                     'model' => 'UserGroup_Agenda']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 12,
                     'model_id' => 43,
                     'custom_field_id' => 5,
                     'value' => 'Yonne Nord'
                    ]);
 
-    $this->fixture('Class_CustomField',
+    $this->fixture(Class_CustomField::class,
                    ['id' => 7,
                     'type' => Class_CustomField_Meta::SELECT,
                     'label' => 'CSP',
-                    'options_list'=>'Sans Emploi;Cadre Sup;Technicien Supérieur',
+                    'options_list' => 'Sans Emploi;Cadre Sup;Technicien Supérieur',
                     'model' => 'UserGroup_Agenda']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 14,
                     'model_id' => 43,
                     'custom_field_id' => 7,
@@ -1371,7 +1415,7 @@ class UsergroupAgendaAdminExportActionTest
                     'label' => 'Dernière fois',
                     'model' => 'RendezVous']);
 
-    $this->fixture('Class_CustomField_Value',
+    $this->fixture(Class_CustomField_Value::class,
                    ['id' => 13,
                     'model_id' => 4,
                     'custom_field_id' => 6,