backoffice/web/js/library.js

135 lines
3.9 KiB
JavaScript

function checkToken(){
instance.get("token", { withCredentials: true})
.then(function(response) {
if(location.pathname == "/")
{
location.href="/html/users.html";
}
})
.catch(function(error){
if(location.pathname != "/"){
location.href="/";
}
if(error.response.status == 406){
instance.delete("token" , {withCredentials:true}).then(function(response){
location.reload();
});
}
});
}
function buildParam(typeInput){
var search = document.getElementById("searchUser").value;
var param = "";
var listParam = ["skip"];
if(typeInput.length > 0){
listId =["inputRoles", "inputStatus", "inputPages"]
for (var i=0; i<listId.length; i++) {
var select = document.getElementById(listId[i]);
if (select != null){
var getId = select.options[select.selectedIndex].value;
switch (listId[i])
{
case "inputRoles":
if (getId != "All"){
param = param + "roles=" + getId + "&";
}
break;
case "inputStatus":
if (getId != "-2"){
param = param + "status=" + getId + "&";
}
break;
case "inputPages":
param = param + "limit=" + getId + "&";
break;
default:
break;
}
}
}
} else {
listParam.push("roles");
listParam.push("status");
listParam.push("limit");
}
if(search.length > 0){
if(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(search)){
param = param + "email="+search+"&";
} else if (/^[a-fA-F0-9]{24}$/.test(search)){
param = param + "id="+search+"&";
} else {
param = param + "name="+search+"&";
}
} else {
listParam.push("email"); listParam.push("id"); listParam.push("name");
}
for (var i=0; i<listParam.length; i++){
var query = getQuery(listParam[i]);
if(query.length > 0){
param = param + listParam[i]+"="+query+"&";
}
}
return param;
}
function signOut(){
document.getElementById("signout").addEventListener("click", function(){
instance.delete("token" , {withCredentials:true}).then(function(response){
if(response.status == 200) {
location.href="/";
}
});
});
}
function closeButton(){
var btnclose = document.getElementsByClassName("btn-close");
for (var i = 0; i<btnclose.length; i++){
btnclose[i].addEventListener("click", function(e){
var parent = e.currentTarget.parentElement;
if(!parent.classList.contains("hidden")){
parent.classList.add("hidden");
}
});
}
}
function getQuery(param){
var result = "";
if(location.search.length > 0){
query = location.search.split("?")[1];
var variables = query.split("&")
for (var i=0; i<variables.length; i++){
if(variables[i].split("=")[0] == param){
result = variables[i].split("=")[1];
}
}
}
return result;
}
function updateParam(param, value){
var result = "";
if(location.search.length > 0){
query = location.search.split("?")[1];
var variables = query.split("&");
for (var i=0; i<variables.length; i++){
var data = variabes[i];
if(variables[i].split("=")[0] == param){
data = param+"="+value;
}
result = result + "&" + data;
}
}
return result;
}