Reverse project paging order

Summary:
Currently, we're showing projets in reverse order (Z..A) because most cursor pagers go from high IDs to low IDs.

Allow sequence to be reversed; reverse it.

Also simplify some query/paging stuff.

Test Plan: Set page size to 1, paged back and forth.

Reviewers: vrana, btrahan

Reviewed By: vrana

CC: aran

Maniphest Tasks: T603

Differential Revision: https://secure.phabricator.com/D3221
This commit is contained in:
epriestley
2012-08-11 07:05:45 -07:00
parent b00c28a360
commit 7b068d3e46
3 changed files with 21 additions and 19 deletions

View File

@@ -46,8 +46,7 @@ final class PhabricatorProjectListController
$query = new PhabricatorProjectQuery();
$query->setViewer($request->getUser());
$query->setOffset($pager->getOffset());
$query->setLimit($pager->getPageSize() + 1);
$query->needMembers(true);
$view_phid = $request->getUser()->getPHID();
@@ -69,8 +68,7 @@ final class PhabricatorProjectListController
break;
}
$projects = $query->execute();
$projects = $pager->sliceResults($projects);
$projects = $query->executeWithOffsetPager($pager);
$project_phids = mpull($projects, 'getPHID');
@@ -82,14 +80,6 @@ final class PhabricatorProjectListController
$profiles = mpull($profiles, null, 'getProjectPHID');
}
$edge_query = new PhabricatorEdgeQuery();
if ($projects) {
$edge_query
->withSourcePHIDs($project_phids)
->withEdgeTypes(array(PhabricatorEdgeConfig::TYPE_PROJ_MEMBER))
->execute();
}
$tasks = array();
$groups = array();
if ($project_phids) {
@@ -112,7 +102,7 @@ final class PhabricatorProjectListController
$phid = $project->getPHID();
$profile = idx($profiles, $phid);
$members = $edge_query->getDestinationPHIDs(array($phid));
$members = $project->getMemberPHIDs();
$group = idx($groups, $phid, array());
$task_count = count($group);