You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							216 lines
						
					
					
						
							7.7 KiB
						
					
					
				
			
		
		
	
	
							216 lines
						
					
					
						
							7.7 KiB
						
					
					
				<?php
 | 
						|
/* For licensing terms, see /license.txt */
 | 
						|
 | 
						|
use Symfony\Component\HttpKernel\Kernel;
 | 
						|
use Symfony\Component\Config\Loader\LoaderInterface;
 | 
						|
use Chamilo\CoreBundle\Component\Utils\ChamiloApi;
 | 
						|
 | 
						|
/**
 | 
						|
 * Class AppKernel
 | 
						|
 */
 | 
						|
class AppKernel extends Kernel
 | 
						|
{
 | 
						|
    protected $rootDir;
 | 
						|
 | 
						|
    public function registerBundles()
 | 
						|
    {
 | 
						|
        $bundles = array(
 | 
						|
            new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
 | 
						|
            new Symfony\Bundle\SecurityBundle\SecurityBundle(),
 | 
						|
            new Symfony\Bundle\TwigBundle\TwigBundle(),
 | 
						|
            new Symfony\Bundle\MonologBundle\MonologBundle(),
 | 
						|
            new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
 | 
						|
            new Symfony\Bundle\AsseticBundle\AsseticBundle(),
 | 
						|
            new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
 | 
						|
 | 
						|
            new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
 | 
						|
            new Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle(),
 | 
						|
            //new Doctrine\Bundle\PHPCRBundle\DoctrinePHPCRBundle(),
 | 
						|
            new Doctrine\Bundle\DoctrineCacheBundle\DoctrineCacheBundle(),
 | 
						|
 | 
						|
            new FOS\RestBundle\FOSRestBundle(),
 | 
						|
            new JMS\SerializerBundle\JMSSerializerBundle($this),
 | 
						|
 | 
						|
            // KNP HELPER BUNDLES
 | 
						|
            new Knp\Bundle\MenuBundle\KnpMenuBundle(),
 | 
						|
            new Knp\Bundle\MarkdownBundle\KnpMarkdownBundle(),
 | 
						|
            // Data grid
 | 
						|
            //new APY\DataGridBundle\APYDataGridBundle(),
 | 
						|
            new Chamilo\FaqBundle\ChamiloFaqBundle(),
 | 
						|
            new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle(),
 | 
						|
            new A2lix\TranslationFormBundle\A2lixTranslationFormBundle(),
 | 
						|
 | 
						|
            // Sonata
 | 
						|
            new Sonata\EasyExtendsBundle\SonataEasyExtendsBundle(),
 | 
						|
            new Sonata\CoreBundle\SonataCoreBundle(),
 | 
						|
            new Sonata\IntlBundle\SonataIntlBundle(),
 | 
						|
            new Sonata\FormatterBundle\SonataFormatterBundle(),
 | 
						|
            new Sonata\CacheBundle\SonataCacheBundle(),
 | 
						|
            new Sonata\BlockBundle\SonataBlockBundle(),
 | 
						|
            new Sonata\SeoBundle\SonataSeoBundle(),
 | 
						|
            new Sonata\ClassificationBundle\SonataClassificationBundle(),
 | 
						|
            new Sonata\NotificationBundle\SonataNotificationBundle(),
 | 
						|
            new Sonata\DatagridBundle\SonataDatagridBundle(),
 | 
						|
            new Sonata\MediaBundle\SonataMediaBundle(),
 | 
						|
            new Sonata\PageBundle\SonataPageBundle(),
 | 
						|
            new Theodo\Evolution\Bundle\SessionBundle\TheodoEvolutionSessionBundle(),
 | 
						|
 | 
						|
            new Spy\TimelineBundle\SpyTimelineBundle(),
 | 
						|
            new Sonata\TimelineBundle\SonataTimelineBundle(),
 | 
						|
 | 
						|
            //new SimpleThings\EntityAudit\SimpleThingsEntityAuditBundle(),
 | 
						|
 | 
						|
            new Sonata\AdminBundle\SonataAdminBundle(),
 | 
						|
            new Sonata\DoctrineORMAdminBundle\SonataDoctrineORMAdminBundle(),
 | 
						|
 | 
						|
 | 
						|
            // CMF Integration
 | 
						|
            new Symfony\Cmf\Bundle\RoutingBundle\CmfRoutingBundle(),
 | 
						|
            //new Symfony\Cmf\Bundle\SearchBundle\CmfSearchBundle(),
 | 
						|
            //new Symfony\Cmf\Bundle\BlogBundle\CmfBlogBundle(),
 | 
						|
            //new Sonata\DoctrinePHPCRAdminBundle\SonataDoctrinePHPCRAdminBundle(),
 | 
						|
 | 
						|
            // Oauth
 | 
						|
            //new HWI\Bundle\OAuthBundle\HWIOAuthBundle(),
 | 
						|
 | 
						|
            //new Gregwar\CaptchaBundle\GregwarCaptchaBundle(),
 | 
						|
            new Mopa\Bundle\BootstrapBundle\MopaBootstrapBundle(),
 | 
						|
            //new Liip\ThemeBundle\LiipThemeBundle(),
 | 
						|
            new Ivory\CKEditorBundle\IvoryCKEditorBundle(),
 | 
						|
            new FM\ElfinderBundle\FMElfinderBundle(),
 | 
						|
            new FOS\JsRoutingBundle\FOSJsRoutingBundle(),
 | 
						|
            new Knp\DoctrineBehaviors\Bundle\DoctrineBehaviorsBundle(),
 | 
						|
 | 
						|
            // User
 | 
						|
            new FOS\UserBundle\FOSUserBundle(),
 | 
						|
            new Sonata\UserBundle\SonataUserBundle('FOSUserBundle'),
 | 
						|
            new Chamilo\UserBundle\ChamiloUserBundle(),
 | 
						|
            /*
 | 
						|
            // Sylius
 | 
						|
            /*new Sylius\Bundle\SettingsBundle\SyliusSettingsBundle(),
 | 
						|
            //new Sylius\Bundle\AttributeBundle\SyliusAttributeBundle(),
 | 
						|
            new Sylius\Bundle\ResourceBundle\SyliusResourceBundle(),
 | 
						|
            new Sylius\Bundle\FlowBundle\SyliusFlowBundle(),
 | 
						|
            new WhiteOctober\PagerfantaBundle\WhiteOctoberPagerfantaBundle(),
 | 
						|
            new Bazinga\Bundle\HateoasBundle\BazingaHateoasBundle(),*/
 | 
						|
 | 
						|
            // Chamilo
 | 
						|
            //new Chamilo\InstallerBundle\ChamiloInstallerBundle(),
 | 
						|
            new Chamilo\CoreBundle\ChamiloCoreBundle(),
 | 
						|
            new Chamilo\CourseBundle\ChamiloCourseBundle(),
 | 
						|
            // new Chamilo\SettingsBundle\ChamiloSettingsBundle(),
 | 
						|
            new Chamilo\ThemeBundle\ChamiloThemeBundle(),
 | 
						|
            //new Chamilo\NotificationBundle\ChamiloNotificationBundle(),
 | 
						|
            new Chamilo\AdminBundle\ChamiloAdminBundle(),
 | 
						|
            new Chamilo\TimelineBundle\ChamiloTimelineBundle(),
 | 
						|
            new \Chamilo\ContactBundle\ChamiloContactBundle(),
 | 
						|
 | 
						|
            // Based in Sonata
 | 
						|
            new Chamilo\ClassificationBundle\ChamiloClassificationBundle(),
 | 
						|
            new Chamilo\MediaBundle\ChamiloMediaBundle(),
 | 
						|
            new Chamilo\PageBundle\ChamiloPageBundle(),
 | 
						|
            /*
 | 
						|
            // Chamilo course tool
 | 
						|
            //new Chamilo\NotebookBundle\ChamiloNotebookBundle(),
 | 
						|
 | 
						|
            // Data
 | 
						|
            //new Oneup\FlysystemBundle\OneupFlysystemBundle(), */
 | 
						|
 | 
						|
            // Extra
 | 
						|
            new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(),
 | 
						|
 | 
						|
            /*
 | 
						|
            //new JMS\TranslationBundle\JMSTranslationBundle(),
 | 
						|
            //new JMS\DiExtraBundle\JMSDiExtraBundle($this),
 | 
						|
            //new JMS\AopBundle\JMSAopBundle(),
 | 
						|
            /*new Bazinga\Bundle\FakerBundle\BazingaFakerBundle(),
 | 
						|
            //new Chamilo\CmsBundle\ChamiloCmsBundle(),
 | 
						|
             */
 | 
						|
            new Lunetics\LocaleBundle\LuneticsLocaleBundle()
 | 
						|
        );
 | 
						|
 | 
						|
        if (in_array($this->getEnvironment(), array('dev', 'test'))) {
 | 
						|
            //$bundles[] = new Jjanvier\Bundle\CrowdinBundle\JjanvierCrowdinBundle();
 | 
						|
            $bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
 | 
						|
            $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
 | 
						|
            $bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();
 | 
						|
            $bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
 | 
						|
            //$bundles[] = new Sp\BowerBundle\SpBowerBundle();
 | 
						|
        }
 | 
						|
 | 
						|
        return $bundles;
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * @param LoaderInterface $loader
 | 
						|
     */
 | 
						|
    public function registerContainerConfiguration(LoaderInterface $loader)
 | 
						|
    {
 | 
						|
        $loader->load($this->getRootDir().'/config/config_'.$this->getEnvironment().'.yml');
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
    /**
 | 
						|
     * @return string
 | 
						|
     */
 | 
						|
    public function getRootDir()
 | 
						|
    {
 | 
						|
        if (null === $this->rootDir) {
 | 
						|
            $r = new \ReflectionObject($this);
 | 
						|
            $this->rootDir = str_replace('\\', '/', dirname($r->getFileName()));
 | 
						|
        }
 | 
						|
 | 
						|
        return $this->rootDir;
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * Returns the real root path
 | 
						|
     * @return string
 | 
						|
     */
 | 
						|
    public function getRealRootDir()
 | 
						|
    {
 | 
						|
        return realpath($this->getRootDir().'/../').'/';
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * Returns the data path
 | 
						|
     * @return string
 | 
						|
     */
 | 
						|
    public function getDataDir()
 | 
						|
    {
 | 
						|
        return $this->getRealRootDir().'data/';
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * @return string
 | 
						|
     */
 | 
						|
    public function getAppDir()
 | 
						|
    {
 | 
						|
        return $this->getRealRootDir().'app/';
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * @return string
 | 
						|
     */
 | 
						|
    public function getConfigDir()
 | 
						|
    {
 | 
						|
        return $this->getRealRootDir().'app/config/';
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * @return string
 | 
						|
     */
 | 
						|
    public function getConfigurationFile()
 | 
						|
    {
 | 
						|
        return $this->getRealRootDir().'app/config/configuration.php';
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * @param array $configuration
 | 
						|
     */
 | 
						|
    public function setApi(array $configuration)
 | 
						|
    {
 | 
						|
        new ChamiloApi($configuration);
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
 |