<?php
namespace App\Service;
use App\Entity\Organisation;
use App\Entity\Subscription;
use App\Entity\User;
use App\Repository\SubscriptionRepository;
use Symfony\Component\HttpFoundation\RequestStack;
class Misc
{ /**
* @var SubscriptionRepository
*/
private $subRepos;
private $requestStack;
public function __construct(
RequestStack $requestStack,
SubscriptionRepository $subRepos
)
{
$this->requestStack = $requestStack;
$this->subRepos = $subRepos;
}
/**
* @param User $user
* @return Organisation|null
*/
public function getUserOrganisation(User $user): ?Organisation
{
$session = $this->requestStack->getSession();
$organisation = $session->get('organisation', null);
if ($organisation===null) {
$organisation = $user->getOrganisations()->get(0);
}
return $organisation;
}
/**
* Retoure la deniere Subsription activé par l organisation
*
* @return null|Subsription
*/
public function getActifSubsription(?Organisation $organisation): ?Subscription
{
if($organisation===null){
return null;
}
return $this->subRepos->findActifSubscriptionByOrga($organisation);
}
}