Blame view

routes/web.php 12 KB
2dde15d57   Андрей Ларионов   Утверждение переноса
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;
2dde15d57   Андрей Ларионов   Утверждение переноса
8
9
10
11
  use App\Http\Controllers\Admin\UsersController;
  use App\Http\Controllers\Admin\WorkersController;
  use App\Http\Controllers\Auth\LoginController;
  use App\Http\Controllers\Auth\RegisterController;
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
12
  use App\Http\Controllers\CKEditorController;
2dde15d57   Андрей Ларионов   Утверждение переноса
13
14
15
16
  use App\Models\User;
  use App\Http\Controllers\MainController;
  use App\Http\Controllers\HomeController;
  use Illuminate\Support\Facades\Route;
bb2fb443d   Андрей Ларионов   Архитектурное доп...
17
18
  use App\Http\Controllers\Admin\CompanyController;
  use App\Http\Controllers\Admin\Ad_EmployersController;
82a9544dc   Андрей Ларионов   Связи моделей, гр...
19
20
  use App\Http\Controllers\Admin\MsgAnswersController;
  use App\Http\Controllers\Admin\GroupsController;
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
21
  use App\Http\Controllers\PagesController;
bb2fb443d   Андрей Ларионов   Архитектурное доп...
22

2dde15d57   Андрей Ларионов   Утверждение переноса
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
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
  
  /*
  |--------------------------------------------------------------------------
  | 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]);
  //Личный кабинет пользователя
  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   Андрей Ларионов   Форма редактирова...
87
88
  
      // кабинет профиль админа - форма
7c1e05248   Андрей Ларионов   Формы настройки с...
89
      Route::get('profile', [AdminController::class, 'profile'])->name('profile');
c84db5243   Андрей Ларионов   Форма редактирова...
90
     // кабинет профиль админа - сохранение формы
7c1e05248   Андрей Ларионов   Формы настройки с...
91
      Route::post('profile', [AdminController::class, 'store_profile'])->name('store_profile');
c84db5243   Андрей Ларионов   Форма редактирова...
92
93
94
95
96
97
98
99
100
101
102
103
104
      // кабинет профиль - форма пароли
      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   Андрей Ларионов   Категории ваканси...
105
106
      // кабинет профиль работодатель - сохранение формы
      Route::post('employer-profile/{employer}', [EmployersController::class, 'update_employer'])->name('update-employer-profile');
c84db5243   Андрей Ларионов   Форма редактирова...
107
108
      // кабинет профиль работник - форма
      Route::post('worker-profile/{worker}', [WorkersController::class, 'form_update_worker'])->name('worker-profile');
f64f4890f   Андрей Ларионов   Блейды и контролл...
109
      // кабинет настройки сайта - форма
7c1e05248   Андрей Ларионов   Формы настройки с...
110
      Route::get('config', [AdminController::class, 'config_form'])->name('config');
f64f4890f   Андрей Ларионов   Блейды и контролл...
111
      // кабинет настройки сайта сохранение формы
7c1e05248   Андрей Ларионов   Формы настройки с...
112
      Route::post('config', [AdminController::class, 'store_config'])->name('store_config');
2dde15d57   Андрей Ларионов   Утверждение переноса
113
114
115
116
117
118
119
120
121
122
123
124
125
126
  
      // кабинет - пользователи
      Route::get('users', [UsersController::class, 'index'])->name('users');
  
      // кабинет - пользователи
      Route::get('admin-users', [AdminController::class, 'index_admin'])->name('admin-users');
  
      // кабинет - работодатели
      Route::get('employers', [EmployersController::class, 'index'])->name('employers');
  
      // кабинет - соискатели
      Route::get('workers', [WorkersController::class, 'index'])->name('workers');
  
      // кабинет - вакансии
bb2fb443d   Андрей Ларионов   Архитектурное доп...
127
      Route::get('ad-employers', [Ad_EmployersController::class, 'index'])->name('ad-employers');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
128
129
  
      // кабинет - категории
8c73c7b41   Андрей Ларионов   Категории ваканси...
130
131
      //Route::get('categories', [AdminController::class, 'index'])->name('categories');
      /*
5f2a2635a   Андрей Ларионов   Справочник Должно...
132
133
       * CRUD-операции над Справочником Категории
       */
8c73c7b41   Андрей Ларионов   Категории ваканси...
134
      Route::resource('categories', CategoryController::class, ['except' => ['show']]);
02a1ed535   Андрей Ларионов   Первый коммит Rek...
135

