MeetingEntity::getRegistrableUsers() bug fix - refs BT#17288

pull/3383/head
Sébastien Ducoulombier 5 years ago
parent 83db53798f
commit ebe5387fa5
  1. 20
      plugin/zoom/Entity/MeetingEntity.php

@ -4,6 +4,7 @@
namespace Chamilo\PluginBundle\Zoom; namespace Chamilo\PluginBundle\Zoom;
use Chamilo\CoreBundle\Entity\Course; use Chamilo\CoreBundle\Entity\Course;
use Chamilo\CoreBundle\Entity\CourseRelUser;
use Chamilo\CoreBundle\Entity\Session; use Chamilo\CoreBundle\Entity\Session;
use Chamilo\CoreBundle\Entity\SessionRelCourseRelUser; use Chamilo\CoreBundle\Entity\SessionRelCourseRelUser;
use Chamilo\PluginBundle\Zoom\API\MeetingInfoGet; use Chamilo\PluginBundle\Zoom\API\MeetingInfoGet;
@ -354,15 +355,16 @@ class MeetingEntity
*/ */
public function getRegistrableUsers() public function getRegistrableUsers()
{ {
/** @var User[] $users */
$users = []; $users = [];
if (!$this->isCourseMeeting()) { if (!$this->isCourseMeeting()) {
$users = Database::getManager()->getRepository('ChamiloUserBundle:User')->findBy(['active' => true]); $users = Database::getManager()->getRepository('ChamiloUserBundle:User')->findBy(['active' => true]);
} } elseif (is_null($this->session)) {
if (is_null($this->session)) {
if (!is_null($this->course)) { if (!is_null($this->course)) {
$users = $this->course->getUsers()->matching( /** @var CourseRelUser $courseRelUser */
Criteria::create()->where(Criteria::expr()->isNull('email')) foreach ($this->course->getUsers() as $courseRelUser) {
); $users[] = $courseRelUser->getUser();
}
} }
} else { } else {
if (!is_null($this->course)) { if (!is_null($this->course)) {
@ -375,8 +377,14 @@ class MeetingEntity
} }
} }
} }
$activeUsersWithEmail = [];
foreach ($users as $user) {
if ($user->isActive() && !empty($user->getEmail())) {
$activeUsersWithEmail[] = $user;
}
}
return $users; return $activeUsersWithEmail;
} }
/** /**

Loading…
Cancel
Save