Files
fe-accone/apps/components/oneFooter.vue

110 lines
2.9 KiB
Vue

<template>
<v-footer style="color: white!important" color="grey darken-3 " app>
<one-clock></one-clock>
<v-spacer></v-spacer>
<span class="one-footer"
><p class="mb-0" style="color: white!important"
>Auto logged out in <span id="SecondsUntilExpire"></span> seconds</p
></span
>
</v-footer>
</template>
<style>
span.one-footer {
margin-right: 30px;
}
</style>
<script>
module.exports = {
mounted() {
var IDLE_TIMEOUT = 5 * 60; //seconds
if (localStorage.getItem("user")) {
var retrievedObject = localStorage.getItem("user");
var dtuser = JSON.parse(retrievedObject);
if (dtuser.time_autologout && parseInt(dtuser.time_autologout) > 0)
IDLE_TIMEOUT = parseInt(dtuser.time_autologout) * 60;
}
var _idleSecondsTimer = null;
if (localStorage.getItem("autologout") === null) {
localStorage.setItem("autologout", 0);
}
document.onclick = function () {
localStorage.setItem("autologout", 0);
};
document.onmousemove = function () {
localStorage.setItem("autologout", 0);
};
document.onkeypress = function () {
localStorage.setItem("autologout", 0);
};
_idleSecondsTimer = window.setInterval(CheckIdleTime, 1000);
function CheckIdleTime() {
let xcounter = parseInt(localStorage.getItem("autologout"));
xcounter++;
localStorage.setItem("autologout", xcounter);
//this.show_autologout = false
var oPanel = document.getElementById("SecondsUntilExpire");
if (oPanel)
oPanel.innerHTML =
IDLE_TIMEOUT - parseInt(localStorage.getItem("autologout")) + "";
if (parseInt(localStorage.getItem("autologout")) >= IDLE_TIMEOUT) {
window.clearInterval(_idleSecondsTimer);
localStorage.removeItem("autologout");
window.one_logout("/one-ui/test/vuex/one-login");
}
}
},
components: {
"one-clock": httpVueLoader("./oneTanggal.vue"),
},
};
function one_verif() {
let url_redir = "/one-ui/";
let verif = async function (token) {
try {
var resp = await axios.post("/one-api/v1/system/verify/do", {
token: token,
});
if (resp.status != 200) {
return {
status: "ERR",
message: resp.statusText,
};
}
let data = resp.data;
return data;
} catch (e) {
return {
status: "ERR",
message: e.message,
};
}
};
let x = async () => {
let url_redir = "/one-ui/";
try {
let resp = await verif(window.one_token());
console.log("Response", resp);
return;
if (resp.status != "OK") {
window.localStorage.removeItem("token");
window.localStorage.removeItem("user");
location.replace(url_redir);
}
} catch (e) {}
};
x();
}
//one_verif();
</script>