|  | 1 <%-- | 
|  | 2 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. | 
|  | 3 | 
|  | 4 Copyright 2018 Mike Becker. All rights reserved. | 
|  | 5 | 
|  | 6 Redistribution and use in source and binary forms, with or without | 
|  | 7 modification, are permitted provided that the following conditions are met: | 
|  | 8 | 
|  | 9 1. Redistributions of source code must retain the above copyright | 
|  | 10 notice, this list of conditions and the following disclaimer. | 
|  | 11 | 
|  | 12 2. Redistributions in binary form must reproduce the above copyright | 
|  | 13 notice, this list of conditions and the following disclaimer in the | 
|  | 14 documentation and/or other materials provided with the distribution. | 
|  | 15 | 
|  | 16 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | 
|  | 17 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 
|  | 18 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | 
|  | 19 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | 
|  | 20 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | 
|  | 21 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | 
|  | 22 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | 
|  | 23 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | 
|  | 24 OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
|  | 25 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
|  | 26 --%> | 
|  | 27 <%@page pageEncoding="UTF-8" %> | 
|  | 28 <%@page import="de.uapcore.lightpit.Constants" %> | 
|  | 29 <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> | 
|  | 30 <%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> | 
|  | 31 | 
|  | 32 <c:set scope="page" var="moduleInfo" value="${requestScope[Constants.REQ_ATTR_MODULE_INFO]}"/> | 
|  | 33 | 
|  | 34 <jsp:useBean id="projects" type="java.util.List<de.uapcore.lightpit.entities.Project>" scope="request"/> | 
|  | 35 | 
|  | 36 <c:if test="${empty projects}"> | 
|  | 37     <div class="info-box"> | 
|  | 38     <fmt:message key="no-projects" /> | 
|  | 39     </div> | 
|  | 40 </c:if> | 
|  | 41 | 
|  | 42 <div id="tool-area"> | 
|  | 43     <a href="./${moduleInfo.modulePath}/edit" class="button"><fmt:message key="button.create" /></a> | 
|  | 44 </div> | 
|  | 45 | 
|  | 46 <c:if test="${not empty projects}"> | 
|  | 47 <table class="datatable medskip"> | 
|  | 48     <colgroup> | 
|  | 49         <col> | 
|  | 50         <col style="width: 15%"> | 
|  | 51         <col style="width: 35%"> | 
|  | 52         <col style="width: 30%"> | 
|  | 53         <col style="width: 20%"> | 
|  | 54     </colgroup> | 
|  | 55     <thead> | 
|  | 56     <tr> | 
|  | 57         <th></th> | 
|  | 58         <th><fmt:message key="thead.name"/></th> | 
|  | 59         <th><fmt:message key="thead.description"/></th> | 
|  | 60         <th><fmt:message key="thead.repoUrl"/></th> | 
|  | 61         <th><fmt:message key="thead.owner"/></th> | 
|  | 62     </tr> | 
|  | 63     </thead> | 
|  | 64     <tbody> | 
|  | 65     <c:forEach var="project" items="${projects}"> | 
|  | 66         <tr> | 
|  | 67             <td><a href="./${moduleInfo.modulePath}/edit?id=${project.id}">✎</a></td> | 
|  | 68             <td><c:out value="${project.name}"/></td> | 
|  | 69             <td><c:out value="${project.description}"/></td> | 
|  | 70             <td> | 
|  | 71                 <c:if test="${not empty project.repoUrl}"> | 
|  | 72                 <a target="_blank" href="<c:out value="${project.repoUrl}"/>"><c:out value="${project.repoUrl}"/></a> | 
|  | 73                 </c:if> | 
|  | 74             </td> | 
|  | 75             <td> | 
|  | 76             <c:if test="${not empty project.owner}"><c:out value="${project.owner.displayname}"/></c:if> | 
|  | 77             <c:if test="${empty project.owner}"><fmt:message key="placeholder.null-owner" /></c:if> | 
|  | 78             </td> | 
|  | 79         </tr> | 
|  | 80     </c:forEach> | 
|  | 81     </tbody> | 
|  | 82 </table> | 
|  | 83 </c:if> |