insert_user_info.js 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. "use strict";
  2. function do_insert_user_info() {
  3. if(document.getElementById('opennamu_get_user_info')) {
  4. let name = document.getElementById('opennamu_get_user_info').innerHTML;
  5. let lang_data_list = [
  6. 'user_name',
  7. 'authority',
  8. 'state',
  9. 'member',
  10. 'normal',
  11. 'blocked',
  12. 'type',
  13. 'regex',
  14. 'period',
  15. 'limitless',
  16. 'login_able',
  17. 'why',
  18. 'band_blocked',
  19. 'ip',
  20. 'ban',
  21. 'level'
  22. ];
  23. let data_form = new FormData();
  24. data_form.append('title_list', JSON.stringify(lang_data_list));
  25. let xhr = new XMLHttpRequest();
  26. xhr.open("POST", "/api/lang/Test");
  27. xhr.send(data_form);
  28. xhr.onreadystatechange = function() {
  29. if(this.readyState === 4 && this.status === 200) {
  30. let lang_data = JSON.parse(this.responseText);
  31. let xhr_2 = new XMLHttpRequest();
  32. xhr_2.open("POST", "/api/user_info/" + opennamu_do_url_encode(name));
  33. xhr_2.send();
  34. xhr_2.onreadystatechange = function() {
  35. if(this.readyState === 4 && this.status === 200) {
  36. let get_data = JSON.parse(this.responseText);
  37. let get_data_auth = get_data[name]['auth'];
  38. if(get_data_auth === '0') {
  39. get_data_auth = lang_data['ip'];
  40. } else if(get_data_auth === '1') {
  41. get_data_auth = lang_data['member'];
  42. } else {
  43. get_data_auth = get_data[name]['auth'];
  44. }
  45. let get_data_auth_date = get_data[name]['auth_date'];
  46. if(get_data_auth_date !== '0') {
  47. get_data_auth += ' (~' + get_data_auth_date + ')'
  48. }
  49. let get_data_ban = get_data[name]['ban'];
  50. if(get_data_ban === '0') {
  51. get_data_ban = lang_data['normal'];
  52. } else {
  53. get_data_ban = lang_data['ban'];
  54. get_data_ban += '<br>';
  55. get_data_ban += lang_data['type'] + ' : ';
  56. if(get_data[name]['ban']['type'] === 'normal') {
  57. get_data_ban += lang_data['normal'];
  58. } else {
  59. get_data_ban += lang_data['regex'];
  60. }
  61. get_data_ban += '<br>';
  62. get_data_ban += lang_data['period'] + ' : ';
  63. if(get_data[name]['ban']['period'] === '0') {
  64. get_data_ban += lang_data['limitless'];
  65. } else {
  66. get_data_ban += get_data[name]['ban']['period'];
  67. }
  68. get_data_ban += '<br>';
  69. get_data_ban += lang_data['login_able'] + ' : ';
  70. if(get_data[name]['ban']['login_able'] === '1') {
  71. get_data_ban += 'O';
  72. } else {
  73. get_data_ban += 'X';
  74. }
  75. get_data_ban += '<br>';
  76. get_data_ban += lang_data['why'] + ' : ' + get_data[name]['ban']['reason'];
  77. }
  78. let level = '0';
  79. let exp = '0';
  80. let max_exp = '0';
  81. if(get_data_auth !== lang_data['ip']) {
  82. level = get_data[name]['level'];
  83. exp = get_data[name]['exp'];
  84. max_exp = String(500 + (Number(get_data[name]['level']) * 50));
  85. }
  86. let data = '' +
  87. '<table class="user_info_table">' +
  88. '<tr>' +
  89. '<td>' + lang_data['user_name'] + '</td>' +
  90. '<td>' + get_data[name]['render'] + '</td>' +
  91. '</tr>' +
  92. '<tr>' +
  93. '<td>' + lang_data['authority'] + '</td>' +
  94. '<td>' + get_data_auth + '</td>' +
  95. '</tr>' +
  96. '<tr>' +
  97. '<td>' + lang_data['state'] + '</td>' +
  98. '<td>' + get_data_ban + '</td>' +
  99. '</tr>' +
  100. '<tr>' +
  101. '<td>' + lang_data['level'] + '</td>' +
  102. '<td>' + level + ' (' + exp + ' / ' + max_exp + ')</td>' +
  103. '</tr>' +
  104. '</table>' +
  105. '';
  106. document.getElementById('opennamu_get_user_info').innerHTML = data;
  107. }
  108. }
  109. }
  110. }
  111. }
  112. }
  113. do_insert_user_info();