5f2a2635a   Андрей Ларионов   Справочник Должно...
136
137
138
139
140
141
      //Route::get('job-titles', [AdminController::class, 'index'])->name('job-titles');
      /*
      * кабинет - CRUD-операции по справочнику должности
       *
       */
      Route::resource('job-titles', JobTitlesController::class, ['except' => ['show']]);
02a1ed535   Андрей Ларионов   Первый коммит Rek...
142
143
  
      // кабинет - сообщения
82a9544dc   Андрей Ларионов   Связи моделей, гр...
144
      Route::get('messages', [MsgAnswersController::class, 'messages'])->name('messages');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
145

5f2a2635a   Андрей Ларионов   Справочник Должно...
146
147
148
      /*
       * Расписанный подход в описании каждой директорий групп пользователей.
       */
02a1ed535   Андрей Ларионов   Первый коммит Rek...
149
      // кабинет - группы пользователей
82a9544dc   Андрей Ларионов   Связи моделей, гр...
150
151
152
153
154
155
156
157
158
      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   Андрей Ларионов   Расширение полей ...
159
160
     // кабинет - удаление группы пользователей
      Route::delete('groups/delete/{group}', [GroupsController::class, 'destroy'])->name('delete-group');
02a1ed535   Андрей Ларионов   Первый коммит Rek...
161
162
163
  
      // кабинет - список админов
      Route::get('group-admin', [AdminController::class, 'index'])->name('group-admin');
f64f4890f   Андрей Ларионов   Блейды и контролл...
164

bb2fb443d   Андрей Ларионов   Архитектурное доп...
165
      /////редактор////// кабинет - редактор сайта////////////////////////
4c66e360c   Андрей Ларионов   Справочник докуме...
166
167
168
      Route::get('editor-site', function() {
          return view('admin.editor.index');
      })->name('editor-site');
f64f4890f   Андрей Ларионов   Блейды и контролл...
169
170
  
      // кабинет - редактор шапки-футера сайта
bb2fb443d   Андрей Ларионов   Архитектурное доп...
171
      Route::get('edit-blocks', [CompanyController::class, 'editblocks'])->name('edit-blocks');
f64f4890f   Андрей Ларионов   Блейды и контролл...
172
173
  
      // кабинет - редактор должности на главной
bb2fb443d   Андрей Ларионов   Архитектурное доп...
174
      Route::get('job-titles-main', [CompanyController::class, 'job_titles_main'])->name('job-titles-main');
f64f4890f   Андрей Ларионов   Блейды и контролл...
175
176
  
      // кабинет - редактор работодатели на главной
bb2fb443d   Андрей Ларионов   Архитектурное доп...
177
      Route::get('employers-main', [CompanyController::class, 'employers_main'])->name('employers-main');
f64f4890f   Андрей Ларионов   Блейды и контролл...
178
179
  
      // кабинет - редактор seo-сайта
bb2fb443d   Андрей Ларионов   Архитектурное доп...
180
      Route::get('editor-seo', [CompanyController::class, 'editor_seo'])->name('editor-seo');
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
181
182
183
184
185
      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');
      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   Андрей Ларионов   Блейды и контролл...
186

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

f64f4890f   Андрей Ларионов   Блейды и контролл...
188
      // кабинет - редактор страниц
bb2fb443d   Андрей Ларионов   Архитектурное доп...
189
      Route::get('editor-pages', [CompanyController::class, 'editor_pages'])->name('editor-pages');
486a3601d   Андрей Ларионов   Должности и работ...
190
191
192
193
194
195
196
197
198
199
      // кабинет - добавление страницы
      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   Андрей Ларионов   Блейды и контролл...
200
201
  
      // кабинет - реклама сайта
bb2fb443d   Андрей Ларионов   Архитектурное доп...
202
203
204
205
206
      Route::get('reclames', [CompanyController::class, 'reclames'])->name('reclames');
      ////////////////////////////////////////////////////////////////////////
  
      // кабинет - отзывы о работодателе для модерации
      Route::get('answers', [EmployersController::class, 'answers'])->name('answers');
f64f4890f   Андрей Ларионов   Блейды и контролл...
207

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

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

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

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

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

02a1ed535   Андрей Ларионов   Первый коммит Rek...
229
  });
5b2dcf44b   Андрей Ларионов   Редактор страниц ...
230
231
232
233
  
  Route::post('ckeditor/upload', [CKEditorController::class, 'upload'])->name('ckeditor.image-upload');
  
  Route::get('pages/{pages:slug}', [PagesController::class, 'pages'])->name('page');