Add deleteDevice function on delete buttons click event (#1386)
This commit is contained in:
parent
d81ada7d91
commit
806aa5fd87
45
lemonldap-ng-portal/site/coffee/2fregistration.coffee
Normal file
45
lemonldap-ng-portal/site/coffee/2fregistration.coffee
Normal file
|
@ -0,0 +1,45 @@
|
|||
###
|
||||
LemonLDAP::NG 2F registration script
|
||||
###
|
||||
|
||||
setMsg = (msg, level) ->
|
||||
$('#msg').html window.translate msg
|
||||
$('#color').removeClass 'message-positive message-warning alert-success alert-warning'
|
||||
$('#color').addClass "message-#{level}"
|
||||
level = 'success' if level == 'positive'
|
||||
$('#color').addClass "alert-#{level}"
|
||||
|
||||
displayError = (j, status, err) ->
|
||||
console.log 'Error', err
|
||||
res = JSON.parse j.responseText
|
||||
if res and res.error
|
||||
res = res.error.replace /.* /, ''
|
||||
console.log 'Returned error', res
|
||||
setMsg res, 'warning'
|
||||
|
||||
# Unregistration function (launched by "unregister" button)
|
||||
delete2F = (device) ->
|
||||
if device == 'U2F'
|
||||
device = 'u'
|
||||
else if device == 'UBK'
|
||||
device = 'yubikey'
|
||||
else if device == 'TOTP'
|
||||
device = 'totp'
|
||||
else setMsg 'u2fFailed', 'warning'
|
||||
$.ajax
|
||||
type: "POST"
|
||||
url: "#{portal}2fregisters/#{device}/delete"
|
||||
data: {}
|
||||
dataType: 'json'
|
||||
error: displayError
|
||||
success: (resp) ->
|
||||
if resp.error
|
||||
setMsg 'u2fFailed', 'warning'
|
||||
else if resp.result
|
||||
setMsg 'yourKeyIsUnregistered', 'positive'
|
||||
error: displayError
|
||||
|
||||
# Register "click" events
|
||||
$(document).ready ->
|
||||
$('body').on 'click', '.btn-danger', () -> delete2F ( $(this).attr 'device' )
|
||||
$('#goback').attr 'href', portal
|
|
@ -0,0 +1,65 @@
|
|||
// Generated by CoffeeScript 1.9.3
|
||||
|
||||
/*
|
||||
LemonLDAP::NG 2F registration script
|
||||
*/
|
||||
|
||||
(function() {
|
||||
var delete2F, displayError, setMsg;
|
||||
|
||||
setMsg = function(msg, level) {
|
||||
$('#msg').html(window.translate(msg));
|
||||
$('#color').removeClass('message-positive message-warning alert-success alert-warning');
|
||||
$('#color').addClass("message-" + level);
|
||||
if (level === 'positive') {
|
||||
level = 'success';
|
||||
}
|
||||
return $('#color').addClass("alert-" + level);
|
||||
};
|
||||
|
||||
displayError = function(j, status, err) {
|
||||
var res;
|
||||
console.log('Error', err);
|
||||
res = JSON.parse(j.responseText);
|
||||
if (res && res.error) {
|
||||
res = res.error.replace(/.* /, '');
|
||||
console.log('Returned error', res);
|
||||
return setMsg(res, 'warning');
|
||||
}
|
||||
};
|
||||
|
||||
delete2F = function(device) {
|
||||
if (device === 'U2F') {
|
||||
device = 'u';
|
||||
} else if (device === 'UBK') {
|
||||
device = 'yubikey';
|
||||
} else if (device === 'TOTP') {
|
||||
device = 'totp';
|
||||
} else {
|
||||
setMsg('u2fFailed', 'warning');
|
||||
}
|
||||
return $.ajax({
|
||||
type: "POST",
|
||||
url: portal + "2fregisters/" + device + "/delete",
|
||||
data: {},
|
||||
dataType: 'json',
|
||||
error: displayError,
|
||||
success: function(resp) {
|
||||
if (resp.error) {
|
||||
return setMsg('u2fFailed', 'warning');
|
||||
} else if (resp.result) {
|
||||
return setMsg('yourKeyIsUnregistered', 'positive');
|
||||
}
|
||||
},
|
||||
error: displayError
|
||||
});
|
||||
};
|
||||
|
||||
$(document).ready(function() {
|
||||
$('body').on('click', '.btn-danger', function() {
|
||||
return delete2F($(this).attr('device'));
|
||||
});
|
||||
return $('#goback').attr('href', portal);
|
||||
});
|
||||
|
||||
}).call(this);
|
1
lemonldap-ng-portal/site/htdocs/static/common/js/2fregistration.min.js
vendored
Normal file
1
lemonldap-ng-portal/site/htdocs/static/common/js/2fregistration.min.js
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
(function(){var b,a,c;c=function(d,e){$("#msg").html(window.translate(d));$("#color").removeClass("message-positive message-warning alert-success alert-warning");$("#color").addClass("message-"+e);if(e==="positive"){e="success"}return $("#color").addClass("alert-"+e)};a=function(e,d,g){var f;console.log("Error",g);f=JSON.parse(e.responseText);if(f&&f.error){f=f.error.replace(/.* /,"");console.log("Returned error",f);return c(f,"warning")}};b=function(d){if(d==="U2F"){d="u"}else{if(d==="UBK"){d="yubikey"}else{if(d==="TOTP"){d="totp"}else{c("u2fFailed","warning")}}}return $.ajax({type:"POST",url:portal+"2fregisters/"+d+"/delete",data:{},dataType:"json",error:a,success:function(e){if(e.error){return c("u2fFailed","warning")}else{if(e.result){return c("yourKeyIsUnregistered","positive")}}},error:a})};$(document).ready(function(){$("body").on("click",".btn-danger",function(){return b($(this).attr("device"))});return $("#goback").attr("href",portal)})}).call(this);
|
|
@ -1,7 +1,14 @@
|
|||
<TMPL_INCLUDE NAME="header.tpl">
|
||||
|
||||
<div class="container">
|
||||
|
||||
|
||||
<div id="color" class="message message-positive alert"><span id="msg" trspan="choose2f"></span></div>
|
||||
|
||||
|
||||
<!--
|
||||
<div class="message message-positive alert" trspan="choose2f"></div>
|
||||
-->
|
||||
<TMPL_IF NAME="SFDEVICES">
|
||||
<div class="alert alert-info">
|
||||
<table class="table table-hover table-condensed table-responsive">
|
||||
|
@ -16,9 +23,9 @@
|
|||
<tbody>
|
||||
<TMPL_LOOP NAME="SFDEVICES">
|
||||
<tr>
|
||||
<td class="align-middle" style="vertical-align: middle"><TMPL_VAR NAME="type"></td><td class="align-middle"><TMPL_VAR NAME="name"></td><td class="align-middle"><TMPL_VAR NAME="epoch"></td>
|
||||
<td class="align-middle" ><TMPL_VAR NAME="type"></td><td class="align-middle"><TMPL_VAR NAME="name"></td><td class="align-middle"><TMPL_VAR NAME="epoch"></td>
|
||||
<td>
|
||||
<span id="unregister" class="btn btn-danger" role="button">
|
||||
<span id="delete" device='<TMPL_VAR NAME="type">' epoch='<TMPL_VAR NAME="epoch">' class="btn btn-danger" role="button">
|
||||
<span class="glyphicon glyphicon-minus-sign"></span>
|
||||
<span trspan="unregister">Unregister</span>
|
||||
</span>
|
||||
|
@ -48,5 +55,10 @@
|
|||
</a>
|
||||
</div>
|
||||
|
||||
<!-- //if:jsminified
|
||||
<script type="text/javascript" src="<TMPL_VAR NAME="STATIC_PREFIX">/common/js/2fregistration.min.js"></script>
|
||||
//else -->
|
||||
<script type="text/javascript" src="<TMPL_VAR NAME="STATIC_PREFIX">/common/js/2fregistration.js"></script>
|
||||
<!-- //endif -->
|
||||
<TMPL_INCLUDE NAME="footer.tpl">
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user