Suche PGP-Key nur wenn der User PGP einschaltet
Bernd Wurst

Bernd Wurst commited on 2018-03-03 06:28:42
Zeige 3 geänderte Dateien mit 34 Einfügungen und 7 Löschungen.

... ...
@@ -43,7 +42,7 @@ function receive_pgpidcheck(result) {
43 42
 function receive_pgpid(result) {
44 43
     if (result.status == 'found' && ! $('#pgpid').val()) {
45 44
         $('#pgpid').val(result.id);
46
-        $("#pgpid_feedback").html('<img src="../../images/ok.png" style="height: 16px; width: 16px;" /><br>Es wurde ein PGP-Key auf einem Keyserver gefunden. Falls Sie einen anderen (oder gar keinen) PGP-Key nutzen möchten, ändern Sie dies bitte hier.');
45
+        $("#pgpid_feedback").html('<img src="../../images/ok.png" style="height: 16px; width: 16px;" /><br>Es wurde ein PGP-Key auf einem Keyserver gefunden.');
47 46
     }
48 47
 }
49 48
 
... ...
@@ -62,11 +61,24 @@ function email_change() {
62 61
     } else {
63 62
         $('#designated-row').hide();
64 63
     }
65
-    if (new_email && ! $('#pgpid').val()) {
66
-        $.getJSON("ajax_pgp?q="+encodeURIComponent(new_email), receive_pgpid)
67 64
 }
65
+
66
+function usepgp_yes() {
67
+    if ($('#email').val() && ! $('#pgpid').val()) {
68
+        $.getJSON("ajax_pgp?q="+encodeURIComponent($('#email').val()), receive_pgpid)
69
+    }
70
+    $('#pgpid').closest('tr').show();
71
+}
72
+
73
+function usepgp_no() {
74
+    $('#pgpid').val('');
75
+    $("#pgpid_feedback").html('');
76
+    $('#pgpkey').val('');
77
+    $('#pgpid').closest('tr').hide();
78
+    $('#pgpkey').closest('tr').hide();
68 79
 }
69 80
 
81
+
70 82
 $(function() {
71 83
     $('#telefon').on("focusout", check_number("telefon") );
72 84
     $('#mobile').on("focusout", check_number("mobile") );
... ...
@@ -79,4 +91,10 @@ $(function() {
79 91
     $('#email').on("focusout", email_change);
80 92
     $('#pgpid').on("focusout", pgpid_change);
81 93
     $('#pgpkey').closest('tr').hide();
94
+    $(".buttonset").buttonset();
95
+    $("#usepgp-yes").click(usepgp_yes);
96
+    $("#usepgp-no").click(usepgp_no);
97
+    if ($('#usepgp-no').is(':checked')) {
98
+        $('#pgpid').closest('tr').hide();
99
+    }
82 100
 });
... ...
@@ -79,7 +79,13 @@ if ($domains) {
79 79
     $html .= '<tr class="odd" id="designated-row"><td><label for="designated"><strong>Inhaberwechsel:</strong></label></td><td><input type="checkbox" name="designated" id="designated" value="yes"><label for="designated">Die Änderung der E-Mail-Adresse bewirkt rechtlich einen Inhaberwechsel. Ich bestätige, dass mir eine explizite Zustimmung des alten und neuen Inhabers für diese Änderung vorliegt. Eine Speicherung der Änderungen ist nur mit dieser Zustimmung möglich.</label></td></tr>';
80 80
 }
81 81
 
82
-$html .= '<tr class="'.($odd == true ? 'odd' : 'even').'"><td><label for="pgpid">PGP-Key-ID:</label></td><td><input type="text" name="pgpid" id="pgpid" value="'.$c['pgp_id'].'"><span id="pgpid_feedback"></span></td></tr>';
82
+  $buttons = '<span class="buttonset" id="buttonset-usepgp">
83
+         <input type="radio" name="usepgp" id="usepgp-yes" value="yes" '.($c['pgp_id'] ? 'checked="checked"' : '').'/>
84
+         <label for="usepgp-yes">PGP verwenden</label>
85
+         <input type="radio" name="usepgp" id="usepgp-no" value="no" '.($c['pgp_id'] ? '' : 'checked="checked"').'/>
86
+         <label for="usepgp-no">kein PGP</label>';
87
+ $html .= '<tr class="'.($odd == true ? 'odd' : 'even').'"><td><label for="buttonset-usepgp">PGP-Verschlüsselung:</label></td><td>'.$buttons.'</td></tr>';
88
+ $html .= '<tr class="'.($odd == true ? 'odd' : 'even').'"><td><label for="pgpid">PGP-Key-ID:</label></td><td><input type="text" name="pgpid" id="pgpid" value="'.$c['pgp_id'].'" size="40"><span id="pgpid_feedback"></span></td></tr>';
83 89
 $odd = !$odd;
84 90
 $html .= '<tr class="'.($odd == true ? 'odd' : 'even').'"><td><label for="pgpkey">PGP-Key (ASCII-Armored):</label></td><td><textarea name="pgpkey" id="pgpkey">'.$c['pgp_key'].'</textarea></td></tr>';
85 91
 $odd = !$odd;
... ...
@@ -137,7 +137,7 @@ if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'delete') {
137 137
     }
138 138
 
139 139
     
140
-    if (isset($_REQUEST['pgpid'])) {
140
+    if (isset($_REQUEST['usepgp']) && $_REQUEST['usepgp'] == 'yes' && isset($_REQUEST['pgpid'])) {
141 141
         $pgpid = preg_replace('/[^0-9a-fA-F]/', '', $_REQUEST['pgpid']);
142 142
         DEBUG('PGP-ID: '.$pgpid.' / Länge: '.strlen($pgpid));
143 143
         if (strlen($pgpid) == 8 || strlen($pgpid) == 16 || strlen($pgpid) == 40) {
... ...
@@ -148,6 +148,9 @@ if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'delete') {
148 148
         } else {
149 149
             warning('Ihre PGP-ID wurde nicht übernommen, da sie syntaktisch falsch erscheint');
150 150
         }
151
+    } else {
152
+        $c['pgp_id'] = NULL;
153
+        $c['pgp_key'] = NULL;
151 154
     }
152 155
 
153 156
 
... ...
@@ -191,6 +194,5 @@ if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'delete') {
191 194
     }
192 195
 
193 196
 
194
-    if (! $debugmode)
195
-        header("Location: ".$back);
197
+    redirect($back);
196 198
 }
197 199