Remove some spot.js dependencies

This commit is contained in:
2026-04-25 15:49:58 +02:00
parent 90349365f9
commit b2b06180e6
4 changed files with 29 additions and 20 deletions
+19 -9
View File
@@ -5,14 +5,14 @@ export default class Spot {
this.consts.hash_sep = '-';
this.consts.title = 'Spotty';
this.consts.default_page = 'project';
this.consts.timezone = Intl.DateTimeFormat().resolvedOptions().timeZone || this.consts.default_timezone;
//this.consts.timezone = Intl.DateTimeFormat().resolvedOptions().timeZone || this.consts.default_timezone;
this.pages = {};
//Variables & constants from php
this.vars('tmp', 'object');
this.vars('page', 'string');
$.each(asGlobals.vars, (sKey, oValue) => {this.vars(sKey, oValue)});
Object.entries(asGlobals.vars).forEach(([sKey, oValue]) => {this.vars(sKey, oValue);});
//page elem
this.elem = {};
@@ -20,6 +20,7 @@ export default class Spot {
/* Initialization */
/*
init() {
this.elem.container = $('#container');
this.elem.main = $('#main');
@@ -35,6 +36,7 @@ export default class Spot {
.on('hashchange', () => {this.onHashChange();})
.trigger('hashchange');
}
*/
/* Variable Management */
@@ -56,6 +58,7 @@ export default class Spot {
/* Interface with server */
/*
get(sAction, fOnSuccess, oVars, fOnError, fonProgress) {
oVars = oVars || {};
fOnError = fOnError || function(sError) {console.log(sError);};
@@ -82,6 +85,7 @@ export default class Spot {
fOnError(textStatus+' '+errorThrown);
});
}
*/
async get2(sAction, oVars, bLoading) {
oVars = oVars || {};
@@ -89,11 +93,8 @@ export default class Spot {
oVars['t'] = this.consts.timezone;
bLoading = true;
let oUrl = new URL(this.consts.server+this.consts.process_page);
oUrl.search = new URLSearchParams(oVars).toString();
try {
let oUrl = new URL(this.consts.server+this.consts.process_page);
let oUrl = new URL(this.consts.process_page, this.consts.server);
oUrl.search = new URLSearchParams(oVars).toString();
const oRequest = await fetch(oUrl, {method: 'GET', /*body: JSON.stringify(oVars),*/ headers: {"Content-Type": "application/json"}});
if(!oRequest.ok) {
@@ -103,10 +104,12 @@ export default class Spot {
else {
let oResponse = await oRequest.json();
bLoading = false;
if(oResponse.desc.substr(0, this.consts.lang_prefix.length)==this.consts.lang_prefix) oResponse.desc = this.lang(oData.desc.substr(this.consts.lang_prefix.length));
if(oResponse.desc.substr(0, this.consts.lang_prefix.length)==this.consts.lang_prefix) {
oResponse.desc = this.lang(oResponse.desc.substr(this.consts.lang_prefix.length));
}
if(oResponse.result == this.consts.error) return Promise.reject(oResponse.desc);
else return Promise.resolve(oResponse.data, oResponse.desc);
else return oResponse.data;
}
}
catch(oError) {
@@ -135,11 +138,13 @@ export default class Spot {
}
isMobile() {
return $('#mobile').is(':visible');
const mobileElem = document.getElementById('mobile');
return !!mobileElem && getComputedStyle(mobileElem).display !== 'none';
}
/* Page Switch - Trigger & Event catching */
/*
onHashChange() {
var asHash = this.getHash();
if(asHash.hash !='' && asHash.page != '') this.switchPage(asHash); //page switching
@@ -186,6 +191,7 @@ export default class Spot {
var asHash = this.getHash();
if(asHash.items.length > 1 && (asTypes.length == 0 || asTypes.indexOf(asHash.items[1]) != -1)) this.setHash(asHash.page, [asHash.items[0]]);
}
*/
/* Page Events */
@@ -224,6 +230,7 @@ export default class Spot {
/* Page Switch - DOM Replacement */
/*
getActionLink(sAction, oVars) {
if(!oVars) oVars = {};
let sVars = '';
@@ -232,11 +239,13 @@ export default class Spot {
return this.consts.process_page+'?a='+sAction+sVars;
}
*/
addPage(sPage, oPage) {
this.pages[sPage] = oPage;
}
/*
switchPage(asHash) {
var sPageName = asHash.page;
var bSamePage = (this.vars('page') == sPageName);
@@ -278,6 +287,7 @@ export default class Spot {
var $FadeInElem = bFirstPage?this.elem.container:this.elem.main;
$FadeInElem.hide().fadeTo('slow', 1);
}
*/
setPageTitle(sTitle) {
document.title = this.consts.title+' - '+sTitle;