Exemplo n.º 1
0
 public function testLoad()
 {
     $collection = new ObjectCollection();
     $collection->setModel('\\Thelia\\Model\\RewritingArgument');
     for ($i = 0; $i < 3; $i++) {
         $ra = new RewritingArgument();
         $ra->setParameter('foo' . $i);
         $ra->setValue('bar' . $i);
         $ra->setVirtualColumn('ru_view', 'view');
         $ra->setVirtualColumn('ru_viewId', 'viewId');
         $ra->setVirtualColumn('ru_locale', 'locale');
         $ra->setVirtualColumn('ru_redirected_to_url', null);
         $collection->append($ra);
     }
     $resolverQuery = $this->getMock('\\Thelia\\Model\\RewritingUrlQuery', array('getResolverSearch'));
     $resolverQuery->expects($this->any())->method('getResolverSearch')->with('foo.html')->will($this->returnValue($collection));
     $resolver = new RewritingResolver();
     $rewritingUrlQuery = $this->getProperty('rewritingUrlQuery');
     $rewritingUrlQuery->setValue($resolver, $resolverQuery);
     $resolver->load('foo.html');
     $this->assertEquals('view', $resolver->view);
     $this->assertEquals('viewId', $resolver->viewId);
     $this->assertEquals('locale', $resolver->locale);
     $this->assertEquals(array('foo0' => 'bar0', 'foo1' => 'bar1', 'foo2' => 'bar2'), $resolver->otherParameters);
 }
Exemplo n.º 2
0
 /**
  * Exclude object from result
  *
  * @param   ChildRewritingArgument $rewritingArgument Object to remove from the list of results
  *
  * @return ChildRewritingArgumentQuery The current query, for fluid interface
  */
 public function prune($rewritingArgument = null)
 {
     if ($rewritingArgument) {
         $this->addCond('pruneCond0', $this->getAliasedColName(RewritingArgumentTableMap::REWRITING_URL_ID), $rewritingArgument->getRewritingUrlId(), Criteria::NOT_EQUAL);
         $this->addCond('pruneCond1', $this->getAliasedColName(RewritingArgumentTableMap::PARAMETER), $rewritingArgument->getParameter(), Criteria::NOT_EQUAL);
         $this->addCond('pruneCond2', $this->getAliasedColName(RewritingArgumentTableMap::VALUE), $rewritingArgument->getValue(), Criteria::NOT_EQUAL);
         $this->combine(array('pruneCond0', 'pruneCond1', 'pruneCond2'), Criteria::LOGICAL_OR);
     }
     return $this;
 }
Exemplo n.º 3
0
 /**
  * Filter the query by a related \Thelia\Model\RewritingArgument object
  *
  * @param \Thelia\Model\RewritingArgument|ObjectCollection $rewritingArgument  the related object to use as filter
  * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
  *
  * @return ChildRewritingUrlQuery The current query, for fluid interface
  */
 public function filterByRewritingArgument($rewritingArgument, $comparison = null)
 {
     if ($rewritingArgument instanceof \Thelia\Model\RewritingArgument) {
         return $this->addUsingAlias(RewritingUrlTableMap::ID, $rewritingArgument->getRewritingUrlId(), $comparison);
     } elseif ($rewritingArgument instanceof ObjectCollection) {
         return $this->useRewritingArgumentQuery()->filterByPrimaryKeys($rewritingArgument->getPrimaryKeys())->endUse();
     } else {
         throw new PropelException('filterByRewritingArgument() only accepts arguments of type \\Thelia\\Model\\RewritingArgument or Collection');
     }
 }
 /**
  * @param RewritingUrl $url
  * @param string $name
  * @param string $value
  * @return RewritingArgument
  */
 private function insertUrlArgument(RewritingUrl $url, $name, $value)
 {
     $insert = new RewritingArgument();
     $insert->setRewritingUrlId($url->getId())->setParameter($name)->setValue($value)->save();
     return $insert;
 }
Exemplo n.º 5
0
 /**
  * Adds an object to the instance pool.
  *
  * Propel keeps cached copies of objects in an instance pool when they are retrieved
  * from the database. In some cases you may need to explicitly add objects
  * to the cache in order to ensure that the same objects are always returned by find*()
  * and findPk*() calls.
  *
  * @param \Thelia\Model\RewritingArgument $obj A \Thelia\Model\RewritingArgument object.
  * @param string $key             (optional) key to use for instance map (for performance boost if key was already calculated externally).
  */
 public static function addInstanceToPool($obj, $key = null)
 {
     if (Propel::isInstancePoolingEnabled()) {
         if (null === $key) {
             $key = serialize(array((string) $obj->getRewritingUrlId(), (string) $obj->getParameter(), (string) $obj->getValue()));
         }
         // if key === null
         self::$instances[$key] = $obj;
     }
 }