/usr/share/phpmyadmin/js/src
NameSizeModeActions
codemirror/-0755rm
database/-0755rm
designer/-0755rm
jqplot/-0755rm
server/-0755rm
setup/-0755rm
table/-0755rm
transformations/-0755rm
ajax.js367090644editdlrm
chart.js187280644editdlrm
common.js50860644editdlrm
config.js271930644editdlrm
console.js572730644editdlrm
cross_framing_protection.js4230644editdlrm
doclinks.js189700644editdlrm
drag_drop_import.js144430644editdlrm
error_report.js108740644editdlrm
export.js375810644editdlrm
export_output.js4020644editdlrm
functions.js1809080644editdlrm
gis_data_editor.js150050644editdlrm
import.js67530644editdlrm
indexes.js304400644editdlrm
jquery.sortable-table.js112890644editdlrm
keyhandler.js33410644editdlrm
makegrid.js980000644editdlrm
menu_resizer.js64520644editdlrm
microhistory.js115980644editdlrm
multi_column_sort.js13730644editdlrm
navigation.js633340644editdlrm
normalization.js295510644editdlrm
ol.mjs10530644editdlrm
page_settings.js17040644editdlrm
replication.js37620644editdlrm
rte.js483950644editdlrm
shortcuts_handler.js38130644editdlrm
sql.js404060644editdlrm
u2f.js34750644editdlrm
Edit: /usr/share/phpmyadmin/js/src/u2f.js (3475B)
/* global u2f */ // js/vendor/u2f-api-polyfill.js AJAX.registerOnload('u2f.js', function () { var $inputReg = $('#u2f_registration_response'); if ($inputReg.length > 0) { var $formReg = $inputReg.parents('form'); $formReg.find('input[type=submit]').hide(); setTimeout(function () { // A magic JS function that talks to the USB device. This function will keep polling for the USB device until it finds one. var request = JSON.parse($inputReg.attr('data-request')); u2f.register(request.appId, [request], JSON.parse($inputReg.attr('data-signatures')), function (data) { // Handle returning error data if (data.errorCode && data.errorCode !== 0) { switch (data.errorCode) { case 5: Functions.ajaxShowMessage(Messages.strU2FTimeout, false, 'error'); break; case 4: Functions.ajaxShowMessage(Messages.strU2FErrorRegister, false, 'error'); break; case 3: Functions.ajaxShowMessage(Messages.strU2FInvalidClient, false, 'error'); break; case 2: Functions.ajaxShowMessage(Messages.strU2FBadRequest, false, 'error'); break; default: Functions.ajaxShowMessage(Messages.strU2FUnknown, false, 'error'); break; } return; } // Fill and submit form. $inputReg.val(JSON.stringify(data)); $formReg.trigger('submit'); }); }, 1000); } var $inputAuth = $('#u2f_authentication_response'); if ($inputAuth.length > 0) { var $formAuth = $inputAuth.parents('form'); $formAuth.find('input[type=submit]').hide(); setTimeout(function () { // Magic JavaScript talking to your HID // appid, challenge, authenticateRequests var request = JSON.parse($inputAuth.attr('data-request')); u2f.sign(request[0].appId, request[0].challenge, request, function (data) { // Handle returning error data if (data.errorCode && data.errorCode !== 0) { switch (data.errorCode) { case 5: Functions.ajaxShowMessage(Messages.strU2FTimeout, false, 'error'); break; case 4: Functions.ajaxShowMessage(Messages.strU2FErrorAuthenticate, false, 'error'); break; case 3: Functions.ajaxShowMessage(Messages.strU2FInvalidClient, false, 'error'); break; case 2: Functions.ajaxShowMessage(Messages.strU2FBadRequest, false, 'error'); break; default: Functions.ajaxShowMessage(Messages.strU2FUnknown, false, 'error'); break; } return; } // Fill and submit form. $inputAuth.val(JSON.stringify(data)); $formAuth.trigger('submit'); }); }, 1000); } });