|
@@ -1,25 +1,32 @@
|
|
|
|
|
|
|
|
$(() => {
|
|
$(() => {
|
|
|
class AccessManager {
|
|
class AccessManager {
|
|
|
- #storedAccess = new Set();
|
|
|
|
|
|
|
+ #linkStoredAccesses = new Set();
|
|
|
|
|
|
|
|
constructor() {
|
|
constructor() {
|
|
|
- this.#storedAccess.clear();
|
|
|
|
|
- let storedAccess = [];
|
|
|
|
|
|
|
+ this.#linkStoredAccesses.clear();
|
|
|
|
|
+ let linkStoredAccesses = [];
|
|
|
try {
|
|
try {
|
|
|
- storedAccess = (JSON.parse(localStorage?.getItem("accessLinks") || "[]") || []);
|
|
|
|
|
|
|
+ linkStoredAccesses = (JSON.parse(localStorage?.getItem("accessLinks") || "[]") || []);
|
|
|
} catch (err) {
|
|
} catch (err) {
|
|
|
console.error(err);
|
|
console.error(err);
|
|
|
}
|
|
}
|
|
|
- storedAccess.forEach(i => this.#storedAccess.add(i));
|
|
|
|
|
|
|
+ linkStoredAccesses.forEach(i => this.#linkStoredAccesses.add(i));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
#UpdateStorage() {
|
|
#UpdateStorage() {
|
|
|
- localStorage?.setItem("accessLinks", JSON.stringify(Array.from(this.#storedAccess)));
|
|
|
|
|
|
|
+ localStorage?.setItem("accessLinks", JSON.stringify(Array.from(this.#linkStoredAccesses)));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
Logout(code) {
|
|
Logout(code) {
|
|
|
- if (!this.#storedAccess.delete(code))
|
|
|
|
|
|
|
+ let value = null;
|
|
|
|
|
+ this.#linkStoredAccesses.forEach(i => {
|
|
|
|
|
+ if (i.key === code) {
|
|
|
|
|
+ this.#linkStoredAccesses.delete(i);
|
|
|
|
|
+ value = i.value;
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ if (!value)
|
|
|
return;
|
|
return;
|
|
|
this.#UpdateStorage();
|
|
this.#UpdateStorage();
|
|
|
return LoadingTasks.push(() => {
|
|
return LoadingTasks.push(() => {
|
|
@@ -46,7 +53,7 @@ $(() => {
|
|
|
data: { linkIds: JSON.stringify(Array.from(linkList)) },
|
|
data: { linkIds: JSON.stringify(Array.from(linkList)) },
|
|
|
success: data => {
|
|
success: data => {
|
|
|
for (let i in data)
|
|
for (let i in data)
|
|
|
- this.#storedAccess.add(data[i].linkId);
|
|
|
|
|
|
|
+ this.#linkStoredAccesses.add({key: i, value: data[i].linkId });
|
|
|
this.#UpdateStorage();
|
|
this.#UpdateStorage();
|
|
|
window.ReloadAccessList(data);
|
|
window.ReloadAccessList(data);
|
|
|
MediaStorage.Instance.rebuildMetaList();
|
|
MediaStorage.Instance.rebuildMetaList();
|
|
@@ -58,16 +65,16 @@ $(() => {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
async RebuildAccess() {
|
|
async RebuildAccess() {
|
|
|
- if (this.#storedAccess.size) {
|
|
|
|
|
|
|
+ if (this.#linkStoredAccesses.size) {
|
|
|
return LoadingTasks.push(() => {
|
|
return LoadingTasks.push(() => {
|
|
|
- return this.LinkLogin(this.#storedAccess);
|
|
|
|
|
|
|
+ return this.LinkLogin(this.#linkStoredAccesses.value);
|
|
|
});
|
|
});
|
|
|
} else {
|
|
} else {
|
|
|
return LoadingTasks.push(() => {
|
|
return LoadingTasks.push(() => {
|
|
|
return new Promise(ok => {
|
|
return new Promise(ok => {
|
|
|
$.get("/api/access/list", data => {
|
|
$.get("/api/access/list", data => {
|
|
|
for (let i in data)
|
|
for (let i in data)
|
|
|
- this.#storedAccess.add(i);
|
|
|
|
|
|
|
+ this.#linkStoredAccesses.add({ key: i, value: data[i].linkId });
|
|
|
this.#UpdateStorage();
|
|
this.#UpdateStorage();
|
|
|
window.ReloadAccessList(data);
|
|
window.ReloadAccessList(data);
|
|
|
MediaStorage.Instance.rebuildMetaList();
|
|
MediaStorage.Instance.rebuildMetaList();
|