keygenmusic.tk-mirror/js/model-localStorage.js

3 lines
650 B
JavaScript

var model={defaults:{total_played:0,tracks_played:0,favorites:[],lib_version:'',lib_list:''},init:function(key,value,callback){if(!localStorage.hasOwnProperty(key)){model.write(key,value);callback();}},write:function(key,value,callback){var write=typeof value==='object'?JSON.stringify(value):''+value;localStorage[key]=write;callback&&callback(write);},read:function(key,callback){var res;if(localStorage.hasOwnProperty(key)){try{res=JSON.parse(localStorage[key]);}
catch(e){res=localStorage[key];}
callback(res);}else if(model.defaults.hasOwnProperty(key)){model.init(key,model.defaults[key],function(){res=model.defaults[key];callback(res);});}}};