3963 |
20 May 16 |
olle |
1 |
<%@ page |
3963 |
20 May 16 |
olle |
2 |
pageEncoding="UTF-8" |
3963 |
20 May 16 |
olle |
3 |
session="false" |
3963 |
20 May 16 |
olle |
4 |
import="net.sf.basedb.core.Application" |
3963 |
20 May 16 |
olle |
5 |
import="net.sf.basedb.core.User" |
3963 |
20 May 16 |
olle |
6 |
import="net.sf.basedb.core.DbControl" |
3963 |
20 May 16 |
olle |
7 |
import="net.sf.basedb.core.SessionControl" |
3963 |
20 May 16 |
olle |
8 |
import="net.sf.basedb.clients.web.Base" |
3963 |
20 May 16 |
olle |
9 |
import="net.sf.basedb.clients.web.util.HTML" |
3963 |
20 May 16 |
olle |
10 |
import="net.sf.basedb.clients.web.extensions.ExtensionsControl" |
3963 |
20 May 16 |
olle |
11 |
import="net.sf.basedb.util.Values" |
3963 |
20 May 16 |
olle |
12 |
import="net.sf.basedb.util.formatter.DateFormatter" |
5287 |
08 Feb 19 |
nicklas |
13 |
import="java.util.Date" |
3963 |
20 May 16 |
olle |
14 |
%> |
3963 |
20 May 16 |
olle |
15 |
<%@ taglib prefix="base" uri="/WEB-INF/base.tld" %> |
3963 |
20 May 16 |
olle |
16 |
<%@ taglib prefix="p" uri="/WEB-INF/path.tld" %> |
3963 |
20 May 16 |
olle |
17 |
<% |
3976 |
26 May 16 |
nicklas |
18 |
final SessionControl sc = Base.getExistingSessionControl(request, "net.sf.basedb.reggie", true); |
3963 |
20 May 16 |
olle |
19 |
final String ID = sc.getId(); |
3963 |
20 May 16 |
olle |
20 |
final float scale = Base.getScale(sc); |
3963 |
20 May 16 |
olle |
21 |
final String home = ExtensionsControl.getHomeUrl("net.sf.basedb.reggie"); |
3963 |
20 May 16 |
olle |
22 |
|
3963 |
20 May 16 |
olle |
23 |
DbControl dc = null; |
3963 |
20 May 16 |
olle |
24 |
try |
3963 |
20 May 16 |
olle |
25 |
{ |
3963 |
20 May 16 |
olle |
26 |
dc = sc.newDbControl(); |
3963 |
20 May 16 |
olle |
27 |
final User user = User.getById(dc, sc.getLoggedInUserId()); |
5287 |
08 Feb 19 |
nicklas |
28 |
DateFormatter dateFormat = new DateFormatter("yyyyMMdd"); |
3963 |
20 May 16 |
olle |
29 |
%> |
3963 |
20 May 16 |
olle |
30 |
<base:page type="default" > |
3963 |
20 May 16 |
olle |
31 |
<base:head |
3963 |
20 May 16 |
olle |
32 |
scripts="~../reggie-2.js,~inca-statistics.js" |
3963 |
20 May 16 |
olle |
33 |
styles="path.css,~../css/reggie-2.css" |
3963 |
20 May 16 |
olle |
34 |
> |
3963 |
20 May 16 |
olle |
35 |
<style> |
3963 |
20 May 16 |
olle |
36 |
|
5291 |
11 Feb 19 |
nicklas |
37 |
.stat-table |
5291 |
11 Feb 19 |
nicklas |
38 |
{ |
5302 |
15 Feb 19 |
nicklas |
39 |
width: 70em; |
5292 |
12 Feb 19 |
nicklas |
40 |
margin-left: 2em; |
5292 |
12 Feb 19 |
nicklas |
41 |
margin-bottom: 1em; |
5292 |
12 Feb 19 |
nicklas |
42 |
border-collapse: collapse; |
5291 |
11 Feb 19 |
nicklas |
43 |
} |
5291 |
11 Feb 19 |
nicklas |
44 |
|
5292 |
12 Feb 19 |
nicklas |
45 |
.stat-header |
5292 |
12 Feb 19 |
nicklas |
46 |
{ |
5302 |
15 Feb 19 |
nicklas |
47 |
border-width: 1px; |
5292 |
12 Feb 19 |
nicklas |
48 |
font-weight: bold; |
5292 |
12 Feb 19 |
nicklas |
49 |
} |
5292 |
12 Feb 19 |
nicklas |
50 |
|
5292 |
12 Feb 19 |
nicklas |
51 |
.stat-sub-header |
5292 |
12 Feb 19 |
nicklas |
52 |
{ |
5292 |
12 Feb 19 |
nicklas |
53 |
font-weight: normal; |
5292 |
12 Feb 19 |
nicklas |
54 |
} |
5292 |
12 Feb 19 |
nicklas |
55 |
|
5291 |
11 Feb 19 |
nicklas |
56 |
.stat-table td |
5291 |
11 Feb 19 |
nicklas |
57 |
{ |
5291 |
11 Feb 19 |
nicklas |
58 |
text-align: right; |
5292 |
12 Feb 19 |
nicklas |
59 |
padding: 1px 0.5em; |
5291 |
11 Feb 19 |
nicklas |
60 |
} |
5292 |
12 Feb 19 |
nicklas |
61 |
|
5302 |
15 Feb 19 |
nicklas |
62 |
.stat-table td.count |
5302 |
15 Feb 19 |
nicklas |
63 |
{ |
5302 |
15 Feb 19 |
nicklas |
64 |
border-left-style: dotted; |
5302 |
15 Feb 19 |
nicklas |
65 |
border-left-width: 1px; |
5302 |
15 Feb 19 |
nicklas |
66 |
} |
5302 |
15 Feb 19 |
nicklas |
67 |
|
5302 |
15 Feb 19 |
nicklas |
68 |
.stat-table td.percentage |
5302 |
15 Feb 19 |
nicklas |
69 |
{ |
5302 |
15 Feb 19 |
nicklas |
70 |
text-align: left; |
5302 |
15 Feb 19 |
nicklas |
71 |
} |
5302 |
15 Feb 19 |
nicklas |
72 |
|
5292 |
12 Feb 19 |
nicklas |
73 |
tr.stat-var |
5291 |
11 Feb 19 |
nicklas |
74 |
{ |
5292 |
12 Feb 19 |
nicklas |
75 |
border-top-width: 1px; |
5292 |
12 Feb 19 |
nicklas |
76 |
border-top-style: dotted; |
5291 |
11 Feb 19 |
nicklas |
77 |
} |
5291 |
11 Feb 19 |
nicklas |
78 |
|
5292 |
12 Feb 19 |
nicklas |
79 |
.stat-table td.stat-var-name |
5291 |
11 Feb 19 |
nicklas |
80 |
{ |
5292 |
12 Feb 19 |
nicklas |
81 |
text-align: left; |
5291 |
11 Feb 19 |
nicklas |
82 |
font-weight: bold; |
5291 |
11 Feb 19 |
nicklas |
83 |
} |
5291 |
11 Feb 19 |
nicklas |
84 |
|
5292 |
12 Feb 19 |
nicklas |
85 |
.stat-table td.stat-var-unit |
5291 |
11 Feb 19 |
nicklas |
86 |
{ |
5292 |
12 Feb 19 |
nicklas |
87 |
text-align: left; |
5291 |
11 Feb 19 |
nicklas |
88 |
} |
5291 |
11 Feb 19 |
nicklas |
89 |
|
5292 |
12 Feb 19 |
nicklas |
90 |
.stat-table td.stat-grp-name |
5291 |
11 Feb 19 |
nicklas |
91 |
{ |
5292 |
12 Feb 19 |
nicklas |
92 |
text-align: left; |
5291 |
11 Feb 19 |
nicklas |
93 |
} |
5291 |
11 Feb 19 |
nicklas |
94 |
|
5292 |
12 Feb 19 |
nicklas |
95 |
.stat-table[data-check-type="simplestatistics"] .fullstatistics |
5291 |
11 Feb 19 |
nicklas |
96 |
{ |
5291 |
11 Feb 19 |
nicklas |
97 |
display: none; |
5291 |
11 Feb 19 |
nicklas |
98 |
} |
5291 |
11 Feb 19 |
nicklas |
99 |
|
5292 |
12 Feb 19 |
nicklas |
100 |
.stat-table[data-check-type="fullstatistics"] .simplestatistics |
5292 |
12 Feb 19 |
nicklas |
101 |
{ |
5292 |
12 Feb 19 |
nicklas |
102 |
display: none; |
5292 |
12 Feb 19 |
nicklas |
103 |
} |
5292 |
12 Feb 19 |
nicklas |
104 |
|
3963 |
20 May 16 |
olle |
105 |
</style> |
3963 |
20 May 16 |
olle |
106 |
</base:head> |
3963 |
20 May 16 |
olle |
107 |
<base:body> |
3963 |
20 May 16 |
olle |
108 |
|
3963 |
20 May 16 |
olle |
109 |
<p:path><p:pathelement |
3963 |
20 May 16 |
olle |
110 |
title="Reggie" href="<%="../index.jsp?ID="+ID%>" |
3963 |
20 May 16 |
olle |
111 |
/><p:pathelement title="INCA statistics" |
3963 |
20 May 16 |
olle |
112 |
/></p:path> |
3963 |
20 May 16 |
olle |
113 |
|
3963 |
20 May 16 |
olle |
114 |
<div class="content"> |
3963 |
20 May 16 |
olle |
115 |
<form name="reggie" id="wizard" class="wizard"> |
3963 |
20 May 16 |
olle |
116 |
|
5292 |
12 Feb 19 |
nicklas |
117 |
<div class="step auto-hide" id="step-1"> |
3963 |
20 May 16 |
olle |
118 |
<div class="step-no">1</div> |
3963 |
20 May 16 |
olle |
119 |
<div class="step-title">Select INCA file</div> |
3963 |
20 May 16 |
olle |
120 |
<div class="step-content"> |
3963 |
20 May 16 |
olle |
121 |
|
3963 |
20 May 16 |
olle |
122 |
<table class="step-form"> |
3963 |
20 May 16 |
olle |
123 |
<tr> |
3968 |
23 May 16 |
olle |
124 |
<td class="prompt">Statistics date variable</td> |
3968 |
23 May 16 |
olle |
125 |
<td class="input"> |
3968 |
23 May 16 |
olle |
126 |
<select name="statisticsDateVar" id="statisticsDateVar" |
3968 |
23 May 16 |
olle |
127 |
class="auto-init" data-auto-init="focus-on-enter" data-next-focus="startDate"> |
3968 |
23 May 16 |
olle |
128 |
<option selected value="diagnosis" >Diagnosis date |
3968 |
23 May 16 |
olle |
129 |
<option value="operation">Operation date |
3968 |
23 May 16 |
olle |
130 |
</select> |
3968 |
23 May 16 |
olle |
131 |
</td> |
3968 |
23 May 16 |
olle |
132 |
<td class="status" id="statisticsDateVar.status"></td> |
3968 |
23 May 16 |
olle |
133 |
<td class="help"> |
3968 |
23 May 16 |
olle |
134 |
<span id="statisticsDateVar.message" class="message"></span> |
3968 |
23 May 16 |
olle |
135 |
Date variable to use for statistics time filter. |
3968 |
23 May 16 |
olle |
136 |
</td> |
3968 |
23 May 16 |
olle |
137 |
</tr> |
3968 |
23 May 16 |
olle |
138 |
<tr> |
3963 |
20 May 16 |
olle |
139 |
<td class="prompt">Statistics start date</td> |
3963 |
20 May 16 |
olle |
140 |
<td class="input"> |
3963 |
20 May 16 |
olle |
141 |
<input type="text" name="startDate" id="startDate" |
5287 |
08 Feb 19 |
nicklas |
142 |
value="20100101" |
3968 |
23 May 16 |
olle |
143 |
class="auto-init" data-auto-init="focus-on-enter" data-next-focus="endDate" |
3963 |
20 May 16 |
olle |
144 |
style="width: 8em;" maxlength="10"> |
3963 |
20 May 16 |
olle |
145 |
<base:icon |
3963 |
20 May 16 |
olle |
146 |
id="startDateCalendar" |
3963 |
20 May 16 |
olle |
147 |
subclass="auto-init" |
3963 |
20 May 16 |
olle |
148 |
data-auto-init="calendar" |
3963 |
20 May 16 |
olle |
149 |
data-textarea-id="startDate" |
3963 |
20 May 16 |
olle |
150 |
data-date-format="yyyyMMdd" |
3963 |
20 May 16 |
olle |
151 |
data-title="INCA statistics start date" |
3963 |
20 May 16 |
olle |
152 |
image="calendar.png" |
3963 |
20 May 16 |
olle |
153 |
tooltip="Select a date from a calendar" |
3963 |
20 May 16 |
olle |
154 |
tabindex="-1" |
3963 |
20 May 16 |
olle |
155 |
/> |
3963 |
20 May 16 |
olle |
156 |
</td> |
3963 |
20 May 16 |
olle |
157 |
<td class="status" id="startDate.status"></td> |
3963 |
20 May 16 |
olle |
158 |
<td class="help"> |
3963 |
20 May 16 |
olle |
159 |
<span id="startDate.message" class="message" style="display: none;"></span> |
3963 |
20 May 16 |
olle |
160 |
(YYYYMMDD or MMDD) The INCA statistics start date. |
3963 |
20 May 16 |
olle |
161 |
</td> |
3963 |
20 May 16 |
olle |
162 |
</tr> |
3963 |
20 May 16 |
olle |
163 |
<tr> |
3963 |
20 May 16 |
olle |
164 |
<td class="prompt">Statistics end date</td> |
3963 |
20 May 16 |
olle |
165 |
<td class="input"> |
3963 |
20 May 16 |
olle |
166 |
<input type="text" name="endDate" id="endDate" |
5287 |
08 Feb 19 |
nicklas |
167 |
value="<%=dateFormat.format(new Date()) %>" |
3972 |
25 May 16 |
olle |
168 |
class="auto-init" data-auto-init="focus-on-enter" data-next-focus="cancerType" |
3963 |
20 May 16 |
olle |
169 |
style="width: 8em;" maxlength="10"> |
3963 |
20 May 16 |
olle |
170 |
<base:icon |
3963 |
20 May 16 |
olle |
171 |
id="endDateCalendar" |
3963 |
20 May 16 |
olle |
172 |
subclass="auto-init" |
3963 |
20 May 16 |
olle |
173 |
data-auto-init="calendar" |
3963 |
20 May 16 |
olle |
174 |
data-textarea-id="endDate" |
3963 |
20 May 16 |
olle |
175 |
data-date-format="yyyyMMdd" |
3963 |
20 May 16 |
olle |
176 |
data-title="INCA statistics end date" |
3963 |
20 May 16 |
olle |
177 |
image="calendar.png" |
3963 |
20 May 16 |
olle |
178 |
tooltip="Select a date from a calendar" |
3963 |
20 May 16 |
olle |
179 |
tabindex="-1" |
3963 |
20 May 16 |
olle |
180 |
/> |
3963 |
20 May 16 |
olle |
181 |
</td> |
3963 |
20 May 16 |
olle |
182 |
<td class="status" id="endDate.status"></td> |
3963 |
20 May 16 |
olle |
183 |
<td class="help"> |
3963 |
20 May 16 |
olle |
184 |
<span id="endDate.message" class="message" style="display: none;"></span> |
3963 |
20 May 16 |
olle |
185 |
(YYYYMMDD or MMDD) The INCA statistics end date. |
3963 |
20 May 16 |
olle |
186 |
</td> |
3963 |
20 May 16 |
olle |
187 |
</tr> |
3972 |
25 May 16 |
olle |
188 |
<tr> |
3972 |
25 May 16 |
olle |
189 |
<td class="prompt">Cancer type[s]</td> |
3972 |
25 May 16 |
olle |
190 |
<td class="input"> |
3972 |
25 May 16 |
olle |
191 |
<select name="cancerType" id="cancerType" |
3972 |
25 May 16 |
olle |
192 |
class="auto-init" data-auto-init="focus-on-enter" data-next-focus="incafile"> |
5288 |
08 Feb 19 |
nicklas |
193 |
<option selected value="">All |
4704 |
16 Mar 18 |
nicklas |
194 |
<option value="invasive">Invasive cancer with or without cancer in situ |
4704 |
16 Mar 18 |
nicklas |
195 |
<option value="insitu">Cancer in situ only |
3972 |
25 May 16 |
olle |
196 |
</select> |
3972 |
25 May 16 |
olle |
197 |
</td> |
3972 |
25 May 16 |
olle |
198 |
<td class="status" id="cancerType.status"></td> |
3972 |
25 May 16 |
olle |
199 |
<td class="help"> |
3972 |
25 May 16 |
olle |
200 |
<span id="cancerType.message" class="message"></span> |
3972 |
25 May 16 |
olle |
201 |
Cancer type filter. Option "All" is equal to not applying a cancer type filter. Note that an entry may be labeled both "Invasive" and "In situ". |
3972 |
25 May 16 |
olle |
202 |
</td> |
3972 |
25 May 16 |
olle |
203 |
</tr> |
3963 |
20 May 16 |
olle |
204 |
<tr class="align-top"> |
3963 |
20 May 16 |
olle |
205 |
<td class="prompt">INCA file</td> |
3963 |
20 May 16 |
olle |
206 |
<td class="input"> |
3963 |
20 May 16 |
olle |
207 |
<table style="width: 100%;"> |
3963 |
20 May 16 |
olle |
208 |
<tr> |
3963 |
20 May 16 |
olle |
209 |
<td> |
3963 |
20 May 16 |
olle |
210 |
<input type="file" name="incafile" id="incafile" class="required" style="width: 95%;" accept=".csv,.tsv"> |
3963 |
20 May 16 |
olle |
211 |
</td> |
3963 |
20 May 16 |
olle |
212 |
</tr> |
3963 |
20 May 16 |
olle |
213 |
</table> |
3963 |
20 May 16 |
olle |
214 |
</td> |
3963 |
20 May 16 |
olle |
215 |
<td class="status" id="incafile.status"></td> |
3963 |
20 May 16 |
olle |
216 |
<td class="help"><span id="incafile.message" class="message"></span> |
3963 |
20 May 16 |
olle |
217 |
Select INCA file to be used for INCA statistics. The file should be a text file in tab-separated format, where the first line contains column names. |
3963 |
20 May 16 |
olle |
218 |
</td> |
3963 |
20 May 16 |
olle |
219 |
</tr> |
3963 |
20 May 16 |
olle |
220 |
</table> |
3963 |
20 May 16 |
olle |
221 |
</div> |
3963 |
20 May 16 |
olle |
222 |
</div> |
3963 |
20 May 16 |
olle |
223 |
|
3963 |
20 May 16 |
olle |
224 |
<div class="step" id="step-2"> |
3963 |
20 May 16 |
olle |
225 |
<div class="step-no">2</div> |
3963 |
20 May 16 |
olle |
226 |
<div class="step-title">INCA file check</div> |
3963 |
20 May 16 |
olle |
227 |
<div class="step-content"> |
3963 |
20 May 16 |
olle |
228 |
|
5287 |
08 Feb 19 |
nicklas |
229 |
<table class="step-form" id="statisticscheck"> |
5287 |
08 Feb 19 |
nicklas |
230 |
<tbody> |
5287 |
08 Feb 19 |
nicklas |
231 |
<tr> |
5287 |
08 Feb 19 |
nicklas |
232 |
<td class="prompt">File</td> |
5287 |
08 Feb 19 |
nicklas |
233 |
<td class="input" id="filename"></td> |
5287 |
08 Feb 19 |
nicklas |
234 |
<td class="status" id="filename.status"></td> |
5287 |
08 Feb 19 |
nicklas |
235 |
<td class="help"></td> |
5287 |
08 Feb 19 |
nicklas |
236 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
237 |
<tr> |
5287 |
08 Feb 19 |
nicklas |
238 |
<td class="prompt">Is follow-up file</td> |
5287 |
08 Feb 19 |
nicklas |
239 |
<td class="input" id="isFollowUp"></td> |
5287 |
08 Feb 19 |
nicklas |
240 |
<td class="status" id="isFollowUp.status"></td> |
5287 |
08 Feb 19 |
nicklas |
241 |
<td class="help"> |
5287 |
08 Feb 19 |
nicklas |
242 |
</td> |
5287 |
08 Feb 19 |
nicklas |
243 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
244 |
<tr> |
5287 |
08 Feb 19 |
nicklas |
245 |
<td class="prompt">Header columns</td> |
5287 |
08 Feb 19 |
nicklas |
246 |
<td class="input" id="headerCount"></td> |
5287 |
08 Feb 19 |
nicklas |
247 |
<td class="status" id="headerCount.status"></td> |
5287 |
08 Feb 19 |
nicklas |
248 |
<td class="help"></td> |
5287 |
08 Feb 19 |
nicklas |
249 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
250 |
</tbody> |
5287 |
08 Feb 19 |
nicklas |
251 |
|
5287 |
08 Feb 19 |
nicklas |
252 |
<tbody class="info-section"> |
5287 |
08 Feb 19 |
nicklas |
253 |
<tr> |
5287 |
08 Feb 19 |
nicklas |
254 |
<td class="prompt">Required but missing</td> |
5287 |
08 Feb 19 |
nicklas |
255 |
<td class="info" id="headerMissing"></td> |
5287 |
08 Feb 19 |
nicklas |
256 |
<td class="status" id="headerMissing.status"></td> |
5287 |
08 Feb 19 |
nicklas |
257 |
<td class="help"><span id="headerMissing.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
258 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
259 |
<tr> |
5288 |
08 Feb 19 |
nicklas |
260 |
<td class="prompt">Missing INCA annotations</td> |
5288 |
08 Feb 19 |
nicklas |
261 |
<td class="info" id="headerMissingAnnotationTypes"></td> |
5288 |
08 Feb 19 |
nicklas |
262 |
<td class="status" id="headerMissingAnnotationTypes.status"></td> |
5288 |
08 Feb 19 |
nicklas |
263 |
<td class="help"><span id="headerMissingAnnotationTypes.message"></span></td> |
5288 |
08 Feb 19 |
nicklas |
264 |
</tr> |
5288 |
08 Feb 19 |
nicklas |
265 |
<tr> |
5287 |
08 Feb 19 |
nicklas |
266 |
<td class="prompt">Duplicates</td> |
5287 |
08 Feb 19 |
nicklas |
267 |
<td class="info" id="headerDuplicates"></td> |
5287 |
08 Feb 19 |
nicklas |
268 |
<td class="status" id="headerDuplicates.status"></td> |
5287 |
08 Feb 19 |
nicklas |
269 |
<td class="help"><span id="headerDuplicates.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
270 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
271 |
</tbody> |
5287 |
08 Feb 19 |
nicklas |
272 |
<tbody> |
5287 |
08 Feb 19 |
nicklas |
273 |
<tr> |
5287 |
08 Feb 19 |
nicklas |
274 |
<td class="prompt">Data lines</td> |
5287 |
08 Feb 19 |
nicklas |
275 |
<td class="input" id="lineCount"></td> |
5287 |
08 Feb 19 |
nicklas |
276 |
<td class="status" id="lineCount.status"></td> |
5287 |
08 Feb 19 |
nicklas |
277 |
<td class="help"><span id="lineCount.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
278 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
279 |
</tbody> |
5287 |
08 Feb 19 |
nicklas |
280 |
<tbody class="info-section"> |
5287 |
08 Feb 19 |
nicklas |
281 |
<tr> |
5287 |
08 Feb 19 |
nicklas |
282 |
<td class="prompt">Lines that can be used</td> |
5287 |
08 Feb 19 |
nicklas |
283 |
<td class="input" id="statisticsLineCount"></td> |
5287 |
08 Feb 19 |
nicklas |
284 |
<td class="status" id="statisticsLineCount.status"></td> |
5287 |
08 Feb 19 |
nicklas |
285 |
<td class="help"><span id="statisticsLineCount.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
286 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
287 |
<tr> |
5287 |
08 Feb 19 |
nicklas |
288 |
<td class="prompt">Excluded lines</td> |
5287 |
08 Feb 19 |
nicklas |
289 |
<td class="info" id="totalExcluded"></td> |
5287 |
08 Feb 19 |
nicklas |
290 |
<td class="status" id="totalExcluded.status"></td> |
5287 |
08 Feb 19 |
nicklas |
291 |
<td class="help"><span id="totalExcluded.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
292 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
293 |
<tr id="tooManyColumns.row"> |
5287 |
08 Feb 19 |
nicklas |
294 |
<td class="subprompt">- too many columns</td> |
5287 |
08 Feb 19 |
nicklas |
295 |
<td class="info" id="tooManyColumns"></td> |
5287 |
08 Feb 19 |
nicklas |
296 |
<td class="status" id="tooManyColumns.status"></td> |
5287 |
08 Feb 19 |
nicklas |
297 |
<td class="help"><span id="tooManyColumns.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
298 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
299 |
<tr id="tooFewColumns.row"> |
5287 |
08 Feb 19 |
nicklas |
300 |
<td class="subprompt">- too few columns</td> |
5287 |
08 Feb 19 |
nicklas |
301 |
<td class="info" id="tooFewColumns"></td> |
5287 |
08 Feb 19 |
nicklas |
302 |
<td class="status" id="tooFewColumns.status"></td> |
5287 |
08 Feb 19 |
nicklas |
303 |
<td class="help"><span id="tooFewColumns.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
304 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
305 |
<tr id="missingLaterality.row"> |
5287 |
08 Feb 19 |
nicklas |
306 |
<td class="subprompt">- missing or invalid laterality</td> |
5287 |
08 Feb 19 |
nicklas |
307 |
<td class="info" id="missingLaterality"></td> |
5287 |
08 Feb 19 |
nicklas |
308 |
<td class="status" id="missingLaterality.status"></td> |
5287 |
08 Feb 19 |
nicklas |
309 |
<td class="help"><span id="missingLaterality.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
310 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
311 |
<tr id="duplicateLaterality.row"> |
5287 |
08 Feb 19 |
nicklas |
312 |
<td class="subprompt">- duplicate laterality</td> |
5287 |
08 Feb 19 |
nicklas |
313 |
<td class="info" id="duplicateLaterality"></td> |
5287 |
08 Feb 19 |
nicklas |
314 |
<td class="status" id="duplicateLaterality.status"></td> |
5287 |
08 Feb 19 |
nicklas |
315 |
<td class="help"><span id="duplicateLaterality.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
316 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
317 |
<tr id="invalidDataValue.row"> |
5287 |
08 Feb 19 |
nicklas |
318 |
<td class="subprompt">- invalid data value</td> |
5287 |
08 Feb 19 |
nicklas |
319 |
<td class="info" id="invalidDataValue"></td> |
5287 |
08 Feb 19 |
nicklas |
320 |
<td class="status" id="invalidDataValue.status"></td> |
5287 |
08 Feb 19 |
nicklas |
321 |
<td class="help"><span id="invalidDataValue.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
322 |
</tr> |
5288 |
08 Feb 19 |
nicklas |
323 |
<tr id="filteredByDate.row"> |
5288 |
08 Feb 19 |
nicklas |
324 |
<td class="subprompt">- filtered by date</td> |
5288 |
08 Feb 19 |
nicklas |
325 |
<td class="info" id="filteredByDate"></td> |
5288 |
08 Feb 19 |
nicklas |
326 |
<td class="status" id="filteredByDate.status"></td> |
5288 |
08 Feb 19 |
nicklas |
327 |
<td class="help"><span id="filteredByDate.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
328 |
</tr> |
5288 |
08 Feb 19 |
nicklas |
329 |
<tr id="filteredByCancerType.row"> |
5288 |
08 Feb 19 |
nicklas |
330 |
<td class="subprompt">- filtered by cancer type</td> |
5288 |
08 Feb 19 |
nicklas |
331 |
<td class="info" id="filteredByCancerType"></td> |
5288 |
08 Feb 19 |
nicklas |
332 |
<td class="status" id="filteredByCancerType.status"></td> |
5288 |
08 Feb 19 |
nicklas |
333 |
<td class="help"><span id="filteredByCancerType.message"></span></td> |
5287 |
08 Feb 19 |
nicklas |
334 |
</tr> |
5287 |
08 Feb 19 |
nicklas |
335 |
</tbody> |
5287 |
08 Feb 19 |
nicklas |
336 |
</table> |
3963 |
20 May 16 |
olle |
337 |
</div> |
3963 |
20 May 16 |
olle |
338 |
</div> |
3963 |
20 May 16 |
olle |
339 |
|
3963 |
20 May 16 |
olle |
340 |
<div id="wizard-status"></div> |
3963 |
20 May 16 |
olle |
341 |
<div id="wizard-progress"></div> |
3963 |
20 May 16 |
olle |
342 |
|
5292 |
12 Feb 19 |
nicklas |
343 |
<table class="stat-table" id="stat-table" style="display: none;"> |
5292 |
12 Feb 19 |
nicklas |
344 |
<tbody class="stat-header bg-filled-100"> |
5292 |
12 Feb 19 |
nicklas |
345 |
<tr> |
5292 |
12 Feb 19 |
nicklas |
346 |
<td style="text-align:left;">Variable</td> |
5292 |
12 Feb 19 |
nicklas |
347 |
<td style="text-align:left;">Value</td> |
5302 |
15 Feb 19 |
nicklas |
348 |
<td style="text-align:center;" colspan="2">Total</td> |
5302 |
15 Feb 19 |
nicklas |
349 |
<td style="text-align:center;" class="fullstatistics" colspan="2">Accrued</td> |
5302 |
15 Feb 19 |
nicklas |
350 |
<td style="text-align:center;" colspan="2">Accrued</td> |
5302 |
15 Feb 19 |
nicklas |
351 |
<td style="text-align:center;" colspan="2">NotAccrued</td> |
5292 |
12 Feb 19 |
nicklas |
352 |
</tr> |
5292 |
12 Feb 19 |
nicklas |
353 |
<tr class="fullstatistics stat-sub-header"> |
5292 |
12 Feb 19 |
nicklas |
354 |
<td></td> |
5292 |
12 Feb 19 |
nicklas |
355 |
<td></td> |
5302 |
15 Feb 19 |
nicklas |
356 |
<td style="text-align:center;" colspan="2"></td> |
5302 |
15 Feb 19 |
nicklas |
357 |
<td style="text-align:center;" colspan="2">specimen</td> |
5302 |
15 Feb 19 |
nicklas |
358 |
<td style="text-align:center;" colspan="2">no specimen</td> |
5302 |
15 Feb 19 |
nicklas |
359 |
<td style="text-align:center;" colspan="2"></td> |
5292 |
12 Feb 19 |
nicklas |
360 |
</tr> |
5292 |
12 Feb 19 |
nicklas |
361 |
</tbody> |
5302 |
15 Feb 19 |
nicklas |
362 |
<tbody id="stat-data" style="border-width: 1px;"></tbody> |
5302 |
15 Feb 19 |
nicklas |
363 |
<tbody> |
5302 |
15 Feb 19 |
nicklas |
364 |
<tr> |
5302 |
15 Feb 19 |
nicklas |
365 |
<td colspan="10" style="text-align: left;">Percentage values are not including N/A entries.</td> |
5302 |
15 Feb 19 |
nicklas |
366 |
</tr> |
5302 |
15 Feb 19 |
nicklas |
367 |
</tbody> |
5292 |
12 Feb 19 |
nicklas |
368 |
</table> |
5292 |
12 Feb 19 |
nicklas |
369 |
|
5287 |
08 Feb 19 |
nicklas |
370 |
<div id="reportfiles" style="margin-left: 2em; margin-top: 0.5em;"> |
5287 |
08 Feb 19 |
nicklas |
371 |
<base:icon id="downloadreportfile" style="display: none;" |
5287 |
08 Feb 19 |
nicklas |
372 |
image="<%=home+"/images/download.png"%>" |
5287 |
08 Feb 19 |
nicklas |
373 |
data-report-type="statistics" |
5287 |
08 Feb 19 |
nicklas |
374 |
>Download report file</base:icon> |
5287 |
08 Feb 19 |
nicklas |
375 |
<base:icon id="downloadoutputfile" style="display: none;" |
5287 |
08 Feb 19 |
nicklas |
376 |
image="<%=home+"/images/download.png"%>" |
5287 |
08 Feb 19 |
nicklas |
377 |
data-report-type="statistics_csv" |
5287 |
08 Feb 19 |
nicklas |
378 |
>Download output CSV file</base:icon> |
5287 |
08 Feb 19 |
nicklas |
379 |
</div> |
3963 |
20 May 16 |
olle |
380 |
|
3963 |
20 May 16 |
olle |
381 |
<table class="navigation" id="navigation"> |
3963 |
20 May 16 |
olle |
382 |
<tr> |
3963 |
20 May 16 |
olle |
383 |
<td><base:button id="gocancel" title="Cancel" /></td> |
3963 |
20 May 16 |
olle |
384 |
<td><base:button id="gorestart" title="Restart" image="<%=home+"/images/goback.png"%>" /></td> |
5292 |
12 Feb 19 |
nicklas |
385 |
<td><base:button id="simplestatistics" title="Simple statistics" image="<%=home+"/images/gonext.png"%>" /></td> |
5292 |
12 Feb 19 |
nicklas |
386 |
<td><base:button id="fullstatistics" title="Full statistics" image="<%=home+"/images/gonext.png"%>" /></td> |
3963 |
20 May 16 |
olle |
387 |
<td id="gonext-message" class="message"></td> |
3963 |
20 May 16 |
olle |
388 |
</tr> |
3963 |
20 May 16 |
olle |
389 |
</table> |
3963 |
20 May 16 |
olle |
390 |
|
5292 |
12 Feb 19 |
nicklas |
391 |
<div id="explainFileCheck" class="messagecontainer note" style="margin-left: 2em; padding: 0.5em;width: 55em;"> |
5292 |
12 Feb 19 |
nicklas |
392 |
<ul> |
5292 |
12 Feb 19 |
nicklas |
393 |
<li style="margin-bottom: 0.25em;"><b>Simple statistics</b>: Checks that the INCA data file is well formed, |
5292 |
12 Feb 19 |
nicklas |
394 |
that required information is present and that data values are valid. Statistics is calculated based |
5292 |
12 Feb 19 |
nicklas |
395 |
only on the information that is in the file. This is typically very quick and |
5292 |
12 Feb 19 |
nicklas |
396 |
should only take a few seconds to complete. |
5292 |
12 Feb 19 |
nicklas |
397 |
<li><b>Full statistics</b>: Statistics is calculated based on both information that is |
5292 |
12 Feb 19 |
nicklas |
398 |
in the file and in the database. |
5292 |
12 Feb 19 |
nicklas |
399 |
</ul> |
5292 |
12 Feb 19 |
nicklas |
400 |
</div> |
5292 |
12 Feb 19 |
nicklas |
401 |
|
3963 |
20 May 16 |
olle |
402 |
</form> |
3963 |
20 May 16 |
olle |
403 |
</div> |
3963 |
20 May 16 |
olle |
404 |
|
3963 |
20 May 16 |
olle |
405 |
</base:body> |
3963 |
20 May 16 |
olle |
406 |
</base:page> |
3963 |
20 May 16 |
olle |
407 |
<% |
3963 |
20 May 16 |
olle |
408 |
} |
3963 |
20 May 16 |
olle |
409 |
finally |
3963 |
20 May 16 |
olle |
410 |
{ |
3963 |
20 May 16 |
olle |
411 |
if (dc != null) dc.close(); |
3963 |
20 May 16 |
olle |
412 |
} |
3963 |
20 May 16 |
olle |
413 |
%> |