You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

172 lines
4.7 KiB

7 years ago
  1. APP.BOARD.keyCheck = function(value) {
  2. if (value == '') return "게시판 고유키를 입력하세요";
  3. if (!APP.REGEX.uniqueID.test(value)) return "게시판 고유키는 영어 소문자로 시작하는 3~20 글자로 영어와 숫자만 사용가능합니다.";
  4. if (APP.BOARD.existCheck(value)) return "이미 존재하는 키 입니다.";
  5. return true;
  6. };
  7. APP.BOARD.existCheck = function(brd_key) {
  8. var info = null;
  9. $.ajax({
  10. url : base_url + '/ajax/board/info',
  11. type : 'get',
  12. async : false,
  13. cache : false,
  14. data : {
  15. brd_key : brd_key,
  16. is_raw : true
  17. },
  18. success:function(res){
  19. info = res;
  20. }
  21. });
  22. return info;
  23. };
  24. APP.BOARD.CATEGORY.form = function(brd_key, bca_parent, bca_idx) {
  25. var brd_key = typeof brd_key != 'undefined' && brd_key ? brd_key : null;
  26. var bca_parent = typeof bca_parent != 'undefined' && bca_parent >= 0 ? bca_parent : null;
  27. var bca_idx = typeof bca_idx != 'undefined' && bca_idx ? bca_idx : null;
  28. if(! brd_key )
  29. {
  30. alert('게시판이 지정되지 않았습니다.');
  31. return false;
  32. }
  33. if(parseInt(bca_parent) < 0)
  34. {
  35. alert('부모 카테고리가 선택되지 않았습니다.');
  36. return false;
  37. }
  38. APP.MODAL.open({
  39. width: 400,
  40. height :200,
  41. header : {
  42. title : bca_idx ? '카테고리 정보 수정' : '카테고리 추가'
  43. },
  44. callback : function(){
  45. parent.location.reload();
  46. },
  47. iframe : {
  48. method : 'get',
  49. url : '/admin/board/category_form',
  50. param : {
  51. brd_key : brd_key,
  52. bca_parent : bca_parent,
  53. bca_idx : bca_idx
  54. }
  55. }
  56. });
  57. };
  58. APP.BOARD.CATEGORY.remove = function(bca_idx) {
  59. if( APP.BOARD.CATEGORY.count(bca_idx) > 0 )
  60. {
  61. alert('해당 카테고리의 하위 카테고리가 존재합니다. 하위 카테고리를 먼저 삭제해주세요');
  62. return false;
  63. }
  64. var post_count = APP.BOARD.CATEGORY.postCount(bca_idx);
  65. if( post_count > 0 )
  66. {
  67. if(! confirm('해당 카테고리에 등록된 글이 '+post_count+'건이 있습니다. 삭제를 진행하시겠습니까?' )) {
  68. return false;
  69. }
  70. }
  71. if(! confirm('해당 카테고리를 삭제하시겠습니까?')) return false;
  72. $.ajax({
  73. url : base_url + "/ajax/board/category",
  74. type : 'DELETE',
  75. cache : false,
  76. async: false,
  77. data : {
  78. bca_idx : bca_idx
  79. },
  80. success:function(res){
  81. if( res.result )
  82. {
  83. alert('카테고리 삭제에 성공하였습니다.');
  84. location.reload();
  85. }
  86. else {
  87. alert('카테고리 삭제에 실패하였습니다.');
  88. location.reload();
  89. }
  90. }
  91. })
  92. };
  93. APP.BOARD.EXTRA.form = function(brd_key, bmt_idx)
  94. {
  95. brd_key = typeof brd_key !='undefined' && brd_key ? brd_key : null;
  96. bmt_idx = typeof bmt_idx !='undefined' && bmt_idx ? bmt_idx : null;
  97. if(! brd_key )
  98. {
  99. alert('게시판이 지정되지 않았습니다.');
  100. return false;
  101. }
  102. APP.MODAL.open({
  103. width: 400,
  104. height :200,
  105. header : {
  106. title : bmt_idx ? '입력필드 수정' : '입력필드 추가'
  107. },
  108. callback : function(){
  109. parent.location.reload();
  110. },
  111. iframe : {
  112. method : 'get',
  113. url : '/admin/board/extra_form',
  114. param : {
  115. brd_key : brd_key,
  116. bmt_idx : bmt_idx
  117. }
  118. }
  119. });
  120. };
  121. APP.BOARD.EXTRA.remove = function(brd_key,bmt_idx)
  122. {
  123. brd_key = typeof brd_key !='undefined' && brd_key ? brd_key : null;
  124. bmt_idx = typeof bmt_idx !='undefined' && bmt_idx ? bmt_idx : null;
  125. if(! bmt_idx )
  126. {
  127. alert('잘못된 접근입니다.');
  128. return false;
  129. }
  130. if(! confirm('해당 필드로 등록된 글이 있을경우, 해당 필드값도 같이 사라집니다. 계속 진행 하시겠습니까?')) return false;
  131. $.ajax({
  132. url : base_url + "/ajax/board/extra",
  133. type : 'DELETE',
  134. cache : false,
  135. async: false,
  136. data : {
  137. brd_key : brd_key,
  138. bmt_idx : bmt_idx
  139. },
  140. success:function(res){
  141. if( res.result )
  142. {
  143. alert('입력필드 삭제에 성공하였습니다.');
  144. location.reload();
  145. }
  146. else {
  147. alert('입력필드 삭제에 실패하였습니다.');
  148. location.reload();
  149. }
  150. }
  151. })
  152. };