CryptoAssist/src/menu.js

36 lines
1.2 KiB
JavaScript
Raw Normal View History

2017-02-26 23:38:06 +00:00
var $ = require("jquery");
2017-02-27 10:38:33 +00:00
var events = require("./events.js");
var diagram = require("./diagram");
2017-02-26 23:38:06 +00:00
$("#header>a#export").click(function(){ //export button clicked
2017-02-26 23:38:06 +00:00
var fileSaver = require("file-saver");
var exported = require("./diagram/export.js")();
var exportedBlob = new Blob([exported], {type: "text/plain;chartset=utf-8"})
fileSaver.saveAs(exportedBlob, diagram.name + ".json");
});
$("#header>a#import").click(function(){
$("#header>#importUpload").click(); //on import button click, trigger file open dialog
2017-02-26 23:38:06 +00:00
});
$("#header>#importUpload").change(function(){ //when a file is selected
2017-02-26 23:38:06 +00:00
var reader = new FileReader();
reader.onload = function(){
require("./diagram/import.js")(reader.result);
}
reader.readAsText(this.files[0]); //read the file as text, this will call the above function when complete
2017-02-27 10:38:33 +00:00
});
$("#header>a#projectName").click(function(){
do{
diagram.name = prompt("Please enter a name for the diagram", diagram.name);
}
while(!diagram.name); //keep asking for a new name until a valid one is entered
2017-02-27 10:38:33 +00:00
$("#header>a#projectName").html(diagram.name);
});
events.subscribe("diagramImport", function(){
//update displayed name when new diagram imported
2017-02-27 10:38:33 +00:00
$("#header>a#projectName").html(diagram.name);
});