/**
  * Maps sorting name to field name
  * @param  \App_ListFilter_Interface $filter
  * @return string                    | null
  */
 protected function _mapSortingFieldName(\App_ListFilter $filter)
 {
     if ($filter->getSortingField() === UserSortingFields::FIRST_NAME) {
         return 'firstName_sorting';
     } else {
         if ($filter->getSortingField() === UserSortingFields::LAST_NAME) {
             return 'lastName_sorting';
         }
     }
     return $filter->getSortingField();
 }
 /**
  * Creates a sorting array from filter list
  * @param  \App_ListFilter $filterList
  * @return array.
  */
 public function mapSortingField(\App_ListFilter $filterList)
 {
     if ($filterList->getSortingField() === null) {
         return;
     }
     $sorting = array($this->_mapSortingFieldName($filterList) => $filterList->getSortType() === \App_ListFilter::SORT_TYPE_ASC ? 1 : -1);
     return $sorting;
 }
 /**
  * Creates a sorting protobuffer message from filter list
  * @param  \App_ListFilter          $filterList
  * @return DrSlump\ProtoBuf\Message type of $_sortingClass, defined above.
  */
 public function mapSortingFieldToMessage(\App_ListFilter $filterList)
 {
     if ($filterList->getSortingField() === null || !$this->_sortingClass) {
         return;
     }
     $protoClass = $this->_sortingClass;
     if ($protoClass) {
         $proto = new $protoClass();
         $proto->setColumn($this->_sortingFieldNameMap[$filterList->getSortingField()]);
         $proto->setType($this->_sortTypeMap[$filterList->getSortType()]);
         return $proto;
     }
 }
Exemplo n.º 4
0
 public function apply(App_ListFilter $filterlist)
 {
     return $this->_checkValue($filterlist->getSortingField(), $this->getComparedValue());
 }