/** * 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; } }
public function apply(App_ListFilter $filterlist) { return $this->_checkValue($filterlist->getSortingField(), $this->getComparedValue()); }