continuum-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From eveni...@apache.org
Subject svn commit: r775002 - in /continuum/trunk/continuum-webapp/src/main: java/org/apache/maven/continuum/web/action/admin/ java/org/apache/maven/continuum/web/bean/ webapp/WEB-INF/jsp/admin/
Date Fri, 15 May 2009 04:44:42 GMT
Author: evenisse
Date: Fri May 15 04:44:42 2009
New Revision: 775002

URL: http://svn.apache.org/viewvc?rev=775002&view=rev
Log:
[CONTINUUM-2197] Add select all in the queue page and replace basic html tables by extremecomponents
tables
merge 775000:775001 from continuum-1.3.x branch

Added:
    continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/bean/BuildProjectQueue.java
      - copied unchanged from r775001, continuum/branches/continuum-1.3.x/continuum-webapp/src/main/java/org/apache/maven/continuum/web/bean/BuildProjectQueue.java
    continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/bean/CheckoutQueue.java
      - copied unchanged from r775001, continuum/branches/continuum-1.3.x/continuum-webapp/src/main/java/org/apache/maven/continuum/web/bean/CheckoutQueue.java
    continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/bean/Queue.java
      - copied unchanged from r775001, continuum/branches/continuum-1.3.x/continuum-webapp/src/main/java/org/apache/maven/continuum/web/bean/Queue.java
Modified:
    continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/QueuesAction.java
    continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/admin/buildQueueView.jsp

Modified: continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/QueuesAction.java
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/QueuesAction.java?rev=775002&r1=775001&r2=775002&view=diff
==============================================================================
--- continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/QueuesAction.java
(original)
+++ continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/QueuesAction.java
Fri May 15 04:44:42 2009
@@ -20,7 +20,6 @@
  */
 
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -39,6 +38,8 @@
 import org.apache.maven.continuum.project.ContinuumProjectState;
 import org.apache.maven.continuum.security.ContinuumRoleConstants;
 import org.apache.maven.continuum.web.action.ContinuumActionSupport;
+import org.apache.maven.continuum.web.bean.BuildProjectQueue;
+import org.apache.maven.continuum.web.bean.CheckoutQueue;
 import org.apache.maven.continuum.web.exception.AuthenticationRequiredException;
 import org.apache.maven.continuum.web.exception.AuthorizationRequiredException;
 import org.apache.maven.continuum.web.model.DistributedBuildSummary;
@@ -76,13 +77,13 @@
 
     private String projectName;
 
-    private Map<String, BuildProjectTask> currentBuildProjectTasks = new HashMap<String,
BuildProjectTask>();
+    private List<BuildProjectQueue> currentBuildProjectTasks = new ArrayList<BuildProjectQueue>();
 
-    private Map<String, CheckOutTask> currentCheckoutTasks = new HashMap<String,
CheckOutTask>();
+    private List<CheckoutQueue> currentCheckoutTasks = new ArrayList<CheckoutQueue>();
 
-    private Map<String, List<BuildProjectTask>> buildsInQueue = new HashMap<String,
List<BuildProjectTask>>();
+    private List<BuildProjectQueue> buildsInQueue = new ArrayList<BuildProjectQueue>();
 
