From 5e3521f8496511db4df45f011ea72f25623ad90f Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 03 Mar 2014 21:34:32 -0500
Subject: [PATCH] Ticket tracker with patchset contributions
---
src/main/java/com/gitblit/wicket/pages/TicketsPage.html | 209 ++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 200 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/gitblit/wicket/pages/TicketsPage.html b/src/main/java/com/gitblit/wicket/pages/TicketsPage.html
index e1f5f9a..9054490 100644
--- a/src/main/java/com/gitblit/wicket/pages/TicketsPage.html
+++ b/src/main/java/com/gitblit/wicket/pages/TicketsPage.html
@@ -7,17 +7,208 @@
<body>
<wicket:extend>
- <!-- tickets -->
- <table class="pretty">
- <tbody>
+ <!-- search tickets form -->
+ <div class="hidden-phone pull-right">
+ <form class="form-search" style="margin: 0px;" wicket:id="ticketSearchForm">
+ <div class="input-append">
+ <input type="text" class="search-query" style="width: 170px;border-radius: 14px 0 0 14px; padding-left: 14px;" id="ticketSearchBox" wicket:id="ticketSearchBox" value=""/>
+ <button class="btn" style="border-radius: 0 14px 14px 0px;margin-left:-5px;" type="submit"><i class="icon-search"></i></button>
+ </div>
+ </form>
+ </div>
+
+ <ul class="nav nav-tabs">
+ <li class="active"><a data-toggle="tab" href="#tickets"><i style="color:#888;"class="fa fa-ticket"></i> <wicket:message key="gb.tickets"></wicket:message></a></li>
+ <li><a data-toggle="tab" href="#milestones"><i style="color:#888;"class="fa fa-bullseye"></i> <wicket:message key="gb.milestones"></wicket:message></a></li>
+ </ul>
+ <div class="tab-content">
+ <div class="tab-pane active" id="tickets">
+ <div class="row" style="min-height:400px;" >
+
+ <!-- query controls -->
+ <div class="span3">
+ <div wicket:id="milestonePanel"></div>
+ <div class="hidden-phone">
+ <ul class="nav nav-list">
+ <li class="nav-header"><wicket:message key="gb.queries"></wicket:message></li>
+ <li><a wicket:id="changesQuery"><i class="fa fa-code-fork"></i> <wicket:message key="gb.proposalTickets"></wicket:message></a></li>
+ <li><a wicket:id="bugsQuery"><i class="fa fa-bug"></i> <wicket:message key="gb.bugTickets"></wicket:message></a></li>
+ <li><a wicket:id="enhancementsQuery"><i class="fa fa-magic"></i> <wicket:message key="gb.enhancementTickets"></wicket:message></a></li>
+ <li><a wicket:id="tasksQuery"><i class="fa fa-ticket"></i> <wicket:message key="gb.taskTickets"></wicket:message></a></li>
+ <li><a wicket:id="questionsQuery"><i class="fa fa-question"></i> <wicket:message key="gb.questionTickets"></wicket:message></a></li>
+ <li wicket:id="userDivider" class="divider"></li>
+ <li><a wicket:id="createdQuery"><i class="fa fa-user"></i> <wicket:message key="gb.yourCreatedTickets"></wicket:message></a></li>
+ <li><a wicket:id="watchedQuery"><i class="fa fa-eye"></i> <wicket:message key="gb.yourWatchedTickets"></wicket:message></a></li>
+ <li><a wicket:id="mentionsQuery"><i class="fa fa-comment"></i> <wicket:message key="gb.mentionsMeTickets"></wicket:message></a></li>
+ <li class="divider"></li>
+ <li><a wicket:id="resetQuery"><i class="fa fa-bolt"></i> <wicket:message key="gb.reset"></wicket:message></a></li>
+ </ul>
+ </div>
+ <div wicket:id="dynamicQueries" class="hidden-phone"></div>
+ </div>
+
+ <!-- tickets -->
+ <div class="span9">
+ <div class="btn-toolbar" style="margin-top: 0px;">
+ <div class="btn-group">
+ <a class="btn dropdown-toggle" data-toggle="dropdown" href="#"><wicket:message key="gb.status"></wicket:message>: <span style="font-weight:bold;" wicket:id="selectedStatii"></span> <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a wicket:id="openTickets">open</a></li>
+ <li><a wicket:id="closedTickets">closed</a></li>
+ <li><a wicket:id="allTickets">all</a></li>
+ <li class="divider"></li>
+ <li wicket:id="statii"><span wicket:id="statusLink"></span></li>
+ </ul>
+ </div>
+
+ <div class="btn-group hidden-phone">
+ <a class="btn dropdown-toggle" data-toggle="dropdown" href="#"><i class="fa fa-user"></i> <wicket:message key="gb.responsible"></wicket:message>: <span style="font-weight:bold;" wicket:id="currentResponsible"></span> <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li wicket:id="responsible"><span wicket:id="responsibleLink"></span></li>
+ <li class="divider"></li>
+ <li><a wicket:id="resetResponsible"><i class="fa fa-bolt"></i> <wicket:message key="gb.reset"></wicket:message></a></li>
+ </ul>
+ </div>
+
+ <div class="btn-group">
+ <a class="btn dropdown-toggle" data-toggle="dropdown" href="#"><i class="fa fa-sort"></i> <wicket:message key="gb.sort"></wicket:message>: <span style="font-weight:bold;" wicket:id="currentSort"></span> <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li wicket:id="sort"><span wicket:id="sortLink"></span></li>
+ </ul>
+ </div>
+
+ <div class="btn-group pull-right">
+ <div class="pagination pagination-right pagination-small">
+ <ul>
+ <li><a wicket:id="prevLink"><i class="fa fa-angle-double-left"></i></a></li>
+ <li wicket:id="pageLink"><span wicket:id="page"></span></li>
+ <li><a wicket:id="nextLink"><i class="fa fa-angle-double-right"></i></a></li>
+ </ul>
+ </div>
+ </div>
+ </div>
+
+
+ <table class="table tickets">
+ <tbody>
<tr wicket:id="ticket">
- <td style="padding:0; margin:0;"><div wicket:id="ticketState">[ticket state]</div></td>
- <td class="date"><span wicket:id="ticketDate">[ticket date]</span></td>
- <td class="author"><div wicket:id="ticketHandler">[ticket handler]</div></td>
- <td><div wicket:id="ticketTitle">[ticket title]</div></td>
+ <td class="ticket-list-icon">
+ <i wicket:id="state"></i>
+ </td>
+ <td>
+ <span wicket:id="title">[title]</span> <span wicket:id="labels" style="font-weight: normal;color:white;"><span class="label" wicket:id="label"></span></span>
+ <div class="ticket-list-details">
+ <span style="padding-right: 10px;" class="hidden-phone">
+ <wicket:message key="gb.createdBy"></wicket:message>
+ <span style="padding: 0px 2px" wicket:id="createdBy">[createdBy]</span> <span class="date" wicket:id="createDate">[create date]</span>
+ </span>
+ <span wicket:id="indicators" style="white-space:nowrap;"><i wicket:id="icon"></i> <span style="padding-right:10px;" wicket:id="count"></span></span>
+ </div>
+ <div class="hidden-phone" wicket:id="updated"></div>
+ </td>
+ <td class="ticket-list-state">
+ <span class="badge badge-info" wicket:id="votes"></span>
+ </td>
+ <td class="hidden-phone ticket-list-state">
+ <i wicket:message="title:gb.watching" style="color:#888;" class="fa fa-eye" wicket:id="watching"></i>
+ </td>
+ <td class="ticket-list-state">
+ <div wicket:id="status"></div>
+ </td>
+ <td class="indicators">
+ <div>
+ <b>#<span wicket:id="id">[id]</span></b>
+ </div>
+ <div wicket:id="responsible"></div>
+ </td>
</tr>
- </tbody>
- </table>
+ </tbody>
+ </table>
+
+ <div class="btn-group pull-right">
+ <div class="pagination pagination-right pagination-small">
+ <ul>
+ <li><a wicket:id="prevLink"><i class="fa fa-angle-double-left"></i></a></li>
+ <li wicket:id="pageLink"><span wicket:id="page"></span></li>
+ <li><a wicket:id="nextLink"><i class="fa fa-angle-double-right"></i></a></li>
+ </ul>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="tab-pane" id="milestones">
+ <div class="row">
+ <div class="span9" wicket:id="milestoneList">
+ <h3><span wicket:id="milestoneName"></span> <small><span wicket:id="milestoneState"></span></small></h3>
+ <span wicket:id="milestoneDue"></span>
+ </div>
+ </div>
+ </div>
+</div>
+
+<wicket:fragment wicket:id="noMilestoneFragment">
+<table style="width: 100%;padding-bottom: 5px;">
+<tbody>
+<tr>
+ <td style="color:#888;"><wicket:message key="gb.noMilestoneSelected"></wicket:message></td>
+ <td><div wicket:id="milestoneDropdown"></div></td>
+</tr>
+</tbody>
+</table>
+</wicket:fragment>
+
+<wicket:fragment wicket:id="milestoneProgressFragment">
+<table style="width: 100%;padding-bottom: 5px;">
+<tbody>
+<tr>
+ <td style="color:#888;">
+ <div><i style="color:#888;"class="fa fa-bullseye"></i> <span style="font-weight:bold;" wicket:id="currentMilestone"></span></div>
+ <div><i style="color:#888;"class="fa fa-calendar"></i> <span style="font-weight:bold;" wicket:id="currentDueDate"></span></div>
+ </td>
+ <td>
+ <div wicket:id="milestoneDropdown"></div>
+ </td>
+</tr>
+</tbody>
+</table>
+<div style="clear:both;padding-bottom: 10px;">
+ <div style="margin-bottom: 5px;" class="progress progress-success">
+ <div class="bar" wicket:id="progress"></div>
+ </div>
+ <div class="milestoneOverview">
+ <span wicket:id="openTickets" />,
+ <span wicket:id="closedTickets" />,
+ <span wicket:id="totalTickets" />
+ </div>
+</div>
+</wicket:fragment>
+
+<wicket:fragment wicket:id="milestoneDropdownFragment">
+<div class="btn-group pull-right">
+ <a class="btn dropdown-toggle" data-toggle="dropdown" href="#"><i class="fa fa-gear"></i> <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li wicket:id="milestone"><span wicket:id="milestoneLink">[milestone]</span></li>
+ <li class="divider"></li>
+ <li><a wicket:id="resetMilestone"><i class="fa fa-bolt"></i> <wicket:message key="gb.reset"></wicket:message></a></li>
+ </ul>
+</div>
+</wicket:fragment>
+
+<wicket:fragment wicket:id="dynamicQueriesFragment">
+ <hr/>
+ <ul class="nav nav-list">
+ <li class="nav-header"><wicket:message key="gb.topicsAndLabels"></wicket:message></li>
+ <li class="dynamicQuery" wicket:id="dynamicQuery"><span><span wicket:id="swatch"></span> <span wicket:id="link"></span></span><span class="pull-right"><i style="font-size: 18px;" wicket:id="checked"></i></span></li>
+ </ul>
+</wicket:fragment>
+
+<wicket:fragment wicket:id="updatedFragment">
+ <div class="ticket-list-details">
+ <wicket:message key="gb.updatedBy"></wicket:message>
+ <span style="padding: 0px 2px" wicket:id="updatedBy">[updatedBy]</span> <span class="date" wicket:id="updateDate">[update date]</span>
+ </div>
+</wicket:fragment>
</wicket:extend>
</body>
--
Gitblit v1.9.1