bbs_in.js 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. "use strict";
  2. function opennamu_bbs_in() {
  3. const url = window.location.pathname;
  4. const url_split = url.split('/');
  5. let bbs_num = url_split[3];
  6. let page;
  7. if(url_split.length > 4) {
  8. page = url_split[4];
  9. } else {
  10. page = '1';
  11. }
  12. fetch('/api/v2/bbs/in/' + bbs_num + '/' + page).then(function(res) {
  13. return res.json();
  14. }).then(function(data) {
  15. data = data["data"];
  16. let data_html = '';
  17. for(let for_a = 0; for_a < data.length; for_a++) {
  18. data_html += '<div class="opennamu_recent_change">';
  19. data_html += '<a href="/bbs/w/' + data[for_a]['set_id'] + '/' + data[for_a]['set_code'] + '">' + opennamu_xss_filter(data[for_a]['title']) + '</a>';
  20. data_html += '<div style="float: right;">';
  21. data_html += '<span id="opennamu_bbs_comment_' + String(for_a) + '"></span>';
  22. data_html += data[for_a]['user_id_render'] + ' | ';
  23. if(data[for_a]['pinned'] === '1') {
  24. data_html += '<span style="color: red;">' + data[for_a]['date'] + '</span>';
  25. } else {
  26. data_html += data[for_a]['date'];
  27. }
  28. data_html += '</div>'
  29. data_html += '<div style="clear: both;"></div>';
  30. data_html += '</div>';
  31. data_html += '<hr class="main_hr">';
  32. }
  33. data_html += opennamu_page_control('/bbs/in/' + bbs_num + '/{}', Number(page), data.length);
  34. document.getElementById('opennamu_bbs_in').innerHTML = data_html;
  35. for(let for_a = 0; for_a < data.length; for_a++) {
  36. fetch('/api/v2/bbs/w/comment/' + data[for_a]['set_id'] + '-' + data[for_a]['set_code'] + '/length').then(function(res) {
  37. return res.json();
  38. }).then(function(comment_data) {
  39. if(comment_data) {
  40. document.getElementById('opennamu_bbs_comment_' + String(for_a)).innerText = comment_data['data'] + ' | ';
  41. }
  42. });
  43. }
  44. });
  45. }