Blame view

routes/web.php 16.5 KB
02a1ed535   Андрей Ларионов   Первый коммит Rek...
1
2
3
  <?php
  
  use App\Http\Controllers\Admin\AdminController;
8c73c7b41   Андрей Ларионов   Категории ваканси...
4
  use App\Http\Controllers\Admin\CategoryController;
8de035475   Андрей Ларионов   Создание: Структу...
5
  use App\Http\Controllers\Admin\EmployersController;
4c66e360c   Андрей Ларионов   Справочник докуме...
6
  use App\Http\Controllers\Admin\InfoBloksController;
5f2a2635a   Андрей Ларионов   Справочник Должно...
7
  use App\Http\Controllers\Admin\JobTitlesController;
8de035475   Андрей Ларионов   Создание: Структу...
8
9
  use App\Http\Controllers\Admin\UsersController;
  use App\Http\Controllers\Admin\WorkersController;
6a962b009   Андрей Ларионов   Система авторизац...
10
  use App\Http\Controllers\Auth\ForgotPasswordController;
02a1ed535   Андрей Ларионов   Первый коммит Rek...
11
12
  use App\Http\Controllers\Auth\LoginController;
  use App\Http\Controllers\Auth\RegisterController;
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
13
  use App\Http\Controllers\CKEditorController;
02a1ed535   Андрей Ларионов   Первый коммит Rek...
14
15
16
17
  use App\Models\User;
  use App\Http\Controllers\MainController;
  use App\Http\Controllers\HomeController;
  use Illuminate\Support\Facades\Route;
bb2fb443d   Андрей Ларионов   Архитектурное доп...
18
19
  use App\Http\Controllers\Admin\CompanyController;
  use App\Http\Controllers\Admin\Ad_EmployersController;
82a9544dc   Андрей Ларионов   Связи моделей, гр...
20
21
  use App\Http\Controllers\Admin\MsgAnswersController;
  use App\Http\Controllers\Admin\GroupsController;
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
22
  use App\Http\Controllers\PagesController;
e688e0d8a   Андрей Ларионов   Статистика работн...
23
  use Illuminate\Support\Facades\Storage;
bb2fb443d   Андрей Ларионов   Архитектурное доп...
24

02a1ed535   Андрей Ларионов   Первый коммит Rek...
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
  
  /*
  |--------------------------------------------------------------------------
  | 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');
  })->name('index');
  */
  Route::get('/', [MainController::class, 'index'])->name('index');
  
  //Роуты авторизации, регистрации, восстановления, аутентификации
  Auth::routes(['verify' => true]);
6a962b009   Андрей Ларионов   Система авторизац...
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
  
  // роуты регистрации, авторизации, восстановления пароля, верификации почты
  /*Route::group([
      'as' => 'auth.', //имя маршрута, например auth.index
      'prefix' => 'auth', // префикс маршрута, например, auth/index
  ], function () {
      //форма регистрации
      Route::get('register', [RegisterController::class, 'register'])->name('register');
  
      //создание пользователя
      Route::post('register', [RegisterController::class, 'create'])->name('create');
  
      //форма входа авторизации
      Route::get('login', [LoginController::class, 'login'])->name('login');
  
      //аутентификация
      Route::post('login', [LoginController::class, 'authenticate'])->name('auth');
  
      //выход
      Route::get('logout', [LoginController::class, 'logout'])->name('logout');
  
      //форма ввода адреса почты
      Route::get('forgot-password', [ForgotPasswordController::class, 'form'])->name('forgot-form');
  
      //письмо на почту
      Route::post('forgot-password', [ForgotPasswordController::class, 'mail'])->name('forgot-mail');
  
      //форма восстановления пароля
      Route::get('reset-password/token/{token}/email/{email}',
          [ResetPasswordController::class, 'form']
      )->name('reset-form');
  
      //восстановление пароля
      Route::post('reset-password',
          [ResetPasswordController::class, 'reset']
      )->name('reset-password');
  
      //сообщение о необходимости проверки адреса почты
      Route::get('verify-message', [VerifyEmailController::class, 'message'])->name('verify-message');
  
      //подтверждение адреса почты нового пользователя
      Route::get('verify-email/token/{token}/id/{id}', [VerifyEmailController::class, 'verify'])
          ->where('token', '[a-f0-9]{32}')
          ->where('id', '[0-9]+')
          ->name('verify-email');
  });*/
