hasParameter($parameter)) { return self::$container->getParameter($parameter); } return false; } /** * @return string */ public static function getEnvironment() { return self::$container->get('kernel')->getEnvironment(); } /** * @return RoleHierarchy */ public static function getRoles() { return self::$container->get('security.role_hierarchy'); } /** * @return string */ public static function getLogDir() { return self::$container->get('kernel')->getLogDir(); } /** * @return string */ public static function getCacheDir() { return self::$container->get('kernel')->getCacheDir().'/'; } /** * @return string */ public static function getProjectDir() { if (isset(self::$container)) { return self::$container->get('kernel')->getProjectDir().'/'; } return str_replace('\\', '/', realpath(__DIR__.'/../../../')).'/'; } /** * @return string */ public static function isInstalled() { return self::$container->get('kernel')->isInstalled(); } /** * @return Environment */ public static function getTwig() { return self::$container->get('twig'); } /** * @return object|Environment|null */ public static function getTemplating() { return self::$container->get('twig'); } /** * @return Editor */ public static function getHtmlEditor() { return self::$container->get('chamilo_core.html_editor'); } /** * @return object|Request */ public static function getRequest() { if (null === self::$container) { return null; } if (!empty(self::$request)) { return self::$request; } return self::$container->get('request_stack'); } /** * @param Request $request */ public static function setRequest($request) { self::$request = $request; } /** * @return Session|false */ public static function getSession() { if (self::$container && self::$container->has('session')) { return self::$container->get('session'); } return false; } /** * @return AuthorizationChecker */ public static function getAuthorizationChecker() { return self::$container->get('security.authorization_checker'); } /** * @return object|\Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage */ public static function getTokenStorage() { return self::$container->get('security.token_storage'); } /** * @return TranslatorInterface */ public static function getTranslator() { if (isset(self::$translator)) { return self::$translator; } if (self::$container) { return self::$container->get('translator'); } return false; } public static function getMailer() { return self::$container->get('Symfony\Component\Mailer\Mailer'); } /** * @return SettingsManager */ public static function getSettingsManager() { return self::$container->get('chamilo.settings.manager'); } /*public static function setSettingsManager($manager) { self::$settingsManager = $manager; }*/ /** * @return \Chamilo\CourseBundle\Manager\SettingsManager */ public static function getCourseSettingsManager() { return self::$container->get('Chamilo\CourseBundle\Manager\SettingsManager'); } /** * @return \Doctrine\ORM\EntityManager */ public static function getEntityManager() { return \Database::getManager(); } public static function getUserManager() { return self::$container->get('Chamilo\CoreBundle\Repository\UserRepository'); } /** * @return CAttendanceRepository */ public static function getAttendanceRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CAttendanceRepository'); } /** * @return CAnnouncementRepository */ public static function getAnnouncementRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CAnnouncementRepository'); } /** * @return AccessUrlRepository */ public static function getAccessUrlRepository() { return self::$container->get('Chamilo\CoreBundle\Repository\AccessUrlRepository'); } /** * @return CAnnouncementAttachmentRepository */ public static function getAnnouncementAttachmentRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CAnnouncementAttachmentRepository'); } /** * @return CourseRepository */ public static function getCourseRepository() { return self::$container->get(CourseRepository::class); } /** * @return CourseCategoryRepository|object|null */ public static function getCourseCategoryRepository() { return self::$container->get('Chamilo\CoreBundle\Repository\CourseCategoryRepository'); } /** * @return CCalendarEventRepository */ public static function getCalendarEventRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CCalendarEventRepository'); } /** * @return CCalendarEventAttachmentRepository */ public static function getCalendarEventAttachmentRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CCalendarEventAttachmentRepository'); } /** * @return CDocumentRepository */ public static function getDocumentRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CDocumentRepository'); } /** * @return CQuizRepository */ public static function getExerciseRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CQuizRepository'); } /** * @return CExerciseCategoryRepository */ public static function getExerciseCategoryRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CExerciseCategoryRepository'); } /** * @return CForumForumRepository */ public static function getForumRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CForumForumRepository'); } /** * @return CForumCategoryRepository */ public static function getForumCategoryRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CForumCategoryRepository'); } /** * @return CForumPostRepository */ public static function getForumPostRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CForumPostRepository'); } /** * @return CForumAttachmentRepository */ public static function getForumAttachmentRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CForumAttachmentRepository'); } /** * @return CForumThreadRepository */ public static function getForumThreadRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CForumThreadRepository'); } /** * @return CGroupRepository */ public static function getGroupRepository() { return self::$container->get('CGroupRepository'); } /** * @return CQuizQuestionRepository */ public static function getQuestionRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CQuizQuestionRepository'); } /** * @return CQuizQuestionCategoryRepository */ public static function getQuestionCategoryRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CQuizQuestionCategoryRepository'); } /** * @return CLinkRepository */ public static function getLinkRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CLinkRepository'); } /** * @return CLinkCategoryRepository */ public static function getLinkCategoryRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CLinkCategoryRepository'); } /** * @return CLpRepository */ public static function getLpRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CLpRepository'); } /** * @return CLpCategoryRepository */ public static function getLpCategoryRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CLpCategoryRepository'); } /** * @return UserRepository */ public static function getUserRepository() { return self::$container->get('Chamilo\CoreBundle\Repository\UserRepository'); } /** * @return IllustrationRepository */ public static function getIllustrationRepository() { return self::$container->get('Chamilo\CoreBundle\Repository\IllustrationRepository'); } /** * @return CShortcutRepository */ public static function getShortcutRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CShortcutRepository'); } /** * @return CStudentPublicationRepository */ public static function getStudentPublicationRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CStudentPublicationRepository'); } /** * @return CStudentPublicationAssignmentRepository */ public static function getStudentPublicationAssignmentRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CStudentPublicationAssignmentRepository'); } /** * @return CStudentPublicationCommentRepository */ public static function getStudentPublicationCommentRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CStudentPublicationCommentRepository'); } public static function getThematicRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CThematicRepository'); } public static function getThematicPlanRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CThematicPlanRepository'); } public static function getThematicAdvanceRepository() { return self::$container->get('Chamilo\CourseBundle\Repository\CThematicAdvanceRepository'); } /** * @return \Symfony\Component\Form\FormFactory */ public static function getFormFactory() { return self::$container->get('form.factory'); } /** * @param string $message * @param string $type error|success|warning|danger */ public static function addFlash($message, $type = 'success') { $session = self::getSession(); $session->getFlashBag()->add($type, $message); } /** * @return object|\Symfony\Cmf\Component\Routing\ChainRouter */ public static function getRouter() { return self::$container->get('router'); } /** * @return ToolChain */ public static function getToolChain() { return self::$container->get(ToolChain::class); } /** * @param ContainerInterface $container * @param bool $setSession */ public static function setLegacyServices($container, $setSession = true) { \Database::setConnection($container->get('doctrine.dbal.default_connection')); $em = $container->get('doctrine.orm.entity_manager'); \Database::setManager($em); \CourseManager::setEntityManager($em); //self::setSettingsManager($container->get('chamilo.settings.manager')); //self::setUserManager($container->get('fos_user.user_manager')); \CourseManager::setCourseSettingsManager($container->get('Chamilo\CourseBundle\Manager\SettingsManager')); // Setting course tool chain (in order to create tools to a course) \CourseManager::setToolList($container->get(ToolChain::class)); if ($setSession) { self::$session = $container->get('session'); } } }