Blame view

routes/web.php 17.7 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');
a89ff088a   Андрей Ларионов   Поисковая система...
209
210
      // кабинет - просмотр сообщения чужого (чтение)
      Route::get('messages/{message}', [MsgAnswersController::class, 'read_message'])->name('read-message');
e688e0d8a   Андрей Ларионов   Статистика работн...
211
212
213
214
      // кабинет - сообщения (админские)
      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   Андрей Ларионов   Поисковый движок ...
215
216
      // кабинет - sql - конструкция запросов
      Route::get('messages-sql', [MsgAnswersController::class, 'messages_sql'])->name('messages-sql');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
217

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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