02a1ed535   Андрей Ларионов   Первый коммит Rek...
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
  //Личный кабинет пользователя
  Route::get('/home', [HomeController::class, 'index'])->name('home');
  
  /*
  Route::post('resend/verification-email', function (\Illuminate\Http\Request $request) {
      $user = User::where('email',$request->input('email'))->first();
  
      $user->sendEmailVerificationNotification();
  
      return 'your response';
  })->middleware('throttle:6,1')->name('verification.resend');
  */
  
  // Авторизация, регистрация в админку
  Route::group([
      'as' => 'admin.', // имя маршрута, например auth.index
      'prefix' => 'admin', // префикс маршрута, например auth/index
      'middleware' => ['guest'],
  ], function () {
  // Форма регистрации
      Route::get('register', [AdminController::class, 'register'])->name('register');
  
  // Создание пользователя
      Route::post('register', [AdminController::class, 'create'])->name('create');
  //Форма входа
      Route::get('login', [AdminController::class, 'login'])->name('login');
  
  // аутентификация
      Route::post('login', [AdminController::class, 'autenticate'])->name('auth');
  
  });
  
  // Личный кабинет админки
  Route::group([
      'as' => 'admin.', // имя маршрута, например auth.index
      'prefix' => 'admin', // префикс маршрута, например auth/index
      'middleware' => ['auth'], ['admin'],
  ], function() {
  
      // выход
      Route::get('logout', [AdminController::class, 'logout'])->name('logout');
  
      // кабинет главная страница
      Route::get('cabinet', [AdminController::class, 'index'])->name('index');
c84db5243   Андрей Ларионов   Форма редактирова...
135
136
  
      // кабинет профиль админа - форма
7c1e05248   Андрей Ларионов   Формы настройки с...
137
      Route::get('profile', [AdminController::class, 'profile'])->name('profile');
c84db5243   Андрей Ларионов   Форма редактирова...
138
     // кабинет профиль админа - сохранение формы
7c1e05248   Андрей Ларионов   Формы настройки с...
139
      Route::post('profile', [AdminController::class, 'store_profile'])->name('store_profile');
e688e0d8a   Андрей Ларионов   Статистика работн...
140
141
      //кабинет сообщения админа
      //Route::get('messages', [AdminController::class, 'profile'])->name('profile');
c84db5243   Андрей Ларионов   Форма редактирова...
142
143
144
145
146
147
148
149
150
151
152
153
154
      // кабинет профиль - форма пароли
      Route::get('password', [AdminController::class, 'profile_password'])->name('password');
      // кабинет профиль - сохранение формы пароля
      Route::post('password', [AdminController::class, 'profile_password_new'])->name('password');
  
  
      // кабинет профиль пользователя - форма
      Route::get('user-profile/{user}', [AdminController::class, 'profile_user'])->name('user-profile');
      // кабинет профиль пользователя - сохранение формы
      Route::post('user-profile/{user}', [AdminController::class, 'store_profile_user'])->name('user-store_profile');
  
      // кабинет профиль работодатель - форма
      Route::get('employer-profile/{employer}', [EmployersController::class, 'form_update_employer'])->name('employer-profile');
8c73c7b41   Андрей Ларионов   Категории ваканси...
155
156
      // кабинет профиль работодатель - сохранение формы
      Route::post('employer-profile/{employer}', [EmployersController::class, 'update_employer'])->name('update-employer-profile');
c84db5243   Андрей Ларионов   Форма редактирова...
157
      // кабинет профиль работник - форма
32cbe7736   Андрей Ларионов   Обновление блейдо...
158
159
160
      Route::get('worker-profile/{worker}', [WorkersController::class, 'form_edit_worker'])->name('worker-profile-edit');
      // кабинет профиль работник - сохранение формы
      Route::post('worker-profile/{worker}', [WorkersController::class, 'form_update_worker'])->name('worker-profile-update');
c84db5243   Андрей Ларионов   Форма редактирова...
161

f64f4890f   Андрей Ларионов   Блейды и контролл...
162
      // кабинет настройки сайта - форма
7c1e05248   Андрей Ларионов   Формы настройки с...
163
      Route::get('config', [AdminController::class, 'config_form'])->name('config');
f64f4890f   Андрей Ларионов   Блейды и контролл...
164
      // кабинет настройки сайта сохранение формы
7c1e05248   Андрей Ларионов   Формы настройки с...
165
      Route::post('config', [AdminController::class, 'store_config'])->name('store_config');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
166
167
  
      // кабинет - пользователи
8de035475   Андрей Ларионов   Создание: Структу...
168
169
170
171
      Route::get('users', [UsersController::class, 'index'])->name('users');
  
      // кабинет - пользователи
      Route::get('admin-users', [AdminController::class, 'index_admin'])->name('admin-users');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
172
173
  
      // кабинет - работодатели
8de035475   Андрей Ларионов   Создание: Структу...
174
      Route::get('employers', [EmployersController::class, 'index'])->name('employers');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
175
176
  
      // кабинет - соискатели
8de035475   Андрей Ларионов   Создание: Структу...
177
      Route::get('workers', [WorkersController::class, 'index'])->name('workers');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
178
179
  
      // кабинет - вакансии
bb2fb443d   Андрей Ларионов   Архитектурное доп...
180
      Route::get('ad-employers', [Ad_EmployersController::class, 'index'])->name('ad-employers');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
181
182
  
      // кабинет - категории
8c73c7b41   Андрей Ларионов   Категории ваканси...
183
184
      //Route::get('categories', [AdminController::class, 'index'])->name('categories');
      /*
5f2a2635a   Андрей Ларионов   Справочник Должно...
185
186
       * CRUD-операции над Справочником Категории
       */
8c73c7b41   Андрей Ларионов   Категории ваканси...
187
      Route::resource('categories', CategoryController::class, ['except' => ['show']]);
02a1ed535   Андрей Ларионов   Первый коммит Rek...
188

5f2a2635a   Андрей Ларионов   Справочник Должно...
189
190
191
192
193
194
      //Route::get('job-titles', [AdminController::class, 'index'])->name('job-titles');
      /*
      * кабинет - CRUD-операции по справочнику должности
       *
       */
      Route::resource('job-titles', JobTitlesController::class, ['except' => ['show']]);
02a1ed535   Андрей Ларионов   Первый коммит Rek...
195

e688e0d8a   Андрей Ларионов   Статистика работн...
196
      // кабинет - сообщения (чтение чужих)
82a9544dc   Андрей Ларионов   Связи моделей, гр...
197
      Route::get('messages', [MsgAnswersController::class, 'messages'])->name('messages');
e688e0d8a   Андрей Ларионов   Статистика работн...
198
199
200
201
      // кабинет - сообщения (админские)
      Route::get('admin-messages', [MsgAnswersController::class, 'admin_messages'])->name('admin-messages');
      // кабинет - сообщения (админские)
      Route::post('admin-messages', [MsgAnswersController::class, 'admin_messages_post'])->name('admin-messages-post');
93a3f79f0   Андрей Ларионов   Поисковый движок ...
202
203
      // кабинет - sql - конструкция запросов
      Route::get('messages-sql', [MsgAnswersController::class, 'messages_sql'])->name('messages-sql');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
204

5f2a2635a   Андрей Ларионов   Справочник Должно...
205
206
207
      /*
       * Расписанный подход в описании каждой директорий групп пользователей.
       */
02a1ed535   Андрей Ларионов   Первый коммит Rek...
208
      // кабинет - группы пользователей
82a9544dc   Андрей Ларионов   Связи моделей, гр...
209
210
211
212
213
214
215
216
217
      Route::get('groups', [GroupsController::class, 'index'])->name('groups');
      // кабинет - добавление форма группы пользователей
      Route::get('groups/add', [GroupsController::class, 'add'])->name('add-group');
      // кабинет - сохранение формы группы пользователей
      Route::post('groups/add', [GroupsController::class, 'store'])->name('add-group-store');
      // кабинет - редактирование форма группы пользователей
      Route::get('groups/edit/{group}', [GroupsController::class, 'edit'])->name('edit-group');
      // кабинет - сохранение редактированной формы группы пользователей
      Route::post('groups/edit/{group}', [GroupsController::class, 'update'])->name('update-group');
29350503f   Андрей Ларионов   Расширение полей ...
218
219
     // кабинет - удаление группы пользователей
      Route::delete('groups/delete/{group}', [GroupsController::class, 'destroy'])->name('delete-group');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
220

e688e0d8a   Андрей Ларионов   Статистика работн...
221

02a1ed535   Андрей Ларионов   Первый коммит Rek...
222
223
      // кабинет - список админов
      Route::get('group-admin', [AdminController::class, 'index'])->name('group-admin');
f64f4890f   Андрей Ларионов   Блейды и контролл...
224

e688e0d8a   Андрей Ларионов   Статистика работн...
225

bb2fb443d   Андрей Ларионов   Архитектурное доп...
226
      /////редактор////// кабинет - редактор сайта////////////////////////
4c66e360c   Андрей Ларионов   Справочник докуме...
227
228
229
      Route::get('editor-site', function() {
          return view('admin.editor.index');
      })->name('editor-site');
f64f4890f   Андрей Ларионов   Блейды и контролл...
230

90302d366   Андрей Ларионов   Блоки меню для фу...
231

f64f4890f   Андрей Ларионов   Блейды и контролл...
232
      // кабинет - редактор шапки-футера сайта
bb2fb443d   Андрей Ларионов   Архитектурное доп...
233
      Route::get('edit-blocks', [CompanyController::class, 'editblocks'])->name('edit-blocks');
90302d366   Андрей Ларионов   Блоки меню для фу...
234
235
236
237
238
239
      Route::get('edit-bloks/add', [CompanyController::class, 'editblock_add'])->name('add-block');
      Route::post('edit-bloks/add', [CompanyController::class, 'editblock_store'])->name('add-block-store');
      Route::get('edit-bloks/ajax', [CompanyController::class, 'editblock_ajax'])->name('ajax.block');
      Route::get('edit-bloks/edit/{block}', [CompanyController::class, 'editblock_edit'])->name('edit-block');
      Route::put('edit-bloks/edit/{block}', [CompanyController::class, 'editblock_update'])->name('update-block');
      Route::delete('edit-bloks/delete/{block}', [CompanyController::class, 'editblock_destroy'])->name('delete-block');
f64f4890f   Андрей Ларионов   Блейды и контролл...
240
241
  
      // кабинет - редактор должности на главной
bb2fb443d   Андрей Ларионов   Архитектурное доп...
242
      Route::get('job-titles-main', [CompanyController::class, 'job_titles_main'])->name('job-titles-main');
f64f4890f   Андрей Ларионов   Блейды и контролл...
243
244
  
      // кабинет - редактор работодатели на главной
bb2fb443d   Андрей Ларионов   Архитектурное доп...
245
      Route::get('employers-main', [CompanyController::class, 'employers_main'])->name('employers-main');
f64f4890f   Андрей Ларионов   Блейды и контролл...
246

dd87a3ce4   Андрей Ларионов   Реклама-блок, обн...
247

f64f4890f   Андрей Ларионов   Блейды и контролл...
248
      // кабинет - редактор seo-сайта
bb2fb443d   Андрей Ларионов   Архитектурное доп...
249
      Route::get('editor-seo', [CompanyController::class, 'editor_seo'])->name('editor-seo');
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
250
251
      Route::get('editor-seo/add', [CompanyController::class, 'editor_seo_add'])->name('add-seo');
      Route::post('editor-seo/add', [CompanyController::class, 'editor_seo_store'])->name('add-seo-store');
e74a6ce9f   Андрей Ларионов   Раздел SEO в админке
252
      Route::get('editor-seo/ajax', [CompanyController::class, 'editor_seo_ajax'])->name('ajax.seo');
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
253
254
255
      Route::get('editor-seo/edit/{page}', [CompanyController::class, 'editor_seo_edit'])->name('edit-seo');
      Route::put('editor-seo/edit/{page}', [CompanyController::class, 'editor_seo_update'])->name('update-seo');
      Route::delete('editor-seo/delete/{page}', [CompanyController::class, 'editor_seo_destroy'])->name('delete-seo');
f64f4890f   Андрей Ларионов   Блейды и контролл...
256

486a3601d   Андрей Ларионов   Должности и работ...
257

f64f4890f   Андрей Ларионов   Блейды и контролл...
258
      // кабинет - редактор страниц
bb2fb443d   Андрей Ларионов   Архитектурное доп...
259
      Route::get('editor-pages', [CompanyController::class, 'editor_pages'])->name('editor-pages');
486a3601d   Андрей Ларионов   Должности и работ...
260
261
262
263
264
265
266
267
268
269
      // кабинет - добавление страницы
      Route::get('editor-pages/add', [CompanyController::class, 'editor_pages_add'])->name('add-page');
      // кабинет - сохранение формы страницы
      Route::post('editor-page/add', [CompanyController::class, 'editor_pages_store'])->name('add-page-store');
      // кабинет - редактирование форма страницы
      Route::get('editor-pages/edit/{page}', [CompanyController::class, 'editor_pages_edit'])->name('edit-page');
      // кабинет - сохранение редактированной формы страницы
      Route::put('editor-pages/edit/{page}', [CompanyController::class, 'editor_pages_update'])->name('update-page');
      // кабинет - удаление страницы
      Route::delete('editor-pages/delete/{page}', [CompanyController::class, 'editor_pages_destroy'])->name('delete-page');
f64f4890f   Андрей Ларионов   Блейды и контролл...
270
271
  
      // кабинет - реклама сайта
bb2fb443d   Андрей Ларионов   Архитектурное доп...
272
      Route::get('reclames', [CompanyController::class, 'reclames'])->name('reclames');
dd87a3ce4   Андрей Ларионов   Реклама-блок, обн...
273
274
275
276
277
      Route::get('reclames/add', [CompanyController::class, 'reclames_add'])->name('add-reclames');
      Route::post('reclames/add', [CompanyController::class, 'reclames_store'])->name('add-reclames-store');
      Route::get('reclames/edit/{reclame}', [CompanyController::class, 'reclames_edit'])->name('edit-reclames');
      Route::put('reclames/edit/{reclame}', [CompanyController::class, 'reclames_update'])->name('update-reclames');
      Route::delete('reclames/delete/{reclame}', [CompanyController::class, 'reclames_destroy'])->name('delete-reclames');
bb2fb443d   Андрей Ларионов   Архитектурное доп...
278
      ////////////////////////////////////////////////////////////////////////
dd87a3ce4   Андрей Ларионов   Реклама-блок, обн...
279

bb2fb443d   Андрей Ларионов   Архитектурное доп...
280
281
      // кабинет - отзывы о работодателе для модерации
      Route::get('answers', [EmployersController::class, 'answers'])->name('answers');
f64f4890f   Андрей Ларионов   Блейды и контролл...
282

bb2fb443d   Андрей Ларионов   Архитектурное доп...
283
284
285
286
      // Общая страница статистики
      Route::get('statics', function () {
          return view('admin.static.index');
      })->name('statics');
f64f4890f   Андрей Ларионов   Блейды и контролл...
287

bb2fb443d   Андрей Ларионов   Архитектурное доп...
288
289
      // кабинет - статистика работников
      Route::get('static-workers', [WorkersController::class, 'static_workers'])->name('static-workers');
f64f4890f   Андрей Ларионов   Блейды и контролл...
290

bb2fb443d   Андрей Ларионов   Архитектурное доп...
291
292
      // кабинет - статистика вакансий работодателя
      Route::get('static-ads', [EmployersController::class, 'static_ads'])->name('static-ads');
f64f4890f   Андрей Ларионов   Блейды и контролл...
293

bb2fb443d   Андрей Ларионов   Архитектурное доп...
294
      // кабинет - справочник - блоки информации (дипломы и документы) для резюме работника
4c66e360c   Андрей Ларионов   Справочник докуме...
295
296
297
298
299
      /*
       * CRUD-операции над справочником дипломы и документы
       */
      //Route::get('infobloks', [WorkersController::class, 'infobloks'])->name('infobloks');
      Route::resource('infobloks', InfoBloksController::class, ['except' => ['show']]);
f64f4890f   Андрей Ларионов   Блейды и контролл...
300

bb2fb443d   Андрей Ларионов   Архитектурное доп...
301
302
      // кабинет - роли пользователя
      Route::get('roles', [UsersController::class, 'roles'])->name('roles');
f64f4890f   Андрей Ларионов   Блейды и контролл...
303

e688e0d8a   Андрей Ларионов   Статистика работн...
304
305
306
307
      Route::get('logs', function() {
          $files = Storage::files('logs/laravel.log');
          print_r($files);
      })->name('logs');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
308
  });
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
309
310
311
312
  
  Route::post('ckeditor/upload', [CKEditorController::class, 'upload'])->name('ckeditor.image-upload');
  
  Route::get('pages/{pages:slug}', [PagesController::class, 'pages'])->name('page');
f0b6d25e9   Андрей Ларионов   Баг с id юзеров в...
313
314
  
  Route::get('redis/', [PagesController::class, 'redis'])->name('redis');