-    private Map<String, List<CheckOutTask>> checkoutsInQueue = new HashMap<String,
List<CheckOutTask>>();
+    private List<CheckoutQueue> checkoutsInQueue = new ArrayList<CheckoutQueue>();
 
     /**
      * @plexus.requirement
@@ -247,7 +248,10 @@
                 for ( String key : keySet )
                 {
                     BuildProjectTask buildTask = currentBuilds.get( key );
-                    currentBuildProjectTasks.put( key, buildTask );
+                    BuildProjectQueue queue = new BuildProjectQueue();
+                    queue.setName( key );
+                    queue.setTask( buildTask );
+                    currentBuildProjectTasks.add( queue );
                 }
             }
             catch ( BuildManagerException e )
@@ -264,12 +268,13 @@
                 Set<String> keySet = builds.keySet();
                 for ( String key : keySet )
                 {
-                    List<BuildProjectTask> buildTasks = new ArrayList<BuildProjectTask>();
                     for ( BuildProjectTask task : builds.get( key ) )
                     {
-                        buildTasks.add( task );
+                        BuildProjectQueue queue = new BuildProjectQueue();
+                        queue.setName( key );
+                        queue.setTask( task );
+                        buildsInQueue.add( queue );
                     }
-                    buildsInQueue.put( key, buildTasks );
                 }
             }
             catch ( BuildManagerException e )
@@ -286,7 +291,10 @@
                 for ( String key : keySet )
                 {
                     CheckOutTask checkoutTask = currentCheckouts.get( key );
-                    currentCheckoutTasks.put( key, checkoutTask );
+                    CheckoutQueue queue = new CheckoutQueue();
+                    queue.setName( key );
+                    queue.setTask( checkoutTask );
+                    currentCheckoutTasks.add( queue );
                 }
             }
             catch ( BuildManagerException e )
@@ -303,12 +311,13 @@
                 Set<String> keySet = checkouts.keySet();
                 for ( String key : keySet )
                 {
-                    List<CheckOutTask> checkoutTasks = new ArrayList<CheckOutTask>();
                     for ( CheckOutTask task : checkouts.get( key ) )
                     {
-                        checkoutTasks.add( task );
+                        CheckoutQueue queue = new CheckoutQueue();
+                        queue.setName( key );
+                        queue.setTask( task );
+                        checkoutsInQueue.add( queue );
                     }
-                    checkoutsInQueue.put( key, checkoutTasks );
                 }
             }
             catch ( BuildManagerException e )
@@ -586,42 +595,42 @@
         this.selectedCheckOutTaskHashCodes = selectedCheckOutTaskHashCodes;
     }
 
-    public Map<String, BuildProjectTask> getCurrentBuildProjectTasks()
+    public List<BuildProjectQueue> getCurrentBuildProjectTasks()
     {
         return currentBuildProjectTasks;
     }
 
-    public void setCurrentBuildProjectTasks( Map<String, BuildProjectTask> currentBuildProjectTasks
)
+    public void setCurrentBuildProjectTasks( List<BuildProjectQueue> currentBuildProjectTasks
)
     {
         this.currentBuildProjectTasks = currentBuildProjectTasks;
     }
 
-    public Map<String, CheckOutTask> getCurrentCheckoutTasks()
+    public List<CheckoutQueue> getCurrentCheckoutTasks()
     {
         return currentCheckoutTasks;
     }
 
-    public void setCurrentCheckoutTasks( Map<String, CheckOutTask> currentCheckoutTasks
)
+    public void setCurrentCheckoutTasks( List<CheckoutQueue> currentCheckoutTasks )
     {
         this.currentCheckoutTasks = currentCheckoutTasks;
     }
 
-    public Map<String, List<BuildProjectTask>> getBuildsInQueue()
+    public List<BuildProjectQueue> getBuildsInQueue()
     {
         return buildsInQueue;
     }
 
-    public void setBuildsInQueue( Map<String, List<BuildProjectTask>> buildsInQueue
)
+    public void setBuildsInQueue( List<BuildProjectQueue> buildsInQueue )
     {
         this.buildsInQueue = buildsInQueue;
     }
 
-    public Map<String, List<CheckOutTask>> getCheckoutsInQueue()
+    public List<CheckoutQueue> getCheckoutsInQueue()
     {
         return checkoutsInQueue;
     }
 
-    public void setCheckoutsInQueue( Map<String, List<CheckOutTask>> checkoutsInQueue
)
+    public void setCheckoutsInQueue( List<CheckoutQueue> checkoutsInQueue )
     {
         this.checkoutsInQueue = checkoutsInQueue;
     }

Modified: continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/admin/buildQueueView.jsp
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/admin/buildQueueView.jsp?rev=775002&r1=775001&r2=775002&view=diff
==============================================================================
--- continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/admin/buildQueueView.jsp
(original)
+++ continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/jsp/admin/buildQueueView.jsp
Fri May 15 04:44:42 2009
@@ -34,102 +34,91 @@
         <div id="h3">
           <h3>
             <s:text name="buildQueue.currentTask.section.title"/>
-          </h3>  
-          <table width="100%">
-            <s:if test="%{currentBuildProjectTasks != null}">
-            <tbody>
-              <tr>
-                <th><s:text name="buildQueue.currentTask.buildQueue"/></th>
-                <th><s:text name="buildQueue.currentTask.projectName"/></th>
-                <th><s:text name="buildQueue.currentTask.buildDefinition"/></th>
-                <th>&nbsp;</th>
-              </tr>
-              <c:forEach var="element" items="${currentBuildProjectTasks}">
-                <tr>
-                  <td width="20%">${element.key}</td>
-                  <td width="20%">
-                    <s:url id="viewUrl" action="buildResults">
-                      <s:param name="projectId">${element.value.projectId}</s:param>
+          </h3>
+          <c:if test="${not empty currentBuildProjectTasks}">
+            <s:set name="currentBuildProjectTasks" value="currentBuildProjectTasks" scope="request"/>
+            <ec:table items="currentBuildProjectTasks"
+                      var="queue"
+                      showExports="false"
+                      showPagination="false"
+                      showStatusBar="false"
+                      sortable="false"
+                      filterable="false">
+              <ec:row>
+                <ec:column property="name" title="buildQueue.currentTask.buildQueue" width="29%"/>
+                <ec:column property="projectUrl" title="buildQueue.currentTask.projectName"
width="50%">
+                  <s:url id="viewUrl" action="buildResults">
+                    <s:param name="projectId">${queue.task.projectId}</s:param>
+                  </s:url>
+                  <s:a href="%{viewUrl}">${queue.task.projectName}</s:a>
+                </ec:column>
+                <ec:column property="task.buildDefinitionLabel" title="buildQueue.currentTask.buildDefinition"
width="19%"/>
+                <ec:column property="cancelAction" title="&nbsp;" width="1%">
+                  <redback:ifAuthorized permission="continuum-manage-queues">
+                    <s:url id="cancelUrl" action="cancelCurrentBuildTask" method="cancelCurrent"
namespace="/">
+                      <s:param name="projectId">${queue.task.projectId}</s:param>
                     </s:url>
-                    <s:a href="%{viewUrl}">${element.value.projectName}</s:a>
-                  </td>
-                  <td width="29%">${element.value.buildDefinitionLabel}</td>
-                  <td width="1%">
-                    <redback:ifAuthorized permission="continuum-manage-queues">
-                      <s:url id="cancelUrl" action="cancelCurrentBuildTask" method="cancelCurrent"
namespace="/">
-                        <s:param name="projectId">${element.value.projectId}</s:param>
-                      </s:url>
-                      <s:a href="%{cancelUrl}"><img src="<s:url value='/images/cancelbuild.gif'
includeParams="none"/>" alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>"
border="0"></s:a>
-                    </redback:ifAuthorized>
-                    <redback:elseAuthorized>
-                      <img src="<s:url value='/images/cancelbuild_disabled.gif' includeParams="none"/>"
alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>" border="0">
-                    </redback:elseAuthorized>
-                  </td>
-                </tr>
-              </c:forEach>
-            </tbody>
-            </s:if>
-            <s:else>
-              <s:text name="buildQueue.no.currentTaks" />
-            </s:else>
-          </table>
+                    <s:a href="%{cancelUrl}"><img src="<s:url value='/images/cancelbuild.gif'
includeParams="none"/>" alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>"
border="0"></s:a>
+                  </redback:ifAuthorized>
+                  <redback:elseAuthorized>
+                    <img src="<s:url value='/images/cancelbuild_disabled.gif' includeParams="none"/>"
alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>" border="0">
+                  </redback:elseAuthorized>
+                </ec:column>
+              </ec:row>
+            </ec:table>
+          </c:if>
+          <c:if test="${empty currentBuildProjectTasks}">
+            <s:text name="buildQueue.no.currentTaks" />
+          </c:if>
         </div>
         
         <div id="h3">
           <h3>
             <s:text name="buildQueue.section.title"/>
           </h3>
-          <table width="100%">
-            <s:if test="%{buildsInQueue != null}">
-            <tbody>
-              <tr>
+          <c:if test="${not empty buildsInQueue}">
+            <s:set name="buildsInQueue" value="buildsInQueue" scope="request"/>
+            <ec:table items="buildsInQueue"
+                      var="queue"
+                      showExports="false"
+                      showPagination="false"
+                      showStatusBar="false"
+                      sortable="false"
+                      filterable="false">
+              <ec:row>
                 <redback:ifAuthorized permission="continuum-manage-queues">
-                  <th>&nbsp;</th>
+                  <ec:column alias="selectedBuildTaskHashCodes" title=" " style="width:5px"
filterable="false" sortable="false" headerCell="selectAll">
+                    <input type="checkbox" name="selectedBuildTaskHashCodes" value="${queue.task.hashCode}"
/>
+                  </ec:column>
                 </redback:ifAuthorized>
-                <th><s:text name="buildQueue.currentTask.buildQueue"/></th>
-                <th><s:text name="buildQueue.currentTask.projectName"/></th>
-                <th><s:text name="buildQueue.currentTask.buildDefinition"/></th>
-                <th>&nbsp;</th>
-              </tr>
-              <c:forEach var="element" items="${buildsInQueue}">
-                <c:forEach var="buildTask" items="${element.value}">
-                  <tr>
-                    <td width="1%">
-                      <redback:ifAuthorized permission="continuum-manage-queues">
-                          <input type="checkbox" name="selectedBuildTaskHashCodes" value="${buildTask.hashCode}"
/>
-                      </redback:ifAuthorized>
-                    </td>
-                  	<td width="29%">${element.key}</td>
-                    <td width="50%">
-                      <s:url id="viewUrl" action="buildResults">
-                        <s:param name="projectId">${buildTask.projectId}</s:param>
-                      </s:url>
-                      <s:a href="%{viewUrl}">${buildTask.projectName}</s:a>
-                    </td>
-                  	<td width="19%">${buildTask.buildDefinitionLabel}</td>
-                    <td width="1%">
-                      <redback:ifAuthorized permission="continuum-manage-queues">
-                        <s:url id="cancelUrl" action="removeBuildQueueEntry" method="remove"
namespace="/">
-                          <s:param name="projectId">${pageScope.buildTask.projectId}</s:param>
-                          <s:param name="buildDefinitionId">${pageScope.buildTask.buildDefinitionId}</s:param>
-                          <s:param name="trigger">${pageScope.buildTask.trigger}</s:param>
-                          <s:param name="projectName">${pageScope.buildTask.projectName}</s:param>
-                        </s:url>
-                        <s:a href="%{cancelUrl}"><img src="<s:url value='/images/cancelbuild.gif'
includeParams="none"/>" alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>"
border="0"></s:a>
-                      </redback:ifAuthorized>
-                      <redback:elseAuthorized>
-                        <img src="<s:url value='/images/cancelbuild_disabled.gif' includeParams="none"/>"
alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>" border="0">
-                      </redback:elseAuthorized>
-                    </td>
-                  </tr>
-                </c:forEach>
-              </c:forEach>
-            </tbody>
-            </s:if>
-            <s:else>
-              <s:text name="buildQueue.empty"/>
-            </s:else>
-          </table>
+                <ec:column property="name" title="buildQueue.currentTask.buildQueue" width="29%"/>
+                <ec:column property="projectUrl" title="buildQueue.currentTask.projectName"
width="50%">
+                  <s:url id="viewUrl" action="buildResults">
+                    <s:param name="projectId">${queue.task.projectId}</s:param>
+                  </s:url>
+                  <s:a href="%{viewUrl}">${queue.task.projectName}</s:a>
+                </ec:column>
+                <ec:column property="task.buildDefinitionLabel" title="buildQueue.currentTask.buildDefinition"
width="19%"/>
+                <ec:column property="cancelAction" title="&nbsp;" width="1%">
+                  <redback:ifAuthorized permission="continuum-manage-queues">
+                    <s:url id="cancelUrl" action="removeBuildQueueEntry" method="remove"
namespace="/">
+                      <s:param name="projectId">${queue.task.projectId}</s:param>
+                      <s:param name="buildDefinitionId">${queue.task.buildDefinitionId}</s:param>
+                      <s:param name="trigger">${queue.task.trigger}</s:param>
+                      <s:param name="projectName">${queue.task.projectName}</s:param>
+                    </s:url>
+                    <s:a href="%{cancelUrl}"><img src="<s:url value='/images/cancelbuild.gif'
includeParams="none"/>" alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>"
border="0"></s:a>
+                  </redback:ifAuthorized>
+                  <redback:elseAuthorized>
+                    <img src="<s:url value='/images/cancelbuild_disabled.gif' includeParams="none"/>"
alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>" border="0">
+                  </redback:elseAuthorized>
+                </ec:column>
+              </ec:row>
+            </ec:table>
+          </c:if>
+          <c:if test="${empty buildsInQueue}">
+            <s:text name="buildQueue.empty"/>
+          </c:if>
         </div>
         <c:if test="${not empty buildsInQueue}">
           <div class="functnbar3">
@@ -151,94 +140,85 @@
           <h3>
             <s:text name="checkoutQueue.currentTask.section.title"/>
           </h3>
-          <table width="100%">
-            <s:if test="%{currentCheckoutTasks != null}">
-            <tbody>
-              <tr>
-                <th><s:text name="checkoutQueue.currentTask.buildQueue"/></th>
-                <th><s:text name="checkoutQueue.currentTask.projectName"/></th>
-                <th>&nbsp;</th>
-              </tr>
-              <c:forEach var="element" items="${currentCheckoutTasks}">
-                <tr>
-                  <td width="30%">${element.key}</td>
-                  <td width="69%">
-                    <s:url id="viewUrl" action="projectView">
-                      <s:param name="projectId">${element.value.projectId}</s:param>
-                    </s:url>
-                    <s:a href="%{viewUrl}">${element.value.projectName}</s:a>
-                  </td>
-                  <td width="1%">
+          <c:if test="${not empty currentCheckoutTasks}">
+            <s:set name="currentCheckoutTasks" value="currentCheckoutTasks" scope="request"/>
+            <ec:table items="currentCheckoutTasks"
+                      var="queue"
+                      showExports="false"
+                      showPagination="false"
+                      showStatusBar="false"
+                      sortable="false"
+                      filterable="false">
+              <ec:row>
+                <ec:column property="name" title="checkoutQueue.currentTask.buildQueue"
width="29%"/>
+                <ec:column property="projectUrl" title="checkoutQueue.currentTask.projectName"
width="69%">
+                  <s:url id="viewUrl" action="projectView">
+                    <s:param name="projectId">${queue.task.projectId}</s:param>
+                  </s:url>
+                  <s:a href="%{viewUrl}">${queue.task.projectName}</s:a>
+                </ec:column>
+                <ec:column property="cancelAction" title="&nbsp;" width="1%">
                   <redback:ifAuthorized permission="continuum-manage-queues">
                     <s:url id="cancelUrl" action="cancelCurrentQueueTask" method="cancelCurrentCheckout"
namespace="/">
-                      <s:param name="projectId">${element.value.projectId}</s:param>
+                      <s:param name="projectId">${queue.task.projectId}</s:param>
                     </s:url>
                     <s:a href="%{cancelUrl}"><img src="<s:url value='/images/cancelbuild.gif'
includeParams="none"/>" alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>"
border="0"></s:a>
                   </redback:ifAuthorized>
                   <redback:elseAuthorized>
                     <img src="<s:url value='/images/cancelbuild_disabled.gif' includeParams="none"/>"
alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>" border="0">
                   </redback:elseAuthorized>
-                  </td>
-                </tr>
-              </c:forEach>
-            </tbody>
-            </s:if>
-            <s:else>
-              <s:text name="checkoutQueue.no.currentTaks" />
-            </s:else>
-          </table>
+                </ec:column>
+              </ec:row>
+            </ec:table>
+          </c:if>
+          <c:if test="${empty currentCheckoutTasks}">
+            <s:text name="checkoutQueue.no.currentTaks" />
+          </c:if>
         </div>
         
         <div id="h3">
           <h3>
             <s:text name="checkoutQueue.section.title"/>
           </h3>
-          <table width="100%">
-            <s:if test="%{checkoutsInQueue != null}">
-            <tbody>
-              <tr>
+          <c:if test="${not empty checkoutsInQueue}">
+            <s:set name="checkoutsInQueue" value="checkoutsInQueue" scope="request"/>
+            <ec:table items="checkoutsInQueue"
+                      var="queue"
+                      showExports="false"
+                      showPagination="false"
+                      showStatusBar="false"
+                      sortable="false"
+                      filterable="false">
+              <ec:row>
                 <redback:ifAuthorized permission="continuum-manage-queues">
-                  <th>&nbsp;</th>
+                  <ec:column alias="selectedCheckOutTaskHashCodes" title=" " style="width:5px"
filterable="false" sortable="false" headerCell="selectAll">
+                    <input type="checkbox" name="selectedCheckOutTaskHashCodes" value="${queue.task.hashCode}"
/>
+                  </ec:column>
                 </redback:ifAuthorized>
-                <th><s:text name="checkoutQueue.currentTask.buildQueue"/></th>
-                <th><s:text name="checkoutQueue.currentTask.projectName"/></th>
-                <th>&nbsp;</th>
-              </tr>
-              <c:forEach var="element" items="${checkoutsInQueue}">
-                <c:forEach var="checkoutTask" items="${element.value}">
-                  <tr>
-                    <td width="1%">
-                      <redback:ifAuthorized permission="continuum-manage-queues">
-                          <input type="checkbox" name="selectedCheckOutTaskHashCodes"
value="${checkoutTask.hashCode}" />
-                      </redback:ifAuthorized>
-                    </td>
-                  	<td width="29%">${element.key}</td>
-                    <td width="69%">
-                      <s:url id="viewUrl" action="projectView">
-                        <s:param name="projectId">${checkoutTask.projectId}</s:param>
-                      </s:url>
-                      <s:a href="%{viewUrl}">${checkoutTask.projectName}</s:a>
-                    </td>
-                    <td width="1%">
-                      <redback:ifAuthorized permission="continuum-manage-queues">
-                        <s:url id="cancelUrl" action="removeCheckoutQueueEntry" method="removeCheckout">
-                          <s:param name="projectId">${checkoutTask.projectId}</s:param>
-                        </s:url>
-                        <s:a href="%{cancelUrl}"><img src="<s:url value='/images/cancelbuild.gif'
includeParams="none"/>" alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>"
border="0"></s:a>
-                      </redback:ifAuthorized>
-                      <redback:elseAuthorized>
-                        <img src="<s:url value='/images/cancelbuild_disabled.gif' includeParams="none"/>"
alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>" border="0">
-                      </redback:elseAuthorized>
-                    </td>
-                  </tr>
-                </c:forEach>
-              </c:forEach>
-            </tbody>
-            </s:if>
-            <s:else>
-              <s:text name="checkoutQueue.no.currentTaks" />
-            </s:else>
-          </table>
+                <ec:column property="name" title="checkoutQueue.currentTask.buildQueue"
width="29%"/>
+                <ec:column property="projectUrl" title="checkoutQueue.currentTask.projectName"
width="69%">
+                  <s:url id="viewUrl" action="projectView">
+                    <s:param name="projectId">${queue.task.projectId}</s:param>
+                  </s:url>
+                  <s:a href="%{viewUrl}">${queue.task.projectName}</s:a>
+                </ec:column>
+                <ec:column property="cancelAction" title="&nbsp;" width="1%">
+                  <redback:ifAuthorized permission="continuum-manage-queues">
+                    <s:url id="cancelUrl" action="removeCheckoutQueueEntry" method="removeCheckout"
namespace="/">
+                      <s:param name="projectId">${queue.task.projectId}</s:param>
+                    </s:url>
+                    <s:a href="%{cancelUrl}"><img src="<s:url value='/images/cancelbuild.gif'
includeParams="none"/>" alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>"
border="0"></s:a>
+                  </redback:ifAuthorized>
+                  <redback:elseAuthorized>
+                    <img src="<s:url value='/images/cancelbuild_disabled.gif' includeParams="none"/>"
alt="<s:text name='cancel'/>" title="<s:text name='cancel'/>" border="0">
+                  </redback:elseAuthorized>
+                </ec:column>
+              </ec:row>
+            </ec:table>
+          </c:if>
+          <c:if test="${empty checkoutsInQueue}">
+            <s:text name="checkoutQueue.empty" />
+          </c:if>
         </div>
         <c:if test="${not empty checkoutsInQueue}">
           <div class="functnbar3">



Mime
View raw message