diff --git a/main/admin/add_drh_to_user.php b/main/admin/add_drh_to_user.php
index 3b42c67e551..d78fe82d552 100644
--- a/main/admin/add_drh_to_user.php
+++ b/main/admin/add_drh_to_user.php
@@ -15,7 +15,7 @@
}
$em = Database::getManager();
-$relationsRepo = $em->getRepository('ChamiloCoreBundle:UserRelUser');
+$userRepository = $em->getRepository('ChamiloUserBundle:User');
/** @var UserEntity $user */
$user = UserManager::getManager()->find($_REQUEST['u']);
@@ -23,10 +23,12 @@
api_not_allowed(true);
}
-$subscribedUsers = $user->getHrm();
+$subscribedUsers = $userRepository->getAssignedHrmUserList(
+ $user->getId(),
+ api_get_current_access_url_id()
+);
$hrmOptions = [];
-
/** @var UserRelUser $subscribedUser */
foreach ($subscribedUsers as $subscribedUser) {
/** @var UserEntity $hrm */
@@ -58,7 +60,6 @@
foreach ($subscribedUsers as $subscribedUser) {
$em->remove($subscribedUser);
}
-
$em->flush();
$values = $form->exportValues();
diff --git a/main/admin/user_information.php b/main/admin/user_information.php
index 2615dc688ce..9a8499ed429 100755
--- a/main/admin/user_information.php
+++ b/main/admin/user_information.php
@@ -620,7 +620,13 @@
echo $studentBossListToString;
}
-$hrmList = $userEntity->getHrm();
+$em = Database::getManager();
+$userRepository = $em->getRepository('ChamiloUserBundle:User');
+
+$hrmList = $userRepository->getAssignedHrmUserList(
+ $userEntity->getId(),
+ api_get_current_access_url_id()
+);
if ($hrmList) {
echo Display::page_subheader(get_lang('HrmList'));
@@ -629,21 +635,20 @@
/** @var UserRelUser $hrm */
foreach ($hrmList as $hrm) {
$hrmInfo = api_get_user_info($hrm->getFriendUserId());
- $userPicture = isset($hrmInfo["avatar_medium"]) ? $hrmInfo["avatar_medium"] : $hrmInfo["avatar"];
+ $userPicture = isset($hrmInfo['avatar_medium']) ? $hrmInfo['avatar_medium'] : $hrmInfo['avatar'];
echo '
';
}
-
echo '';
}
@@ -656,7 +661,7 @@
foreach ($usersAssigned as $userAssigned) {
$userAssigned = api_get_user_info($userAssigned['user_id']);
- $userPicture = isset($userAssigned["avatar_medium"]) ? $userAssigned["avatar_medium"] : $userAssigned["avatar"];
+ $userPicture = isset($userAssigned['avatar_medium']) ? $userAssigned['avatar_medium'] : $userAssigned['avatar'];
echo '';
echo '
';
@@ -664,13 +669,12 @@
echo Display::img($userPicture, $userAssigned['complete_name'], ['class' => 'media-object'], false);
echo '
';
echo '
';
- echo '';
- echo $userAssigned['username'];
+ echo '';
+ echo $userAssigned['official_code'];
echo '
';
echo '
';
echo '';
}
-
echo '';
}
}
diff --git a/src/Chamilo/UserBundle/Entity/Repository/UserRepository.php b/src/Chamilo/UserBundle/Entity/Repository/UserRepository.php
index c5dbc7603b4..dfd8dbef80d 100644
--- a/src/Chamilo/UserBundle/Entity/Repository/UserRepository.php
+++ b/src/Chamilo/UserBundle/Entity/Repository/UserRepository.php
@@ -320,4 +320,35 @@ public function findUsersToSendMessage($currentUserId, $search, $limit = 10)
->setParameters(['search' => "%$search%"])
->getResult();
}
+
+ /**
+ * Get the list of HRM who have assigned this user.
+ *
+ * @param int $userId
+ * @param int $urlId
+ *
+ * @return array
+ */
+ public function getAssignedHrmUserList($userId, $urlId)
+ {
+ $qb = $this->createQueryBuilder('user');
+
+ $hrmList = $qb
+ ->select('uru')
+ ->innerJoin('ChamiloCoreBundle:UserRelUser', 'uru', Join::WITH,'uru.userId = user.id')
+ ->innerJoin('ChamiloCoreBundle:AccessUrlRelUser', 'auru', Join::WITH, 'auru.userId = uru.friendUserId')
+ ->where(
+ $qb->expr()->eq('auru.accessUrlId', $urlId)
+ )
+ ->andWhere(
+ $qb->expr()->eq('uru.userId', $userId)
+ )
+ ->andWhere(
+ $qb->expr()->eq('uru.relationType', USER_RELATION_TYPE_RRHH)
+ )
+ ->getQuery()
+ ->getResult();
+
+ return $hrmList;
+ }
}
diff --git a/src/Chamilo/UserBundle/Entity/User.php b/src/Chamilo/UserBundle/Entity/User.php
index 8deba872e38..dd0dc8295c0 100644
--- a/src/Chamilo/UserBundle/Entity/User.php
+++ b/src/Chamilo/UserBundle/Entity/User.php
@@ -2470,33 +2470,4 @@ public function getSessionAsGeneralCoach()
{
return $this->sessionAsGeneralCoach;
}
-
- /**
- * Get the list of HRM who have assigned this user.
- *
- * @return array
- */
- public function getHrm()
- {
- $em = \Database::getManager();
- $qb = $em->createQueryBuilder();
-
- $hrmList = $qb
- ->select('uru')
- ->from('ChamiloCoreBundle:UserRelUser', 'uru')
- ->innerJoin('ChamiloCoreBundle:AccessUrlRelUser', 'auru', Join::WITH, 'auru.userId = uru.friendUserId')
- ->where(
- $qb->expr()->eq('auru.accessUrlId', api_get_current_access_url_id())
- )
- ->andWhere(
- $qb->expr()->eq('uru.userId', $this->id)
- )
- ->andWhere(
- $qb->expr()->eq('uru.relationType', USER_RELATION_TYPE_RRHH)
- )
- ->getQuery()
- ->getResult();
-
- return $hrmList;
- }
}