- <?php
-
- use Illuminate\Support\Facades\Route;
-
- /*
- |--------------------------------------------------------------------------
- | Web Routes
- |--------------------------------------------------------------------------
- |
- | Here is where you can register web routes for your application. These
- | routes are loaded by the RouteServiceProvider within a group which
- | contains the "web" middleware group. Now create something great!
- |
- */
-
- /*Route::get('/', function () {
- return view('welcome');
- });*/
- Route::pattern('id', '\d+');
- Route::pattern('login', '[\w\-]+');
-
- Route::get('/', [\App\Http\Controllers\HomeController::class, 'index']);
- Route::get('/closed', [\App\Http\Controllers\HomeController::class, 'closed']);
- Route::get('/search', [\App\Http\Controllers\HomeController::class, 'search']);
- Route::get('/captcha', [\App\Http\Controllers\HomeController::class, 'captcha']);
- Route::get('/language/{lang}', [\App\Http\Controllers\HomeController::class, 'language'])->where('lang', '[a-z]+');
- Route::match(['get', 'post'], '/ipban', [\App\Http\Controllers\HomeController::class, 'ipban']);
-
- /* Карта сайта */
- Route::get('/sitemap.xml', [\App\Http\Controllers\SitemapController::class, 'index']);
- Route::get('/sitemap/{page}.xml', [\App\Http\Controllers\SitemapController::class, 'page'])->where('page', '[a-z]+');
-
- /* Категории объявления */
- Route::group(['prefix' => 'boards'], function () {
- Route::get('/{id?}', [\App\Http\Controllers\BoardController::class, 'index']);
- Route::get('/active', [\App\Http\Controllers\BoardController::class, 'active']);
- });
-
- /* Объявления */
- Route::group(['prefix' => 'items'], function () {
- Route::get('/{id}', [\App\Http\Controllers\BoardController::class, 'view']);
- Route::get('/close/{id}', [\App\Http\Controllers\BoardController::class, 'close']);
- Route::get('/delete/{id}', [\App\Http\Controllers\BoardController::class, 'delete']);
- Route::match(['get', 'post'], '/create', [\App\Http\Controllers\BoardController::class, 'create']);
- Route::match(['get', 'post'], '/edit/{id}', [\App\Http\Controllers\BoardController::class, 'edit']);
- });
-
- /* Гостевая книга */
- Route::group(['prefix' => '/guestbook'], function () {
- Route::get('', [\App\Http\Controllers\GuestbookController::class, 'index']);
- Route::post('/add', [\App\Http\Controllers\GuestbookController::class, 'add']);
- Route::match(['get', 'post'], '/edit/{id}', [\App\Http\Controllers\GuestbookController::class, 'edit']);
- });
-
- /* Категория блогов */
- Route::group(['prefix' => 'blogs'], function () {
- Route::get('/', [\App\Http\Controllers\ArticleController::class, 'index']);
- Route::get('/{id}', [\App\Http\Controllers\ArticleController::class, 'blog']);
- Route::get('/tags', [\App\Http\Controllers\ArticleController::class, 'tags']);
- Route::get('/tags/{tag}', [\App\Http\Controllers\ArticleController::class, 'searchTag'])->where('tag', '.+');
- Route::get('/authors', [\App\Http\Controllers\ArticleController::class, 'authors']);
- Route::get('/active/articles', [\App\Http\Controllers\ArticleController::class, 'userArticles']);
- Route::get('/active/comments', [\App\Http\Controllers\ArticleController::class, 'userComments']);
- Route::get('/top', [\App\Http\Controllers\ArticleController::class, 'top']);
- Route::get('/rss', [\App\Http\Controllers\ArticleController::class, 'rss']);
- Route::match(['get', 'post'], '/create', [\App\Http\Controllers\ArticleController::class, 'create']);
- Route::match(['get', 'post'], '/search', [\App\Http\Controllers\ArticleController::class, 'search']);
- Route::get('/main', [\App\Http\Controllers\ArticleController::class, 'main']);
- });
-
- /* Статьи блогов */
- Route::group(['prefix' => 'articles'], function () {
- Route::get('/', [\App\Http\Controllers\ArticleController::class, 'newArticles']);
- Route::get('/{id}', [\App\Http\Controllers\ArticleController::class, 'view']);
- Route::get('/print/{id}', [\App\Http\Controllers\ArticleController::class, 'print']);
- Route::get('/rss/{id}', [\App\Http\Controllers\ArticleController::class, 'rssComments']);
- Route::get('/comments', [\App\Http\Controllers\ArticleController::class, 'newComments']);
- Route::get('/end/{id}', [\App\Http\Controllers\ArticleController::class, 'end']);
- Route::get('/comment/{id}/{cid}', [\App\Http\Controllers\ArticleController::class, 'viewComment'])->whereNumber('cid');
- Route::match(['get', 'post'], '/edit/{id}', [\App\Http\Controllers\ArticleController::class, 'edit']);
- Route::match(['get', 'post'], '/comments/{id}', [\App\Http\Controllers\ArticleController::class, 'comments']);
- Route::match(['get', 'post'], '/edit/{id}/{cid}', [\App\Http\Controllers\ArticleController::class, 'editComment'])->whereNumber('cid');
- });
-
- /* Новости */
- Route::group(['prefix' => 'news'], function () {
- Route::get('/', [\App\Http\Controllers\NewsController::class, 'index']);
- Route::get('/{id}', [\App\Http\Controllers\NewsController::class, 'view']);
- Route::get('/end/{id}', [\App\Http\Controllers\NewsController::class, 'end']);
- Route::get('/rss', [\App\Http\Controllers\NewsController::class, 'rss']);
- Route::get('/allcomments', [\App\Http\Controllers\NewsController::class, 'allComments']);
- Route::get('/comment/{id}/{cid}', [\App\Http\Controllers\NewsController::class, 'viewComment'])->whereNumber('cid');
- Route::match(['get', 'post'], '/comments/{id}', [\App\Http\Controllers\NewsController::class, 'comments']);
- Route::match(['get', 'post'], '/edit/{id}/{cid}', [\App\Http\Controllers\NewsController::class, 'editComment'])->whereNumber('cid');
- });
-
- /* Галерея */
- Route::group(['prefix' => 'photos'], function () {
- Route::get('/', [\App\Http\Controllers\PhotoController::class, 'index']);
- Route::get('/{id}', [\App\Http\Controllers\PhotoController::class, 'view']);
- Route::get('/delete/{id}', [\App\Http\Controllers\PhotoController::class, 'delete']);
- Route::get('/end/{id}', [\App\Http\Controllers\PhotoController::class, 'end']);
- Route::get('/albums', [\App\Http\Controllers\PhotoController::class, 'albums']);
- Route::get('/albums/{login}', [\App\Http\Controllers\PhotoController::class, 'album']);
- Route::get('/comments', [\App\Http\Controllers\PhotoController::class, 'allComments']);
- Route::get('/comments/active/{login}', [\App\Http\Controllers\PhotoController::class, 'userComments']);
- Route::get('/comment/{id}/{cid}', [\App\Http\Controllers\PhotoController::class, 'viewComment'])->whereNumber('cid');
- Route::match(['get', 'post'], '/comments/{id}', [\App\Http\Controllers\PhotoController::class, 'comments']);
- Route::match(['get', 'post'], '/create', [\App\Http\Controllers\PhotoController::class, 'create']);
- Route::match(['get', 'post'], '/edit/{id}', [\App\Http\Controllers\PhotoController::class, 'edit']);
- Route::match(['get', 'post'], '/edit/{id}/{cid}', [\App\Http\Controllers\PhotoController::class, 'editComment'])->whereNumber('cid');
- Route::match(['get', 'post'], '/top', [\App\Http\Controllers\PhotoController::class, 'top']);
- });
-
- /* Категория форума */
- Route::group(['prefix' => 'forums'], function () {
- Route::get('/', [\App\Http\Controllers\Forum\ForumController::class, 'index']);
- Route::get('/{id}', [\App\Http\Controllers\Forum\ForumController::class, 'forum']);
- Route::get('/search', [\App\Http\Controllers\Forum\SearchController::class, 'index']);
- Route::get('/active/posts', [\App\Http\Controllers\Forum\ActiveController::class, 'posts']);
- Route::get('/active/topics', [\App\Http\Controllers\Forum\ActiveController::class, 'topics']);
- Route::delete('/active/delete/{id}', [\App\Http\Controllers\Forum\ActiveController::class, 'destroy']);
- Route::get('/top/posts', [\App\Http\Controllers\Forum\ForumController::class, 'topPosts']);
- Route::get('/top/topics', [\App\Http\Controllers\Forum\ForumController::class, 'topTopics']);
- Route::get('/rss', [\App\Http\Controllers\Forum\ForumController::class, 'rss']);
- Route::get('/bookmarks', [\App\Http\Controllers\Forum\BookmarkController::class, 'index']);
- Route::post('/bookmarks/delete', [\App\Http\Controllers\Forum\BookmarkController::class, 'delete']);
- Route::post('/bookmarks/perform', [\App\Http\Controllers\Forum\BookmarkController::class, 'perform']);
- Route::match(['get', 'post'], '/create', [\App\Http\Controllers\Forum\ForumController::class, 'create']);
- });
-
- /* Темы форума */
- Route::group(['prefix' => 'topics'], function () {
- Route::get('/', [\App\Http\Controllers\Forum\NewController::class, 'topics']);
- Route::get('/{id}', [\App\Http\Controllers\Forum\TopicController::class, 'index']);
- Route::get('/{id}/{pid}', [\App\Http\Controllers\Forum\TopicController::class, 'viewpost'])->whereNumber('pid');
- Route::post('/votes/{id}', [\App\Http\Controllers\Forum\TopicController::class, 'vote']);
- Route::get('/end/{id}', [\App\Http\Controllers\Forum\TopicController::class, 'end']);
- Route::get('/open/{id}', [\App\Http\Controllers\Forum\TopicController::class, 'open']);
- Route::get('/close/{id}', [\App\Http\Controllers\Forum\TopicController::class, 'close']);
- Route::post('/create/{id}', [\App\Http\Controllers\Forum\TopicController::class, 'create']);
- Route::post('/delete/{id}', [\App\Http\Controllers\Forum\TopicController::class, 'delete']);
- Route::get('/print/{id}', [\App\Http\Controllers\Forum\TopicController::class, 'print']);
- Route::get('/rss/{id}', [\App\Http\Controllers\Forum\ForumController::class, 'rssPosts']);
- Route::match(['get', 'post'], '/edit/{id}', [\App\Http\Controllers\Forum\TopicController::class, 'edit']);
- });
-
- /* Посты форума */
- Route::group(['prefix' => 'posts'], function () {
- Route::get('/', [\App\Http\Controllers\Forum\NewController::class, 'posts']);
- Route::match(['get', 'post'], '/edit/{id}', [\App\Http\Controllers\Forum\TopicController::class, 'editPost']);
- });
-
- /* Категории загрузок */
- Route::group(['prefix' => 'loads'], function () {
- Route::get('/', [\App\Http\Controllers\Load\LoadController::class, 'index']);
- Route::get('/rss', [\App\Http\Controllers\Load\LoadController::class, 'rss']);
- Route::get('/{id}', [\App\Http\Controllers\Load\LoadController::class, 'load']);
- Route::get('/top', [\App\Http\Controllers\Load\TopController::class, 'index']);
- Route::get('/search', [\App\Http\Controllers\Load\SearchController::class, 'index']);
- });
-
- /* Загрузки */
- Route::group(['prefix' => 'downs'], function () {
- Route::get('/', [\App\Http\Controllers\Load\NewController::class, 'files']);
- Route::get('/{id}', [\App\Http\Controllers\Load\DownController::class, 'index']);
- Route::get('/delete/{id}/{fid}', [\App\Http\Controllers\Load\DownController::class, 'deleteFile'])->whereNumber('fid');
- Route::post('/votes/{id}', [\App\Http\Controllers\Load\DownController::class, 'vote']);
- Route::get('/comment/{id}/{cid}', [\App\Http\Controllers\Load\DownController::class, 'viewComment'])->whereNumber('cid');
- Route::get('/end/{id}', [\App\Http\Controllers\Load\DownController::class, 'end']);
- Route::get('/rss/{id}', [\App\Http\Controllers\Load\DownController::class, 'rss']);
- Route::get('/zip/{id}', [\App\Http\Controllers\Load\DownController::class, 'zip']);
- Route::get('/zip/{id}/{fid}', [\App\Http\Controllers\Load\DownController::class, 'zipView'])->whereNumber('fid');
- Route::get('/comments', [\App\Http\Controllers\Load\NewController::class, 'comments']);
- Route::get('/active/files', [\App\Http\Controllers\Load\ActiveController::class, 'files']);
- Route::get('/active/comments', [\App\Http\Controllers\Load\ActiveController::class, 'comments']);
- Route::match(['get', 'post'], '/edit/{id}', [\App\Http\Controllers\Load\DownController::class, 'edit']);
- Route::match(['get', 'post'], '/create', [\App\Http\Controllers\Load\DownController::class, 'create']);
- Route::match(['get', 'post'], '/download/{id}', [\App\Http\Controllers\Load\DownController::class, 'download']);
- Route::match(['get', 'post'], '/comments/{id}', [\App\Http\Controllers\Load\DownController::class, 'comments']);
- Route::match(['get', 'post'], '/edit/{id}/{cid}', [\App\Http\Controllers\Load\DownController::class, 'editComment'])->whereNumber('cid');
- });
-
- /* Предложения и проблемы */
- Route::group(['prefix' => 'offers'], function () {
- Route::get('/{type?}', [\App\Http\Controllers\OfferController::class, 'index'])->where('type', 'offer|issue');
- Route::get('/{id}', [\App\Http\Controllers\OfferController::class, 'view']);
- Route::get('/end/{id}', [\App\Http\Controllers\OfferController::class, 'end']);
- Route::get('/comment/{id}/{cid}', [\App\Http\Controllers\OfferController::class, 'viewComment'])->whereNumber('cid');
- Route::match(['get', 'post'], '/create', [\App\Http\Controllers\OfferController::class, 'create']);
- Route::match(['get', 'post'], '/edit/{id}', [\App\Http\Controllers\OfferController::class, 'edit']);
- Route::match(['get', 'post'], '/comments/{id}', [\App\Http\Controllers\OfferController::class, 'comments']);
- Route::match(['get', 'post'], '/edit/{id}/{cid}', [\App\Http\Controllers\OfferController::class, 'editComment'])->whereNumber('cid');
- });
-
- /* Ajax */
- Route::group(['prefix' => 'ajax'], function () {
- Route::get('/getstickers', [\App\Http\Controllers\AjaxController::class, 'getStickers']);
- Route::post('/bbcode', [\App\Http\Controllers\AjaxController::class, 'bbCode']);
- Route::post('/delcomment', [\App\Http\Controllers\AjaxController::class, 'delComment']);
- Route::post('/rating', [\App\Http\Controllers\AjaxController::class, 'rating']);
- Route::post('/vote', [\App\Http\Controllers\AjaxController::class, 'vote']);
- Route::post('/complaint', [\App\Http\Controllers\AjaxController::class, 'complaint']);
- Route::post('/file/upload', [\App\Http\Controllers\AjaxController::class, 'uploadFile']);
- Route::post('/file/delete', [\App\Http\Controllers\AjaxController::class, 'deleteFile']);
- });
-
- /* Голосования */
- Route::group(['prefix' => 'votes'], function () {
- Route::get('/', [\App\Http\Controllers\VoteController::class, 'index']);
- Route::get('/voters/{id}', [\App\Http\Controllers\VoteController::class, 'voters']);
- Route::get('/history', [\App\Http\Controllers\VoteController::class, 'history']);
- Route::get('/history/{id}', [\App\Http\Controllers\VoteController::class, 'viewHistory']);
- Route::match(['get', 'post'], '/{id}', [\App\Http\Controllers\VoteController::class, 'view']);
- Route::match(['get', 'post'], '/create', [\App\Http\Controllers\VoteController::class, 'create']);
- });
-
- /* Мои данные */
- Route::group(['prefix' => 'accounts'], function () {
- Route::get('/', [\App\Http\Controllers\User\UserController::class, 'account']);
- Route::get('/editmail', [\App\Http\Controllers\User\UserController::class, 'editMail']);
- Route::post('/changemail', [\App\Http\Controllers\User\UserController::class, 'changeMail']);
- Route::post('/editstatus', [\App\Http\Controllers\User\UserController::class, 'editStatus']);
- Route::post('/editcolor', [\App\Http\Controllers\User\UserController::class, 'editColor']);
- Route::post('/editpassword', [\App\Http\Controllers\User\UserController::class, 'editPassword']);
- Route::post('/apikey', [\App\Http\Controllers\User\UserController::class, 'apikey']);
- });
-
- /* Фото профиля */
- Route::group(['prefix' => 'pictures'], function () {
- Route::match(['get', 'post'], '', [\App\Http\Controllers\User\PictureController::class, 'index']);
- Route::get('/delete', [\App\Http\Controllers\User\PictureController::class, 'delete']);
- });
-
- /* Социальные сети */
- Route::group(['prefix' => 'socials'], function () {
- Route::match(['get', 'post'], '', [\App\Http\Controllers\SocialController::class, 'index']);
- Route::get('/delete/{id}', [\App\Http\Controllers\SocialController::class, 'delete']);
- });
-
- /* Поиск пользователя */
- Route::group(['prefix' => 'searchusers'], function () {
- Route::get('/', [\App\Http\Controllers\User\SearchController::class, 'index']);
- Route::get('/{letter}', [\App\Http\Controllers\User\SearchController::class, 'sort'])->where('letter', '[0-9a-z]+');
- Route::match(['get', 'post'], '/search', [\App\Http\Controllers\User\SearchController::class, 'search']);
- });
-
- /* Стена сообщений */
- Route::group(['prefix' => 'walls'], function () {
- Route::get('/{login}', [\App\Http\Controllers\WallController::class, 'index']);
- Route::post('/{login}/create', [\App\Http\Controllers\WallController::class, 'create']);
- Route::post('/{login}/delete', [\App\Http\Controllers\WallController::class, 'delete']);
- });
-
- /* Личные сообщения */
- Route::group(['prefix' => 'messages', 'middleware' => 'check.user'], function () {
- Route::get('/', [\App\Http\Controllers\MessageController::class, 'index']);
- Route::get('/new', [\App\Http\Controllers\MessageController::class, 'newMessages']);
- Route::get('/talk/{login}', [\App\Http\Controllers\MessageController::class, 'talk']);
- Route::get('/delete/{uid}', [\App\Http\Controllers\MessageController::class, 'delete'])->whereNumber('uid');
- Route::match(['get', 'post'], '/send', [\App\Http\Controllers\MessageController::class, 'send']);
- });
-
- /* Игнор-лист */
- Route::group(['prefix' => 'ignores'], function () {
- Route::post('/delete', [\App\Http\Controllers\IgnoreController::class, 'delete']);
- Route::match(['get', 'post'], '', [\App\Http\Controllers\IgnoreController::class, 'index']);
- Route::match(['get', 'post'], '/note/{id}', [\App\Http\Controllers\IgnoreController::class, 'note']);
- });
-
- /* Контакт-лист */
- Route::group(['prefix' => 'contacts'], function () {
- Route::post('/delete', [\App\Http\Controllers\ContactController::class, 'delete']);
- Route::match(['get', 'post'], '', [\App\Http\Controllers\ContactController::class, 'index']);
- Route::match(['get', 'post'], '/note/{id}', [\App\Http\Controllers\ContactController::class, 'note']);
- });
-
- /* Перевод денег */
- Route::group(['prefix' => 'transfers'], function () {
- Route::get('/', [\App\Http\Controllers\TransferController::class, 'index']);
- Route::post('/send', [\App\Http\Controllers\TransferController::class, 'send']);
- });
-
- /* Личные заметки */
- Route::group(['prefix' => 'notebooks'], function () {
- Route::get('/', [\App\Http\Controllers\NotebookController::class, 'index']);
- Route::match(['get', 'post'], '/edit', [\App\Http\Controllers\NotebookController::class, 'edit']);
- });
-
- /* Реклама */
- Route::group(['prefix' => 'adverts'], function () {
- Route::get('/', [\App\Http\Controllers\AdvertController::class, 'index']);
- Route::match(['get', 'post'], '/create', [\App\Http\Controllers\AdvertController::class, 'create']);
- });
-
- /* Репутация пользователя */
- Route::group(['prefix' => 'ratings'], function () {
- Route::get('/{login}/gave', [\App\Http\Controllers\RatingController::class, 'gave']);
- Route::get('/{login}/{received?}', [\App\Http\Controllers\RatingController::class, 'received']);
- Route::post('/delete', [\App\Http\Controllers\RatingController::class, 'delete']);
- });
-
- /* API */
- Route::group(['prefix' => 'api'], function () {
- Route::get('/', [\App\Http\Controllers\ApiController::class, 'index']);
- });
-
- Route::group(['prefix' => 'users'], function () {
- Route::match(['get', 'post'], '/', [\App\Http\Controllers\User\ListController::class, 'userlist']);
- Route::match(['get', 'post'], '/{login}/rating', [\App\Http\Controllers\RatingController::class, 'index']);
- Route::match(['get', 'post'], '/{login}/note', [\App\Http\Controllers\User\UserController::class, 'note']);
- Route::get('/{login}', [\App\Http\Controllers\User\UserController::class, 'index']);
- });
-
- Route::get('/restore', [\App\Http\Controllers\MailController::class, 'restore']);
- Route::match(['get', 'post'], '/recovery', [\App\Http\Controllers\MailController::class, 'recovery']);
- Route::match(['get', 'post'], '/mails', [\App\Http\Controllers\MailController::class, 'index']);
- Route::match(['get', 'post'], '/unsubscribe', [\App\Http\Controllers\MailController::class, 'unsubscribe']);
- Route::get('/authlogs', [\App\Http\Controllers\LoginController::class, 'index']);
- Route::match(['get', 'post'], '/ban', [\App\Http\Controllers\User\BanController::class, 'ban']);
- Route::get('/faq', [\App\Http\Controllers\PageController::class, 'faq']);
- Route::get('/statusfaq', [\App\Http\Controllers\PageController::class, 'statusfaq']);
- Route::get('/surprise', [\App\Http\Controllers\PageController::class, 'surprise']);
- Route::get('/logout', [\App\Http\Controllers\User\UserController::class, 'logout']);
- Route::match(['get', 'post'], '/key', [\App\Http\Controllers\User\UserController::class, 'key']);
- Route::match(['get', 'post'], '/login', [\App\Http\Controllers\User\UserController::class, 'login']);
- Route::match(['get', 'post'], '/register', [\App\Http\Controllers\User\UserController::class, 'register']);
- Route::match(['get', 'post'], '/profile', [\App\Http\Controllers\User\UserController::class, 'profile']);
- Route::match(['get', 'post'], '/settings', [\App\Http\Controllers\User\UserController::class, 'setting']);
- Route::post('/check-login', [\App\Http\Controllers\User\UserController::class, 'checkLogin']);
- Route::get('/pages/{page?}', [\App\Http\Controllers\PageController::class, 'index'])->where('page', '[\w\-]+');
- Route::get('/menu', [\App\Http\Controllers\PageController::class, 'menu']);
- Route::get('/tags', [\App\Http\Controllers\PageController::class, 'tags']);
- Route::get('/rules', [\App\Http\Controllers\PageController::class, 'rules']);
- Route::get('/stickers', [\App\Http\Controllers\PageController::class, 'stickers']);
- Route::get('/stickers/{id}', [\App\Http\Controllers\PageController::class, 'stickersCategory']);
- Route::get('/online', [\App\Http\Controllers\OnlineController::class, 'index']);
- Route::get('/online/all', [\App\Http\Controllers\OnlineController::class, 'all']);
- Route::get('/counters', [\App\Http\Controllers\CounterController::class, 'index']);
- Route::get('/files/{page?}', [\App\Http\Controllers\FileController::class, 'index'])->where('page', '.+');
-
- /* Админ-панель */
- Route::group(['prefix' => 'admin', 'middleware' => 'check.admin'], function () {
- Route::get('/', [\App\Http\Controllers\Admin\AdminController::class, 'main']);
- Route::get('/upgrade', [\App\Http\Controllers\Admin\AdminController::class, 'upgrade']);
-
- /* Админ-чат */
- Route::match(['get', 'post'], '/chats', [\App\Http\Controllers\Admin\ChatController::class, 'index']);
- Route::match(['get', 'post'], '/chats/edit/{id}', [\App\Http\Controllers\Admin\ChatController::class, 'edit']);
- Route::get('/chats/clear', [\App\Http\Controllers\Admin\ChatController::class, 'clear']);
-
- /* Гостевая */
- Route::get('/guestbook', [\App\Http\Controllers\Admin\GuestbookController::class, 'index']);
- Route::match(['get', 'post'], '/guestbook/edit/{id}', [\App\Http\Controllers\Admin\GuestbookController::class, 'edit']);
- Route::match(['get', 'post'], '/guestbook/reply/{id}', [\App\Http\Controllers\Admin\GuestbookController::class, 'reply']);
- Route::post('/guestbook/delete', [\App\Http\Controllers\Admin\GuestbookController::class, 'delete']);
- Route::get('/guestbook/clear', [\App\Http\Controllers\Admin\GuestbookController::class, 'clear']);
-
- /* Форум */
- Route::get('/forums', [\App\Http\Controllers\Admin\ForumController::class, 'index']);
- Route::post('/forums/create', [\App\Http\Controllers\Admin\ForumController::class, 'create']);
- Route::match(['get', 'post'], '/forums/edit/{id}', [\App\Http\Controllers\Admin\ForumController::class, 'edit']);
- Route::get('/forums/delete/{id}', [\App\Http\Controllers\Admin\ForumController::class, 'delete']);
- Route::get('/forums/restatement', [\App\Http\Controllers\Admin\ForumController::class, 'restatement']);
- Route::get('/forums/{id}', [\App\Http\Controllers\Admin\ForumController::class, 'forum']);
- Route::match(['get', 'post'], '/topics/edit/{id}', [\App\Http\Controllers\Admin\ForumController::class, 'editTopic']);
- Route::match(['get', 'post'], '/topics/move/{id}', [\App\Http\Controllers\Admin\ForumController::class, 'moveTopic']);
- Route::get('/topics/action/{id}', [\App\Http\Controllers\Admin\ForumController::class, 'actionTopic']);
- Route::get('/topics/delete/{id}', [\App\Http\Controllers\Admin\ForumController::class, 'deleteTopic']);
- Route::get('/topics/{id}', [\App\Http\Controllers\Admin\ForumController::class, 'topic']);
- Route::match(['get', 'post'], '/posts/edit/{id}', [\App\Http\Controllers\Admin\ForumController::class, 'editPost']);
- Route::post('/posts/delete', [\App\Http\Controllers\Admin\ForumController::class, 'deletePosts']);
- Route::get('/topics/end/{id}', [\App\Http\Controllers\Admin\ForumController::class, 'end']);
-
- /* Галерея */
- Route::get('/photos', [\App\Http\Controllers\Admin\PhotoController::class, 'index']);
- Route::match(['get', 'post'], '/photos/edit/{id}', [\App\Http\Controllers\Admin\PhotoController::class, 'edit']);
- Route::get('/photos/restatement', [\App\Http\Controllers\Admin\PhotoController::class, 'restatement']);
- Route::get('/photos/delete/{id}', [\App\Http\Controllers\Admin\PhotoController::class, 'delete']);
-
- /* Блоги */
- Route::get('/blogs', [\App\Http\Controllers\Admin\ArticleController::class, 'index']);
- Route::post('/blogs/create', [\App\Http\Controllers\Admin\ArticleController::class, 'create']);
- Route::get('/blogs/restatement', [\App\Http\Controllers\Admin\ArticleController::class, 'restatement']);
- Route::match(['get', 'post'], '/blogs/edit/{id}', [\App\Http\Controllers\Admin\ArticleController::class, 'edit']);
- Route::get('/blogs/delete/{id}', [\App\Http\Controllers\Admin\ArticleController::class, 'delete']);
- Route::get('/blogs/{id}', [\App\Http\Controllers\Admin\ArticleController::class, 'blog']);
- Route::match(['get', 'post'], '/articles/edit/{id}', [\App\Http\Controllers\Admin\ArticleController::class, 'editArticle']);
- Route::match(['get', 'post'], '/articles/move/{id}', [\App\Http\Controllers\Admin\ArticleController::class, 'moveArticle']);
- Route::get('/articles/delete/{id}', [\App\Http\Controllers\Admin\ArticleController::class, 'deleteArticle']);
-
- /* Доска объявлений */
- Route::get('/boards/{id?}', [\App\Http\Controllers\Admin\BoardController::class, 'index']);
- Route::get('/boards/restatement', [\App\Http\Controllers\Admin\BoardController::class, 'restatement']);
- Route::match(['get', 'post'], '/items/edit/{id}', [\App\Http\Controllers\Admin\BoardController::class, 'editItem']);
- Route::get('/items/delete/{id}', [\App\Http\Controllers\Admin\BoardController::class, 'deleteItem']);
- Route::get('/boards/categories', [\App\Http\Controllers\Admin\BoardController::class, 'categories']);
- Route::post('/boards/create', [\App\Http\Controllers\Admin\BoardController::class, 'create']);
- Route::match(['get', 'post'], '/boards/edit/{id}', [\App\Http\Controllers\Admin\BoardController::class, 'edit']);
- Route::get('/boards/delete/{id}', [\App\Http\Controllers\Admin\BoardController::class, 'delete']);
-
- /* Админская реклама */
- Route::match(['get', 'post'], '/admin-adverts', [\App\Http\Controllers\Admin\AdminAdvertController::class, 'index']);
-
- /* Пользовательская реклама */
- Route::get('/adverts', [\App\Http\Controllers\Admin\AdvertController::class, 'index']);
-
- /* Модер */
- Route::group(['middleware' => 'check.admin:moder'], function () {
- /* Жалобы */
- Route::get('/spam', [\App\Http\Controllers\Admin\SpamController::class, 'index']);
- Route::post('/spam/delete', [\App\Http\Controllers\Admin\SpamController::class, 'delete']);
-
- /* Бан / разбан */
- Route::get('/bans', [\App\Http\Controllers\Admin\BanController::class, 'index']);
- Route::match(['get', 'post'], '/bans/edit', [\App\Http\Controllers\Admin\BanController::class, 'edit']);
- Route::match(['get', 'post'], '/bans/change', [\App\Http\Controllers\Admin\BanController::class, 'change']);
- Route::get('/bans/unban', [\App\Http\Controllers\Admin\BanController::class, 'unban']);
-
- /* Забаненные */
- Route::get('/banlists', [\App\Http\Controllers\Admin\BanlistController::class, 'index']);
-
- /* Ожидающие */
- Route::match(['get', 'post'], '/reglists', [\App\Http\Controllers\Admin\ReglistController::class, 'index']);
-
- /* Голосования */
- Route::get('/votes', [\App\Http\Controllers\Admin\VoteController::class, 'index']);
- Route::get('/votes/history', [\App\Http\Controllers\Admin\VoteController::class, 'history']);
- Route::match(['get', 'post'], '/votes/edit/{id}', [\App\Http\Controllers\Admin\VoteController::class, 'edit']);
- Route::get('/votes/close/{id}', [\App\Http\Controllers\Admin\VoteController::class, 'close']);
- Route::get('/votes/delete/{id}', [\App\Http\Controllers\Admin\VoteController::class, 'delete']);
- Route::get('/votes/restatement', [\App\Http\Controllers\Admin\VoteController::class, 'restatement']);
-
- /* Антимат */
- Route::match(['get', 'post'], '/antimat', [\App\Http\Controllers\Admin\AntimatController::class, 'index']);
- Route::get('/antimat/delete', [\App\Http\Controllers\Admin\AntimatController::class, 'delete']);
- Route::get('/antimat/clear', [\App\Http\Controllers\Admin\AntimatController::class, 'clear']);
-
- /* История банов */
- Route::get('/banhists', [\App\Http\Controllers\Admin\BanhistController::class, 'index']);
- Route::get('/banhists/view', [\App\Http\Controllers\Admin\BanhistController::class, 'view']);
- Route::post('/banhists/delete', [\App\Http\Controllers\Admin\BanhistController::class, 'delete']);
-
- /* Приглашения */
- Route::get('/invitations', [\App\Http\Controllers\Admin\InvitationController::class, 'index']);
- Route::match(['get', 'post'], '/invitations/create', [\App\Http\Controllers\Admin\InvitationController::class, 'create']);
- Route::get('/invitations/keys', [\App\Http\Controllers\Admin\InvitationController::class, 'keys']);
- Route::post('/invitations/send', [\App\Http\Controllers\Admin\InvitationController::class, 'send']);
- Route::post('/invitations/mail', [\App\Http\Controllers\Admin\InvitationController::class, 'mail']);
- Route::post('/invitations/delete', [\App\Http\Controllers\Admin\InvitationController::class, 'delete']);
-
- /* Денежный переводы*/
- Route::get('/transfers', [\App\Http\Controllers\Admin\TransferController::class, 'index']);
- Route::get('/transfers/view', [\App\Http\Controllers\Admin\TransferController::class, 'view']);
- });
-
- /* Админ */
- Route::group(['middleware' => 'check.admin:admin'], function () {
- /* Правила */
- Route::get('/rules', [\App\Http\Controllers\Admin\RuleController::class, 'index']);
- Route::match(['get', 'post'], '/rules/edit', [\App\Http\Controllers\Admin\RuleController::class, 'edit']);
-
- /* Новости */
- Route::get('/news', [\App\Http\Controllers\Admin\NewsController::class, 'index']);
- Route::match(['get', 'post'], '/news/edit/{id}', [\App\Http\Controllers\Admin\NewsController::class, 'edit']);
- Route::match(['get', 'post'], '/news/create', [\App\Http\Controllers\Admin\NewsController::class, 'create']);
- Route::get('/news/restatement', [\App\Http\Controllers\Admin\NewsController::class, 'restatement']);
- Route::get('/news/delete/{id}', [\App\Http\Controllers\Admin\NewsController::class, 'delete']);
-
-
- /* IP-бан */
- Route::match(['get', 'post'], '/ipbans', [\App\Http\Controllers\Admin\IpBanController::class, 'index']);
- Route::post('/ipbans/delete', [\App\Http\Controllers\Admin\IpBanController::class, 'delete']);
- Route::get('/ipbans/clear', [\App\Http\Controllers\Admin\IpBanController::class, 'clear']);
-
- /* PHP-info */
- Route::get('/phpinfo', [\App\Http\Controllers\Admin\AdminController::class, 'phpinfo']);
-
- /* Загрузки */
- Route::get('/loads', [\App\Http\Controllers\Admin\LoadController::class, 'index']);
- Route::post('/loads/create', [\App\Http\Controllers\Admin\LoadController::class, 'create']);
- Route::match(['get', 'post'], '/loads/edit/{id}', [\App\Http\Controllers\Admin\LoadController::class, 'edit']);
- Route::get('/loads/delete/{id}', [\App\Http\Controllers\Admin\LoadController::class, 'delete']);
- Route::get('/loads/restatement', [\App\Http\Controllers\Admin\LoadController::class, 'restatement']);
- Route::get('/loads/{id}', [\App\Http\Controllers\Admin\LoadController::class, 'load']);
- Route::match(['get', 'post'], '/downs/edit/{id}', [\App\Http\Controllers\Admin\LoadController::class, 'editDown']);
- Route::match(['get', 'post'], '/downs/delete/{id}', [\App\Http\Controllers\Admin\LoadController::class, 'deleteDown']);
- Route::get('/downs/delete/{id}/{fid}', [\App\Http\Controllers\Admin\LoadController::class, 'deleteFile'])->whereNumber('fid');
- Route::get('/downs/new', [\App\Http\Controllers\Admin\LoadController::class, 'new']);
- Route::get('/downs/publish/{id}', [\App\Http\Controllers\Admin\LoadController::class, 'publish']);
-
- /* Ошибки */
- Route::get('/errors', [\App\Http\Controllers\Admin\ErrorController::class, 'index']);
- Route::get('/errors/clear', [\App\Http\Controllers\Admin\ErrorController::class, 'clear']);
-
- /* Черный список */
- Route::match(['get', 'post'], '/blacklists', [\App\Http\Controllers\Admin\BlacklistController::class, 'index']);
- Route::post('/blacklists/delete', [\App\Http\Controllers\Admin\BlacklistController::class, 'delete']);
-
- /* Предложения / проблемы */
- Route::get('/offers/{type?}', [\App\Http\Controllers\Admin\OfferController::class, 'index'])->where('type', 'offer|issue');
- Route::get('/offers/{id}', [\App\Http\Controllers\Admin\OfferController::class, 'view']);
- Route::match(['get', 'post'], '/offers/edit/{id}', [\App\Http\Controllers\Admin\OfferController::class, 'edit']);
- Route::match(['get', 'post'], '/offers/reply/{id}', [\App\Http\Controllers\Admin\OfferController::class, 'reply']);
- Route::get('/offers/restatement', [\App\Http\Controllers\Admin\OfferController::class, 'restatement']);
- Route::match(['get', 'post'], '/offers/delete', [\App\Http\Controllers\Admin\OfferController::class, 'delete']);
-
- /* Стикеры */
- Route::get('/stickers', [\App\Http\Controllers\Admin\StickerController::class, 'index']);
- Route::get('/stickers/{id}', [\App\Http\Controllers\Admin\StickerController::class, 'category']);
- Route::post('/stickers/create', [\App\Http\Controllers\Admin\StickerController::class, 'create']);
- Route::match(['get', 'post'], '/stickers/edit/{id}', [\App\Http\Controllers\Admin\StickerController::class, 'edit']);
- Route::get('/stickers/delete/{id}', [\App\Http\Controllers\Admin\StickerController::class, 'delete']);
- Route::match(['get', 'post'], '/stickers/sticker/create', [\App\Http\Controllers\Admin\StickerController::class, 'createSticker']);
- Route::match(['get', 'post'], '/stickers/sticker/edit/{id}', [\App\Http\Controllers\Admin\StickerController::class, 'editSticker']);
- Route::get('/stickers/sticker/delete/{id}', [\App\Http\Controllers\Admin\StickerController::class, 'deleteSticker']);
-
- /* Статусы */
- Route::get('/status', [\App\Http\Controllers\Admin\StatusController::class, 'index']);
- Route::match(['get', 'post'], '/status/create', [\App\Http\Controllers\Admin\StatusController::class, 'create']);
- Route::match(['get', 'post'], '/status/edit', [\App\Http\Controllers\Admin\StatusController::class, 'edit']);
- Route::get('/status/delete', [\App\Http\Controllers\Admin\StatusController::class, 'delete']);
- });
-
- /* Босс */
- Route::group(['middleware' => 'check.admin:boss'], function () {
- /* Настройки */
- Route::match(['get', 'post'], '/settings', [\App\Http\Controllers\Admin\SettingController::class, 'index']);
-
- /* Пользователи */
- Route::get('/users', [\App\Http\Controllers\Admin\UserController::class, 'index']);
- Route::get('/users/search', [\App\Http\Controllers\Admin\UserController::class, 'search']);
- Route::match(['get', 'post'], '/users/edit', [\App\Http\Controllers\Admin\UserController::class, 'edit']);
- Route::match(['get', 'post'], '/users/delete', [\App\Http\Controllers\Admin\UserController::class, 'delete']);
-
- /* Очистка кеша */
- Route::get('/caches', [\App\Http\Controllers\Admin\CacheController::class, 'index']);
- Route::post('/caches/clear', [\App\Http\Controllers\Admin\CacheController::class, 'clear']);
-
- /* Бэкап */
- Route::get('/backups', [\App\Http\Controllers\Admin\BackupController::class, 'index']);
- Route::match(['get', 'post'], '/backups/create', [\App\Http\Controllers\Admin\BackupController::class, 'create']);
- Route::get('/backups/delete', [\App\Http\Controllers\Admin\BackupController::class, 'delete']);
-
- /* Сканирование */
- Route::match(['get', 'post'], '/checkers', [\App\Http\Controllers\Admin\CheckerController::class, 'index']);
- Route::match(['get', 'post'], '/checkers/scan', [\App\Http\Controllers\Admin\CheckerController::class, 'scan']);
-
- /* Приват рассылка */
- Route::match(['get', 'post'], '/delivery', [\App\Http\Controllers\Admin\DeliveryController::class, 'index']);
-
- /* Логи */
- Route::get('/logs', [\App\Http\Controllers\Admin\LogController::class, 'index']);
- Route::get('/logs/clear', [\App\Http\Controllers\Admin\LogController::class, 'clear']);
-
- /* Шаблоны писем */
- Route::get('/notices', [\App\Http\Controllers\Admin\NoticeController::class, 'index']);
- Route::match(['get', 'post'], '/notices/create', [\App\Http\Controllers\Admin\NoticeController::class, 'create']);
- Route::match(['get', 'post'], '/notices/edit/{id}', [\App\Http\Controllers\Admin\NoticeController::class, 'edit']);
- Route::get('/notices/delete/{id}', [\App\Http\Controllers\Admin\NoticeController::class, 'delete']);
-
- /* Редактор */
- Route::get('/files', [\App\Http\Controllers\Admin\FileController::class, 'index']);
- Route::match(['get', 'post'], '/files/edit', [\App\Http\Controllers\Admin\FileController::class, 'edit']);
- Route::match(['get', 'post'], '/files/create', [\App\Http\Controllers\Admin\FileController::class, 'create']);
- Route::get('/files/delete', [\App\Http\Controllers\Admin\FileController::class, 'delete']);
-
- /* Платная реклама */
- Route::match(['get', 'post'], '/adverts/edit/{id}', [\App\Http\Controllers\Admin\AdvertController::class, 'edit']);
- Route::post('/adverts/delete', [\App\Http\Controllers\Admin\AdvertController::class, 'delete']);
- Route::get('/paid-adverts', [\App\Http\Controllers\Admin\PaidAdvertController::class, 'index']);
- Route::match(['get', 'post'], '/paid-adverts/create', [\App\Http\Controllers\Admin\PaidAdvertController::class, 'create']);
- Route::match(['get', 'post'], '/paid-adverts/edit/{id}', [\App\Http\Controllers\Admin\PaidAdvertController::class, 'edit']);
- Route::get('/paid-adverts/delete/{id}', [\App\Http\Controllers\Admin\PaidAdvertController::class, 'delete']);
-
- /* Пользовательские поля */
- Route::resource('user-fields', \App\Http\Controllers\Admin\UserFieldController::class)
- ->parameters(['user-fields' => 'id'])
- ->except('show');
-
- /* Чистка пользователей */
- Route::match(['get', 'post'], '/delusers', [\App\Http\Controllers\Admin\DelUserController::class, 'index']);
- Route::post('/delusers/clear', [\App\Http\Controllers\Admin\DelUserController::class, 'clear']);
-
- /* Модули */
- Route::get('/modules', [\App\Http\Controllers\Admin\ModuleController::class, 'index']);
- Route::get('/modules/module', [\App\Http\Controllers\Admin\ModuleController::class, 'module']);
- Route::get('/modules/install', [\App\Http\Controllers\Admin\ModuleController::class, 'install']);
- Route::get('/modules/uninstall', [\App\Http\Controllers\Admin\ModuleController::class, 'uninstall']);
- });
- });
-
- if (file_exists(app_path('Http/Controllers/InstallController.php'))) {
- Route::group(['prefix' => 'install'], function () {
- Route::get('/', [\App\Http\Controllers\InstallController::class, 'index'])
- ->withoutMiddleware('web')
- ->name('install');
-
- Route::get('/status', [\App\Http\Controllers\InstallController::class, 'status'])->withoutMiddleware('web');
- Route::get('/migrate', [\App\Http\Controllers\InstallController::class, 'migrate'])->withoutMiddleware('web');
- Route::get('/seed', [\App\Http\Controllers\InstallController::class, 'seed']);
- Route::match(['get', 'post'], '/account', [\App\Http\Controllers\InstallController::class, 'account']);
- Route::get('/finish', [\App\Http\Controllers\InstallController::class, 'finish']);
- });
- }
-
- $modules = \App\Models\Module::getEnabledModules();
- foreach ($modules as $module) {
- if (file_exists(base_path('modules/' . $module . '/routes.php'))) {
- include_once base_path('modules/' . $module . '/routes.php');
- }
- }