Copy key to clipboard on lookup page

lookup-visual-improvements
Simon Vareille 2020-06-14 16:42:54 +02:00
parent e4d8e8a152
commit 2747ddb8e8
No known key found for this signature in database
GPG Key ID: 008AE8E706CC19F9
4 changed files with 59 additions and 1 deletions

6
src/static/js/bootstrap-3.4.1.min.js vendored Normal file

File diff suppressed because one or more lines are too long

3
src/static/js/jquery-3.5.1.min.js vendored Normal file

File diff suppressed because one or more lines are too long

35
src/static/js/key-armored.js Executable file
View File

@ -0,0 +1,35 @@
/* eslint-disable */
;(function($) {
'use strict';
$('#copy-button').tooltip({
trigger: 'manual',
placement: 'right',
});
function setTooltip(message) {
$('#copy-button').attr('data-original-title', message)
.tooltip('show');
}
function hideTooltip() {
setTimeout(function() {
$('#copy-button').tooltip('hide');
}, 1000);
}
$('#copy-button').click(function(e) {
const copyText = $('#publickey-block').text();
const textArea = document.createElement('textarea');
textArea.textContent = copyText;
document.body.append(textArea);
textArea.select();
document.execCommand("copy");
textArea.remove();
setTooltip('Key copied to clipboard!');
hideTooltip();
});
}(jQuery));

View File

@ -1,3 +1,13 @@
<style type="text/css">
textarea {
position: absolute;
left: -100%;
}
}
</style>
<div class="container">
<div class="header clearfix">
@ -14,10 +24,14 @@
<div class="row marketing">
<div class="col-lg-12">
<h4><%= query.email ? `Email: ${query.email}` : query.fingerprint ? `Fingerprint: ${query.fingerprint}` : `Key ID: ${query.keyId}` %></h4>
<pre><%= key.publicKeyArmored %></pre>
<button id="copy-button" class="btn btn-primary">Copy key to clipboard</button>
<pre id="publickey-block"><%= key.publicKeyArmored %></pre>
</div> <!-- /col-lg-12 -->
</div>
<%- include('footer') %>
</div> <!-- /container -->
<script src="/js/jquery-3.5.1.min.js"></script>
<script src="/js/bootstrap-3.4.1.min.js"></script>
<script src="/js/key-armored.js"></script>