Commit c46935af by Daniel Bawag

WG-183 - Added auto-end session

parent 4bf51afa
...@@ -45,4 +45,6 @@ var FOLDER_URL = DOMAIN + "/" + CONTEXTROOT + "/svc/gfs-rest/get-folder?parentPa ...@@ -45,4 +45,6 @@ var FOLDER_URL = DOMAIN + "/" + CONTEXTROOT + "/svc/gfs-rest/get-folder?parentPa
var DOWNLOAD_URL = DOMAIN + "/" + CONTEXTROOT + "/svc/gfs-rest/get-download-link" var DOWNLOAD_URL = DOMAIN + "/" + CONTEXTROOT + "/svc/gfs-rest/get-download-link"
var IS_RETRIEVE_FROM_GFS = "Y" var IS_RETRIEVE_FROM_GFS = "Y"
var INVALID_KEYS = "F1,F2,F3,F4,F5,F6,F7,F8,F9,F10,F11,F12,PrintScreen,ScrollLock,Pause,PageUp,PageDown,Insert,Delete,Control" var INVALID_KEYS = "F1,F2,F3,F4,F5,F6,F7,F8,F10,F11,F12,PrintScreen,ScrollLock,Pause,PageUp,PageDown,Insert,Delete,Control"
// waiting time in minutes
var AUTO_LOGOUT_TIMER = 6
\ No newline at end of file
var credObj =
[
{
"username": "enc-antel1",
"password": "3SN&y6bnH#"
},
{
"username": "enc-antel2",
"password": "Lz?d&#JhL4"
},
{
"username": "enc-antel3",
"password": "5d?mYzT@?t"
},
{
"username": "enc-antel4",
"password": "6MJ85@s&#H"
},
{
"username": "enc-antel5",
"password": "6SFsqCbb#a"
},
{
"username": "enc-antel6",
"password": "G8riM$4XG!"
},
{
"username": "enc-antel7",
"password": "dc$5FRFF5S"
},
{
"username": "enc-antel8",
"password": "s!7ADEij!P"
},
{
"username": "enc-antel9",
"password": "AnKE&y9AhM"
},
{
"username": "enc-antel10",
"password": "7drMyLb?#S"
},
{
"username": "svitest",
"password": "svitest"
}
];
\ No newline at end of file
var credObj =
[
{
"username": "enc-balanga1",
"password": "!oB9iz?8eE"
},
{
"username": "enc-balanga2",
"password": "6e!6qHbA?f"
},
{
"username": "enc-balanga3",
"password": "A!JQc4h&hE"
},
{
"username": "enc-balanga4",
"password": "Ph!H!hXx9G"
},
{
"username": "enc-balanga5",
"password": "nXRJa3!Gz8"
},
{
"username": "enc-balanga6",
"password": "4BiYzrL#?a"
},
{
"username": "enc-balanga7",
"password": "Tc&g83sP9?"
},
{
"username": "enc-balanga8",
"password": "?5Pp$MfNHd"
},
{
"username": "enc-balanga9",
"password": "k#$JAo8FHd"
},
{
"username": "enc-balanga10",
"password": "KY6T@?m!eQ"
},
{
"username": "svitest",
"password": "svitest"
}
];
\ No newline at end of file
var credObj =
[
{
"username": "enc-cdci1",
"password": "Poe6eAxQ8@"
},
{
"username": "enc-cdci2",
"password": "Ydc!AbQ9qh"
},
{
"username": "enc-cdci3",
"password": "p6hc!8M7Qz"
},
{
"username": "enc-cdci4",
"password": "eqab$9CXtd"
},
{
"username": "enc-cdci5",
"password": "Hn$4AxPkj!"
},
{
"username": "enc-cdci6",
"password": "5ydo!TokN#"
},
{
"username": "enc-cdci7",
"password": "R&JGbG4bq9"
},
{
"username": "enc-cdci8",
"password": "#Q!o8f@eaP"
},
{
"username": "enc-cdci9",
"password": "MaMQH$E7fx"
},
{
"username": "enc-cdci10",
"password": "NhX6gx$mnC"
},
{
"username": "svitest",
"password": "svitest"
}
];
\ No newline at end of file
var credObj =
[
{
"username": "enc-antel1",
"password": "3SN&y6bnH#"
},
{
"username": "enc-antel2",
"password": "Lz?d&#JhL4"
},
{
"username": "enc-antel3",
"password": "5d?mYzT@?t"
},
{
"username": "enc-antel4",
"password": "6MJ85@s&#H"
},
{
"username": "enc-antel5",
"password": "6SFsqCbb#a"
},
{
"username": "enc-antel6",
"password": "G8riM$4XG!"
},
{
"username": "enc-antel7",
"password": "dc$5FRFF5S"
},
{
"username": "enc-antel8",
"password": "s!7ADEij!P"
},
{
"username": "enc-antel9",
"password": "AnKE&y9AhM"
},
{
"username": "enc-antel10",
"password": "7drMyLb?#S"
},
{
"username": "enc-balanga1",
"password": "!oB9iz?8eE"
},
{
"username": "enc-balanga2",
"password": "6e!6qHbA?f"
},
{
"username": "enc-balanga3",
"password": "A!JQc4h&hE"
},
{
"username": "enc-balanga4",
"password": "Ph!H!hXx9G"
},
{
"username": "enc-balanga5",
"password": "nXRJa3!Gz8"
},
{
"username": "enc-balanga6",
"password": "4BiYzrL#?a"
},
{
"username": "enc-balanga7",
"password": "Tc&g83sP9?"
},
{
"username": "enc-balanga8",
"password": "?5Pp$MfNHd"
},
{
"username": "enc-balanga9",
"password": "k#$JAo8FHd"
},
{
"username": "enc-balanga10",
"password": "KY6T@?m!eQ"
},
{
"username": "enc-cdci1",
"password": "Poe6eAxQ8@"
},
{
"username": "enc-cdci2",
"password": "Ydc!AbQ9qh"
},
{
"username": "enc-cdci3",
"password": "p6hc!8M7Qz"
},
{
"username": "enc-cdci4",
"password": "eqab$9CXtd"
},
{
"username": "enc-cdci5",
"password": "Hn$4AxPkj!"
},
{
"username": "enc-cdci6",
"password": "5ydo!TokN#"
},
{
"username": "enc-cdci7",
"password": "R&JGbG4bq9"
},
{
"username": "enc-cdci8",
"password": "#Q!o8f@eaP"
},
{
"username": "enc-cdci9",
"password": "MaMQH$E7fx"
},
{
"username": "enc-cdci10",
"password": "NhX6gx$mnC"
},
{
"username": "svitest",
"password": "svitest"
}
];
\ No newline at end of file
var credObj =
[
{
"username": "ojt-antel1",
"password": "cebC@SL3#e"
},
{
"username": "ojt-antel2",
"password": "@6Yixb5yTA"
},
{
"username": "ojt-antel3",
"password": "??4NzJ?xYg"
},
{
"username": "ojt-antel4",
"password": "#JnzR&5?mH"
},
{
"username": "ojt-antel5",
"password": "?8R@Q!FqMd"
},
{
"username": "ojt-antel6",
"password": "Ang3D8o@jo"
},
{
"username": "ojt-antel7",
"password": "Hi&38KSqpR"
},
{
"username": "ojt-antel8",
"password": "a!F3k@ar55"
},
{
"username": "ojt-antel9",
"password": "@eeNri9ztM"
},
{
"username": "ojt-antel10",
"password": "LHFQ47i?z5"
},
{
"username": "svitest",
"password": "svitest"
}
];
\ No newline at end of file
var credObj =
[
{
"username": "ojt-balanga1",
"password": "EmSrTHc9?D"
},
{
"username": "ojt-balanga2",
"password": "A9e6Hn&RRp"
},
{
"username": "ojt-balanga3",
"password": "YQX?6EQy@z"
},
{
"username": "ojt-balanga4",
"password": "9?4$asjPMF"
},
{
"username": "ojt-balanga5",
"password": "k@R97bnCC@"
},
{
"username": "ojt-balanga6",
"password": "!7&REbiFLi"
},
{
"username": "ojt-balanga7",
"password": "G$8en3tK83"
},
{
"username": "ojt-balanga8",
"password": "X4qX!3e$Y9"
},
{
"username": "ojt-balanga9",
"password": "5G&3LCQbXP"
},
{
"username": "ojt-balanga10",
"password": "8H&QpcJH7C"
},
{
"username": "svitest",
"password": "svitest"
}
];
\ No newline at end of file
var credObj =
[
{
"username": "ojt-cdci1",
"password": "H7$QpxEqXY"
},
{
"username": "ojt-cdci2",
"password": "Gn97E&TzzJ"
},
{
"username": "ojt-cdci3",
"password": "QzBkE9?3Ln"
},
{
"username": "ojt-cdci4",
"password": "6?zNfbjbA9"
},
{
"username": "ojt-cdci5",
"password": "K#Ey5J$7bQ"
},
{
"username": "ojt-cdci6",
"password": "C#qKCDf3f&"
},
{
"username": "ojt-cdci7",
"password": "Sm!J5ex$NJ"
},
{
"username": "ojt-cdci8",
"password": "X!9xmG&7Qk"
},
{
"username": "ojt-cdci9",
"password": "GXF&9kz53f"
},
{
"username": "ojt-cdci10",
"password": "3f#j4$rkkK"
},
{
"username": "svitest",
"password": "svitest"
}
];
\ No newline at end of file
var credObj =
[
{
"username": "ojt-antel1",
"password": "cebC@SL3#e"
},
{
"username": "ojt-antel2",
"password": "@6Yixb5yTA"
},
{
"username": "ojt-antel3",
"password": "??4NzJ?xYg"
},
{
"username": "ojt-antel4",
"password": "#JnzR&5?mH"
},
{
"username": "ojt-antel5",
"password": "?8R@Q!FqMd"
},
{
"username": "ojt-antel6",
"password": "Ang3D8o@jo"
},
{
"username": "ojt-antel7",
"password": "Hi&38KSqpR"
},
{
"username": "ojt-antel8",
"password": "a!F3k@ar55"
},
{
"username": "ojt-antel9",
"password": "@eeNri9ztM"
},
{
"username": "ojt-antel10",
"password": "LHFQ47i?z5"
},
{
"username": "ojt-balanga1",
"password": "EmSrTHc9?D"
},
{
"username": "ojt-balanga2",
"password": "A9e6Hn&RRp"
},
{
"username": "ojt-balanga3",
"password": "YQX?6EQy@z"
},
{
"username": "ojt-balanga4",
"password": "9?4$asjPMF"
},
{
"username": "ojt-balanga5",
"password": "k@R97bnCC@"
},
{
"username": "ojt-balanga6",
"password": "!7&REbiFLi"
},
{
"username": "ojt-balanga7",
"password": "G$8en3tK83"
},
{
"username": "ojt-balanga8",
"password": "X4qX!3e$Y9"
},
{
"username": "ojt-balanga9",
"password": "5G&3LCQbXP"
},
{
"username": "ojt-balanga10",
"password": "8H&QpcJH7C"
},
{
"username": "ojt-cdci1",
"password": "H7$QpxEqXY"
},
{
"username": "ojt-cdci2",
"password": "Gn97E&TzzJ"
},
{
"username": "ojt-cdci3",
"password": "QzBkE9?3Ln"
},
{
"username": "ojt-cdci4",
"password": "6?zNfbjbA9"
},
{
"username": "ojt-cdci5",
"password": "K#Ey5J$7bQ"
},
{
"username": "ojt-cdci6",
"password": "C#qKCDf3f&"
},
{
"username": "ojt-cdci7",
"password": "Sm!J5ex$NJ"
},
{
"username": "ojt-cdci8",
"password": "X!9xmG&7Qk"
},
{
"username": "ojt-cdci9",
"password": "GXF&9kz53f"
},
{
"username": "ojt-cdci10",
"password": "3f#j4$rkkK"
},
{
"username": "svitest",
"password": "svitest"
}
];
\ No newline at end of file
...@@ -84,6 +84,7 @@ ...@@ -84,6 +84,7 @@
Scroll Image to the Right -> CTRL RIGHT ARROW<br> Scroll Image to the Right -> CTRL RIGHT ARROW<br>
Scroll Up Image -> CTRL UP ARROW<br> Scroll Up Image -> CTRL UP ARROW<br>
Scroll Down Image -> CTRL DOWN ARROW<br> Scroll Down Image -> CTRL DOWN ARROW<br>
Submit -> F9<br>
</span> </span>
</div> </div>
</div> </div>
...@@ -147,6 +148,7 @@ ...@@ -147,6 +148,7 @@
<script src='dir.php'></script> <script src='dir.php'></script>
<script src="./disable.js"></script> <script src="./disable.js"></script>
<script src="./src/endSession/endSession.js"></script>
<script src="./src/captureMetrics/captureMetrics.js"></script> <script src="./src/captureMetrics/captureMetrics.js"></script>
<!-- fetch the schema --> <!-- fetch the schema -->
<script src="./src/fetchSchema/fetchSchema.js"></script> <script src="./src/fetchSchema/fetchSchema.js"></script>
...@@ -177,7 +179,6 @@ ...@@ -177,7 +179,6 @@
popup.classList.toggle("show"); popup.classList.toggle("show");
} }
</script> </script>
<script src="./src/endSession/endSession.js"></script>
<script src="./src/tiffViewer/tiffViewer.js"></script> <script src="./src/tiffViewer/tiffViewer.js"></script>
<script src="./src/highlight/highlight.js"></script> <script src="./src/highlight/highlight.js"></script>
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
<label>Password : </label> <label>Password : </label>
<input type="password" placeholder="Enter Password" name="password" id="password" required> <input type="password" placeholder="Enter Password" name="password" id="password" required>
<button type="button" onclick="validateForm(); return false; ">Sign in</button> <button type="button" onclick="validateForm(); return false; ">Sign in</button>
<input type="checkbox" checked="checked"> Remember me <input type="checkbox" id="rememberMe"> Remember me
</div> </div>
</form> </form>
......
if(sessionStorage.checked && sessionStorage.checked !== "") {
document.getElementById("rememberMe").setAttribute("checked", "checked");
document.forms['loginForm'].elements['username'].value = sessionStorage.user;
} else {
document.getElementById("rememberMe").removeAttribute("checked");
document.forms['loginForm'].elements['username'].value = "";
}
function getWindowWidth(){ function getWindowWidth(){
return window.outerWidth; return window.outerWidth;
} }
...@@ -25,26 +33,26 @@ function validateForm() { ...@@ -25,26 +33,26 @@ function validateForm() {
var pw = document.forms['loginForm'].elements['password'].value var pw = document.forms['loginForm'].elements['password'].value
var isGranted = true; var isGranted = true;
if(windowWidth >= reqWindowWidth && windowHeight >= reqWindowHeight && browser == reqBrowser){ if(windowWidth >= reqWindowWidth && windowHeight >= reqWindowHeight && browser == reqBrowser){
for (let i = 0; i < credObj.length; i++) { for (let i = 0; i < credObj.length; i++) {
// console.log(credObj[i].username + " " + credObj[i].password); // console.log(credObj[i].username + " " + credObj[i].password);
if ((un == credObj[i].username) && (pw == credObj[i].password)) { if ((un == credObj[i].username) && (pw == credObj[i].password)) {
sessionStorage.clear();
sessionStorage.setItem('user_id', un); sessionStorage.setItem('user_id', un);
window.location = "index.html"; window.location = "index.html";
if (document.getElementById("rememberMe").checked) {
sessionStorage.checked = true;
}
return false; return false;
} } else {
else {
isGranted = false; isGranted = false;
} }
} }
console.log(isGranted); console.log(isGranted);
if(isGranted == false){ if(isGranted == false){
alert ("Login denied, please check your username and password"); alert ("Login denied, please check your username and password");
} }
} } else {
else{
showNotice(); showNotice();
} }
......
let global_start_time = 0
let global_end_time = 0 let global_end_time = 0
let key_strokes = 0 let key_strokes = 0
let time_spent = 0 let time_spent = 0
...@@ -7,7 +6,6 @@ let time_pause = 0 ...@@ -7,7 +6,6 @@ let time_pause = 0
let time_pause_spent = 0 let time_pause_spent = 0
let metrics_file_name; let metrics_file_name;
let newAvg; let newAvg;
let tab_count = 0;
const conflicts = ['F', 'f', 'alphabet', 'alphanumeric'] const conflicts = ['F', 'f', 'alphabet', 'alphanumeric']
const shift_shortcuts = ['f', 'F', 'Tab'] const shift_shortcuts = ['f', 'F', 'Tab']
...@@ -22,12 +20,18 @@ let temp; ...@@ -22,12 +20,18 @@ let temp;
const keyArray = INVALID_KEYS.split(","); const keyArray = INVALID_KEYS.split(",");
window.onload = (event) => {
if(sessionStorage.getItem("logOutCounter") !== null) {
autoLogOut(sessionStorage.getItem("logOutCounter"));
}
}
const startMetricCapture = () => { const startMetricCapture = () => {
// reset key strokes // reset key strokes
key_strokes = 0 key_strokes = 0
time_start = Date.now() time_start = Date.now()
if (global_start_time == 0) { if (sessionStorage.getItem("global_start_time") === null) {
global_start_time = new Date(); sessionStorage.setItem("global_start_time", new Date());
} }
time_pause_spent = 0 time_pause_spent = 0
...@@ -66,7 +70,12 @@ const startMetricCapture = () => { ...@@ -66,7 +70,12 @@ const startMetricCapture = () => {
console.log('key invalid'); console.log('key invalid');
} else { } else {
if(key.key === 'Tab') { if(key.key === 'Tab') {
tab_count++; if(sessionStorage.getItem("tab") === null) {
sessionStorage.setItem("tab", 1);
} else {
let tab = parseInt(sessionStorage.getItem("tab"));
sessionStorage.setItem("tab", tab += 1);
}
} }
key_strokes++ key_strokes++
} }
...@@ -82,6 +91,10 @@ const startMetricCapture = () => { ...@@ -82,6 +91,10 @@ const startMetricCapture = () => {
// } // }
showMetricCapture(); showMetricCapture();
if(sessionStorage.getItem("autoLogout") === null) {
autoLogOut(AUTO_LOGOUT_TIMER);
sessionStorage.setItem("autoLogout", "true");
}
} }
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
const form = document.getElementById("fields"); const form = document.getElementById("fields");
const sidebar = document.getElementById("sidebar"); const sidebar = document.getElementById("sidebar");
let closerWindow; let closerWindow;
let isEndSession = false;
// form.addEventListener('submit', (e)=>{ // form.addEventListener('submit', (e)=>{
// submitted = true; // submitted = true;
...@@ -25,8 +26,10 @@ sidebar.append(endDiv); ...@@ -25,8 +26,10 @@ sidebar.append(endDiv);
function checkForm(form){ function checkForm(form){
var inputs = form.getElementsByTagName("input"); var inputs = form.getElementsByTagName("input");
var selects = form.getElementsByTagName("select"); var selects = form.getElementsByTagName("select");
var textareas = form.getElementsByTagName("textarea");
inputsBlankCount = inputs.length; inputsBlankCount = inputs.length;
selectsBlankCount = selects.length - 2; selectsBlankCount = selects.length - 2;
textareaBlankCount = textareas.length;
for(var i=0; i<inputs.length; i++){ for(var i=0; i<inputs.length; i++){
if(inputs[i].value == "") inputsBlankCount--; if(inputs[i].value == "") inputsBlankCount--;
...@@ -35,53 +38,104 @@ function checkForm(form){ ...@@ -35,53 +38,104 @@ function checkForm(form){
for(var i=0; i<selects.length; i++){ for(var i=0; i<selects.length; i++){
if(selects[i].options[selects[i].selectedIndex].value === "null") selectsBlankCount--; if(selects[i].options[selects[i].selectedIndex].value === "null") selectsBlankCount--;
} }
if(inputsBlankCount==0 && selectsBlankCount==0) return true;
for(var i=0; i<textareas.length; i++){
if(textareas[i].value == "") textareaBlankCount--;
}
if(inputsBlankCount==0 && selectsBlankCount==0 && textareaBlankCount==0) return true;
} }
//deletes the indexedDB if form is submitted or form is empty //deletes the indexedDB if form is submitted or form is empty
endButton.addEventListener("click", function(){ endButton.addEventListener("click", function(){
//if form is submitted or fields are blank, delete database //if form is submitted or fields are blank, delete database
if(!checkForm(form)){ if(!checkForm(form)){
isEndSession = true;
document.getElementById("fields").requestSubmit(); document.getElementById("fields").requestSubmit();
} else {
let delta = Math.abs(global_end_time - (sessionStorage.getItem("global_start_time") === null ? 0 : new Date(sessionStorage.getItem("global_start_time")))) / 1000;
let mins = Math.floor(delta/60) % 60;
delta -= mins * 60;
let secs = Math.floor(delta) % 60;
const json = {
"start_time" : formatDate((sessionStorage.getItem("global_start_time") === null ? 0 : new Date(sessionStorage.getItem("global_start_time"))).toLocaleString()),
"end_time": formatDate(global_end_time.toLocaleString()),
"total_dur": sessionStorage.getItem("global_start_time") === null ? 0 : (mins + (mins > 1 ? " minutes " : " minute ")
+ secs + (secs > 1 ? " seconds" : " second")),
"avg_speed": newAvg,
"tab_count": sessionStorage.getItem("tab") === null ? 0 : sessionStorage.getItem("tab"),
"metrics_dir": sessionStorage.getItem("outputMetricsDir") + "/" + metrics_file_name
}
saveTime(json);
//clear localStorage
localStorage.clear();
let user = sessionStorage.user_id;
let checked = sessionStorage.checked;
sessionStorage.clear();
if (checked !== undefined) {
sessionStorage.checked = checked;
sessionStorage.user = user;
}
var DBdeleteRequest = window.indexedDB.deleteDatabase("ImageDatabase");
DBdeleteRequest.addEventListener('blocked', function(e){
console.log("Database cleared.");
closerWindow = window.open("closer.html", '_self');
});
DBdeleteRequest.addEventListener('upgradeneeded', function(e){
console.log("Upgrade needed in deleting database");
});
DBdeleteRequest.addEventListener('error', function(e){
console.log("Error in deleting database");
});
DBdeleteRequest.addEventListener('success', function(e){
console.log("Database cleared.");
closerWindow = window.open("closer.html", '_self');
});
//resets the the boolean checker if data is submitted
submitted = false;
} }
});
let delta = Math.abs(global_end_time - global_start_time) / 1000;
let mins = Math.floor(delta/60) % 60;
delta -= mins * 60; function autoLogOut(logOutCounter) {
let secs = Math.floor(delta) % 60; // setTimeout(() => {
// alert("5 minutes before logging out automatically.")
const json = { // }, (60000*(AUTO_LOGOUT_TIMER-5)));
"start_time" : formatDate(global_start_time.toLocaleString()),
"end_time": formatDate(global_end_time.toLocaleString()), // setTimeout(() => {
"total_dur": mins + (mins > 1 ? " minutes " : " minute ") // endButton.click();
+ secs + (secs > 1 ? " seconds" : " second"), // alert("Session time expired.\nSaving and logging out.")
"avg_speed": newAvg, // }, (60000*AUTO_LOGOUT_TIMER));
"tab_count": tab_count,
"metrics_dir": sessionStorage.getItem("outputMetricsDir") + "/" + metrics_file_name var time = 60000*logOutCounter;
timer = setInterval(() => {
if ((time -= 1000) > 0) {
// console.log(time);
sessionStorage.setItem("logOutCounter", (time/60000));
if (time == (60000*5)) {
alert("5 minutes before logging out automatically.");
}
} else {
clearInterval(timer);
endButton.click();
alert("Session time expired.\nSaving and logging out.")
} }
saveTime(json); }, 1000);
//clear localStorage // setTimeout(() => {
localStorage.clear(); // alert("5 minutes before logging out automatically.")
sessionStorage.clear(); // }, (20000-15000));
var DBdeleteRequest = window.indexedDB.deleteDatabase("ImageDatabase"); // setTimeout(() => {
DBdeleteRequest.addEventListener('blocked', function(e){ // endButton.click();
console.log("Database cleared."); // alert("Session time expired.\nSaving and logging out.")
closerWindow = window.open("closer.html", '_self'); // }, (20000));
}); }
DBdeleteRequest.addEventListener('upgradeneeded', function(e){ \ No newline at end of file
console.log("Upgrade needed in deleting database");
});
DBdeleteRequest.addEventListener('error', function(e){
console.log("Error in deleting database");
});
DBdeleteRequest.addEventListener('success', function(e){
console.log("Database cleared.");
closerWindow = window.open("closer.html", '_self');
});
//resets the the boolean checker if data is submitted
submitted = false;
});
\ No newline at end of file
...@@ -59,6 +59,14 @@ const displayFields = async (parentID) => { ...@@ -59,6 +59,14 @@ const displayFields = async (parentID) => {
submit.type = 'submit' submit.type = 'submit'
div.appendChild(submit) div.appendChild(submit)
document.addEventListener("keydown", (e) => {
if (e.keyCode === 120) {
e.stopImmediatePropagation();
document.getElementById("fields").requestSubmit();
}
})
// add handler event handler for dropdown // add handler event handler for dropdown
// separate handler is used to fit with the library used 'select2' // separate handler is used to fit with the library used 'select2'
$(document).ready(function() { $(document).ready(function() {
...@@ -69,7 +77,9 @@ const displayFields = async (parentID) => { ...@@ -69,7 +77,9 @@ const displayFields = async (parentID) => {
document.querySelector('.select2-container--open').firstChild.firstChild.style.backgroundColor = 'yellow'; document.querySelector('.select2-container--open').firstChild.firstChild.style.backgroundColor = 'yellow';
}); });
$('.dropdown-input').select2().on('select2:close', () => { $('.dropdown-input').select2().on('select2:close', () => {
document.querySelector('.select2-container--focus').firstChild.firstChild.style.backgroundColor = ''; if (document.querySelector('.select2-container--focus') != null) {
document.querySelector('.select2-container--focus').firstChild.firstChild.style.backgroundColor = '';
}
}); });
dropdowns.on('select2:close', handleDropdown) dropdowns.on('select2:close', handleDropdown)
}); });
......
const submitForm = (e) => { const submitForm = async (e) => {
try { try {
global_end_time = new Date(); global_end_time = new Date();
let eoe_ts = global_end_time.toLocaleString(); let eoe_ts = global_end_time.toLocaleString();
...@@ -51,7 +51,57 @@ const submitForm = (e) => { ...@@ -51,7 +51,57 @@ const submitForm = (e) => {
else { else {
const metrics = stopMetricCapture(); const metrics = stopMetricCapture();
WriteForm(e, metrics, doctype, section); WriteForm(e, metrics, doctype, section);
saveMetrics(metrics, eoe_ts); await saveMetrics(metrics, eoe_ts);
if (isEndSession) {
let delta = Math.abs(global_end_time - (sessionStorage.getItem("global_start_time") === null ? 0 : new Date(sessionStorage.getItem("global_start_time")))) / 1000;
let mins = Math.floor(delta/60) % 60;
delta -= mins * 60;
let secs = Math.floor(delta) % 60;
const json = {
"start_time" : formatDate((sessionStorage.getItem("global_start_time") === null ? 0 : new Date(sessionStorage.getItem("global_start_time"))).toLocaleString()),
"end_time": formatDate(global_end_time.toLocaleString()),
"total_dur": mins + (mins > 1 ? " minutes " : " minute ")
+ secs + (secs > 1 ? " seconds" : " second"),
"avg_speed": newAvg,
"tab_count": sessionStorage.getItem("tab") === null ? 0 : sessionStorage.getItem("tab"),
"metrics_dir": sessionStorage.getItem("outputMetricsDir") + "/" + metrics_file_name
}
saveTime(json);
localStorage.clear();
let user = sessionStorage.user_id;
let checked = sessionStorage.checked;
sessionStorage.clear();
if (checked !== undefined) {
sessionStorage.checked = checked;
sessionStorage.user = user;
}
var DBdeleteRequest = window.indexedDB.deleteDatabase("ImageDatabase");
DBdeleteRequest.addEventListener('blocked', function(e){
console.log("Database cleared.");
closerWindow = window.open("closer.html", '_self');
});
DBdeleteRequest.addEventListener('upgradeneeded', function(e){
console.log("Upgrade needed in deleting database");
});
DBdeleteRequest.addEventListener('error', function(e){
console.log("Error in deleting database");
});
DBdeleteRequest.addEventListener('success', function(e){
console.log("Database cleared.");
closerWindow = window.open("closer.html", '_self');
});
//resets the the boolean checker if data is submitted
submitted = false;
return;
}
[...document.getElementsByClassName("TiffModalContent")].forEach(el => { [...document.getElementsByClassName("TiffModalContent")].forEach(el => {
while (el.children[1].hasChildNodes()) { while (el.children[1].hasChildNodes()) {
el.children[1].removeChild(el.children[1].firstChild); el.children[1].removeChild(el.children[1].firstChild);
...@@ -71,6 +121,7 @@ const submitForm = (e) => { ...@@ -71,6 +121,7 @@ const submitForm = (e) => {
document.getElementById("counter").innerHTML = ""; document.getElementById("counter").innerHTML = "";
clearTimeout(interval); clearTimeout(interval);
isCanvasNotCreated = true; isCanvasNotCreated = true;
time_start = 0;
init(); init();
return true return true
} }
......
...@@ -491,7 +491,7 @@ function TIFFViewer(xhr, TiffViewerImageName) { ...@@ -491,7 +491,7 @@ function TIFFViewer(xhr, TiffViewerImageName) {
widthHolder = initWidth; widthHolder = initWidth;
initWidth = 100; initWidth = 100;
document.getElementById("TiffViewer_FileContainer").style = `width: ${initWidth}%;`; document.getElementById("TiffViewer_FileContainer").style = `width: ${initWidth}%;`;
this.innerHTML = "Resize Content"; // this.innerHTML = "Resize Content";
} else { } else {
// setheight = changedheight; // setheight = changedheight;
// setwidth = changedwidth; // setwidth = changedwidth;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment