Skip to content
Snippets Groups Projects
Commit acb3adbb authored by juanf's avatar juanf
Browse files

SSDM-3295 : Exports for browsers that don't support TextEncoder.

SVN: 35809
parent 29c9b2e9
No related branches found
No related tags found
No related merge requests found
...@@ -179,14 +179,27 @@ $.extend(Grid.prototype, { ...@@ -179,14 +179,27 @@ $.extend(Grid.prototype, {
var tsvWithoutNumbers = tsv.substring(indexOfFirstLine + 1); var tsvWithoutNumbers = tsv.substring(indexOfFirstLine + 1);
// //
var csvContentEncoded = (new TextEncoder("utf-16le")).encode([tsvWithoutNumbers]); var csvContentEncoded = null;
var bom = new Uint8Array([0xFF, 0xFE]); var out = null;
var out = new Uint8Array( bom.byteLength + csvContentEncoded.byteLength ); var charType = null;
out.set( bom , 0 ); try { //USE UTF-16 if available
out.set( csvContentEncoded, bom.byteLength ); csvContentEncoded = (new TextEncoder("utf-16le")).encode([tsvWithoutNumbers]);
var bom = new Uint8Array([0xFF, 0xFE]);
out = new Uint8Array( bom.byteLength + csvContentEncoded.byteLength );
out.set( bom , 0 );
out.set( csvContentEncoded, bom.byteLength );
charType = 'text/tsv;charset=UTF-16LE;';
} catch(error) { //USE UTF-8
csvContentEncoded = tsvWithoutNumbers;
out = new Uint8Array(csvContentEncoded.length);
for(var ii = 0,jj = csvContentEncoded.length; ii < jj; ++ii){
out[ii] = csvContentEncoded.charCodeAt(ii);
}
charType = 'text/tsv;charset=UTF-8;';
}
// //
var blob = new Blob([out], {type: 'text/tsv;charset=UTF-16LE;'}); var blob = new Blob([out], {type: charType});
saveAs(blob,'exportedTable' + namePrefix + '.tsv'); saveAs(blob,'exportedTable' + namePrefix + '.tsv');
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment