Skip to content

Commit

Permalink
Bug: 14183 Fix sorting regression introduced with tag filtering.
Browse files Browse the repository at this point in the history
  • Loading branch information
mrubinsk committed Jan 30, 2016
1 parent 8a8d11a commit fa14bda
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions turba/lib/Driver.php
Expand Up @@ -673,7 +673,8 @@ public function search(array $search_criteria, $sort_order = null,
/* Need some magic if we are searching tags */
$list = $this->_filterTags(
$objects,
!empty($search_criteria['tags']) ? $injector->getInstance('Turba_Tagger')->split($search_criteria['tags']) : array()
!empty($search_criteria['tags']) ? $injector->getInstance('Turba_Tagger')->split($search_criteria['tags']) : array(),
$sort_order
);

if ($count_only) {
Expand All @@ -685,17 +686,19 @@ public function search(array $search_criteria, $sort_order = null,
/**
* Returns a Turba_List object containing $objects filtered by $tags.
*
* @param array $objects A hash of objects, as returned by self::_search.
* @param array $tags An array of tags to filter by.
* @param array $objects A hash of objects, as returned by
* self::_search.
* @param array $tags An array of tags to filter by.
* @param Array $sort_order The sort order to pass to Turba_List::sort.
*
* @return Turba_List The filtered Turba_List object.
*/
protected function _filterTags($objects, $tags)
protected function _filterTags($objects, $tags, $sort_order = null)
{
global $injector;

if (empty($tags)) {
return $this->_toTurbaObjects($objects);
return $this->_toTurbaObjects($objects, $sort_order);
}
$tag_results = $injector->getInstance('Turba_Tagger')
->search($tags, array('list' => $this->_name));
Expand All @@ -705,7 +708,7 @@ protected function _filterTags($objects, $tags)
return new Turba_List();
}

$list = $this->_toTurbaObjects($objects);
$list = $this->_toTurbaObjects($objects, $sort_order);
return $list->filter('__uid', $tag_results);
}

Expand Down

0 comments on commit fa14bda

Please sign in to comment.