1$(document).ready(function () { 2 if (allowRevealPassword) { 3 setInterval(initRevealPassword, 500); 4 } 5 6 function initRevealPassword() { 7 if (!$('input[type="password"]:not(.added-reveal-button)').length) { 8 return; 9 } 10 11 $('input[type="password"]:not(.added-reveal-button)') 12 .each(function (index) { 13 var revealPassword = $('<div>') 14 .addClass('reveal-password') 15 .attr('data-index', index) 16 .append( 17 $('<i>') 18 .addClass('glyphicon') 19 .addClass('glyphicon-eye-open') 20 ); 21 22 $(this).attr('data-index', index); 23 $(this).after(revealPassword); 24 }) 25 .addClass('added-reveal-button'); 26 27 $('.reveal-password:not(.added-reveal-handler)') 28 .on('click', function (event) { 29 event.preventDefault(); 30 31 var index = $(this).data('index'), 32 input = $('input[data-index="' + index + '"]'), 33 type = $(input).attr('type'); 34 35 $('input[data-index="' + index + '"]').attr('type', type === 'password' ? 'text' : 'password'); 36 $('.glyphicon', this).toggleClass('glyphicon-eye-open').toggleClass('glyphicon-eye-close'); 37 }) 38 .addClass('added-reveal-handler'); 39 } 40});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.