5162 |
03 Dec 18 |
olle |
var Istat = function() |
5162 |
03 Dec 18 |
olle |
2 |
{ |
5162 |
03 Dec 18 |
olle |
var istat = {}; |
5162 |
03 Dec 18 |
olle |
var debug = 0; |
5162 |
03 Dec 18 |
olle |
5 |
|
5162 |
03 Dec 18 |
olle |
var caseInfo; |
5162 |
03 Dec 18 |
olle |
7 |
|
5162 |
03 Dec 18 |
olle |
istat.initPage = function() |
5162 |
03 Dec 18 |
olle |
9 |
{ |
5162 |
03 Dec 18 |
olle |
// Step 1 |
5162 |
03 Dec 18 |
olle |
Events.addEventHandler('step-1', 'wizard-validate', istat.validateStep1); |
5162 |
03 Dec 18 |
olle |
Events.addEventHandler('extractSourceItems', 'change', istat.sourceItemsOnChange); |
5162 |
03 Dec 18 |
olle |
13 |
|
5162 |
03 Dec 18 |
olle |
// Navigation |
5162 |
03 Dec 18 |
olle |
Buttons.addClickHandler('gocancel', Wizard.cancelWizard); |
5162 |
03 Dec 18 |
olle |
Buttons.addClickHandler('gorestart', Wizard.restartWizard); |
5162 |
03 Dec 18 |
olle |
Buttons.addClickHandler('gonext', Wizard.goNextOnClick); |
5162 |
03 Dec 18 |
olle |
18 |
|
5162 |
03 Dec 18 |
olle |
// Get case items |
5162 |
03 Dec 18 |
olle |
var url = '../Extraction.servlet?ID='+App.getSessionId(); |
5162 |
03 Dec 18 |
olle |
url += '&cmd=GetCases'; |
5162 |
03 Dec 18 |
olle |
Wizard.showLoadingAnimation('Loading unprocessed items...'); |
5162 |
03 Dec 18 |
olle |
Wizard.asyncJsonRequest(url, istat.initializeStep1); |
5162 |
03 Dec 18 |
olle |
24 |
} |
5162 |
03 Dec 18 |
olle |
25 |
|
5162 |
03 Dec 18 |
olle |
istat.initPermissions = function() |
5162 |
03 Dec 18 |
olle |
27 |
{ |
5162 |
03 Dec 18 |
olle |
// Get permission information |
5162 |
03 Dec 18 |
olle |
var url = '../Install.servlet?ID='+App.getSessionId(); |
5162 |
03 Dec 18 |
olle |
url += '&cmd=GetPermissions'; |
5162 |
03 Dec 18 |
olle |
var request = Ajax.getXmlHttpRequest(); |
5162 |
03 Dec 18 |
olle |
request.open("GET", url, true); |
5162 |
03 Dec 18 |
olle |
Ajax.setReadyStateHandler(request, istat.onPermissionsLoaded, istat.onPermissionsLoaded); |
5162 |
03 Dec 18 |
olle |
request.send(null); |
5162 |
03 Dec 18 |
olle |
35 |
} |
5162 |
03 Dec 18 |
olle |
36 |
|
5162 |
03 Dec 18 |
olle |
// Callback when permission information is ready |
5162 |
03 Dec 18 |
olle |
istat.onPermissionsLoaded = function(request) |
5162 |
03 Dec 18 |
olle |
39 |
{ |
5162 |
03 Dec 18 |
olle |
if (debug) App.debug(Strings.encodeTags(request.responseText)); |
5162 |
03 Dec 18 |
olle |
var response; |
5162 |
03 Dec 18 |
olle |
var error = false; |
5162 |
03 Dec 18 |
olle |
try |
5162 |
03 Dec 18 |
olle |
44 |
{ |
5162 |
03 Dec 18 |
olle |
response = JSON.parse(request.responseText); |
5162 |
03 Dec 18 |
olle |
if (response.status != 'ok') |
5162 |
03 Dec 18 |
olle |
47 |
{ |
5162 |
03 Dec 18 |
olle |
error = response.message || response.stacktrace || 'Unexpected error'; |
5162 |
03 Dec 18 |
olle |
49 |
} |
5162 |
03 Dec 18 |
olle |
50 |
} |
5162 |
03 Dec 18 |
olle |
catch (ex) |
5162 |
03 Dec 18 |
olle |
52 |
{ |
5162 |
03 Dec 18 |
olle |
error = ex; |
5162 |
03 Dec 18 |
olle |
54 |
} |
5162 |
03 Dec 18 |
olle |
55 |
|
5162 |
03 Dec 18 |
olle |
if (error) |
5162 |
03 Dec 18 |
olle |
57 |
{ |
5162 |
03 Dec 18 |
olle |
alert(error); |
5162 |
03 Dec 18 |
olle |
return; |
5162 |
03 Dec 18 |
olle |
60 |
} |
5162 |
03 Dec 18 |
olle |
61 |
|
5162 |
03 Dec 18 |
olle |
myPermissions = response.permissions; |
5162 |
03 Dec 18 |
olle |
//var isAdmin = myPermissions['Administrator'] == 1; |
5162 |
03 Dec 18 |
olle |
//var noProjectIsActive = !App.getActiveProjectId(); |
5162 |
03 Dec 18 |
olle |
65 |
} |
5162 |
03 Dec 18 |
olle |
66 |
|
5162 |
03 Dec 18 |
olle |
istat.initializeStep1 = function(response) |
5162 |
03 Dec 18 |
olle |
68 |
{ |
5162 |
03 Dec 18 |
olle |
var frm = document.forms['meludi']; |
5162 |
03 Dec 18 |
olle |
var items = response.items; |
5162 |
03 Dec 18 |
olle |
71 |
|
5162 |
03 Dec 18 |
olle |
var sourceItemList = frm.extractSourceItems; |
5162 |
03 Dec 18 |
olle |
if (items.length) |
5162 |
03 Dec 18 |
olle |
74 |
{ |
5162 |
03 Dec 18 |
olle |
var numItems = items.length; |
5162 |
03 Dec 18 |
olle |
for (var i=0; i < items.length; i++) |
5162 |
03 Dec 18 |
olle |
77 |
{ |
5162 |
03 Dec 18 |
olle |
var item = items[i]; |
5162 |
03 Dec 18 |
olle |
var name = (i+1) + ': ' + Strings.encodeTags(item.name); |
5162 |
03 Dec 18 |
olle |
var referralId = ""; |
5162 |
03 Dec 18 |
olle |
if (item.referralId) |
5162 |
03 Dec 18 |
olle |
82 |
{ |
5162 |
03 Dec 18 |
olle |
referralId = item.referralId; |
5162 |
03 Dec 18 |
olle |
84 |
} |
5162 |
03 Dec 18 |
olle |
var personalNumber = ""; |
5162 |
03 Dec 18 |
olle |
if (item.personalNumber) |
5162 |
03 Dec 18 |
olle |
87 |
{ |
5162 |
03 Dec 18 |
olle |
personalNumber = item.personalNumber; |
5162 |
03 Dec 18 |
olle |
89 |
} |
5162 |
03 Dec 18 |
olle |
if (referralId || personalNumber) |
5162 |
03 Dec 18 |
olle |
91 |
{ |
5162 |
03 Dec 18 |
olle |
name += ' -- (Referral-ID: ' + Strings.encodeTags(referralId) + ' Pno: ' + Strings.encodeTags(personalNumber) + ')'; |
5162 |
03 Dec 18 |
olle |
93 |
} |
5162 |
03 Dec 18 |
olle |
var selected = i == 0; |
5162 |
03 Dec 18 |
olle |
var option = new Option(name, item.id, selected, selected); |
5162 |
03 Dec 18 |
olle |
option.item = item; |
5162 |
03 Dec 18 |
olle |
sourceItemList.options[sourceItemList.length] = option; |
5162 |
03 Dec 18 |
olle |
98 |
} |
5162 |
03 Dec 18 |
olle |
istat.sourceItemsOnChange(); |
5162 |
03 Dec 18 |
olle |
100 |
} |
5162 |
03 Dec 18 |
olle |
else |
5162 |
03 Dec 18 |
olle |
102 |
{ |
5162 |
03 Dec 18 |
olle |
Wizard.setFatalError('No case items available.'); |
5162 |
03 Dec 18 |
olle |
return; |
5162 |
03 Dec 18 |
olle |
105 |
} |
5162 |
03 Dec 18 |
olle |
106 |
|
5162 |
03 Dec 18 |
olle |
Doc.show('step-1'); |
5162 |
03 Dec 18 |
olle |
Doc.show('gonext'); |
5162 |
03 Dec 18 |
olle |
109 |
} |
5162 |
03 Dec 18 |
olle |
110 |
|
5162 |
03 Dec 18 |
olle |
istat.sourceItemsOnChange = function() |
5162 |
03 Dec 18 |
olle |
112 |
{ |
5162 |
03 Dec 18 |
olle |
sourceItemListIsValid = false; |
5162 |
03 Dec 18 |
olle |
Wizard.setInputStatus('extractSourceItems'); |
5162 |
03 Dec 18 |
olle |
115 |
|
5162 |
03 Dec 18 |
olle |
var frm = document.forms['meludi']; |
5162 |
03 Dec 18 |
olle |
var sourceItemList = frm.extractSourceItems; |
5162 |
03 Dec 18 |
olle |
118 |
|
5162 |
03 Dec 18 |
olle |
var numSelected = 0; |
5162 |
03 Dec 18 |
olle |
for (var i = 0; i < sourceItemList.length; i++) |
5162 |
03 Dec 18 |
olle |
121 |
{ |
5162 |
03 Dec 18 |
olle |
if (sourceItemList[i].selected) numSelected++; |
5162 |
03 Dec 18 |
olle |
123 |
} |
5162 |
03 Dec 18 |
olle |
124 |
|
5162 |
03 Dec 18 |
olle |
if (numSelected < 1) |
5162 |
03 Dec 18 |
olle |
126 |
{ |
5162 |
03 Dec 18 |
olle |
Wizard.setInputStatus('extractSourceItems', 'invalid', 'Must select a number of FFPE block items.'); |
5162 |
03 Dec 18 |
olle |
return; |
5162 |
03 Dec 18 |
olle |
129 |
} |
5162 |
03 Dec 18 |
olle |
130 |
|
5162 |
03 Dec 18 |
olle |
sourceItemListIsValid = true; |
5162 |
03 Dec 18 |
olle |
Wizard.setInputStatus('extractSourceItems', 'valid'); |
5162 |
03 Dec 18 |
olle |
133 |
} |
5162 |
03 Dec 18 |
olle |
134 |
|
5162 |
03 Dec 18 |
olle |
istat.validateStep1 = function(event) |
5162 |
03 Dec 18 |
olle |
136 |
{ |
5162 |
03 Dec 18 |
olle |
//alert("case_summary_shortcut_alt_rec.js::validateStep1(): Start"); |
5162 |
03 Dec 18 |
olle |
var valid = true; |
5162 |
03 Dec 18 |
olle |
if (!valid) event.preventDefault(); |
5162 |
03 Dec 18 |
olle |
140 |
|
5162 |
03 Dec 18 |
olle |
istat.caseSummary(); |
5162 |
03 Dec 18 |
olle |
142 |
} |
5162 |
03 Dec 18 |
olle |
143 |
|
5162 |
03 Dec 18 |
olle |
istat.caseSummary = function() |
5162 |
03 Dec 18 |
olle |
145 |
{ |
5162 |
03 Dec 18 |
olle |
//alert("case_summary_shortcut_alt_rec.js::caseSummary(): Start"); |
5162 |
03 Dec 18 |
olle |
var frm = document.forms['meludi']; |
5162 |
03 Dec 18 |
olle |
var caseList = istat.getSelectedItemsList(); |
5162 |
03 Dec 18 |
olle |
var caseName = caseList[0].name; |
5162 |
03 Dec 18 |
olle |
//alert("case_summary_shortcut_alt_rec.js::caseSummary(): caseName = " + caseName); |
5162 |
03 Dec 18 |
olle |
151 |
|
5162 |
03 Dec 18 |
olle |
Doc.addClass('extractSourceItems', 'disabled'); |
5162 |
03 Dec 18 |
olle |
153 |
|
5162 |
03 Dec 18 |
olle |
Doc.hide('gonext'); |
5162 |
03 Dec 18 |
olle |
155 |
|
5162 |
03 Dec 18 |
olle |
var url = 'case_summary_alt_rec.jsp?ID='+App.getSessionId(); |
5162 |
03 Dec 18 |
olle |
url += '&caseName='+encodeURIComponent(caseName); |
5162 |
03 Dec 18 |
olle |
//url += '&pageType='+Data.get('page-data', 'page-type'); |
5162 |
03 Dec 18 |
olle |
//alert("case_summary_shortcut_alt_rec::caseSummary(): url = " + url); |
5162 |
03 Dec 18 |
olle |
location.href = url; |
5162 |
03 Dec 18 |
olle |
161 |
} |
5162 |
03 Dec 18 |
olle |
162 |
|
5162 |
03 Dec 18 |
olle |
istat.getSelectedItemsList = function() |
5162 |
03 Dec 18 |
olle |
164 |
{ |
5162 |
03 Dec 18 |
olle |
var frm = document.forms['meludi']; |
5162 |
03 Dec 18 |
olle |
166 |
|
5162 |
03 Dec 18 |
olle |
// Get number of selected extract source items |
5162 |
03 Dec 18 |
olle |
var numItems = 0; |
5162 |
03 Dec 18 |
olle |
var selItemsList = []; |
5162 |
03 Dec 18 |
olle |
for (var i = 0; i < frm.extractSourceItems.length; i++) |
5162 |
03 Dec 18 |
olle |
171 |
{ |
5162 |
03 Dec 18 |
olle |
if (frm.extractSourceItems[i].selected) |
5162 |
03 Dec 18 |
olle |
173 |
{ |
5162 |
03 Dec 18 |
olle |
if (frm.extractSourceItems[i].item != null) |
5162 |
03 Dec 18 |
olle |
175 |
{ |
5162 |
03 Dec 18 |
olle |
selItemsList[numItems] = frm.extractSourceItems[i].item; |
5162 |
03 Dec 18 |
olle |
numItems++; |
5162 |
03 Dec 18 |
olle |
178 |
} |
5162 |
03 Dec 18 |
olle |
179 |
} |
5162 |
03 Dec 18 |
olle |
180 |
} |
5162 |
03 Dec 18 |
olle |
return selItemsList; |
5162 |
03 Dec 18 |
olle |
182 |
} |
5162 |
03 Dec 18 |
olle |
183 |
|
5162 |
03 Dec 18 |
olle |
return istat; |
5162 |
03 Dec 18 |
olle |
185 |
}(); |
5162 |
03 Dec 18 |
olle |
186 |
|
5162 |
03 Dec 18 |
olle |
Doc.onLoad(Istat.initPage); |
5162 |
03 Dec 18 |
olle |
188 |
|