Example #1
0
 /**
  * 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);
 }
Example #3
0
 /**
  * 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;
 }
Example #5
0
 /**
  * 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;
 }
Example #6
0
 /**
  * @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;
 }
Example #7
0
 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;
 }
Example #9
0
 /**
  * @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;
 }