/** * Build the criteria for a single field * * @param Tx_PtExtlist_Domain_Configuration_Data_Fields_FieldConfig $fieldIdentifier * @return Tx_PtExtlist_Domain_QueryObject_SimpleCriteria */ protected function buildFilterCriteria(Tx_PtExtlist_Domain_Configuration_Data_Fields_FieldConfig $fieldIdentifier) { $fieldName = Tx_PtExtlist_Utility_DbUtils::getSelectPartByFieldConfig($fieldIdentifier); $singleCriteria = NULL; $selectedPid = $this->yagContext->getSelectedPid(); $singleCriteria = Tx_PtExtlist_Domain_QueryObject_Criteria::equals($fieldName, $selectedPid); return $singleCriteria; }
public function setup() { $this->queryObject = new Tx_PtExtlist_Domain_QueryObject_Query(); // select $this->queryObject->addField('name'); $this->queryObject->addField('age'); // from $this->queryObject->addFrom('Users u'); $this->queryObject->addFrom('Groups g'); // where $this->queryObject->addCriteria(Tx_PtExtlist_Domain_QueryObject_Criteria::equals('name', 'Michael')); // group by $this->queryObject->addGroupBy('name'); $this->queryObject->addGroupBy('company'); // limit $this->queryObject->setLimit('10:10'); // sortings $this->queryObject->addSorting('test'); $this->queryObject->addSorting('test2', Tx_PtExtlist_Domain_QueryObject_Query::SORTINGSTATE_DESC); }
/** * Build the filterCriteria for filter * * @return Tx_PtExtlist_Domain_QueryObject_Criteria */ protected function buildFilterCriteriaForAllFields() { $albumField = $this->fieldIdentifierCollection->getFieldConfigByIdentifier('album'); $fieldName = Tx_PtExtlist_Utility_DbUtils::getSelectPartByFieldConfig($albumField); $criteria = Tx_PtExtlist_Domain_QueryObject_Criteria::equals($fieldName, $this->albumUid); return $criteria; }
/** * @param Tx_PtExtlist_Domain_Configuration_Data_Fields_FieldConfig $fieldIdentifier * @return Tx_PtExtlist_Domain_QueryObject_SimpleCriteria */ protected function buildFilterCriteria(Tx_PtExtlist_Domain_Configuration_Data_Fields_FieldConfig $fieldIdentifier) { $fieldName = Tx_PtExtlist_Utility_DbUtils::getSelectPartByFieldConfig($fieldIdentifier); $criteria = Tx_PtExtlist_Domain_QueryObject_Criteria::equals($fieldName, $this->filterValue); return $criteria; }
/** * Build the filterCriteria for filter * * @return Tx_PtExtlist_Domain_QueryObject_Criteria */ protected function buildFilterCriteriaForAllFields() { $criteria = Tx_PtExtlist_Domain_QueryObject_Criteria::equals('hidden', 0); return $criteria; }
/** * @param $fieldName * @param $filterValue * @return Tx_PtExtlist_Domain_QueryObject_SimpleCriteria */ protected function buildFilterCriteriaForSingleValue($fieldName, $filterValue) { if ($this->exactMatch) { $criteria = Tx_PtExtlist_Domain_QueryObject_Criteria::equals($fieldName, $filterValue); } else { $filterValue = '%' . $filterValue . '%'; $criteria = Tx_PtExtlist_Domain_QueryObject_Criteria::like($fieldName, $filterValue); } return $criteria; }
public function testEquals() { $criteria = Tx_PtExtlist_Domain_QueryObject_Criteria::equals('test', 'test'); $this->assertTrue(is_a($criteria, 'Tx_PtExtlist_Domain_QueryObject_SimpleCriteria')); }
/** * Build the criteria for a single field * * @param Tx_PtExtlist_Domain_Configuration_Data_Fields_FieldConfig $fieldIdentifier * @return Tx_PtExtlist_Domain_QueryObject_SimpleCriteria */ protected function buildFilterCriteria(Tx_PtExtlist_Domain_Configuration_Data_Fields_FieldConfig $fieldIdentifier) { $fieldName = Tx_PtExtlist_Utility_DbUtils::getSelectPartByFieldConfig($fieldIdentifier); $singleCriteria = null; if ($fieldIdentifier->getIsRelation()) { $singleCriteria = Tx_PtExtlist_Domain_QueryObject_Criteria::relation($fieldName, current($this->filterValues)); } elseif (is_array($this->filterValues) && count($this->filterValues) == 1) { $singleCriteria = Tx_PtExtlist_Domain_QueryObject_Criteria::equals($fieldName, current($this->filterValues)); } elseif (is_array($this->filterValues) && count($this->filterValues) > 1) { $singleCriteria = Tx_PtExtlist_Domain_QueryObject_Criteria::in($fieldName, $this->filterValues); } return $singleCriteria; }
/** * @param $fieldName * @return Tx_PtExtlist_Domain_QueryObject_AndCriteria|Tx_PtExtlist_Domain_QueryObject_SimpleCriteria */ protected function buildFilterCriteriaForGalleryField($fieldName) { $criteria = Tx_PtExtlist_Domain_QueryObject_Criteria::equals($fieldName, $this->galleryUid); if ($this->hideHidden) { $criteria1 = $criteria; $criteria2 = Tx_PtExtlist_Domain_QueryObject_Criteria::equals('hidden', '0'); $criteria = Tx_PtExtlist_Domain_QueryObject_Criteria::andOp($criteria1, $criteria2); } return $criteria; }