Internal: Removing APP_MULTIPLE_ACCESS_URL env param

pull/5682/head
Angel Fernando Quiroz Campos 1 year ago
parent 4a0c96f8e3
commit 4599b6ac36
No known key found for this signature in database
GPG Key ID: B284841AE3E562CD
  1. 2
      .env.dist
  2. 18
      public/main/inc/lib/api.lib.php
  3. 17
      src/CoreBundle/EventListener/LegacyListener.php
  4. 8
      src/CoreBundle/Repository/Node/UsergroupRepository.php
  5. 14
      src/CoreBundle/ServiceHelper/AccessUrlHelper.php

@ -33,8 +33,6 @@ APP_LOCALE='en_US'
APP_CUSTOM_VUE_TEMPLATE='0'
APP_MULTIPLE_ACCESS_URL=''
GOOGLE_MAPS_API_KEY=''
#APP_API_PLATFORM_URL='http://localhost/api/' #deprecated

@ -11,6 +11,7 @@ use Chamilo\CoreBundle\Entity\User;
use Chamilo\CoreBundle\Entity\UserCourseCategory;
use Chamilo\CoreBundle\Exception\NotAllowedException;
use Chamilo\CoreBundle\Framework\Container;
use Chamilo\CoreBundle\ServiceHelper\AccessUrlHelper;
use Chamilo\CoreBundle\ServiceHelper\MailHelper;
use Chamilo\CoreBundle\ServiceHelper\PermissionServiceHelper;
use Chamilo\CoreBundle\ServiceHelper\ThemeHelper;
@ -5972,21 +5973,12 @@ function api_get_course_url($courseId = null, $sessionId = null, $groupId = null
*/
function api_get_multiple_access_url(): bool
{
static $accessUrlEnabled;
if (!isset($accessUrlEnabled)) {
$table = Database::get_main_table(TABLE_MAIN_ACCESS_URL);
$sql = "SELECT id FROM $table";
$res = Database::query($sql);
if (Database::num_rows($res) > 1) {
$accessUrlEnabled = true;
} else {
$accessUrlEnabled = false;
}
}
return $accessUrlEnabled;
return Container::$container->get(AccessUrlHelper::class)->isMultiple();
}
/**
* @deprecated Use AccessUrlHelper::isMultiple
*/
function api_is_multiple_url_enabled(): bool
{
return api_get_multiple_access_url();

@ -9,6 +9,7 @@ namespace Chamilo\CoreBundle\EventListener;
use Chamilo\CoreBundle\Entity\User;
use Chamilo\CoreBundle\Framework\Container;
use Chamilo\CoreBundle\Repository\Node\AccessUrlRepository;
use Chamilo\CoreBundle\ServiceHelper\AccessUrlHelper;
use Chamilo\CoreBundle\Settings\SettingsManager;
use Exception;
use Symfony\Component\DependencyInjection\ContainerInterface;
@ -34,6 +35,7 @@ class LegacyListener
private readonly TokenStorageInterface $tokenStorage,
private readonly AccessUrlRepository $accessUrlRepository,
private readonly RouterInterface $router,
private readonly AccessUrlHelper $accessUrlHelper,
private readonly ParameterBagInterface $parameterBag,
private readonly SettingsManager $settingsManager,
private readonly ContainerInterface $container,
@ -147,16 +149,9 @@ class LegacyListener
$session->set('cid_reset', false);
}
$urlId = $this->accessUrlRepository->getFirstId();
if (1 === (int) $this->parameterBag->get('multiple_access_url')) {
$url = $this->router->generate('index', [], UrlGeneratorInterface::ABSOLUTE_URL);
$accessUrl = $this->accessUrlRepository->findOneBy(['url' => $url]);
if (null !== $accessUrl) {
$urlId = $accessUrl->getId();
}
}
$session->set('access_url_id', $urlId);
$session->set(
'access_url_id',
$this->accessUrlHelper->getCurrent()->getId()
);
}
}

@ -49,7 +49,7 @@ class UsergroupRepository extends ResourceRepository
}
}
if ($this->accessUrlHelper->isMultipleEnabled()) {
if ($this->accessUrlHelper->isMultiple()) {
$accessUrl = $this->accessUrlHelper->getCurrent();
$qb->innerJoin('g.urls', 'u')
@ -88,7 +88,7 @@ class UsergroupRepository extends ResourceRepository
->setMaxResults($limit)
;
if ($this->accessUrlHelper->isMultipleEnabled()) {
if ($this->accessUrlHelper->isMultiple()) {
$accessUrl = $this->accessUrlHelper->getCurrent();
$qb->innerJoin('g.urls', 'u')
@ -124,7 +124,7 @@ class UsergroupRepository extends ResourceRepository
->setMaxResults($limit)
;
if ($this->accessUrlHelper->isMultipleEnabled()) {
if ($this->accessUrlHelper->isMultiple()) {
$accessUrl = $this->accessUrlHelper->getCurrent();
$qb->innerJoin('g.urls', 'u')
@ -311,7 +311,7 @@ class UsergroupRepository extends ResourceRepository
$qb->select('g.id, g.title, g.description, g.url, g.picture');
}
if ($this->accessUrlHelper->isMultipleEnabled()) {
if ($this->accessUrlHelper->isMultiple()) {
$accessUrl = $this->accessUrlHelper->getCurrent();
$qb->innerJoin('g.accessUrls', 'a', 'WITH', 'g.id = a.usergroup')

@ -8,7 +8,6 @@ namespace Chamilo\CoreBundle\ServiceHelper;
use Chamilo\CoreBundle\Entity\AccessUrl;
use Chamilo\CoreBundle\Repository\Node\AccessUrlRepository;
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface;
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
use Symfony\Component\Routing\RouterInterface;
@ -16,13 +15,18 @@ class AccessUrlHelper
{
public function __construct(
private readonly AccessUrlRepository $accessUrlRepository,
private readonly ParameterBagInterface $parameterBag,
private readonly RouterInterface $router,
) {}
public function isMultipleEnabled(): bool
public function isMultiple(): bool
{
return 1 === (int) $this->parameterBag->get('multiple_access_url');
static $accessUrlEnabled;
if (!isset($accessUrlEnabled)) {
$accessUrlEnabled = $this->accessUrlRepository->count([]) > 1;
}
return $accessUrlEnabled;
}
public function getFirstAccessUrl(): AccessUrl
@ -42,7 +46,7 @@ class AccessUrlHelper
$accessUrl = $this->getFirstAccessUrl();
if ($this->isMultipleEnabled()) {
if ($this->isMultiple()) {
$url = $this->router->generate('index', [], UrlGeneratorInterface::ABSOLUTE_URL);
/** @var AccessUrl $accessUrl */

Loading…
Cancel
Save