Example #1
0
 public function process(Navigator $navigator)
 {
     if ($this->getCallable()) {
         parent::process();
     } else {
         if ($cond = $this->prepareLikeCondition()) {
             $navigator->addCondition($cond);
         }
     }
 }
Example #2
0
 function testCreate()
 {
     $n = makeNavigator('/hello/world/id:3/', array('one' => 'two'));
     $this->assertEquals('two', $n->getParameter('one'), 'Получаем параметр из Request');
     $this->assertEquals(3, $n->getParameter('id'), 'Получаем параметр из URL');
     $this->assertFalse($n->getParameter('blabla'), 'Несуществующий параметр');
     $this->assertTrue($n->getParameter('blabla', true), 'Несуществующий параметр и значение по-умолчанию');
     $n = new Navigator(Request::create('/'), new URL('my', 'url'));
     $this->assertEquals('/my/url/', $n->getUrl()->toString(), 'URL передан явно в конструктор');
     $n->cloneUrl()->setParameter('some', 'value');
     $this->assertEquals('/my/url/', $n->getUrl()->toString(), 'В результате клонирования основной URL не изменился');
 }
Example #3
0
 public function process(Navigator $navigator)
 {
     if ($this->getCallable()) {
         parent::process();
     } else {
         if ($from = $this->prepareFromCondition()) {
             $navigator->addCondition($from);
         }
         if ($to = $this->prepareToCondition()) {
             $navigator->addCondition($to);
         }
     }
 }
Example #4
0
 public function getUrl()
 {
     if ($this->url) {
         return $this->url;
     }
     if ($this->navigator) {
         return $this->navigator->getUrlClean();
     }
     return new URL();
 }
Example #5
0
 public function process(Navigator $navigator)
 {
     if ($val = $this->getCleanValue()) {
         $navigator->addCondition($val, $this->getField());
     }
 }