tag i18n
This commit is contained in:
@@ -1,53 +1,116 @@
|
||||
class Storage {
|
||||
constructor() {
|
||||
this.session = new Session();
|
||||
this.local = new Local();
|
||||
}
|
||||
constructor() {
|
||||
this.session = new Session();
|
||||
this.local = new Local();
|
||||
}
|
||||
}
|
||||
|
||||
class Session {
|
||||
setObject(key, value) {
|
||||
sessionStorage.setItem(key, JSON.stringify(value));
|
||||
}
|
||||
|
||||
setObject(key, value) {
|
||||
sessionStorage.setItem(key, JSON.stringify(value));
|
||||
}
|
||||
getObject(key) {
|
||||
return JSON.parse(sessionStorage.getItem(key));
|
||||
}
|
||||
|
||||
getObject(key) {
|
||||
return JSON.parse(sessionStorage.getItem(key));
|
||||
}
|
||||
delete(key) {
|
||||
sessionStorage.removeItem(key);
|
||||
}
|
||||
|
||||
delete(key){
|
||||
sessionStorage.removeItem(key);
|
||||
}
|
||||
setText(key, value) {
|
||||
sessionStorage.setItem(key, value);
|
||||
}
|
||||
|
||||
setText(key, value) {
|
||||
sessionStorage.setItem(key, value);
|
||||
}
|
||||
|
||||
getText(key) {
|
||||
return sessionStorage.getItem(key);
|
||||
}
|
||||
getText(key) {
|
||||
return sessionStorage.getItem(key);
|
||||
}
|
||||
}
|
||||
|
||||
class Local {
|
||||
setObject(key, value) {
|
||||
localStorage.setItem(key, JSON.stringify(value));
|
||||
}
|
||||
setObject(key, value) {
|
||||
localStorage.setItem(key, JSON.stringify(value));
|
||||
}
|
||||
|
||||
getObject(key) {
|
||||
return JSON.parse(localStorage.getItem(key));
|
||||
}
|
||||
getObject(key) {
|
||||
return JSON.parse(localStorage.getItem(key));
|
||||
}
|
||||
|
||||
delete(key){
|
||||
localStorage.removeItem(key);
|
||||
}
|
||||
delete(key) {
|
||||
localStorage.removeItem(key);
|
||||
}
|
||||
|
||||
setText(key, value) {
|
||||
localStorage.setItem(key, value);
|
||||
}
|
||||
setText(key, value) {
|
||||
localStorage.setItem(key, value);
|
||||
}
|
||||
|
||||
getText(key) {
|
||||
return localStorage.getItem(key);
|
||||
getText(key) {
|
||||
return localStorage.getItem(key);
|
||||
}
|
||||
|
||||
getUseSize() {
|
||||
var size = 0;
|
||||
for (let i = 0, len = localStorage.length; i < len; i++) {
|
||||
let key = localStorage.key(i);
|
||||
if (null == key) {
|
||||
continue;
|
||||
}
|
||||
let value = localStorage.getItem(key);
|
||||
if (null != value) {
|
||||
size += value.length;
|
||||
}
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
getAvailableSize() {
|
||||
return 5 * 1024 * 1024 - storage.local.getUseSize();
|
||||
}
|
||||
|
||||
dynamicClear(ctt) {
|
||||
if (storage.local.getAvailableSize() < 1 * 1024 * 1024) {
|
||||
|
||||
//remove commited
|
||||
for (let i = 0, len = localStorage.length; i < len; i++) {
|
||||
let key = localStorage.key(i);
|
||||
|
||||
if (null == key) {
|
||||
continue;
|
||||
}
|
||||
|
||||
let value = localStorage.getItem(key);
|
||||
if (key.length == 37 && key.endsWith(".text") && value.length > 50) {
|
||||
let fl = value.substring(35, 36);
|
||||
if (fl == "1") {
|
||||
localStorage.removeItem(key);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//remove expired
|
||||
if (storage.local.getAvailableSize() < 1 * 1024 * 1024) {
|
||||
for (let i = 0, len = localStorage.length; i < len; i++) {
|
||||
let key = localStorage.key(i);
|
||||
if (null == key) {
|
||||
continue;
|
||||
}
|
||||
let value = localStorage.getItem(key);
|
||||
|
||||
if (key.length == 37 && key.endsWith(".text") && value.length > 50) {
|
||||
let starray = value.split("|");
|
||||
let fl = starray[2];
|
||||
let ts = starray[3];
|
||||
|
||||
if (fl == "0") {
|
||||
if (ctt - ts > 3 * 24 * 3600 * 1000) {
|
||||
localStorage.removeItem(key);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const storage = new Storage();
|
||||
|
||||
Reference in New Issue
Block a user