1
|
<%@page contentType="text/html" pageEncoding="UTF-8"%>
|
2
|
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
|
3
|
|
4
|
<c:set var="APP_NAME" value="IMiGEr"/>
|
5
|
<c:set var="APP_HOME_URL" value="${initParam.HOME_URL}"/>
|
6
|
<c:set var="isLoggedIn" value="${sessionScope.isLoggedIn}"/>
|
7
|
<c:set var="user" value="${sessionScope.user}"/>
|
8
|
|
9
|
<!DOCTYPE html>
|
10
|
<html>
|
11
|
<head>
|
12
|
<meta charset="utf-8">
|
13
|
|
14
|
<link rel="stylesheet" href="css/main.css">
|
15
|
|
16
|
<script id="htmlTags" type="application/json"><%@ include file="node_modules/html-tags/html-tags.json" %></script>
|
17
|
<script id="svgTags" type="application/json"><%@ include file="node_modules/svg-tags/lib/svg-tags.json" %></script>
|
18
|
|
19
|
<script src="js/components/generic/popup.js"></script>
|
20
|
<script src="js/components/loginPopup.js"></script>
|
21
|
<script src="js/components/registerPopup.js"></script>
|
22
|
|
23
|
<script src="js/errors/abstractMethodError.js"></script>
|
24
|
<script src="js/errors/httpError.js"></script>
|
25
|
|
26
|
<script src="js/utils/ajax.js"></script>
|
27
|
<script src="js/utils/dom.js"></script>
|
28
|
|
29
|
<script src="js/constants.js"></script>
|
30
|
|
31
|
<script src="js/app.js"></script>
|
32
|
<script src="js/uploadFilesApp.js"></script>
|
33
|
|
34
|
<script src="js/userMenu.js"></script>
|
35
|
|
36
|
<title>${APP_NAME}</title>
|
37
|
</head>
|
38
|
|
39
|
<body class="${isLoggedIn ? 'loggedIn' : 'loggedOut'}">
|
40
|
<header class="header" id="header">
|
41
|
<img src="images/logo.png" class="header-logo" alt="logo of University of West Bohemia" title="University of West Bohemia">
|
42
|
|
43
|
<h2 class="header-title">Interactive Multimodal Graph Explorer</h2>
|
44
|
|
45
|
<%@ include file="userMenu.jsp" %>
|
46
|
</header>
|
47
|
|
48
|
<main>
|
49
|
<div class="upload-form">
|
50
|
<h3>New diagram</h3>
|
51
|
|
52
|
<c:if test="${not empty errorMessage}">
|
53
|
<p class="alert">${errorMessage}</p>
|
54
|
</c:if>
|
55
|
|
56
|
<form method="post" enctype="multipart/form-data">
|
57
|
<div class="form-field">
|
58
|
<label for="file">Select JSON data file:</label><br>
|
59
|
<input type="file" name="file" id="file">
|
60
|
</div>
|
61
|
|
62
|
<div class="form-field">
|
63
|
Select type of data file:<br>
|
64
|
<label for="spade"><input type="radio" name="jsonFileFormat" value="spade" id="spade" checked> Spade JSON</label><br>
|
65
|
<label for="raw"><input type="radio" name="jsonFileFormat" value="raw" id="raw"> Raw JSON</label><br>
|
66
|
</div>
|
67
|
|
68
|
<button type="submit">Start visualization</button>
|
69
|
</form>
|
70
|
</div>
|
71
|
|
72
|
<div class="diagrams-menu loggedInOnly">
|
73
|
<h3>My diagrams</h3>
|
74
|
|
75
|
<ul id="privateDiagramList">
|
76
|
<c:forEach items="${diagramsPrivate}" var="diagram">
|
77
|
<li>
|
78
|
<a href="${HOME_URL}graph?diagramId=${diagram.id}">${diagram.name}</a>
|
79
|
|
80
|
<button class="button remove-diagram-button" data-id="${diagram.id}" data-name="${diagram.name}">
|
81
|
<img src="images/button_cancel.png" alt="odstranit">
|
82
|
</button>
|
83
|
</li>
|
84
|
</c:forEach>
|
85
|
</ul>
|
86
|
</div>
|
87
|
|
88
|
<div class="diagrams-menu">
|
89
|
<h3>Public diagrams</h3>
|
90
|
|
91
|
<ul id="publicDiagramList">
|
92
|
<c:forEach items="${diagramsPublic}" var="diagram">
|
93
|
<li>
|
94
|
<a href="${HOME_URL}graph?diagramId=${diagram.id}">${diagram.name}</a>
|
95
|
</li>
|
96
|
</c:forEach>
|
97
|
</ul>
|
98
|
</div>
|
99
|
</main>
|
100
|
|
101
|
<script>
|
102
|
const app = new UploadFilesApp('${APP_NAME}', '${APP_HOME_URL}');
|
103
|
|
104
|
document.addEventListener('DOMContentLoaded', () => {
|
105
|
app.run();
|
106
|
});
|
107
|
</script>
|
108
|
</body>
|
109
|
</html>
|