Skip to content

Commit

Permalink
Merge pull request #1040 from gitblit/1037-EnforcePermissionsForTickets
Browse files Browse the repository at this point in the history
Fix for #1037 myTickets now honours permissions
  • Loading branch information
paulsputer committed Apr 5, 2016
2 parents 2c54528 + 6e29341 commit 6ecf390
Showing 1 changed file with 13 additions and 5 deletions.
18 changes: 13 additions & 5 deletions src/main/java/com/gitblit/wicket/pages/MyTicketsPage.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;

Expand Down Expand Up @@ -343,14 +342,23 @@ public void populateItem(final Item<RepositoryModel> item) {
int page = (params != null) ? Math.max(1, WicketUtils.getPage(params)) : 1;
int pageSize = app().settings().getInteger(Keys.tickets.perPage, 25);

final List<QueryResult> results =
final List<QueryResult> allResults =
StringUtils.isEmpty(searchParam) ? query(qb, page, pageSize, sortBy, desc) : search(searchParam, page, pageSize);

int totalResults = results.size() == 0 ? 0 : results.get(0).totalResults;
buildPager(queryParam, milestoneParam, statiiParam, assignedToParam, sortBy, desc, repositoryId, page, pageSize, results.size(), totalResults);
List<QueryResult> viewableResults = new ArrayList<>(allResults.size());
for (QueryResult queryResult : allResults) {
RepositoryModel model = app().repositories().getRepositoryModel(currentUser, queryResult.repository);

if ((model != null) && (currentUser.canView(model))) {
viewableResults.add(queryResult);
}
}

int totalResults = viewableResults.size() == 0 ? 0 : viewableResults.get(0).totalResults;
buildPager(queryParam, milestoneParam, statiiParam, assignedToParam, sortBy, desc, repositoryId, page, pageSize, viewableResults.size(), totalResults);

final boolean showSwatch = app().settings().getBoolean(Keys.web.repositoryListSwatches, true);
add(new TicketListPanel("ticketList", results, showSwatch, true));
add(new TicketListPanel("ticketList", viewableResults, showSwatch, true));
}

protected PageParameters queryParameters(
Expand Down

0 comments on commit 6ecf390

Please sign in to comment.