edit_user.js 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. randomString = function(min_length = 16) {
  2. var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz';
  3. var string_length = min_length;
  4. var randomstring = '';
  5. for (var i = 0; i < string_length; i++) {
  6. var rnum = Math.floor(Math.random() * chars.length);
  7. randomstring += chars.substr(rnum, 1);
  8. }
  9. var regex = new RegExp(/^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*\d)[a-zA-Z\d]{8,}$/);
  10. if(!regex.test(randomstring)){
  11. randomString();
  12. }else{
  13. $('input[name=v_password]').val(randomstring);
  14. App.Actions.WEB.update_v_password();
  15. }
  16. }
  17. App.Actions.WEB.update_v_password = function (){
  18. var password = $('input[name="v_password"]').val();
  19. var min_small = new RegExp(/^(?=.*[a-z]).+$/);
  20. var min_cap = new RegExp(/^(?=.*[A-Z]).+$/);
  21. var min_num = new RegExp(/^(?=.*\d).+$/);
  22. var min_length = 8;
  23. var score = 0;
  24. if(password.length >= min_length) { score = score + 1; }
  25. if(min_small.test(password)) { score = score + 1;}
  26. if(min_cap.test(password)) { score = score + 1;}
  27. if(min_num.test(password)) { score = score+ 1; }
  28. $('#meter').val(score);
  29. }
  30. App.Listeners.WEB.keypress_v_password = function() {
  31. var ref = $('input[name="v_password"]');
  32. ref.bind('keypress input', function(evt) {
  33. clearTimeout(window.frp_usr_tmt);
  34. window.frp_usr_tmt = setTimeout(function() {
  35. var elm = $(evt.target);
  36. App.Actions.WEB.update_v_password(elm, $(elm).val());
  37. }, 100);
  38. });
  39. }
  40. App.Listeners.WEB.keypress_v_password();
  41. $(document).ready(function(){
  42. $('.add-ns-button').click(function(){
  43. var n = $('input[name^=v_ns]').length;
  44. if(n < 8){
  45. var t = $($('input[name=v_ns1]').parents('tr')[0]).clone(true, true);
  46. t.find('input').attr({value:'', name:'v_ns'+(n+1)});
  47. t.find('span').show();
  48. $('tr.add-ns').before(t);
  49. }
  50. if( n == 7 ) {
  51. $('.add-ns').hide();
  52. }
  53. });
  54. $('.remove-ns').click(function(){
  55. $(this).parents('tr')[0].remove();
  56. $('input[name^=v_ns]').each(function(i, ns){
  57. $(ns).attr({name: 'v_ns'+(i+1)});
  58. i < 2 ? $(ns).parent().find('span').hide() : $(ns).parent().find('span').show();
  59. });
  60. $('.add-ns').show();
  61. });
  62. $('input[name^=v_ns]').each(function(i, ns){
  63. i < 2 ? $(ns).parent().find('span').hide() : $(ns).parent().find('span').show();
  64. });
  65. });