Ejemplo n.º 1
0
 /**
  * sets query orderings from given array/string
  *
  * @param \TYPO3\CMS\Extbase\Persistence\QueryInterface &$query
  * @param array|string|null	 
  * @return void
  */
 protected function setQueryOrderings(QueryInterface &$query, $orderings = NULL)
 {
     $setOrderings = [];
     if (!is_null($orderings) && is_string($orderings)) {
         $orderings = [$orderings => QueryInterface::ORDER_ASCENDING];
     }
     if (is_array($orderings)) {
         foreach ($orderings as $field => $direction) {
             if (strtolower($direction) == "desc") {
                 $setOrderings[$field] = QueryInterface::ORDER_DESCENDING;
             } else {
                 $setOrderings[$field] = QueryInterface::ORDER_ASCENDING;
             }
         }
         if (count($setOrderings)) {
             $query->setOrderings($setOrderings);
         }
     }
 }
Ejemplo n.º 2
0
 /**
  * Adds handle of ordering to query object
  *
  * @param \TYPO3\CMS\Extbase\Persistence\QueryInterface $query
  * @return void
  */
 protected function handleOrdering(\TYPO3\CMS\Extbase\Persistence\QueryInterface $query)
 {
     $query->setOrderings(array($this->orderBy => $this->orderDirection));
 }
Ejemplo n.º 3
0
 /**
  * Sets the ordering to the given query for the given demand
  *
  * @param \TYPO3\CMS\Extbase\Persistence\QueryInterface $query Query
  * @param \DERHANSEN\SfEventMgt\Domain\Model\Dto\EventDemand $eventDemand EventDemand
  *
  * @return void
  */
 protected function setOrderingsFromDemand($query, EventDemand $eventDemand)
 {
     $orderings = array();
     if ($eventDemand->getOrderField() != '' && $eventDemand->getOrderDirection() != '') {
         $orderings[$eventDemand->getOrderField()] = strtolower($eventDemand->getOrderDirection()) == 'desc' ? \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_DESCENDING : \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_ASCENDING;
         $query->setOrderings($orderings);
     }
 }
Ejemplo n.º 4
0
 /**
  * @param array $orderings
  */
 public function setOrderings(array $orderings)
 {
     $this->query->setOrderings($orderings);
 }