10
0
mirror of https://github.com/LCPQ/QUESTDB_website.git synced 2024-11-03 20:53:59 +01:00
QUESTDB_website/content/view.html
mveril 4baaaa0fc2
Allow to export geometries (#6)
* Fix broken link

* Fix bug in indexDB

* Fix sourceFile  for each geometry

* Add function to export geometry as xyz

* Fix bug when printing z

* Fix align with website structures

* Add Export geometries fonctionality

* Better class name for select buttons

* Fix after =

* Enable export button only when it makes sense

Co-authored-by: Mickaël Véril <mveril@irsamc.ups-tlse.fr>
2020-12-07 11:15:26 +01:00

78 lines
2.5 KiB
HTML

---
title: "view"
date: 2019-08-29 09:00
draft: false
---
<script src="/js/getFullDataPath.js" type="text/javascript"></script>
<script src="/js/getTextFromFile.js" type="text/javascript"></script>
<script src="/js/Base64ToBlob.js" type="text/javascript"></script>
<script>
window.onload = async function () {
if (typeof (navigator.clipboard) == 'undefined' || typeof (navigator.clipboard.writeText) === 'undefined') {
btn_clip = document.getElementById("btn_clip");
btn_clip.disabled = true;
var browsers = {};
browsers["Chromium"] = "https://chromium.woolyss.com/download";
browsers["Firefox"] = "https://www.mozilla.org/fr/firefox";
var recomsting = "We recomend to use Firefox or a Chromium based browser like Google Chrome";
btn_clip.title = 'This feature is not supported in this bowser\n' + recomsting;
var mystr = 'navigator.clipboard.writeText() not supported in this browser\n' + recomsting;
for (var key in browsers) {
mystr += "\n" + String.raw`Download ${key} : ${browsers[key]}`;
}
console.warn(mystr);
}
var params = new URL(window.location.href).searchParams
var key = ["file", "fileBase64"]
if (params.has(key[0])) {
var filename = params.get(key[0]);
var text = await getTextFromFileUrlAsync(filename,{"Cache-Control":"max-age=0"})
$("#btn_download").click(function () {
var b = new Blob([text],{type:"text/plain;charset=utf-8"});
saveAs(b, filename.substring(filename.lastIndexOf('/')+1))
})
$('#fileTitle').text(filename);
$('#fileContent').text(text)
$('#file').show();
$("#div_btn").show();
} else if (params.has(key[1])) {
var base64 = params.get(key[1]);
$("#btn_download").click(function () {
const blob = base64ToBlob(base64, "text/plain")
saveAs(b, "file.dat")
})
$('#fileTitle').hide()
$('#fileContent').text(atob(base64))
$('file').show();
$("div_btn").show()
}
else {
$('#error_P').show()
errNode;
}
}
</script>
<script>
function Copy() {
navigator.clipboard.writeText($('#fileContent').text());
};
</script>
</script>
</script>
<div>
<p id="error_P" style="color: red; font-weight: bold" hidden=true>
Error
</p>
<div id="file" hidden=true>
<h2 id="fileTitle"></h2>
<pre id="fileContent"></pre>
</div>
</div>
<div id="div_btn" hidden=true>
<button id="btn_clip" onclick="Copy()">Copy content</button>
<button id='btn_download'>Download</button>
</div>