public function __construct() { try { $this->_mongoDb = Db_Mongo::instantiate(); } catch (Exception $e) { } }
public static function instantiate() { if (!isset(self::$instance)) { $class = __CLASS__; self::$instance = new $class(); } return self::$instance; }
public static function logEvent($data, $logType, $collectionName) { try { $mongo = Db_Mongo::instantiate(); $collection = $mongo->getCollection($collectionName); $log = Mongo_Logs_LogFactory::getLog($logType); $data = $log->getLog($data); $collection->insert($data); return true; } catch (Exception $e) { return false; } }
protected function _initAutoload() { define("TEST", true); $this->loadLibraries(); $this->loadOldClasses(); //load the database adapter $connectionParameters = Db_Db::getConnectionParameters(); $this->loadNewClasses(); $db = Zend_Db::factory("PDO_MYSQL", $connectionParameters); Zend_Registry::set("main_db", $db); Db_Mongo::instantiate(); Zend_Db_Table_Abstract::setDefaultAdapter($db); Zend_Layout::startMvc(); $layout = Zend_Layout::getMvcInstance(); $layout->setLayoutPath(APPLICATION_PATH . DIRECTORY_SEPARATOR . "views/layouts"); }
/** * Cache Daily counters for newly delivered leads */ public function cacheDailyCounters($owner_id) { $select = $this->select(); try { $mongoDb = Db_Mongo::instantiate(); $ownersCollection = $mongoDb->getCollection("daily_counters_owners"); $counters = $ownersCollection->find(array("owner_id" => $owner_id)); $counters = iterator_to_array($counters); if (empty($counters)) { $select = $this->select(); $dates = $this->fetchAll($select->distinct()->from($this->_name, array("created"))->where("owner_id = ?", $owner_id)->where("paid = ?", 0))->toArray(); foreach ($dates as $date) { $count = $this->fetchRow($select->from($this->_name, array(new Zend_Db_Expr("COUNT(lead_id) AS count")))->where("owner_id = ?", $owner_id))->where("DATE(created) = DATE(?)", $date["created"])->save("paid = 0")->toArray(); $counter = array("owner_id" => $owner_id, "created" => new MongoDate(strtotime($date["created"])), "count" => $count["count"]); $ownersCollection->insert($counter); } $counters = $ownersCollection->find(array("owner_id" => $owner_id)); $counters = iterator_to_array($counters); } return $counters; } catch (Exception $e) { return false; } }