render_user_name.js 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. "use strict";
  2. function opennamu_do_user_document_check() {
  3. let data_all = document.getElementsByClassName('opennamu_user_link');
  4. for(let for_a = 0; for_a < data_all.length; for_a++) {
  5. if(data_all && data_all[for_a]) {
  6. if(data_all[for_a].getAttribute('complete') === '1') {
  7. continue;
  8. }
  9. }
  10. let data = data_all[for_a].innerHTML;
  11. let xhr = new XMLHttpRequest();
  12. xhr.open("POST", "/api/user_info/" + opennamu_do_url_encode(data));
  13. xhr.send();
  14. document.getElementsByClassName('opennamu_user_link')[for_a].setAttribute('complete', '1');
  15. xhr.onreadystatechange = function() {
  16. if(this.readyState === 4 && this.status === 200) {
  17. // start part
  18. let xhr_data = JSON.parse(this.responseText);
  19. // user document part
  20. if(xhr_data[data]['document'] === 0) {
  21. document.getElementsByClassName('opennamu_user_link')[for_a].id = "not_thing";
  22. }
  23. // user auth part
  24. let user_data = document.getElementsByClassName('opennamu_user_link')[for_a].innerHTML;
  25. if(xhr_data[data]['auth'] === 0) {
  26. } else if(xhr_data[data]['auth'] === 1) {
  27. } else {
  28. user_data = '<b>' + user_data + '</b>';
  29. }
  30. // user title part
  31. user_data = xhr_data[data]['user_title'] + user_data;
  32. // end part
  33. document.getElementsByClassName('opennamu_user_link')[for_a].innerHTML = user_data;
  34. }
  35. }
  36. }
  37. }
  38. function opennamu_do_ip_parser() {
  39. let data_all = document.getElementsByClassName('opennamu_ip_render');
  40. let data_list = {};
  41. for(let for_a = 0; for_a < data_all.length; for_a++) {
  42. if(data_all && data_all[for_a]) {
  43. if(data_all[for_a].getAttribute('complete') === '1') {
  44. continue;
  45. }
  46. }
  47. let data = data_all[for_a].innerHTML;
  48. let data_raw = data;
  49. if(data_list[data_raw]) {
  50. document.getElementsByClassName('opennamu_ip_render')[for_a].innerHTML = data_list[data_raw];
  51. document.getElementsByClassName('opennamu_ip_render')[for_a].setAttribute('complete', '1');
  52. continue;
  53. }
  54. if(opennamu_do_id_check(data_raw)) {
  55. data = '' +
  56. '<a class="opennamu_user_link" ' +
  57. 'href="/w/user:' + opennamu_do_url_encode(data_raw) + '">' +
  58. data_raw +
  59. '</a>' +
  60. '';
  61. } else {
  62. }
  63. data += ' <a href="/user/' + opennamu_do_url_encode(data_raw) + '">(🛠︎)</a>';
  64. document.getElementsByClassName('opennamu_ip_render')[for_a].innerHTML = data;
  65. document.getElementsByClassName('opennamu_ip_render')[for_a].setAttribute('complete', '1');
  66. data_list[data_raw] = data;
  67. }
  68. opennamu_do_user_document_check();
  69. }
  70. opennamu_do_ip_parser();