Blame view

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

02a1ed535   Андрей Ларионов   Первый коммит Rek...
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
  
  /*
  |--------------------------------------------------------------------------
  | 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   Андрей Ларионов   Система авторизац...
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
91
92
  
  // роуты регистрации, авторизации, восстановления пароля, верификации почты
  /*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...
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
135
136
  //Личный кабинет пользователя
  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   Андрей Ларионов   Форма редактирова...
137
138
  
      // кабинет профиль админа - форма
7c1e05248   Андрей Ларионов   Формы настройки с...
139
      Route::get('profile', [AdminController::class, 'profile'])->name('profile');
be3039cb9   Андрей Ларионов   Правки по работод...
140
      // кабинет профиль админа - сохранение формы
7c1e05248   Андрей Ларионов   Формы настройки с...
141
      Route::post('profile', [AdminController::class, 'store_profile'])->name('store_profile');
e688e0d8a   Андрей Ларионов   Статистика работн...
142
143
      //кабинет сообщения админа
      //Route::get('messages', [AdminController::class, 'profile'])->name('profile');
c84db5243   Андрей Ларионов   Форма редактирова...
144
145
146
147
148
149
150
151
152
153
154
155
156
      // кабинет профиль - форма пароли
      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   Андрей Ларионов   Категории ваканси...
157
158
      // кабинет профиль работодатель - сохранение формы
      Route::post('employer-profile/{employer}', [EmployersController::class, 'update_employer'])->name('update-employer-profile');
00652ea57   Андрей Ларионов   Оптимизация запро...
159
160
      // кабинет удаление профиль работодателя и юзера
      Route::delete('employer-profile/delete/{employer}/{user}', [EmployersController::class, 'delete_employer'])->name('delete-employer');
8c73c7b41   Андрей Ларионов   Категории ваканси...
161

c84db5243   Андрей Ларионов   Форма редактирова...
162
      // кабинет профиль работник - форма
32cbe7736   Андрей Ларионов   Обновление блейдо...
163
164
165
      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   Андрей Ларионов   Форма редактирова...
166

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

00652ea57   Андрей Ларионов   Оптимизация запро...
198
199
      // CRUD-операции над справочником Образование
      Route::resource('education', EducationController::class, ['except' => ['show']]);
5f2a2635a   Андрей Ларионов   Справочник Должно...
200
201
202
203
204
205
      //Route::get('job-titles', [AdminController::class, 'index'])->name('job-titles');
      /*
      * кабинет - CRUD-операции по справочнику должности
       *
       */
      Route::resource('job-titles', JobTitlesController::class, ['except' => ['show']]);
02a1ed535   Андрей Ларионов   Первый коммит Rek...
206

e688e0d8a   Андрей Ларионов   Статистика работн...
207
      // кабинет - сообщения (чтение чужих)
82a9544dc   Андрей Ларионов   Связи моделей, гр...
208
      Route::get('messages', [MsgAnswersController::class, 'messages'])->name('messages');
e688e0d8a   Андрей Ларионов   Статистика работн...
209
210
211
212
      // кабинет - сообщения (админские)
      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   Андрей Ларионов   Поисковый движок ...
213
214
      // кабинет - sql - конструкция запросов
      Route::get('messages-sql', [MsgAnswersController::class, 'messages_sql'])->name('messages-sql');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
215

5f2a2635a   Андрей Ларионов   Справочник Должно...
216
217
218
      /*
       * Расписанный подход в описании каждой директорий групп пользователей.
       */
02a1ed535   Андрей Ларионов   Первый коммит Rek...
219
      // кабинет - группы пользователей
82a9544dc   Андрей Ларионов   Связи моделей, гр...
220
221
222
223
224
225
226
227
228
      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   Андрей Ларионов   Расширение полей ...
229
230
     // кабинет - удаление группы пользователей
      Route::delete('groups/delete/{group}', [GroupsController::class, 'destroy'])->name('delete-group');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
231

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

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

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

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

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

f64f4890f   Андрей Ларионов   Блейды и контролл...
243
      // кабинет - редактор шапки-футера сайта
bb2fb443d   Андрей Ларионов   Архитектурное доп...
244
      Route::get('edit-blocks', [CompanyController::class, 'editblocks'])->name('edit-blocks');
90302d366   Андрей Ларионов   Блоки меню для фу...
245
246
247
248
249
250
      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   Андрей Ларионов   Блейды и контролл...
251
252
  
      // кабинет - редактор должности на главной
bb2fb443d   Андрей Ларионов   Архитектурное доп...
253
      Route::get('job-titles-main', [CompanyController::class, 'job_titles_main'])->name('job-titles-main');
f64f4890f   Андрей Ларионов   Блейды и контролл...
254
255
  
      // кабинет - редактор работодатели на главной
bb2fb443d   Андрей Ларионов   Архитектурное доп...
256
      Route::get('employers-main', [CompanyController::class, 'employers_main'])->name('employers-main');
f64f4890f   Андрей Ларионов   Блейды и контролл...
257

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

f64f4890f   Андрей Ларионов   Блейды и контролл...
259
      // кабинет - редактор seo-сайта
bb2fb443d   Андрей Ларионов   Архитектурное доп...
260
      Route::get('editor-seo', [CompanyController::class, 'editor_seo'])->name('editor-seo');
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
261
262
      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 в админке
263
      Route::get('editor-seo/ajax', [CompanyController::class, 'editor_seo_ajax'])->name('ajax.seo');
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
264
265
266
      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   Андрей Ларионов   Блейды и контролл...
267

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

f64f4890f   Андрей Ларионов   Блейды и контролл...
269
      // кабинет - редактор страниц
bb2fb443d   Андрей Ларионов   Архитектурное доп...
270
      Route::get('editor-pages', [CompanyController::class, 'editor_pages'])->name('editor-pages');
486a3601d   Андрей Ларионов   Должности и работ...
271
272
273
274
275
276
277
278
279
280
      // кабинет - добавление страницы
      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   Андрей Ларионов   Блейды и контролл...
281
282
  
      // кабинет - реклама сайта
bb2fb443d   Андрей Ларионов   Архитектурное доп...
283
      Route::get('reclames', [CompanyController::class, 'reclames'])->name('reclames');
dd87a3ce4   Андрей Ларионов   Реклама-блок, обн...
284
285
286
287
288
      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   Андрей Ларионов   Архитектурное доп...
289
      ////////////////////////////////////////////////////////////////////////
dd87a3ce4   Андрей Ларионов   Реклама-блок, обн...
290

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

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

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

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

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

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

e688e0d8a   Андрей Ларионов   Статистика работн...
315
316
317
318
      Route::get('logs', function() {
          $files = Storage::files('logs/laravel.log');
          print_r($files);
      })->name('logs');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
319
  });
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
320
321
322
323
  
  Route::post('ckeditor/upload', [CKEditorController::class, 'upload'])->name('ckeditor.image-upload');
  
  Route::get('pages/{pages:slug}', [PagesController::class, 'pages'])->name('page');
f0b6d25e9   Андрей Ларионов   Баг с id юзеров в...
324
325
  
  Route::get('redis/', [PagesController::class, 'redis'])->name('redis');