admin.php 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. <?php
  2. use Illuminate\Support\Facades\Route;
  3. // 관리자
  4. use App\Http\Controllers\AdminController;
  5. use App\Http\Controllers\Admin\AjaxController;
  6. use App\Http\Controllers\Admin\Config;
  7. use App\Http\Controllers\Admin\Config\Setting;
  8. use App\Http\Controllers\Admin\Config\Layout;
  9. use App\Http\Controllers\Admin\Config\Register;
  10. use App\Http\Controllers\Admin\Config\Form;
  11. use App\Http\Controllers\Admin\Config\Test;
  12. use App\Http\Controllers\Admin\Page;
  13. use App\Http\Controllers\Admin\Page\Banner;
  14. use App\Http\Controllers\Admin\Popup;
  15. use App\Http\Controllers\Admin\User;
  16. use App\Http\Controllers\Admin\User\Dormant;
  17. use App\Http\Controllers\Admin\Board;
  18. use App\Http\Controllers\Admin\Board\Group;
  19. use App\Http\Controllers\Admin\Board\Trash;
  20. /**
  21. |--------------------------------------------------------------------------
  22. | 관리자
  23. |--------------------------------------------------------------------------
  24. */
  25. Route::prefix('admin')->name('admin.')->middleware(['web', 'auth', 'admin', 'verified'])->group(function()
  26. {
  27. // 상황판
  28. Route::get('', [AdminController::class, 'index'])->name('index');
  29. /*********************************
  30. * 환경
  31. *********************************/
  32. // Server 정보
  33. Route::get('config/server', [Config\ServerController::class, 'server'])->name('server')->name('config.server');
  34. Route::get('config/server/ajaxData', [Config\ServerController::class, 'ajaxData'])->name('config.server.ajax');
  35. // PHP 정보
  36. Route::get('config/server/php', [Config\ServerController::class, 'php'])->name('config.server.php');
  37. // DB 정보
  38. Route::get('config/server/db', [Config\ServerController::class, 'db'])->name('config.server.db');
  39. // 환경 > 기본 설정
  40. Route::resource('config/setting/basic', Setting\BasicController::class)->names('config.setting.basic');
  41. Route::resource('config/setting/access', Setting\AccessController::class)->names('config.setting.access');
  42. Route::resource('config/setting/notify', Setting\NotifyController::class)->names('config.setting.notify');
  43. Route::resource('config/setting/company', Setting\CompanyController::class)->names('config.setting.company');
  44. Route::resource('config/setting/exp', Setting\ExpController::class)->names('config.setting.exp');
  45. // 환경 > 속성 설정
  46. Route::resource('config/layout/meta', Layout\MetaController::class)->names('config.layout.meta');
  47. Route::resource('config/layout/logo', Layout\LogoController::class)->names('config.layout.logo');
  48. // 환경 > 회원가입 설정
  49. Route::resource('config/register/basic', Register\BasicController::class)->names('config.register.basic');
  50. Route::resource('config/register/login', Register\LoginController::class)->names('config.register.login');
  51. Route::resource('config/register/modify', Register\ModifyController::class)->names('config.register.modify');
  52. Route::resource('config/register/notify', Register\NotifyController::class)->names('config.register.notify');
  53. // 환경 > 알림 발송 양식
  54. Route::get('config/form/email/layout', [Form\EmailController::class, 'layout'])->name('config.form.email.layout');
  55. Route::resource('config/form/email', Form\EmailController::class)->names('config.form.email');
  56. Route::resource('config/form/telegram', Form\TelegramController::class)->names('config.form.telegram');
  57. // 환경 > 알림 발송 확인
  58. Route::resource('config/test/email', Test\EmailController::class)->names('config.test.email');
  59. Route::resource('config/test/telegram', Test\TelegramController::class)->names('config.test.telegram');
  60. // 환경 > 복구 / 최적화
  61. Route::get('config/optimize', [Config\OptimizeController::class, 'index'])->name('config.optimize');
  62. Route::get('config/optimize/clear/appCache', [Config\OptimizeController::class, 'clear'])->name('config.optimize.clear.appCache');
  63. Route::get('config/optimize/clear/routeCache', [Config\OptimizeController::class, 'clear'])->name('config.optimize.clear.routeCache');
  64. Route::get('config/optimize/clear/configCache', [Config\OptimizeController::class, 'clear'])->name('config.optimize.clear.configCache');
  65. Route::get('config/optimize/clear/viewCache', [Config\OptimizeController::class, 'clear'])->name('config.optimize.clear.viewCache');
  66. /*********************************
  67. * 일반
  68. *********************************/
  69. // 일반 > 메뉴
  70. Route::resource('page/menu', Page\MenuController::class)->names('page.menu');
  71. // 일반 > 메뉴 관리
  72. Route::get('page/menu/up/{id}', [Page\MenuController::class, 'up'])->name('page.menu.up');
  73. Route::get('page/menu/down/{id}', [Page\MenuController::class, 'down'])->name('page.menu.down');
  74. // 일반 > 문서
  75. Route::resource('page/document', Page\DocumentController::class)->names('page.document');
  76. // 일반 > 팝업
  77. Route::resource('page/popup', Page\PopupController::class)->names('page.popup');
  78. // 일반 > 배너 그룹
  79. Route::resource('page/banner/group', Banner\GroupController::class)->names('page.banner.group');
  80. // 일반 > 배너
  81. Route::resource('page/banner', Banner\ListController::class)->names('page.banner');
  82. /*********************************
  83. * 회원
  84. *********************************/
  85. // 회원 > 회원 관리
  86. Route::post('user/list/withdraw', [User\ListController::class, 'withdraw'])->name('user.list.withdraw');
  87. Route::resource('user/list', User\ListController::class)->names('user.list');
  88. // 회원 > 이름 변경 이력
  89. Route::resource('user/log/name', User\Log\NameController::class)->names('user.log.name');
  90. // 회원 > 이메일 변경 이력
  91. Route::resource('user/log/email', User\Log\EmailController::class)->names('user.log.email');
  92. // 회원 > 로그인 이력
  93. Route::resource('user/log/login/stat', User\Log\Login\StatController::class)->names('user.log.login.stat');
  94. Route::resource('user/log/login', User\Log\Login\LogController::class)->names('user.log.login');
  95. // 회원 > 휴면계정 관리
  96. Route::resource('user/dormant/config', Dormant\ConfigController::class)->names('user.dormant.config');
  97. Route::resource('user/dormant/list', Dormant\ListController::class)->names('user.dormant.list');
  98. Route::post('user/dormant/list/notify', [Dormant\ListController::class, 'notify'])->name('user.dormant.list.notify');
  99. Route::post('user/dormant/list/dormancy', [Dormant\ListController::class, 'dormancy'])->name('user.dormant.list.dormancy');
  100. Route::post('user/dormant/list/recover', [Dormant\ListController::class, 'recover'])->name('user.dormant.list.recover');
  101. Route::resource('user/dormant/notify', Dormant\NotifyController::class)->names('user.dormant.notify');
  102. Route::resource('user/dormant/form/email', Dormant\Form\EmailController::class)->names('user.dormant.form.email');
  103. Route::resource('user/dormant/form/sms', Dormant\Form\SmsController::class)->names('user.dormant.form.sms');
  104. // 회원 검색
  105. Route::get('popup/user', [Popup\UserController::class, 'index'])->name('popup.user');
  106. /*********************************
  107. * 게시판
  108. *********************************/
  109. // 게시판 > 게시판 관리 (기본, 목록, 열람, 작성, 카테고리, 댓글, 일반, 경험치, 알람, 권한, 관리자)
  110. Route::put('board/board/list/listUpdate', [Board\Board\ListController::class, 'listUpdate'])->name('board.board.index.update');
  111. Route::resource('board/board/list', Board\Board\ListController::class)->names('board.board.list');
  112. Route::resource('board/board/post', Board\Board\PostController::class)->names('board.board.post');
  113. Route::resource('board/board/view', Board\Board\ViewController::class)->names('board.board.view');
  114. Route::resource('board/board/write', Board\Board\WriteController::class)->names('board.board.write');
  115. Route::resource('board/board/category', Board\Board\CategoryController::class)->names('board.board.category');
  116. Route::resource('board/board/comment', Board\Board\CommentController::class)->names('board.board.comment');
  117. Route::resource('board/board/general', Board\Board\GeneralController::class)->names('board.board.general');
  118. Route::resource('board/board/notify', Board\Board\NotifyController::class)->names('board.board.notify');
  119. Route::resource('board/board/authority', Board\Board\AuthorityController::class)->names('board.board.authority');
  120. Route::resource('board/board/exp', Board\Board\ExpController::class)->names('board.board.exp');
  121. Route::resource('board/board/manager', Board\Board\ManagerController::class)->names('board.board.manager');
  122. // 게시판 > 게시판 그룹 관리
  123. Route::put('board/group/list/listUpdate', [Group\ListController::class, 'listUpdate'])->name('board.group.list.index.update');
  124. Route::resource('board/group/list', Group\ListController::class)->names('board.group.list');
  125. Route::resource('board/group/manager', Group\ManagerController::class)->names('board.group.manager');
  126. // 게시판 > 휴지통 (게시글)
  127. Route::get('board/trash/post/truncate', [Trash\PostController::class, 'truncate'])->name('board.trash.post.truncate');
  128. Route::post('board/trash/post/recovery', [Trash\PostController::class, 'recovery'])->name('board.trash.post.recovery');
  129. Route::resource('board/trash/post', Trash\PostController::class)->names('board.trash.post');
  130. // 게시판 > 휴지통 (댓글)
  131. Route::get('board/trash/comment/truncate', [Trash\CommentController::class, 'truncate'])->name('board.trash.comment.truncate');
  132. Route::post('board/trash/comment/recovery', [Trash\CommentController::class, 'recovery'])->name('board.trash.comment.recovery');
  133. Route::resource('board/trash/comment', Trash\CommentController::class)->names('board.trash.comment');
  134. // 게시판 > 게시글 변경 이력
  135. Route::resource('board/history/post', Board\History\PostController::class)->names('board.history.post');
  136. // 게시판 > 댓글 변경 이력
  137. Route::resource('board/history/comment', Board\History\CommentController::class)->names('board.history.comment');
  138. // 게시판 > 게시물 관리
  139. Route::resource('board/post', Board\PostController::class)->names('board.post');
  140. // 게시판 > 댓글 관리
  141. Route::resource('board/comment', Board\CommentController::class)->names('board.comment');
  142. // 게시판 > 태그 관리
  143. Route::resource('board/tag', Board\TagController::class)->names('board.tag');
  144. // 게시판 > 첨부 파일 (업로드)
  145. Route::resource('board/file/upload', Board\File\UploadController::class)->names('board.file.upload');
  146. // 게시판 > 첨부 파일 (다운로드)
  147. Route::resource('board/file/download', Board\File\DownloadController::class)->names('board.file.download');
  148. // 게시판 > 게시판 이미지
  149. Route::resource('board/image', Board\ImageController::class)->names('board.image');
  150. // 게시판 > URL 클릭 > 목록
  151. Route::resource('board/link/list', Board\Link\ListController::class)->names('board.link.list');
  152. // 게시판 > URL 클릭 > 기록
  153. Route::resource('board/link/log', Board\Link\LogController::class)->names('board.link.log');
  154. // 게시판 > 추천/비추천
  155. Route::resource('board/like/post', Board\Like\PostController::class)->names('board.like.post');
  156. Route::resource('board/like/comment', Board\Like\CommentController::class)->names('board.like.comment');
  157. // 게시판 > 신고 관리
  158. Route::resource('board/blame/post', Board\Blame\PostController::class)->names('board.blame.post');
  159. Route::resource('board/blame/comment', Board\Blame\CommentController::class)->names('board.blame.comment');
  160. // 게시판 > 분류 관리 > 분류 순서 조절
  161. Route::get('board/board/category/up/{boardID}', [Board\Board\CategoryController::class, 'up'])->name('board.board.category.up');
  162. Route::get('board/board/category/down/{boardID}', [Board\Board\CategoryController::class, 'down'])->name('board.board.category.down');
  163. /*********************************
  164. * POPUP
  165. *********************************/
  166. Route::get('popup/user', [Popup\UserController::class, 'index'])->name('popup.user');
  167. Route::get('popup/user/group', [Popup\UserController::class, 'group'])->name('popup.user.group');
  168. /*********************************
  169. * Ajax
  170. *********************************/
  171. Route::post('ajax/postBlameResultUpdate', [AjaxController::class, 'postBlameResultUpdate'])->name('post.blame.result.update');
  172. Route::post('ajax/commentBlameResultUpdate', [AjaxController::class, 'commentBlameResultUpdate'])->name('comment.blame.result.update');
  173. });