zer.ooo-web/public/js/main.js

40 lines
1.2 KiB
JavaScript
Raw Normal View History

2016-04-03 13:10:16 +00:00
$(function () {
2016-04-05 00:19:21 +00:00
var error = $('<div class="alert alert-danger" role="alert"></div>');
2016-04-03 13:10:16 +00:00
$('.magic-csr').click(function () {
2016-04-05 00:19:21 +00:00
var name = $('#name').val();
var user = $('.user').text();
2016-04-03 13:10:16 +00:00
var keys = forge.pki.rsa.generateKeyPair(1024);
var csr = forge.pki.createCertificationRequest();
2016-04-05 00:19:21 +00:00
var commonName = name + '.' + user;
2016-04-03 13:10:16 +00:00
csr.publicKey = keys.publicKey;
csr.setSubject([{
name: 'commonName',
2016-04-05 00:19:21 +00:00
value: commonName
2016-04-03 13:10:16 +00:00
}]);
csr.sign(keys.privateKey);
var pem = forge.pki.certificationRequestToPem(csr);
$.post('/panel/certificates/new', {
2016-04-05 00:19:21 +00:00
csr: pem,
name: name
2016-04-03 13:10:16 +00:00
}, function (data) {
2016-04-05 00:19:21 +00:00
if (data.success) {
var zip = new JSZip();
zip.file(commonName + '.key', pem);
for(var file in data.zip) {
zip.file(file, data.zip[file]);
}
var content = zip.generate({type:"blob"});
saveAs(content, commonName + '-vpn.zip');
location.href = '/panel';
} else {
$('h2').after(error.text(data.error));
}
2016-04-03 13:10:16 +00:00
});
});
});