wisemapping-open-source/mindplot/src/main/javascript/LocalStorageManager.js

60 lines
2.0 KiB
JavaScript
Raw Normal View History

/*
* Copyright [2011] [wisemapping]
*
* Licensed under WiseMapping Public License, Version 1.0 (the "License").
* It is basically the Apache License, Version 2.0 (the "License") plus the
* "powered by wisemapping" text requirement on every single page;
* you may not use this file except in compliance with the License.
* You may obtain a copy of the license at
*
* http://www.wisemapping.org/license
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
2011-11-29 02:17:55 +01:00
mindplot.LocalStorageManager = new Class({
Extends:mindplot.PersistenceManager,
initialize: function() {
this.parent();
},
saveMapXml : function(mapId, mapXml, pref, saveHistory, events) {
2011-11-29 02:17:55 +01:00
localStorage.setItem(mapId + "-xml", mapXml);
events.onSuccess();
},
2012-03-08 00:52:09 +01:00
discard : function(mapId) {
localStorage.removeItem(mapId + "-xml");
},
2011-11-29 02:17:55 +01:00
loadMapDom : function(mapId) {
var xml = localStorage.getItem(mapId + "-xml");
if (xml == null) {
// Let's try to open one from the local directory ...
var xmlRequest = new Request({
url: 'samples/' + mapId + '.xml',
2011-11-29 02:17:55 +01:00
method: 'get',
async: false,
onSuccess: function(responseText) {
xml = responseText;
}
});
xmlRequest.send();
2011-11-29 02:17:55 +01:00
// If I could not load it from a file, hard code one.
if (xml == null) {
throw "Map could not be loaded";
}
2011-11-29 02:17:55 +01:00
}
return core.Utils.createDocumentFromText(xml);
}
}
);