Example #1
0
 /**
  * @covers FilterHelper
  */
 public function testCompareFilters()
 {
     $filterHelper = new FilterHelper();
     import('lib.pkp.classes.filter.FilterGroup');
     $someGroup = new FilterGroup();
     $someGroup->setInputType('primitive::string');
     $someGroup->setOutputType('primitive::string');
     import('lib.pkp.classes.filter.PersistableFilter');
     $filterA = new PersistableFilter($someGroup);
     $filterBSettings = array('some-key' => 'some-value');
     $filterBSubfilters = array();
     self::assertFalse($filterHelper->compareFilters($filterA, $filterBSettings, $filterBSubfilters));
     import('lib.pkp.classes.filter.FilterSetting');
     $filterA->addSetting(new FilterSetting('some-key', null, null));
     self::assertFalse($filterHelper->compareFilters($filterA, $filterBSettings, $filterBSubfilters));
     $filterA->setData('some-key', 'some-value');
     self::assertTrue($filterHelper->compareFilters($filterA, $filterBSettings, $filterBSubfilters));
     $filterA = new CompositeFilter($someGroup);
     $filterBSettings = array();
     $filterBSubfilter = new CompositeFilter($someGroup);
     $filterBSubfilter->setSeq(1);
     $filterBSubfilters = array($filterBSubfilter);
     self::assertFalse($filterHelper->compareFilters($filterA, $filterBSettings, $filterBSubfilters));
     $filterASubfilter = new OtherCompositeFilter($someGroup);
     $filterA->addFilter($filterASubfilter);
     self::assertFalse($filterHelper->compareFilters($filterA, $filterBSettings, $filterBSubfilters));
     $filterA = new CompositeFilter($someGroup);
     $filterASubfilter = new CompositeFilter($someGroup);
     $filterA->addFilter($filterASubfilter);
     self::assertTrue($filterHelper->compareFilters($filterA, $filterBSettings, $filterBSubfilters));
     $filterBSubfilter->addSetting(new FilterSetting('some-key', null, null));
     $filterASubfilter->addSetting(new FilterSetting('some-key', null, null));
     $filterBSubfilter->setData('some-key', 'some-value');
     self::assertFalse($filterHelper->compareFilters($filterA, $filterBSettings, $filterBSubfilters));
     $filterASubfilter->setData('some-key', 'some-value');
     self::assertTrue($filterHelper->compareFilters($filterA, $filterBSettings, $filterBSubfilters));
 }
 /**
  * Constructor
  */
 function __construct(&$filterGroup, $displayName = null)
 {
     parent::__construct($filterGroup, $displayName);
 }
 public final function AddCompositeFieldFilter($filterLinkType, $fieldNames, $fieldFilters)
 {
     $compositeFilter = new CompositeFilter($filterLinkType);
     for ($i = 0; $i < count($fieldNames); $i++) {
         $compositeFilter->AddFilter($this->GetFieldByName($fieldNames[$i]), $fieldFilters[$i]);
     }
     $this->compositeFieldFilters[] = $compositeFilter;
 }
 /**
  * Constructor
  */
 function GenericSequencerFilter($displayName = null, $transformation = null)
 {
     parent::CompositeFilter($displayName, $transformation);
 }
Example #5
0
 /**
  * @param CompositeFilter $filter
  * @return void
  */
 public function VisitCompositeFilter($filter)
 {
     $this->resultCondition = '';
     foreach ($filter->GetInnerFilters() as $filterInfo) {
         AddStr($this->resultCondition, '(' . $this->CreateCondition($filterInfo['filter'], $filterInfo['field']) . ')', ' ' . $filter->GetFilterLinkType() . ' ');
     }
 }
 /**
  * Constructor
  */
 function GenericSequencerFilter(&$filterGroup, $displayName = null)
 {
     parent::CompositeFilter($filterGroup, $displayName);
 }
 /**
  * Constructor
  */
 function GenericMultiplexerFilter($displayName = null, $transformation = null)
 {
     parent::CompositeFilter($displayName, $transformation);
 }
 /**
  * Constructor
  * @param $filterGroup FilterGroup
  * @param $displayName string
  */
 function GenericMultiplexerFilter(&$filterGroup, $displayName = null)
 {
     parent::CompositeFilter($filterGroup, $displayName);
 }