| | |
| | | // set stateless page preference
|
| | | setStatelessHint(true);
|
| | |
|
| | | any = new TicketResponsible("any", "[* TO *]", null);
|
| | | any = new TicketResponsible(getString("gb.any"), "[* TO *]", null);
|
| | |
|
| | | UserModel user = GitBlitWebSession.get().getUser();
|
| | | boolean isAuthenticated = user != null && user.isAuthenticated;
|
| | |
| | | if (currentMilestone == null) {
|
| | | // milestone not found, create a temporary one
|
| | | currentMilestone = new TicketMilestone(milestoneParam);
|
| | | String q = QueryBuilder.q(Lucene.rid.matches(getRepositoryModel().getRID())).and(Lucene.milestone.matches(milestoneParam)).build();
|
| | | currentMilestone.tickets = app().tickets().queryFor(q, 1, 0, Lucene.number.name(), true);
|
| | | milestones.add(currentMilestone);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | milestonePanel.add(label);
|
| | |
|
| | | milestonePanel.add(new LinkPanel("openTickets", null,
|
| | | currentMilestone.getOpenTickets() + " open",
|
| | | MessageFormat.format(getString("gb.nOpenTickets"), currentMilestone.getOpenTickets()),
|
| | | TicketsPage.class,
|
| | | queryParameters(null, currentMilestone.name, openStatii, null, sortBy, desc, 1)));
|
| | |
|
| | | milestonePanel.add(new LinkPanel("closedTickets", null,
|
| | | currentMilestone.getClosedTickets() + " closed",
|
| | | MessageFormat.format(getString("gb.nClosedTickets"), currentMilestone.getClosedTickets()),
|
| | | TicketsPage.class,
|
| | | queryParameters(null, currentMilestone.name, closedStatii, null, sortBy, desc, 1)));
|
| | |
|
| | | milestonePanel.add(new Label("totalTickets", currentMilestone.getTotalTickets() + " total"));
|
| | | milestonePanel.add(new Label("totalTickets", MessageFormat.format(getString("gb.nTotalTickets"), currentMilestone.getTotalTickets())));
|
| | | add(milestonePanel);
|
| | | }
|
| | |
|
| | |
| | | add(new BookmarkablePageLink<Void>("allTickets", TicketsPage.class, queryParameters(queryParam, milestoneParam, null, assignedToParam, sortBy, desc, 1)));
|
| | |
|
| | | // by status
|
| | | List<Status> statii = Arrays.asList(Status.values());
|
| | | List<Status> statii = new ArrayList<Status>(Arrays.asList(Status.values()));
|
| | | statii.remove(Status.Closed);
|
| | | ListDataProvider<Status> resolutionsDp = new ListDataProvider<Status>(statii);
|
| | | DataView<Status> statiiLinks = new DataView<Status>("statii", resolutionsDp) {
|
| | | private static final long serialVersionUID = 1L;
|
| | |
| | |
|
| | | @Override
|
| | | public void populateItem(final Item<String> labelItem) {
|
| | | String content = messageProcessor().processPlainCommitMessage(getRepository(), repositoryName, labelItem.getModelObject());
|
| | | String content = bugtraqProcessor().processPlainCommitMessage(getRepository(), repositoryName, labelItem.getModelObject());
|
| | | Label label = new Label("label", content);
|
| | | label.setEscapeModelStrings(false);
|
| | | TicketLabel tLabel = app().tickets().getLabel(getRepositoryModel(), labelItem.getModelObject());
|
| | |
| | | };
|
| | | add(ticketsView);
|
| | |
|
| | | DataView<TicketMilestone> milestonesList = new DataView<TicketMilestone>("milestoneList", milestonesDp) {
|
| | | List<TicketMilestone> allMilestones = app().tickets().getMilestones(getRepositoryModel());
|
| | | ListDataProvider<TicketMilestone> allMilestonesDp = new ListDataProvider<TicketMilestone>(allMilestones);
|
| | | DataView<TicketMilestone> milestonesList = new DataView<TicketMilestone>("milestoneList", allMilestonesDp) {
|
| | | private static final long serialVersionUID = 1L;
|
| | |
|
| | | @Override
|
| | | public void populateItem(final Item<TicketMilestone> item) {
|
| | | final TicketMilestone tm = item.getModelObject();
|
| | | item.add(new Label("milestoneName", tm.name));
|
| | | item.add(new Label("milestoneState", tm.status.name()));
|
| | | item.add(new Label("milestoneDue", tm.due == null ? getString("gb.notSpecified") : tm.due.toString()));
|
| | | PageParameters params = queryParameters(null, tm.name, null, null, null, desc, 1);
|
| | | item.add(new LinkPanel("milestoneName", null, tm.name, TicketsPage.class, params).setRenderBodyOnly(true));
|
| | |
|
| | | String css;
|
| | | switch (tm.status) {
|
| | | case Open:
|
| | | css = "aui-lozenge aui-lozenge-subtle";
|
| | | break;
|
| | | default:
|
| | | css = "aui-lozenge";
|
| | | break;
|
| | | }
|
| | | Label stateLabel = new Label("milestoneState", tm.status.name());
|
| | | WicketUtils.setCssClass(stateLabel, css);
|
| | | item.add(stateLabel);
|
| | |
|
| | | if (tm.due == null) {
|
| | | item.add(new Label("milestoneDue", getString("gb.notSpecified")));
|
| | | } else {
|
| | | item.add(WicketUtils.createDatestampLabel("milestoneDue", tm.due, getTimeZone(), getTimeUtils()));
|
| | | }
|
| | | }
|
| | | };
|
| | | add(milestonesList);
|