aboutsummaryrefslogtreecommitdiffstats
path: root/lang/js/testapplication.js
diff options
context:
space:
mode:
authorMaximilian Krambach <[email protected]>2018-04-18 14:38:06 +0000
committerMaximilian Krambach <[email protected]>2018-04-20 13:24:13 +0000
commit6ab25e40d904007755c5d999bf66ae264236e745 (patch)
treec9f6bff260f9cc0d7c0466f6caf316ade679c33e /lang/js/testapplication.js
parentMerge branch 'master' into javascript-binding (diff)
downloadgpgme-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.js70
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);
+});