diff options
author | Maximilian Krambach <[email protected]> | 2018-04-18 14:38:06 +0000 |
---|---|---|
committer | Maximilian Krambach <[email protected]> | 2018-04-20 13:24:13 +0000 |
commit | 6ab25e40d904007755c5d999bf66ae264236e745 (patch) | |
tree | c9f6bff260f9cc0d7c0466f6caf316ade679c33e /lang/js/testapplication.js | |
parent | Merge branch 'master' into javascript-binding (diff) | |
download | gpgme-6ab25e40d904007755c5d999bf66ae264236e745.tar.gz gpgme-6ab25e40d904007755c5d999bf66ae264236e745.zip |
js: encrypt improvement and decrypt method
* Compatibility class gpgme_openpgpjs offers an API that should accept
openpgpjs syntax, throwing errors if a parameter is unexpected/not
implemented
* tried to be more generic in methods
* waiting for multiple answers if 'more' is in the answer
* more consistency checking on sending and receiving
* updated the example extension
--
Diffstat (limited to '')
-rw-r--r-- | lang/js/testapplication.js | 70 |
1 files changed, 53 insertions, 17 deletions
diff --git a/lang/js/testapplication.js b/lang/js/testapplication.js index d01aca99..97b35527 100644 --- a/lang/js/testapplication.js +++ b/lang/js/testapplication.js @@ -1,21 +1,57 @@ -/** -* Testing nativeMessaging. This is a temporary plugin using the gpgmejs - implemetation as contained in src/ -*/ -function buttonclicked(event){ - let data = document.getElementById("text0").value; - let keyId = document.getElementById("key").value; - let enc = Gpgmejs.encrypt(data, [keyId]).then(function(answer){ - console.log(answer); - console.log(answer.type); - console.log(answer.data); - alert(answer.data); - }, function(errormsg){ - alert('Error: '+ errormsg); +/* gpgme.js - Javascript integration for gpgme + * Copyright (C) 2018 Bundesamt für Sicherheit in der Informationstechnik + * + * This file is part of GPGME. + * + * GPGME is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * GPGME is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this program; if not, see <http://www.gnu.org/licenses/>. + * SPDX-License-Identifier: LGPL-2.1+ + * + */ + +function encryptbuttonclicked(event){ + let data = document.getElementById('cleartext').value; + let keyId = document.getElementById('pubkey').value; + let communication = new Gpgmejs; + let enc = communication.encrypt(data, keyId).then( + function(answer){ + console.log(answer); + if (answer.data){ + console.log(answer.data); + document.getElementById('answer').value = answer.data; + } + }, function(errormsg){ + alert('Error: '+ errormsg); + }); +}; + +function decryptbuttonclicked(event){ + let data = document.getElementById("ciphertext").value; + let communication = new Gpgmejs; + let enc = communication.decrypt(data).then( + function(answer){ + console.log(answer); + if (answer.data){ + document.getElementById('answer').value = answer.data; + } + }, function(errormsg){ + alert('Error: '+ errormsg); }); }; document.addEventListener('DOMContentLoaded', function() { - document.getElementById("button0").addEventListener("click", - buttonclicked); - }); + document.getElementById("buttonencrypt").addEventListener("click", + encryptbuttonclicked); + document.getElementById("buttondecrypt").addEventListener("click", + decryptbuttonclicked); +}); |