Exemplo n.º 1
0
 public static function create($conn = null)
 {
     $loggedIn = sfContext::hasInstance() && sfContext::getInstance()->getUser()->isAuthenticated();
     if (!$loggedIn && (sfConfig::get('app_cache_query_enabled') || sfConfig::get('app_cache_result_enabled'))) {
         if (sfConfig::get('app_cache_driver') == 'Apc') {
             $driver = new Doctrine_Cache_Apc();
         } else {
             $servers = array('host' => '127.0.0.1', 'port' => 11211, 'persistent' => true);
             $memcacheAry = array('servers' => $servers, 'compression' => false);
             $driver = new Doctrine_Cache_Memcache($memcacheAry);
         }
     }
     $q = new LsDoctrineQuery($conn);
     if (!$loggedIn && sfConfig::get('app_cache_query_enabled')) {
         $q->useQueryCache($driver);
     }
     if (!$loggedIn && sfConfig::get('app_cache_result_enabled')) {
         $q->useResultCache($driver);
     }
     return $q;
 }