add(self::PRODUCT_ID, $product->getId()); return self::doSelectOne($c); } public static function doSelectRightJoinProduct(Criteria $c, $con = null) { $c = clone $c; if ($c->getDbName() == Propel::getDefaultDB()) { $c->setDbName(self::DATABASE_NAME); } self::addSelectColumns($c); ProductPeer::addSelectColumns($c); $c->addJoin(self::PRODUCT_ID, ProductPeer::ID, Criteria::RIGHT_JOIN); $criterion = $c->getNewCriterion(self::PRODUCT_ID, null, Criteria::ISNULL); $criterion->addOr($c->getNewCriterion(self::PRODUCT_ID, null, Criteria::ISNOTNULL)); $c->add($criterion); $rs = self::doSelectRs($c, $con); if (self::$hydrateMethod) { return call_user_func(self::$hydrateMethod, $rs); } $results = array(); while ($rs->next()) { $obj1 = new Radar(); $startcol = $obj1->hydrate($rs); $obj2 = new Product(); $obj2->hydrate($rs, $startcol); $obj2->addRadar($obj1); if (null === $obj1->getId()) { $obj1->setId($obj2->getId()); $obj1->resetModified(); } $results[] = self::$postHydrateMethod ? call_user_func(self::$postHydrateMethod, $obj1) : $obj1; } return $results; } public static function doCountRightJoinProduct(Criteria $c, $con = null) { $c = clone $c; $c->clearSelectColumns()->clearOrderByColumns(); $c->addSelectColumn('COUNT(*)'); $c->addJoin(self::PRODUCT_ID, ProductPeer::ID, Criteria::RIGHT_JOIN); $criterion = $c->getNewCriterion(self::PRODUCT_ID, null, Criteria::ISNULL); $criterion->addOr($c->getNewCriterion(self::PRODUCT_ID, null, Criteria::ISNOTNULL)); $c->add($criterion); $rs = self::doSelectRS($c); return $rs && $rs->next() ? $rs->getInt(1) : 0; } public static function isRadarActive($product) { $c = new Criteria(); $c->add(RadarPeer::ACTIVE, 1); $c->add(RadarPeer::PRODUCT_ID, $product->getId()); if (RadarPeer::doSelectOne($c)) { return true; } else { return false; } } public static function doSelectJoinProduct(Criteria $c, $con = null) { return parent::doSelectJoinProduct($c, $con); } }