6 |
<link rel="stylesheet" href="webjars/bootstrap/3.3.5/css/bootstrap.min.css" /> |
<link rel="stylesheet" href="webjars/bootstrap/3.3.5/css/bootstrap.min.css" /> |
7 |
|
|
8 |
<link rel="stylesheet" href="webjars/bootstrap-fileinput/4.2.7/css/fileinput.min.css" /> |
<link rel="stylesheet" href="webjars/bootstrap-fileinput/4.2.7/css/fileinput.min.css" /> |
9 |
|
|
10 |
|
<style> |
11 |
|
|
12 |
|
@media (min-width: 1300px) { |
13 |
|
.container { |
14 |
|
width: 1300px; /*default 1170px*/ |
15 |
|
} |
16 |
|
} |
17 |
|
</style> |
18 |
|
|
19 |
<!-- use webjars for dependencies --> |
<!-- use webjars for dependencies --> |
20 |
<script src="webjars/jquery/2.1.4/jquery.js"></script> |
<script src="webjars/jquery/2.1.4/jquery.js"></script> |
28 |
|
|
29 |
|
|
30 |
function loadTasks() { |
function loadTasks() { |
31 |
$.get("TaskServlet", function(data) { |
$.get("rest/tasks/list", function(data) { |
32 |
//console.log(data); |
//console.log(data); |
33 |
|
|
34 |
|
|
50 |
|
|
51 |
|
|
52 |
html += "<div class='panel " + pclass + "'>"; |
html += "<div class='panel " + pclass + "'>"; |
53 |
html += "<div class='panel-heading'><h4 class='panel-title'>" + entry.description + "</h4></div>"; |
html += "<div class='panel-heading'>"; |
54 |
|
if (entry.state == "STATE_DONE" || entry.state == "STATE_ABORTED" || entry.state == "STATE_QUEUED") { |
55 |
|
html += "<button type='button' class='close removetask' aria-label='Close' taskid='" + entry.id+ "'><span aria-hidden='true'>×</span></button>"; |
56 |
|
} |
57 |
|
html += "<h4 class='panel-title'>" + entry.description + "</h4>"; |
58 |
|
html += "</div>"; |
59 |
|
html += " <div class='panel-body'>"; |
60 |
|
|
61 |
html += entry.detail; |
html += entry.detail; |
62 |
|
|
63 |
if (entry.state == "STATE_ABORTED") |
if (entry.state == "STATE_ABORTED") |
64 |
html += "<br><div style='color: red'>" + entry.errorMessage + "</div>"; |
html += "<br><div style='color: red'>" + entry.errorMessage + "</div>"; |
65 |
|
|
66 |
|
if (entry.state == "STATE_RUNNING") { |
67 |
|
if (entry.percentCompleted >= 0) { |
68 |
|
var percent = entry.percentCompleted.toFixed(2); |
69 |
|
html += "<div class='progress'>"; |
70 |
|
html += "<div class='progress-bar' role='progressbar' aria-valuenow='" + percent + "' aria-valuemin='0' aria-valuemax='100' style='width:" + percent + "%'> " ; |
71 |
|
html += percent + "%"; |
72 |
|
html += " </div>"; |
73 |
|
html += "</div>"; |
74 |
|
} |
75 |
|
} |
76 |
|
|
77 |
html += "<br/><div style='font-size: 8px; margin: 7px;'>" + entry.state + "</div>"; |
var viewlog = ""; |
78 |
|
if (entry.state == "STATE_RUNNING" || entry.state == "STATE_DONE" || entry.state == "STATE_ABORTED") { |
79 |
|
viewlog = "<span style='float: right'><a href='#' class='viewlog' taskid='" + entry.id+ "'>Log</a></span>"; |
80 |
|
} |
81 |
|
|
82 |
html += "</div>"; |
html += " <div style='font-size: 8px; '>" + entry.state + viewlog + "</div>"; |
83 |
|
|
84 |
|
html += " </div>"; //panel-body |
85 |
|
html += "</div>"; //panel |
86 |
|
|
87 |
}); |
}); |
88 |
if (html == "") { |
if (html == "") { |
108 |
|
|
109 |
$(document).ready( function() { |
$(document).ready( function() { |
110 |
loadTasks(); |
loadTasks(); |
111 |
setInterval(loadTasks, 2500); |
setInterval(loadTasks, 5000); |
112 |
|
|
113 |
|
|
114 |
|
$(document).on('click', '.viewlog', function(event) { // Bind future elements |
115 |
|
var taskid = $(this).attr('taskid'); |
116 |
|
$("#logview").load('rest/tasks/log/' + taskid); |
117 |
|
|
118 |
|
}); |
119 |
|
|
120 |
|
$(document).on('click', '.removetask', function(event) { // Bind future elements |
121 |
|
var taskid = $(this).attr('taskid'); |
122 |
|
$.get('rest/tasks/remove/' + taskid, function() { |
123 |
|
loadTasks(); |
124 |
|
}); |
125 |
|
}); |
126 |
|
|
127 |
$("#file").fileinput({ |
$("#file").fileinput({ |
128 |
//'showUpload':false, |
//'showUpload':false, |
129 |
'showRemove': false, |
'showRemove': false, |
148 |
$('#file').fileinput('upload'); |
$('#file').fileinput('upload'); |
149 |
}); |
}); |
150 |
|
|
151 |
|
|
152 |
|
$("#afstandBtn").click( function(){ |
153 |
|
var dist = $("#afstand_distributor").val(); |
154 |
|
if (dist == "") { |
155 |
|
alert("Du skal vælge distributør"); |
156 |
|
return; |
157 |
|
} |
158 |
|
var type = $("#afstand_type").val(); |
159 |
|
var url = "rest/commands/distancecalculation/" + dist + "/" + type; |
160 |
|
|
161 |
|
|
162 |
|
$.get(url, function() { |
163 |
|
loadTasks(); //Force reload of tasks immediately |
164 |
|
} ); |
165 |
|
|
166 |
|
}); |
167 |
|
|
168 |
}); |
}); |
169 |
|
|
170 |
</script> |
</script> |
177 |
<h1>Dao Adresse Vedligehold</h1> |
<h1>Dao Adresse Vedligehold</h1> |
178 |
</div> |
</div> |
179 |
<div id="body"> |
<div id="body"> |
180 |
<div class="row"> |
<div class="row"> |
181 |
<div class="col-sm-3" id="leftCol" > |
<div class="col-sm-3" id="leftCol" > |
182 |
<div class="panel panel-primary"> |
<div class="panel panel-primary"> |
183 |
<div class="panel-heading"> |
<div class="panel-heading"> |
191 |
</div> |
</div> |
192 |
</div> |
</div> |
193 |
|
|
194 |
<div class="col-sm-6" id="center" > |
<div class="col-sm-6" id="center"> |
195 |
b |
<pre id="logview"> |
196 |
|
</pre> |
197 |
</div> |
</div> |
198 |
|
|
199 |
<div class="col-sm-3" id="rightCol" > |
<div class="col-sm-3" id="rightCol" > |
200 |
<div class="panel panel-primary"> |
<div class="panel panel-primary"> |
201 |
<div class="panel-heading"> |
<div class="panel-heading"> |
202 |
<h3 class="panel-title">Actions</h3> |
<h3 class="panel-title">Upload File</h3> |
203 |
</div> |
</div> |
204 |
<div class="panel-body"> |
<div class="panel-body"> |
205 |
|
|
230 |
|
|
231 |
|
|
232 |
</div> |
</div> |
233 |
</div> |
</div> <!-- upload panel --> |
234 |
</div> |
|
235 |
</div> |
<div class="panel panel-primary"> |
236 |
|
<div class="panel-heading"> |
237 |
|
<h3 class="panel-title">Afstand anden rute</h3> |
238 |
|
</div> |
239 |
|
<div class="panel-body"> |
240 |
|
|
241 |
|
|
242 |
|
<label for="distributor">Distributør:</label> |
243 |
|
<select class="form-control" id="afstand_distributor" name="afstand_distributor"> |
244 |
|
<option></option> |
245 |
|
<option>BK</option> |
246 |
|
<option>DAO</option> |
247 |
|
</select> |
248 |
|
|
249 |
|
|
250 |
|
<label for="type">Type:</label> |
251 |
|
<select class="form-control" id="afstand_type" name="afstand_type"> |
252 |
|
<option>Incremental</option> |
253 |
|
<option>Full</option> |
254 |
|
</select> |
255 |
|
<br> |
256 |
|
|
257 |
|
|
258 |
|
<button class="btn btn-primary" id="afstandBtn">Beregn</button> |
259 |
|
|
260 |
|
|
261 |
|
</div> |
262 |
|
</div><!-- Afstand-andenrute panel --> |
263 |
|
|
264 |
|
|
265 |
|
|
266 |
|
</div><!-- rightcol --> |
267 |
|
</div> <!-- row --> |
268 |
|
|
269 |
</div> |
</div><!-- body --> |
270 |
|
|
271 |
|
|
272 |
</div> |
</div> |
273 |
|
|
274 |
|
|