mirror of
https://github.com/Esri/offline-editor-js.git
synced 2025-12-15 15:20:05 +00:00
added error handling to file saving (don't know how to cause errors, so haven't been able to test properly)
This commit is contained in:
parent
e0d173f55f
commit
dad8ca5683
@ -188,10 +188,26 @@ define([
|
|||||||
if(evt=="end")
|
if(evt=="end")
|
||||||
{
|
{
|
||||||
var blob = new Blob([ csv.join("\r\n") ], {type:"text/plain;charset=utf-8"});
|
var blob = new Blob([ csv.join("\r\n") ], {type:"text/plain;charset=utf-8"});
|
||||||
FileSaver.saveAs(blob, fileName);
|
var saver = FileSaver.saveAs(blob, fileName);
|
||||||
// fails in Safari (and iPad Safari?)
|
|
||||||
|
if( saver.readyState == saver.DONE )
|
||||||
|
{
|
||||||
|
if( saver.error )
|
||||||
|
return callback(false,"Error saving file " + fileName);
|
||||||
|
else
|
||||||
|
return callback(true, "Saved " + (csv.length-1) + " tiles (" + Math.floor(blob.size / 1024 / 1024 * 100) / 100 + " Mb) into " + fileName);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
saver.onerror = function(evt) {
|
||||||
|
callback(false,"Error saving file " + fileName);
|
||||||
|
}
|
||||||
|
saver.onwriteend = function(evt)
|
||||||
|
{
|
||||||
callback(true, "Saved " + (csv.length-1) + " tiles (" + Math.floor(blob.size / 1024 / 1024 * 100) / 100 + " Mb) into " + fileName);
|
callback(true, "Saved " + (csv.length-1) + " tiles (" + Math.floor(blob.size / 1024 / 1024 * 100) / 100 + " Mb) into " + fileName);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
csv.push(url+","+img);
|
csv.push(url+","+img);
|
||||||
@ -212,6 +228,10 @@ define([
|
|||||||
var csvContent = evt.target.result;
|
var csvContent = evt.target.result;
|
||||||
var tiles = csvContent.split("\r\n");
|
var tiles = csvContent.split("\r\n");
|
||||||
var tileCount = 0;
|
var tileCount = 0;
|
||||||
|
|
||||||
|
if(tiles[0] != "url,img")
|
||||||
|
return callback(false, "File " + file.name + " doesn't contain tiles that can be loaded");
|
||||||
|
|
||||||
for(var i=1; i<tiles.length; i++)
|
for(var i=1; i<tiles.length; i++)
|
||||||
{
|
{
|
||||||
var pair = tiles[i].split(',');
|
var pair = tiles[i].split(',');
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user