NoticeFormWeb.html 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. <!DOCTYPE html>
  2. <html lang="ko"
  3. xmlns:th="http://www.thymeleaf.org"
  4. xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
  5. layout:decorator="web/common/layout/CallcenterLayoutWeb">
  6. <!--
  7. *******************************************************************************
  8. * @source : NoticeFormWeb.html
  9. * @desc : 공지사항 Page
  10. *============================================================================
  11. * STYLE24
  12. * Copyright(C) 2020 TSIT, All rights reserved.
  13. *============================================================================
  14. * VER DATE AUTHOR DESCRIPTION
  15. * === =========== ========== =============================================
  16. * 1.0 2021.02.01 gagamel 최초 작성
  17. *******************************************************************************
  18. -->
  19. <body>
  20. <th:block layout:fragment="content">
  21. <div id="container" class="container cs">
  22. <div class="breadcrumb">
  23. <ul>
  24. <li class="bread_home"><a href="javascript:void(0);" onclick="cfnGoToPage(_PAGE_MAIN);">홈</a></li>
  25. <li class="bread_2depth"><a href="javascript:void(0);" onclick="cfnGoToPage(_PAGE_FAQ);">고객센터</a></li>
  26. <li class="bread_3depth">공지사항</li>
  27. </ul>
  28. </div>
  29. <div class="wrap">
  30. <div class="content notice">
  31. <div class="cont_body">
  32. <!-- CONT-BODY -->
  33. <div class="lnb" id="callcenterLnb">
  34. </div>
  35. <div class="cont">
  36. <div>
  37. <div class="sec_head">
  38. <h3>공지</h3>
  39. </div>
  40. <div class="sec_body">
  41. <div class="ui_row" id="divNotice"> <!-- 데이터 없을시 클래스 nodata 추가 -->
  42. <!-- list -->
  43. <div class="foldGroup case1">
  44. <ul id="ulNotice">
  45. </ul>
  46. </div>
  47. <!-- //list -->
  48. </div>
  49. <div class="ui_foot">
  50. <div class="ui_row">
  51. <ul class="pageNav" id="pageNav">
  52. </ul>
  53. </div>
  54. </div>
  55. </div>
  56. </div>
  57. </div>
  58. <!-- // CONT-BODY -->
  59. </div>
  60. </div>
  61. </div>
  62. </div>
  63. <!-- // container -->
  64. <form id="noticeForm" name="noticeForm" action="#" th:action="@{'/callcenter/notice/list'}">
  65. <input type="hidden" name="pageNo" value ="1"/>
  66. <input type="hidden" name="pageSize" value ="10"/>
  67. </form>
  68. <script src="/ux/plugins/gaga/gaga.paging.js"></script>
  69. <script th:inline="javascript">
  70. /*<![CDATA[*/
  71. $(document).ready(function() {
  72. // 고객센터 LNB 설정
  73. fnSetCallcenterLnb(4);
  74. fnGetList();
  75. });
  76. let fnGetList = function() {
  77. // Initialize a pagination
  78. gagaPaging.init('noticeForm', fnGetListCallback, 'pageNav', 10);
  79. // Load data
  80. gagaPaging.load(1);
  81. }
  82. String.prototype.unescapeHtml = function(){
  83. return this.replace(/&amp;/g, "&").replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&quot;/g, "\"");
  84. };
  85. var fnGetListCallback = function(result) {
  86. $('#ulNotice').html('');
  87. if (result.dataList != null && result.dataList.length > 0) {
  88. $.each(result.dataList, function(idx, item) {
  89. let paging = result.paging.pageable;
  90. let tag = '';
  91. if (item.urgentYn == 'Y') {
  92. tag += '<li class="critical">\n'; // 중요 공지 클래스 critical 추가
  93. } else {
  94. tag += '<li>\n';
  95. }
  96. tag += ' <div class="fold_head">\n';
  97. tag += ' <a href="javascript:void(0)">\n';
  98. tag += ' <div>\n';
  99. if (item.urgentYn == 'Y') {
  100. tag += ' <span class="fold_state"><em class="important">중요</em></span>\n';
  101. } else {
  102. tag += ' <span class="fold_state">' + (paging.totalCount - ((paging.pageNo - 1) * paging.pageSize) - idx++) + '</span>\n';
  103. }
  104. // tag += ' <span class="fold_category">공지</span>\n';
  105. tag += ' <div class="fold_tit">\n';
  106. tag += ' <span>' + item.noticeTitle.escapeHtml() + '</span>\n';
  107. tag += ' </div>\n';
  108. tag += ' <span class="data">' + item.regDt.toDate("YYYYMMDD").format("YYYY.MM.DD") + '</span>\n';
  109. tag += ' </div>\n';
  110. tag += ' </a>\n';
  111. tag += ' </div>\n';
  112. tag += ' <div class="fold_cont" style="display: none;">\n';
  113. tag += ' <div class="fold_detail">\n';
  114. tag += ' <div>' + item.noticeContent.replaceAll('&lt;','<').replaceAll('&gt;', '>').replaceAll('&quot;', '"') + '</div>\n';
  115. tag += ' </div>\n';
  116. tag += ' </div>\n';
  117. tag += '</li>\n';
  118. $('#ulNotice').append(tag);
  119. });
  120. $('#divNotice').removeClass('nodata');
  121. } else {
  122. // let tag = '<li>등록된 공지사항이 없습니다.</li>\n';
  123. // $('#ulNotice').html(tag);
  124. $('#divNotice').addClass('nodata');
  125. }
  126. // Create pagination
  127. gagaPaging.createPagination(result.paging.pageable);
  128. }
  129. /*]]>*/
  130. </script>
  131. </th:block>
  132. </body>
  133. </html>