--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/webapp/WEB-INF/dynamic_fragments/projects.jsp Thu May 14 22:48:01 2020 +0200 @@ -0,0 +1,83 @@ +<%-- +DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. + +Copyright 2018 Mike Becker. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--%> +<%@page pageEncoding="UTF-8" %> +<%@page import="de.uapcore.lightpit.Constants" %> +<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> + +<c:set scope="page" var="moduleInfo" value="${requestScope[Constants.REQ_ATTR_MODULE_INFO]}"/> + +<jsp:useBean id="projects" type="java.util.List<de.uapcore.lightpit.entities.Project>" scope="request"/> + +<c:if test="${empty projects}"> + <div class="info-box"> + <fmt:message key="no-projects" /> + </div> +</c:if> + +<div id="tool-area"> + <a href="./${moduleInfo.modulePath}/edit" class="button"><fmt:message key="button.create" /></a> +</div> + +<c:if test="${not empty projects}"> +<table class="datatable medskip"> + <colgroup> + <col> + <col style="width: 15%"> + <col style="width: 35%"> + <col style="width: 30%"> + <col style="width: 20%"> + </colgroup> + <thead> + <tr> + <th></th> + <th><fmt:message key="thead.name"/></th> + <th><fmt:message key="thead.description"/></th> + <th><fmt:message key="thead.repoUrl"/></th> + <th><fmt:message key="thead.owner"/></th> + </tr> + </thead> + <tbody> + <c:forEach var="project" items="${projects}"> + <tr> + <td><a href="./${moduleInfo.modulePath}/edit?id=${project.id}">✎</a></td> + <td><c:out value="${project.name}"/></td> + <td><c:out value="${project.description}"/></td> + <td> + <c:if test="${not empty project.repoUrl}"> + <a target="_blank" href="<c:out value="${project.repoUrl}"/>"><c:out value="${project.repoUrl}"/></a> + </c:if> + </td> + <td> + <c:if test="${not empty project.owner}"><c:out value="${project.owner.displayname}"/></c:if> + <c:if test="${empty project.owner}"><fmt:message key="placeholder.null-owner" /></c:if> + </td> + </tr> + </c:forEach> + </tbody> +</table> +</c:if>