123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- <?php
-
-
- $connection = array(
- 'host' => 'localhost',
- 'port' => 3306,
- 'user' => 'root',
- 'password' => 'nimda',
- 'dbname' => 'test',
- 'driver' => 'pdo_mysql'
- );
- if (!file_exists(__DIR__.'/../vendor/autoload.php')) {
- die('cannot find vendors, read README.md how to use composer');
- }
-
- $loader = require __DIR__.'/../vendor/autoload.php';
-
-
- $loader->add('Gedmo', __DIR__.'/../lib');
-
-
- $loader->add('Entity', __DIR__.'/app');
-
-
- Doctrine\Common\Annotations\AnnotationRegistry::registerFile(
- __DIR__.'/../vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/Driver/DoctrineAnnotations.php'
- );
-
-
-
- $cache = new Doctrine\Common\Cache\ArrayCache;
-
- $annotationReader = new Doctrine\Common\Annotations\AnnotationReader;
- $cachedAnnotationReader = new Doctrine\Common\Annotations\CachedReader(
- $annotationReader,
- $cache
- );
-
- $driverChain = new Doctrine\ORM\Mapping\Driver\DriverChain();
-
-
- Gedmo\DoctrineExtensions::registerAbstractMappingIntoDriverChainORM(
- $driverChain,
- $cachedAnnotationReader
- );
-
-
-
- $annotationDriver = new Doctrine\ORM\Mapping\Driver\AnnotationDriver(
- $cachedAnnotationReader,
- array(__DIR__.'/app/Entity')
- );
-
-
- $driverChain->addDriver($annotationDriver, 'Entity');
-
-
- $config = new Doctrine\ORM\Configuration;
- $config->setProxyDir(sys_get_temp_dir());
- $config->setProxyNamespace('Proxy');
- $config->setAutoGenerateProxyClasses(false);
-
- $config->setMetadataDriverImpl($driverChain);
-
- $config->setMetadataCacheImpl($cache);
- $config->setQueryCacheImpl($cache);
-
-
- $evm = new Doctrine\Common\EventManager();
-
-
-
- $sluggableListener = new Gedmo\Sluggable\SluggableListener;
-
- $sluggableListener->setAnnotationReader($cachedAnnotationReader);
- $evm->addEventSubscriber($sluggableListener);
-
-
- $treeListener = new Gedmo\Tree\TreeListener;
- $treeListener->setAnnotationReader($cachedAnnotationReader);
- $evm->addEventSubscriber($treeListener);
-
-
-
-
-
-
-
- $timestampableListener = new Gedmo\Timestampable\TimestampableListener;
- $timestampableListener->setAnnotationReader($cachedAnnotationReader);
- $evm->addEventSubscriber($timestampableListener);
-
-
-
- $blameableListener = new \Gedmo\Blameable\BlameableListener();
- $blameableListener->setAnnotationReader($cachedAnnotationReader);
- $blameableListener->setUserValue('MyUsername');
- $evm->addEventSubscriber($blameableListener);
-
-
-
- $translatableListener = new Gedmo\Translatable\TranslatableListener;
-
-
- $translatableListener->setTranslatableLocale('en');
- $translatableListener->setDefaultLocale('en');
- $translatableListener->setAnnotationReader($cachedAnnotationReader);
- $evm->addEventSubscriber($translatableListener);
-
-
-
-
-
-
-
- $evm->addEventSubscriber(new Doctrine\DBAL\Event\Listeners\MysqlSessionInit());
-
- return Doctrine\ORM\EntityManager::create($connection, $config, $evm);
-
|