getUser()->getCulture(); } if ($c->getDbName() == Propel::getDefaultDB()) { $c->setDbName(self::DATABASE_NAME); } BoxGroupPeer::addSelectColumns($c); $startcol = (BoxGroupPeer::NUM_COLUMNS - BoxGroupPeer::NUM_LAZY_LOAD_COLUMNS) + 1; BoxGroupI18nPeer::addSelectColumns($c); $c->addJoin(BoxGroupPeer::ID, sprintf("%s AND %s = '%s'", BoxGroupI18nPeer::ID, BoxGroupI18nPeer::CULTURE, $culture), Criteria::LEFT_JOIN); $rs = BasePeer::doSelect($c, $con); $results = array(); while($rs->next()) { $omClass = BoxGroupPeer::getOMClass(); $cls = Propel::import($omClass); $obj1 = new $cls(); $obj1->hydrate($rs); $obj1->setCulture($culture); $omClass = BoxGroupI18nPeer::getOMClass($rs, $startcol); $cls = Propel::import($omClass); $obj2 = new $cls(); $obj2->hydrate($rs, $startcol); $obj1->setBoxGroupI18nForCulture($obj2, $culture); $obj2->setBoxGroup($obj1); $results[] = $obj1; } return $results; } public static function doCountWithI18n(Criteria $c, $con = null) { $c->addJoin(BoxGroupI18nPeer::ID, BoxGroupPeer::ID); $c->add(BoxGroupI18nPeer::CULTURE, sfContext::getInstance()->getUser()->getCulture()); return self::doCount($c, $con); } public static function doSelectGroupsForBox(Criteria $c = null, $con = null) { if (is_null($c)) { $c = new Criteria(); } else { $c = clone $c; } $c->addAscendingOrderByColumn(BoxGroupI18nPeer::NAME); return self::doSelectWithI18n($c, $con); } }