Commit 47843107321382cce786fa91aeb8418db06d2894

Authored by Андрей Ларионов
1 parent 224d9d0ee8

Баг-ошибка это с сообщениями и избранными данными

Showing 7 changed files with 243 additions and 220 deletions Inline Diff

app/Http/Controllers/EmployerController.php
1 <?php 1 <?php
2 2
3 namespace App\Http\Controllers; 3 namespace App\Http\Controllers;
4 4
5 use App\Classes\RusDate; 5 use App\Classes\RusDate;
6 use App\Classes\Tools; 6 use App\Classes\Tools;
7 use App\Http\Requests\FlotRequest; 7 use App\Http\Requests\FlotRequest;
8 use App\Http\Requests\MessagesRequiest; 8 use App\Http\Requests\MessagesRequiest;
9 use App\Http\Requests\VacansiaRequiest; 9 use App\Http\Requests\VacansiaRequiest;
10 use App\Mail\MailSotrudnichestvo; 10 use App\Mail\MailSotrudnichestvo;
11 use App\Mail\SendAllMessages; 11 use App\Mail\SendAllMessages;
12 use App\Models\Ad_employer; 12 use App\Models\Ad_employer;
13 use App\Models\Ad_jobs; 13 use App\Models\Ad_jobs;
14 use App\Models\ad_response; 14 use App\Models\ad_response;
15 use App\Models\Category; 15 use App\Models\Category;
16 use App\Models\Education; 16 use App\Models\Education;
17 use App\Models\Employer; 17 use App\Models\Employer;
18 use App\Models\employers_main; 18 use App\Models\employers_main;
19 use App\Models\Flot; 19 use App\Models\Flot;
20 use App\Models\Job_title; 20 use App\Models\Job_title;
21 use App\Models\Message; 21 use App\Models\Message;
22 use App\Models\Worker; 22 use App\Models\Worker;
23 use Illuminate\Database\Eloquent\Builder; 23 use Illuminate\Database\Eloquent\Builder;
24 use Illuminate\Foundation\Auth\User; 24 use Illuminate\Foundation\Auth\User;
25 use Illuminate\Http\Request; 25 use Illuminate\Http\Request;
26 use Illuminate\Support\Facades\Auth; 26 use Illuminate\Support\Facades\Auth;
27 use Illuminate\Support\Facades\Hash; 27 use Illuminate\Support\Facades\Hash;
28 use Illuminate\Support\Facades\Mail; 28 use Illuminate\Support\Facades\Mail;
29 use Illuminate\Support\Facades\Storage; 29 use Illuminate\Support\Facades\Storage;
30 use App\Models\User as User_Model; 30 use App\Models\User as User_Model;
31 use Illuminate\Support\Facades\Validator; 31 use Illuminate\Support\Facades\Validator;
32 32
33 class EmployerController extends Controller 33 class EmployerController extends Controller
34 { 34 {
35 public function vacancie($vacancy, Request $request) { 35 public function vacancie($vacancy, Request $request) {
36 $title = 'Заголовок вакансии'; 36 $title = 'Заголовок вакансии';
37 37
38 $Query = Ad_employer::with('jobs')-> 38 $Query = Ad_employer::with('jobs')->
39 with('cat')-> 39 with('cat')->
40 with('employer')-> 40 with('employer')->
41 with('jobs_code')-> 41 with('jobs_code')->
42 select('ad_employers.*')-> 42 select('ad_employers.*')->
43 where('id', '=', $vacancy)->get(); 43 where('id', '=', $vacancy)->get();
44 44
45 $title = $Query[0]->name; 45 $title = $Query[0]->name;
46 if ($request->ajax()) { 46 if ($request->ajax()) {
47 return view('ajax.vacance-item', compact('Query')); 47 return view('ajax.vacance-item', compact('Query'));
48 } else { 48 } else {
49 return view('vacance-item', compact('title', 'Query')); 49 return view('vacance-item', compact('title', 'Query'));
50 } 50 }
51 } 51 }
52 52
53 public function logout() { 53 public function logout() {
54 Auth::logout(); 54 Auth::logout();
55 return redirect()->route('index') 55 return redirect()->route('index')
56 ->with('success', 'Вы вышли из личного кабинета'); 56 ->with('success', 'Вы вышли из личного кабинета');
57 } 57 }
58 58
59 public function cabinet() { 59 public function cabinet() {
60 $id = Auth()->user()->id; 60 $id = Auth()->user()->id;
61 $Employer = Employer::query()->with('users')->with('ads')->with('flots')-> 61 $Employer = Employer::query()->with('users')->with('ads')->with('flots')->
62 WhereHas('users', 62 WhereHas('users',
63 function (Builder $query) use ($id) {$query->Where('id', $id); 63 function (Builder $query) use ($id) {$query->Where('id', $id);
64 })->get(); 64 })->get();
65 return view('employers.cabinet45', compact('Employer')); 65 return view('employers.cabinet45', compact('Employer'));
66 } 66 }
67 67
68 public function cabinet_save(Employer $Employer, Request $request) { 68 public function cabinet_save(Employer $Employer, Request $request) {
69 $params = $request->all(); 69 $params = $request->all();
70 $params['user_id'] = Auth()->user()->id; 70 $params['user_id'] = Auth()->user()->id;
71 $id = $Employer->id; 71 $id = $Employer->id;
72 72
73 if ($request->has('logo')) { 73 if ($request->has('logo')) {
74 if (!empty($Employer->logo)) { 74 if (!empty($Employer->logo)) {
75 Storage::delete($Employer->logo); 75 Storage::delete($Employer->logo);
76 } 76 }
77 $params['logo'] = $request->file('logo')->store("employer/$id", 'public'); 77 $params['logo'] = $request->file('logo')->store("employer/$id", 'public');
78 } 78 }
79 79
80 $Employer->update($params); 80 $Employer->update($params);
81 81
82 return redirect()->route('employer.cabinet')->with('success', 'Данные были успешно сохранены'); 82 return redirect()->route('employer.cabinet')->with('success', 'Данные были успешно сохранены');
83 } 83 }
84 84
85 public function save_add_flot(FlotRequest $request) { 85 public function save_add_flot(FlotRequest $request) {
86 // отмена 86 // отмена
87 $params = $request->all(); 87 $params = $request->all();
88 88
89 if ($request->has('image')) { 89 if ($request->has('image')) {
90 $params['image'] = $request->file('image')->store("flot", 'public'); 90 $params['image'] = $request->file('image')->store("flot", 'public');
91 } 91 }
92 Flot::create($params); 92 Flot::create($params);
93 $data_flots = Flot::query()->where('employer_id', $request->get('employer_if'))->get(); 93 $data_flots = Flot::query()->where('employer_id', $request->get('employer_if'))->get();
94 return redirect()->route('employer.cabinet')->with('success', 'Новый корабль был добавлен'); 94 return redirect()->route('employer.cabinet')->with('success', 'Новый корабль был добавлен');
95 } 95 }
96 96
97 public function delete_flot(Flot $Flot) { 97 public function delete_flot(Flot $Flot) {
98 $data_flots = Flot::query()->where('employer_id', $Flot->employer_id)->get(); 98 $data_flots = Flot::query()->where('employer_id', $Flot->employer_id)->get();
99 99
100 if (isset($Flot->id)) $Flot->delete(); 100 if (isset($Flot->id)) $Flot->delete();
101 return redirect()->route('employer.cabinet')->with('success', 'Корабль был удален'); 101 return redirect()->route('employer.cabinet')->with('success', 'Корабль был удален');
102 } 102 }
103 103
104 // Форма добавления вакансий 104 // Форма добавления вакансий
105 public function cabinet_vacancie() { 105 public function cabinet_vacancie() {
106 $id = Auth()->user()->id; 106 $id = Auth()->user()->id;
107 $jobs = Job_title::query()->OrderBy('name')->get(); 107 $jobs = Job_title::query()->OrderBy('name')->get();
108 108
109 $Employer = Employer::query()->with('users')->with('ads')->with('flots')-> 109 $Employer = Employer::query()->with('users')->with('ads')->with('flots')->
110 WhereHas('users', 110 WhereHas('users',
111 function (Builder $query) use ($id) {$query->Where('id', $id); 111 function (Builder $query) use ($id) {$query->Where('id', $id);
112 })->get(); 112 })->get();
113 113
114 return view('employers.add_vacancy', compact('Employer', 'jobs')); 114 return view('employers.add_vacancy', compact('Employer', 'jobs'));
115 } 115 }
116 116
117 // Сохранение вакансии 117 // Сохранение вакансии
118 public function cabinet_vacancy_save1(VacansiaRequiest $request) { 118 public function cabinet_vacancy_save1(VacansiaRequiest $request) {
119 $params = $request->all(); 119 $params = $request->all();
120 $jobs['min_salary'] = $params['min_salary']; 120 $jobs['min_salary'] = $params['min_salary'];
121 $jobs['max_salary'] = $params['max_salary']; 121 $jobs['max_salary'] = $params['max_salary'];
122 $jobs['flot'] = $params['flot']; 122 $jobs['flot'] = $params['flot'];
123 $jobs['power'] = $params['power']; 123 $jobs['power'] = $params['power'];
124 $jobs['sytki'] = $params['sytki']; 124 $jobs['sytki'] = $params['sytki'];
125 $jobs['start'] = $params['start']; 125 $jobs['start'] = $params['start'];
126 $jobs['job_title_id'] = $params['job_title_id']; 126 $jobs['job_title_id'] = $params['job_title_id'];
127 $jobs['description'] = $params['description']; 127 $jobs['description'] = $params['description'];
128 $jobs['region'] = $params['city']; 128 $jobs['region'] = $params['city'];
129 unset($params['min_salary']); 129 unset($params['min_salary']);
130 unset($params['max_salary']); 130 unset($params['max_salary']);
131 unset($params['flot']); 131 unset($params['flot']);
132 unset($params['sytki']); 132 unset($params['sytki']);
133 unset($params['start']); 133 unset($params['start']);
134 unset($params['job_title_id']); 134 unset($params['job_title_id']);
135 unset($params['description']); 135 unset($params['description']);
136 136
137 $id = Ad_employer::create($params)->id; 137 $id = Ad_employer::create($params)->id;
138 $jobs['ad_employer_id'] = $id; 138 $jobs['ad_employer_id'] = $id;
139 Ad_jobs::create($jobs); 139 Ad_jobs::create($jobs);
140 140
141 return redirect()->route('employer.cabinet_vacancie'); 141 return redirect()->route('employer.cabinet_vacancie');
142 } 142 }
143 143
144 // Список вакансий 144 // Список вакансий
145 public function vacancy_list(Request $request) { 145 public function vacancy_list(Request $request) {
146 $id = Auth()->user()->id; 146 $id = Auth()->user()->id;
147 $Employer = Employer::query()->where('user_id', $id)->first(); 147 $Employer = Employer::query()->where('user_id', $id)->first();
148 $vacancy_list = Ad_employer::query()->where('employer_id', $Employer->id)->OrderByDESC('updated_at')->get(); 148 $vacancy_list = Ad_employer::query()->where('employer_id', $Employer->id)->OrderByDESC('updated_at')->get();
149 149
150 return view('employers.list_vacancy', compact('vacancy_list', 'Employer')); 150 return view('employers.list_vacancy', compact('vacancy_list', 'Employer'));
151 } 151 }
152 152
153 // Карточка вакансии 153 // Карточка вакансии
154 public function vacancy_edit(Ad_employer $ad_employer) { 154 public function vacancy_edit(Ad_employer $ad_employer) {
155 $id = Auth()->user()->id; 155 $id = Auth()->user()->id;
156 $jobs = Job_title::query()->OrderBy('name')->get(); 156 $jobs = Job_title::query()->OrderBy('name')->get();
157 $Employer = Employer::query()->where('user_id', $id)->first(); 157 $Employer = Employer::query()->where('user_id', $id)->first();
158 158
159 return view('employers.edit_vacancy', compact('ad_employer', 'Employer', 'jobs')); 159 return view('employers.edit_vacancy', compact('ad_employer', 'Employer', 'jobs'));
160 } 160 }
161 161
162 // Сохранение карточки вакансии 162 // Сохранение карточки вакансии
163 public function vacancy_save(Request $request, Ad_employer $ad_employer) { 163 public function vacancy_save(Request $request, Ad_employer $ad_employer) {
164 $all = $request->all(); 164 $all = $request->all();
165 $ad_employer->update($all); 165 $ad_employer->update($all);
166 return redirect()->route('employer.cabinet_vacancie'); 166 return redirect()->route('employer.cabinet_vacancie');
167 } 167 }
168 168
169 // Удаление карточки вакансии 169 // Удаление карточки вакансии
170 public function vacancy_delete(Ad_employer $ad_employer) { 170 public function vacancy_delete(Ad_employer $ad_employer) {
171 $ad_employer->delete(); 171 $ad_employer->delete();
172 172
173 return redirect()->route('employer.vacancy_list') 173 return redirect()->route('employer.vacancy_list')
174 ->with('success', 'Данные были успешно сохранены'); 174 ->with('success', 'Данные были успешно сохранены');
175 } 175 }
176 176
177 // Обновление даты 177 // Обновление даты
178 public function vacancy_up(Ad_employer $ad_employer) { 178 public function vacancy_up(Ad_employer $ad_employer) {
179 $up = date('m/d/Y h:i:s', time());; 179 $up = date('m/d/Y h:i:s', time());;
180 $vac_emp = Ad_employer::findOrFail($ad_employer->id); 180 $vac_emp = Ad_employer::findOrFail($ad_employer->id);
181 $vac_emp->updated_at = $up; 181 $vac_emp->updated_at = $up;
182 $vac_emp->save(); 182 $vac_emp->save();
183 183
184 return redirect()->route('employer.vacancy_list'); 184 return redirect()->route('employer.vacancy_list');
185 // начало конца 185 // начало конца
186 } 186 }
187 187
188 //Видимость вакансии 188 //Видимость вакансии
189 public function vacancy_eye(Ad_employer $ad_employer, $status) { 189 public function vacancy_eye(Ad_employer $ad_employer, $status) {
190 $vac_emp = Ad_employer::findOrFail($ad_employer->id); 190 $vac_emp = Ad_employer::findOrFail($ad_employer->id);
191 $vac_emp->active_is = $status; 191 $vac_emp->active_is = $status;
192 $vac_emp->save(); 192 $vac_emp->save();
193 193
194 return redirect()->route('employer.vacancy_list'); 194 return redirect()->route('employer.vacancy_list');
195 } 195 }
196 196
197 //Вакансия редактирования (шаблон) 197 //Вакансия редактирования (шаблон)
198 public function vacancy_update(Ad_employer $id) { 198 public function vacancy_update(Ad_employer $id) {
199 199
200 } 200 }
201 201
202 //Отклики на вакансию - лист 202 //Отклики на вакансию - лист
203 public function answers(Employer $employer, Request $request) { 203 public function answers(Employer $employer, Request $request) {
204 $user_id = Auth()->user()->id; 204 $user_id = Auth()->user()->id;
205 $answer = Ad_employer::query()->where('employer_id', $employer->id); 205 $answer = Ad_employer::query()->where('employer_id', $employer->id);
206 if ($request->has('search')) { 206 if ($request->has('search')) {
207 $search = trim($request->get('search')); 207 $search = trim($request->get('search'));
208 if (!empty($search)) $answer = $answer->where('name', 'LIKE', "%$search%"); 208 if (!empty($search)) $answer = $answer->where('name', 'LIKE', "%$search%");
209 } 209 }
210 210
211 $answer = $answer->with('response')->get(); 211 $answer = $answer->with('response')->get();
212 212
213 return view('employers.list_answer', compact('answer', 'user_id', 'employer')); 213 return view('employers.list_answer', compact('answer', 'user_id', 'employer'));
214 } 214 }
215 215
216 //Обновление статуса 216 //Обновление статуса
217 public function supple_status(employer $employer, ad_response $ad_response, $flag) { 217 public function supple_status(employer $employer, ad_response $ad_response, $flag) {
218 $ad_response->update(Array('flag' => $flag)); 218 $ad_response->update(Array('flag' => $flag));
219 return redirect()->route('employer.answers', ['employer' => $employer->id]); 219 return redirect()->route('employer.answers', ['employer' => $employer->id]);
220 } 220 }
221 221
222 //Страницы сообщений список 222 //Страницы сообщений список
223 public function messages($type_message) { 223 public function messages($type_message) {
224 $user_id = Auth()->user()->id; 224 $user_id = Auth()->user()->id;
225 225
226 $messages_input = Message::query()->with('vacancies')->with('user_from')-> 226 $messages_input = Message::query()->with('vacancies')->with('user_from')->
227 Where('to_user_id', $user_id)->OrderByDesc('created_at'); 227 Where('to_user_id', $user_id)->OrderByDesc('created_at');
228 228
229 $messages_output = Message::query()->with('vacancies')-> 229 $messages_output = Message::query()->with('vacancies')->
230 with('user_to')->where('user_id', $user_id)-> 230 with('user_to')->where('user_id', $user_id)->
231 OrderByDesc('created_at'); 231 OrderByDesc('created_at');
232 232
233 233
234 $count_input = $messages_input->count(); 234 $count_input = $messages_input->count();
235 $count_output = $messages_output->count(); 235 $count_output = $messages_output->count();
236 236
237 if ($type_message == 'input') { 237 if ($type_message == 'input') {
238 $messages = $messages_input->paginate(15); 238 $messages = $messages_input->paginate(15);
239 } 239 }
240 240
241 if ($type_message == 'output') { 241 if ($type_message == 'output') {
242 $messages = $messages_output->paginate(15); 242 $messages = $messages_output->paginate(15);
243 } 243 }
244 244
245 return view('employers.messages', compact('messages', 'count_input', 'count_output', 'type_message', 'user_id')); 245 return view('employers.messages', compact('messages', 'count_input', 'count_output', 'type_message', 'user_id'));
246 } 246 }
247 247
248 // Диалог между пользователями 248 // Диалог между пользователями
249 public function dialog(User_Model $user1, User_Model $user2) { 249 public function dialog(User_Model $user1, User_Model $user2) {
250 if (isset($user2->id)) { 250 if (isset($user2->id)) {
251 $companion = User_Model::query()->with('workers')-> 251 $companion = User_Model::query()->with('workers')->
252 with('employers')-> 252 with('employers')->
253 where('id', $user2->id)->first(); 253 where('id', $user2->id)->first();
254 } 254 }
255 255
256 $Messages = Message::query()->with('response')->where(function($query) use ($user1, $user2) { 256 $Messages = Message::query()->with('response')->where(function($query) use ($user1, $user2) {
257 $query->where('user_id', $user1->id)->where('to_user_id', $user2->id); 257 $query->where('user_id', $user1->id)->where('to_user_id', $user2->id);
258 })->orWhere(function($query) use ($user1, $user2) { 258 })->orWhere(function($query) use ($user1, $user2) {
259 $query->where('user_id', $user2->id)->where('to_user_id', $user1->id); 259 $query->where('user_id', $user2->id)->where('to_user_id', $user1->id);
260 })->OrderBy('created_at')->get(); 260 })->OrderBy('created_at')->get();
261 261
262 $id_vac = null; 262 $id_vac = null;
263 foreach ($Messages as $it) { 263 foreach ($Messages as $it) {
264 if (isset($it->response)) { 264 if (isset($it->response)) {
265 foreach ($it->response as $r) { 265 foreach ($it->response as $r) {
266 if (isset($r->ad_employer_id)) { 266 if (isset($r->ad_employer_id)) {
267 $id_vac = $r->ad_employer_id; 267 $id_vac = $r->ad_employer_id;
268 break; 268 break;
269 } 269 }
270 } 270 }
271 } 271 }
272 if (!is_null($id_vac)) break; 272 if (!is_null($id_vac)) break;
273 } 273 }
274 274
275 $ad_employer = null; 275 $ad_employer = null;
276 if (!is_null($id_vac)) $ad_employer = Ad_employer::query()->where('id', $id_vac)->first(); 276 if (!is_null($id_vac)) $ad_employer = Ad_employer::query()->where('id', $id_vac)->first();
277 $sender = $user1; 277 $sender = $user1;
278 278
279 return view('employers.dialog', compact('companion', 'sender', 'Messages', 'ad_employer')); 279 return view('employers.dialog', compact('companion', 'sender', 'Messages', 'ad_employer'));
280 } 280 }
281 281
282 // Отправка сообщения от работодателя 282 // Отправка сообщения от работодателя
283 public function send_message(MessagesRequiest $request) { 283 public function send_message(MessagesRequiest $request) {
284 $params = $request->all(); 284 $params = $request->all();
285 dd($params); 285 dd($params);
286 $user1 = $params['user_id']; 286 $user1 = $params['user_id'];
287 $user2 = $params['to_user_id']; 287 $user2 = $params['to_user_id'];
288 288
289 if ($request->has('file')) { 289 if ($request->has('file')) {
290 $params['file'] = $request->file('file')->store("messages", 'public'); 290 $params['file'] = $request->file('file')->store("messages", 'public');
291 } 291 }
292 Message::create($params); 292 Message::create($params);
293 return redirect()->route('employer.dialog', ['user1' => $user1, 'user2' => $user2]); 293 return redirect()->route('employer.dialog', ['user1' => $user1, 'user2' => $user2]);
294 } 294 }
295 295
296 public function test123(Request $request) { 296 public function test123(Request $request) {
297 $params = $request->all(); 297 $params = $request->all();
298 $user1 = $params['user_id']; 298 $user1 = $params['user_id'];
299 $user2 = $params['to_user_id']; 299 $user2 = $params['to_user_id'];
300 300
301 $rules = [ 301 $rules = [
302 'text' => 'required|min:1|max:150000', 302 'text' => 'required|min:1|max:150000',
303 'file' => 'file|mimes:doc,docx,xlsx,csv,txt,xlx,xls,pdf|max:150000' 303 'file' => 'file|mimes:doc,docx,xlsx,csv,txt,xlx,xls,pdf|max:150000'
304 ]; 304 ];
305 $messages = [ 305 $messages = [
306 'required' => 'Укажите обязательное поле', 306 'required' => 'Укажите обязательное поле',
307 'min' => [ 307 'min' => [
308 'string' => 'Поле «:attribute» должно быть не меньше :min символов', 308 'string' => 'Поле «:attribute» должно быть не меньше :min символов',
309 'integer' => 'Поле «:attribute» должно быть :min или больше', 309 'integer' => 'Поле «:attribute» должно быть :min или больше',
310 'file' => 'Файл «:attribute» должен быть не меньше :min Кбайт' 310 'file' => 'Файл «:attribute» должен быть не меньше :min Кбайт'
311 ], 311 ],
312 'max' => [ 312 'max' => [
313 'string' => 'Поле «:attribute» должно быть не больше :max символов', 313 'string' => 'Поле «:attribute» должно быть не больше :max символов',
314 'integer' => 'Поле «:attribute» должно быть :max или меньше', 314 'integer' => 'Поле «:attribute» должно быть :max или меньше',
315 'file' => 'Файл «:attribute» должен быть не больше :max Кбайт' 315 'file' => 'Файл «:attribute» должен быть не больше :max Кбайт'
316 ] 316 ]
317 ]; 317 ];
318 318
319 $validator = Validator::make($request->all(), $rules, $messages); 319 $validator = Validator::make($request->all(), $rules, $messages);
320 320
321 if ($validator->fails()) { 321 if ($validator->fails()) {
322 return redirect()->route('employer.dialog', ['user1' => $user1, 'user2' => $user2]) 322 return redirect()->route('employer.dialog', ['user1' => $user1, 'user2' => $user2])
323 ->withErrors($validator); 323 ->withErrors($validator);
324 } else { 324 } else {
325 if ($request->has('file')) { 325 if ($request->has('file')) {
326 $params['file'] = $request->file('file')->store("messages", 'public'); 326 $params['file'] = $request->file('file')->store("messages", 'public');
327 } 327 }
328 Message::create($params); 328 Message::create($params);
329 return redirect()->route('employer.dialog', ['user1' => $user1, 'user2' => $user2]); 329 return redirect()->route('employer.dialog', ['user1' => $user1, 'user2' => $user2]);
330 330
331 } 331 }
332 } 332 }
333 333
334 //Избранные люди 334 //Избранные люди
335 public function favorites(Request $request) { 335 public function favorites(Request $request) {
336 $items = RusDate::count_item_fav(); 336 if (isset($_COOKIE['favorite_worker'])) {
337 $it = $_COOKIE['favorite_worker']; 337 $items = RusDate::count_item_fav();
338 $it = str_replace('"', "", $it); 338 $it = $_COOKIE['favorite_worker'];
339 $it = str_replace('[', "", $it); 339 $it = str_replace('"', "", $it);
340 $it = str_replace(']', "", $it); 340 $it = str_replace('[', "", $it);
341 $Arr = explode(",", $it); 341 $it = str_replace(']', "", $it);
342 $Arr = explode(",", $it);
343 } else {
344 $Arr = Array();
345 }
342 346
343 $Workers = Worker::query(); 347 $Workers = Worker::query();
344 $Workers = $Workers->whereIn('id', $Arr); 348 $Workers = $Workers->whereIn('id', $Arr);
345 349
346 if (($request->has('search')) && (!empty($request->get('search')))) { 350 if (($request->has('search')) && (!empty($request->get('search')))) {
347 $search = $request->get('search'); 351 $search = $request->get('search');
348 352
349 $Workers = $Workers->WhereHas('users', 353 $Workers = $Workers->WhereHas('users',
350 function (Builder $query) use ($search) { 354 function (Builder $query) use ($search) {
351 $query->Where('surname', 'LIKE', "%$search%") 355 $query->Where('surname', 'LIKE', "%$search%")
352 ->orWhere('name_man', 'LIKE', "%$search%") 356 ->orWhere('name_man', 'LIKE', "%$search%")
353 ->orWhere('surname2', 'LIKE', "%$search%"); 357 ->orWhere('surname2', 'LIKE', "%$search%");
354 }); 358 });
355 } else { 359 } else {
356 $Workers = $Workers->with('users'); 360 $Workers = $Workers->with('users');
357 } 361 }
358 362
359 $Workers = $Workers->get(); 363 $Workers = $Workers->get();
360 return view('employers.favorite', compact('Workers')); 364 return view('employers.favorite', compact('Workers'));
361 } 365 }
362 366
363 // База данных 367 // База данных
364 public function bd(Request $request) { 368 public function bd(Request $request) {
365 // для типа BelongsTo 369 // для типа BelongsTo
366 //$documents = Document::query()->orderBy(Location::select('name') 370 //$documents = Document::query()->orderBy(Location::select('name')
367 // ->whereColumn('locations.id', 'documents.location_id') 371 // ->whereColumn('locations.id', 'documents.location_id')
368 //); 372 //);
369 373
370 // для типа HasOne/Many 374 // для типа HasOne/Many
371 // $documents = Document::::query()->orderBy(Location::select('name') 375 // $documents = Document::::query()->orderBy(Location::select('name')
372 // ->whereColumn('locations.document_id', 'documents.id') 376 // ->whereColumn('locations.document_id', 'documents.id')
373 //); 377 //);
374 378
375 $users = User_Model::query()->with('workers'); 379 $users = User_Model::query()->with('workers');
376 if (isset($request->find)) { 380 if (isset($request->find)) {
377 $find_key = $request->find; 381 $find_key = $request->find;
378 $users = $users->where('name', 'LIKE', "%$find_key%") 382 $users = $users->where('name', 'LIKE', "%$find_key%")
379 ->orWhere('email', 'LIKE', "%$find_key%") 383 ->orWhere('email', 'LIKE', "%$find_key%")
380 ->orWhere('telephone', 'LIKE', "%$find_key%"); 384 ->orWhere('telephone', 'LIKE', "%$find_key%");
381 } 385 }
382 386
383 // Данные 387 // Данные
384 $users = $users->Baseuser()-> 388 $users = $users->Baseuser()->
385 orderBy(Worker::select('position_work')->whereColumn('workers.user_id', 'users.id'))-> 389 orderBy(Worker::select('position_work')->whereColumn('workers.user_id', 'users.id'))->
386 paginate(5); 390 paginate(5);
387 391
388 return view('employers.bd', compact('users')); 392 return view('employers.bd', compact('users'));
389 } 393 }
390 394
391 //Настройка уведомлений 395 //Настройка уведомлений
392 public function subscribe() { 396 public function subscribe() {
393 return view('employers.subcribe'); 397 return view('employers.subcribe');
394 } 398 }
395 399
396 //Установка уведомлений сохранение 400 //Установка уведомлений сохранение
397 public function save_subscribe(Request $request) { 401 public function save_subscribe(Request $request) {
398 dd($request->all()); 402 dd($request->all());
399 $msg = $request->validate([ 403 $msg = $request->validate([
400 'subscribe_email' => 'required|email|min:5|max:255', 404 'subscribe_email' => 'required|email|min:5|max:255',
401 ]); 405 ]);
402 return redirect()->route('employer.subscribe')->with('Вы успешно подписались на рассылку'); 406 return redirect()->route('employer.subscribe')->with('Вы успешно подписались на рассылку');
403 } 407 }
404 408
405 //Сбросить форму с паролем 409 //Сбросить форму с паролем
406 public function password_reset() { 410 public function password_reset() {
407 $email = Auth()->user()->email; 411 $email = Auth()->user()->email;
408 return view('employers.password-reset', compact('email')); 412 return view('employers.password-reset', compact('email'));
409 } 413 }
410 414
411 //Обновление пароля 415 //Обновление пароля
412 public function new_password(Request $request) { 416 public function new_password(Request $request) {
413 $use = Auth()->user(); 417 $use = Auth()->user();
414 $request->validate([ 418 $request->validate([
415 'password' => 'required|string', 419 'password' => 'required|string',
416 'new_password' => 'required|string', 420 'new_password' => 'required|string',
417 'new_password2' => 'required|string' 421 'new_password2' => 'required|string'
418 ]); 422 ]);
419 423
420 if ($request->get('new_password') == $request->get('new_password2')) 424 if ($request->get('new_password') == $request->get('new_password2'))
421 if ($request->get('password') !== $request->get('new_password')) { 425 if ($request->get('password') !== $request->get('new_password')) {
422 $credentials = $request->only('email', 'password'); 426 $credentials = $request->only('email', 'password');
423 if (Auth::attempt($credentials)) { 427 if (Auth::attempt($credentials)) {
424 428
425 if (!is_null($use->email_verified_at)){ 429 if (!is_null($use->email_verified_at)){
426 430
427 $user_data = User_Model::find($use->id); 431 $user_data = User_Model::find($use->id);
428 $user_data->update([ 432 $user_data->update([
429 'password' => Hash::make($request->get('new_password')), 433 'password' => Hash::make($request->get('new_password')),
430 'pubpassword' => base64_encode($request->get('new_password')), 434 'pubpassword' => base64_encode($request->get('new_password')),
431 ]); 435 ]);
432 return redirect() 436 return redirect()
433 ->route('employer.password_reset') 437 ->route('employer.password_reset')
434 ->with('success', 'Поздравляю! Вы обновили свой пароль!'); 438 ->with('success', 'Поздравляю! Вы обновили свой пароль!');
435 } 439 }
436 440
437 return redirect() 441 return redirect()
438 ->route('employer.password_reset') 442 ->route('employer.password_reset')
439 ->withError('Данная учетная запись не было верифицированна!'); 443 ->withError('Данная учетная запись не было верифицированна!');
440 } 444 }
441 } 445 }
442 446
443 return redirect() 447 return redirect()
444 ->route('employer.password_reset') 448 ->route('employer.password_reset')
445 ->withErrors('Не совпадение данных, обновите пароли!'); 449 ->withErrors('Не совпадение данных, обновите пароли!');
446 } 450 }
447 451
448 // Форма Удаление пипла 452 // Форма Удаление пипла
449 public function delete_people() { 453 public function delete_people() {
450 $login = Auth()->user()->email; 454 $login = Auth()->user()->email;
451 return view('employers.delete_people', compact('login')); 455 return view('employers.delete_people', compact('login'));
452 } 456 }
453 457
454 // Удаление аккаунта 458 // Удаление аккаунта
455 public function action_delete_user(Request $request) { 459 public function action_delete_user(Request $request) {
456 $Answer = $request->all(); 460 $Answer = $request->all();
457 $user_id = Auth()->user()->id; 461 $user_id = Auth()->user()->id;
458 $request->validate([ 462 $request->validate([
459 'password' => 'required|string', 463 'password' => 'required|string',
460 ]); 464 ]);
461 465
462 $credentials = $request->only('email', 'password'); 466 $credentials = $request->only('email', 'password');
463 if (Auth::attempt($credentials)) { 467 if (Auth::attempt($credentials)) {
464 Auth::logout(); 468 Auth::logout();
465 $it = User_Model::find($user_id); 469 $it = User_Model::find($user_id);
466 //$it->delete(); 470 //$it->delete();
467 return redirect()->route('index')->with('success', 'Вы успешно удалили свой аккаунт'); 471 return redirect()->route('index')->with('success', 'Вы успешно удалили свой аккаунт');
468 } else { 472 } else {
469 return redirect()->route('employer.delete_people') 473 return redirect()->route('employer.delete_people')
470 ->withErrors( 'Неверный пароль! Нужен корректный пароль'); 474 ->withErrors( 'Неверный пароль! Нужен корректный пароль');
471 } 475 }
472 } 476 }
473 477
474 // FAQ - Вопросы/ответы для работодателей и соискателей 478 // FAQ - Вопросы/ответы для работодателей и соискателей
475 public function faq() { 479 public function faq() {
476 return view('employers.faq'); 480 return view('employers.faq');
477 } 481 }
478 482
479 // Рассылка сообщений 483 // Рассылка сообщений
480 public function send_all_messages() { 484 public function send_all_messages() {
481 return view('employers.send_all'); 485 return view('employers.send_all');
482 } 486 }
483 487
484 // Отправка сообщений для информации 488 // Отправка сообщений для информации
485 public function send_all_post(Request $request) { 489 public function send_all_post(Request $request) {
486 $data = $request->all(); 490 $data = $request->all();
487 491
488 $emails = User_Model::query()->where('is_worker', '1')->get(); 492 $emails = User_Model::query()->where('is_worker', '1')->get();
489 493
490 foreach ($emails as $e) { 494 foreach ($emails as $e) {
491 Mail::to($e->email)->send(new SendAllMessages($data)); 495 Mail::to($e->email)->send(new SendAllMessages($data));
492 } 496 }
493 497
494 return redirect()->route('employer.send_all_messages')->with('success', 'Письма были отправлены'); 498 return redirect()->route('employer.send_all_messages')->with('success', 'Письма были отправлены');
495 } 499 }
496 500
497 // База резюме 501 // База резюме
498 public function bd_tupe(Request $request) { 502 public function bd_tupe(Request $request) {
499 $Resume = User_Model::query()->with('workers')->where('is_bd', '=', '1')->get(); 503 $Resume = User_Model::query()->with('workers')->where('is_bd', '=', '1')->get();
500 504
501 return view('employers.bd_tupe', compact('Resume')); 505 return view('employers.bd_tupe', compact('Resume'));
502 } 506 }
503 } 507 }
504 508
resources/views/layout/frontend.blade.php
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html lang="{{ str_replace('_', '-', app()->getLocale()) }}"> 2 <html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
3 3
4 <head> 4 <head>
5 <meta charset="utf-8"> 5 <meta charset="utf-8">
6 <title>{{ $title }}</title> 6 <title>{{ $title }}</title>
7 <meta name="viewport" content="width=device-width,initial-scale=1"> 7 <meta name="viewport" content="width=device-width,initial-scale=1">
8 <meta name="theme-color" content="#377D87"> 8 <meta name="theme-color" content="#377D87">
9 <script src="{{ asset('js/jquery.js') }}"></script> 9 <script src="{{ asset('js/jquery.js') }}"></script>
10 <script type="text/javascript" src="{{ asset('js/jquery.cookie.js') }}"></script> 10 <script type="text/javascript" src="{{ asset('js/jquery.cookie.js') }}"></script>
11 <link rel="stylesheet" href="{{ asset('css/style.css') }}"> 11 <link rel="stylesheet" href="{{ asset('css/style.css') }}">
12 </head> 12 </head>
13 13
14 <body id="body"> 14 <body id="body">
15 <a href="#body" class="to-top js-scroll-to"> 15 <a href="#body" class="to-top js-scroll-to">
16 <svg> 16 <svg>
17 <use xlink:href="{{ asset('images/sprite.svg#arrow-top') }}"></use> 17 <use xlink:href="{{ asset('images/sprite.svg#arrow-top') }}"></use>
18 </svg> 18 </svg>
19 </a> 19 </a>
20 20
21 <div> <!-- BEGIN TOP WRAPPER --> 21 <div> <!-- BEGIN TOP WRAPPER -->
22 <header class="header"> 22 <header class="header">
23 <div class="container"> 23 <div class="container">
24 <div class="header__body"> 24 <div class="header__body">
25 <div class="header__left"> 25 <div class="header__left">
26 <a href="{{ route('index') }}" class="header__logo"> 26 <a href="{{ route('index') }}" class="header__logo">
27 <svg> 27 <svg>
28 <use xlink:href="{{ asset('images/sprite.svg#logo') }}"></use> 28 <use xlink:href="{{ asset('images/sprite.svg#logo') }}"></use>
29 </svg> 29 </svg>
30 </a> 30 </a>
31 <nav class="header__menu"> 31 <nav class="header__menu">
32 <a href="{{ route('vacancies') }}" class="header__menu-item">Вакансии</a> 32 <a href="{{ route('vacancies') }}" class="header__menu-item">Вакансии</a>
33 <a href="{{ route('shipping_companies') }}" class="header__menu-item">Судоходные компании</a> 33 <a href="{{ route('shipping_companies') }}" class="header__menu-item">Судоходные компании</a>
34 <a href="{{ route('education') }}" class="header__menu-item">Образование</a> 34 <a href="{{ route('education') }}" class="header__menu-item">Образование</a>
35 </nav> 35 </nav>
36 </div> 36 </div>
37 <div class="header__right"> 37 <div class="header__right">
38 @guest 38 @guest
39 39
40 @else 40 @else
41 <button class="header__notifs header__notifs_actived"> 41 <button class="header__notifs header__notifs_actived">
42 <svg> 42 <svg>
43 <use xlink:href="{{ asset('images/sprite.svg#ring') }}"></use> 43 <use xlink:href="{{ asset('images/sprite.svg#ring') }}"></use>
44 </svg> 44 </svg>
45 <span>Уведомления</span> 45 <span>Уведомления</span>
46 </button> 46 </button>
47 <a href="@if ($UserId->is_worker) {{ route('worker.cabinet') }} @else {{ route('employer.cabinet') }} @endif" class="header__notifs"> 47 <a href="@if ($UserId->is_worker) {{ route('worker.cabinet') }} @else {{ route('employer.cabinet') }} @endif" class="header__notifs">
48 Кабинет 48 Кабинет
49 </a> 49 </a>
50 @endguest 50 @endguest
51 <div class="header__right-line"></div> 51 <div class="header__right-line"></div>
52 <button class="header__burger"> 52 <button class="header__burger">
53 <svg> 53 <svg>
54 <use xlink:href="{{ asset('images/sprite.svg#burger') }}"></use> 54 <use xlink:href="{{ asset('images/sprite.svg#burger') }}"></use>
55 </svg> 55 </svg>
56 </button> 56 </button>
57 @guest 57 @guest
58 <a class="button header__sign" data-fancybox data-src="#sign" data-options='{"touch":false,"autoFocus":false}'>Войти</a> 58 <a class="button header__sign" data-fancybox data-src="#sign" data-options='{"touch":false,"autoFocus":false}'>Войти</a>
59 @else 59 @else
60 <a class="button header__sign" href="{{ route('logout') }}">Выйти</a> 60 <a class="button header__sign" href="{{ route('logout') }}">Выйти</a>
61 @endguest 61 @endguest
62 </div> 62 </div>
63 </div> 63 </div>
64 </div> 64 </div>
65 </header> 65 </header>
66 @yield('content') 66 @yield('content')
67 </div> <!-- END TOP WRAPPER --> 67 </div> <!-- END TOP WRAPPER -->
68 68
69 <div> <!-- BEGIN BOTTOM WRAPPER --> 69 <div> <!-- BEGIN BOTTOM WRAPPER -->
70 <footer class="footer"> 70 <footer class="footer">
71 <div class="container"> 71 <div class="container">
72 <div class="footer__mobile"> 72 <div class="footer__mobile">
73 <button class="footer__mobile-toper js-toggle active"> 73 <button class="footer__mobile-toper js-toggle active">
74 <a href="{{ route('index') }}"> 74 <a href="{{ route('index') }}">
75 <svg> 75 <svg>
76 <use xlink:href="{{ asset('images/sprite.svg#logo') }}"></use> 76 <use xlink:href="{{ asset('images/sprite.svg#logo') }}"></use>
77 </svg> 77 </svg>
78 </a> 78 </a>
79 <span> 79 <span>
80 <svg> 80 <svg>
81 <use xlink:href="{{ asset('images/sprite.svg#arrow-top') }}"></use> 81 <use xlink:href="{{ asset('images/sprite.svg#arrow-top') }}"></use>
82 </svg> 82 </svg>
83 </span> 83 </span>
84 </button> 84 </button>
85 <div class="footer__mobile-menu"> 85 <div class="footer__mobile-menu">
86 <div class="footer__mobile-menu-item"> 86 <div class="footer__mobile-menu-item">
87 <button class="js-toggle"> 87 <button class="js-toggle">
88 <b>Соискателям</b> 88 <b>Соискателям</b>
89 <span><svg> 89 <span><svg>
90 <use xlink:href="{{ asset('images/sprite.svg#arrow-top') }}"></use> 90 <use xlink:href="{{ asset('images/sprite.svg#arrow-top') }}"></use>
91 </svg></span> 91 </svg></span>
92 </button> 92 </button>
93 <div> 93 <div>
94 <a href="{{ route('vacancies') }}">Вакансии</a> 94 <a href="{{ route('vacancies') }}">Вакансии</a>
95 <a href="{{ route('page', ['pages' => "Usloviya-razmescheniya"]) }}">Условия размещения</a> 95 <a href="{{ route('page', ['pages' => "Usloviya-razmescheniya"]) }}">Условия размещения</a>
96 <a href="{{ route('education') }}">Образование</a> 96 <a href="{{ route('education') }}">Образование</a>
97 <a href="{{ route('news') }}">Новости</a> 97 <a href="{{ route('news') }}">Новости</a>
98 <a href="{{ route('contacts') }}">Контакты</a> 98 <a href="{{ route('contacts') }}">Контакты</a>
99 <a href="{{ route('page', ['pages' => "Publichnaya-oferta-soiskatelyam"]) }}">Публичная оферта</a> 99 <a href="{{ route('page', ['pages' => "Publichnaya-oferta-soiskatelyam"]) }}">Публичная оферта</a>
100 </div> 100 </div>
101 </div> 101 </div>
102 <div class="footer__mobile-menu-item"> 102 <div class="footer__mobile-menu-item">
103 <button class="js-toggle"> 103 <button class="js-toggle">
104 <b>Работодателям</b> 104 <b>Работодателям</b>
105 <span><svg> 105 <span><svg>
106 <use xlink:href="{{asset('images/sprite.svg#arrow-top') }}"></use> 106 <use xlink:href="{{asset('images/sprite.svg#arrow-top') }}"></use>
107 </svg></span> 107 </svg></span>
108 </button> 108 </button>
109 <div> 109 <div>
110 <a href="{{ route('register') }}">Регистрация</a> 110 <a href="{{ route('register') }}">Регистрация</a>
111 <a href="{{ route('bd_resume') }}">База резюме</a> 111 <a href="{{ route('bd_resume') }}">База резюме</a>
112 <a href="{{ route('page', ['pages' => "Stoimost-razmescheniya"]) }}">Стоимость размещения</a> 112 <a href="{{ route('page', ['pages' => "Stoimost-razmescheniya"]) }}">Стоимость размещения</a>
113 <a href="{{ route('page', ['pages' => "Instrukcii"]) }}">Инструкции</a> 113 <a href="{{ route('page', ['pages' => "Instrukcii"]) }}">Инструкции</a>
114 <a href="{{ route('page', ['pages' => "Effektivnost-obyavleniya"]) }}">Эффективность объявления</a> 114 <a href="{{ route('page', ['pages' => "Effektivnost-obyavleniya"]) }}">Эффективность объявления</a>
115 <a href="{{ route('page', ['pages' => "Publichnaya-oferta-rabotodatelyam"]) }}">Публичная оферта</a> 115 <a href="{{ route('page', ['pages' => "Publichnaya-oferta-rabotodatelyam"]) }}">Публичная оферта</a>
116 </div> 116 </div>
117 </div> 117 </div>
118 </div> 118 </div>
119 <div class="footer__mobile-contacts"> 119 <div class="footer__mobile-contacts">
120 <b>Контакты</b> 120 <b>Контакты</b>
121 <a href="tel:{{ $companies[0]->telephone }}">{{ $companies[0]->telephone }}</a> 121 <a href="tel:{{ $companies[0]->telephone }}">{{ $companies[0]->telephone }}</a>
122 <a href="mailto:{{ $companies[0]->email }}">{{ $companies[0]->email }}</a> 122 <a href="mailto:{{ $companies[0]->email }}">{{ $companies[0]->email }}</a>
123 </div> 123 </div>
124 <div class="footer__mobile-bottom"> 124 <div class="footer__mobile-bottom">
125 <div class="socials"> 125 <div class="socials">
126 <a href="{{ $companies[0]->vkontact }}" target="_blank"> 126 <a href="{{ $companies[0]->vkontact }}" target="_blank">
127 <svg> 127 <svg>
128 <use xlink:href="{{ asset('images/sprite.svg#vk') }}"></use> 128 <use xlink:href="{{ asset('images/sprite.svg#vk') }}"></use>
129 </svg> 129 </svg>
130 </a> 130 </a>
131 <a href="{{ $companies[0]->telegram }}" target="_blank"> 131 <a href="{{ $companies[0]->telegram }}" target="_blank">
132 <svg> 132 <svg>
133 <use xlink:href="{{ asset('images/sprite.svg#tg') }}"></use> 133 <use xlink:href="{{ asset('images/sprite.svg#tg') }}"></use>
134 </svg> 134 </svg>
135 </a> 135 </a>
136 </div> 136 </div>
137 <nav class="footer__mobile-links"> 137 <nav class="footer__mobile-links">
138 <a href="{{ route('page', ['pages' => "Politika-konfidencialnosti"]) }}">Политика конфиденциальности</a> 138 <a href="{{ route('page', ['pages' => "Politika-konfidencialnosti"]) }}">Политика конфиденциальности</a>
139 <span></span> 139 <span></span>
140 <a href="{{ route('page', ['pages' => "Polzovatelskoe-soglashenie"]) }}">Пользовательское соглашение</a> 140 <a href="{{ route('page', ['pages' => "Polzovatelskoe-soglashenie"]) }}">Пользовательское соглашение</a>
141 </nav> 141 </nav>
142 &copy; 2023 &mdash; RekaMore.su 142 &copy; 2023 &mdash; RekaMore.su
143 <a href="{{ route('index') }}" class="nls" target="_blank"> 143 <a href="{{ route('index') }}" class="nls" target="_blank">
144 <svg> 144 <svg>
145 <use xlink:href="{{ asset('images/sprite.svg#nls') }}"></use> 145 <use xlink:href="{{ asset('images/sprite.svg#nls') }}"></use>
146 </svg> 146 </svg>
147 <span> 147 <span>
148 Дизайн и разработка: 148 Дизайн и разработка:
149 <b>NoLogoStudio.ru</b> 149 <b>NoLogoStudio.ru</b>
150 </span> 150 </span>
151 </a> 151 </a>
152 </div> 152 </div>
153 </div> 153 </div>
154 <div class="footer__main"> 154 <div class="footer__main">
155 <div class="footer__main-body"> 155 <div class="footer__main-body">
156 <a href="" class="footer__main-logo"> 156 <a href="" class="footer__main-logo">
157 <svg> 157 <svg>
158 <use xlink:href="{{ asset('images/sprite.svg#logo') }}"></use> 158 <use xlink:href="{{ asset('images/sprite.svg#logo') }}"></use>
159 </svg> 159 </svg>
160 </a> 160 </a>
161 <div class="footer__main-col"> 161 <div class="footer__main-col">
162 <div class="footer__main-title">Соискателям</div> 162 <div class="footer__main-title">Соискателям</div>
163 <nav> 163 <nav>
164 <a href="{{ route('vacancies') }}">Вакансии</a> 164 <a href="{{ route('vacancies') }}">Вакансии</a>
165 <a href="{{ route('page', ['pages' => "Usloviya-razmescheniya"]) }}">Условия размещения</a> 165 <a href="{{ route('page', ['pages' => "Usloviya-razmescheniya"]) }}">Условия размещения</a>
166 <a href="{{ route('education') }}">Образование</a> 166 <a href="{{ route('education') }}">Образование</a>
167 <a href="{{ route('news') }}">Новости</a> 167 <a href="{{ route('news') }}">Новости</a>
168 <a href="{{ route('contacts') }}">Контакты</a> 168 <a href="{{ route('contacts') }}">Контакты</a>
169 <a href="{{ route('page', ['pages' => "Publichnaya-oferta-soiskatelyam"]) }}">Публичная оферта</a> 169 <a href="{{ route('page', ['pages' => "Publichnaya-oferta-soiskatelyam"]) }}">Публичная оферта</a>
170 </nav> 170 </nav>
171 </div> 171 </div>
172 <div class="footer__main-col"> 172 <div class="footer__main-col">
173 <div class="footer__main-title">Работодателям</div> 173 <div class="footer__main-title">Работодателям</div>
174 <nav> 174 <nav>
175 <a href="{{ route('register') }}">Регистрация</a> 175 <a href="{{ route('register') }}">Регистрация</a>
176 <a href="{{ route('bd_resume') }}">База резюме</a> 176 <a href="{{ route('bd_resume') }}">База резюме</a>
177 <a href="{{ route('page', ['pages' => "Stoimost-razmescheniya"]) }}">Стоимость размещения</a> 177 <a href="{{ route('page', ['pages' => "Stoimost-razmescheniya"]) }}">Стоимость размещения</a>
178 <a href="{{ route('page', ['pages' => "Instrukcii"]) }}">Инструкции</a> 178 <a href="{{ route('page', ['pages' => "Instrukcii"]) }}">Инструкции</a>
179 <a href="{{ route('page', ['pages' => "Effektivnost-obyavleniya"]) }}">Эффективность объявления</a> 179 <a href="{{ route('page', ['pages' => "Effektivnost-obyavleniya"]) }}">Эффективность объявления</a>
180 <a href="{{ route('page', ['pages' => "Publichnaya-oferta-rabotodatelyam"]) }}">Публичная оферта</a> 180 <a href="{{ route('page', ['pages' => "Publichnaya-oferta-rabotodatelyam"]) }}">Публичная оферта</a>
181 </nav> 181 </nav>
182 </div> 182 </div>
183 183
184 <div class="footer__main-col"> 184 <div class="footer__main-col">
185 <div class="footer__main-title">Контакты</div> 185 <div class="footer__main-title">Контакты</div>
186 <div class="footer__main-contacts"> 186 <div class="footer__main-contacts">
187 <a href="tel:{{ $companies[0]->telephone }}">{{ $companies[0]->telephone }}</a> 187 <a href="tel:{{ $companies[0]->telephone }}">{{ $companies[0]->telephone }}</a>
188 <a href="mailto:{{ $companies[0]->email }}">{{ $companies[0]->email }}</a> 188 <a href="mailto:{{ $companies[0]->email }}">{{ $companies[0]->email }}</a>
189 </div> 189 </div>
190 <div class="socials"> 190 <div class="socials">
191 <a href="{{ $companies[0]->vkontact }}" target="_blank"> 191 <a href="{{ $companies[0]->vkontact }}" target="_blank">
192 <svg> 192 <svg>
193 <use xlink:href="{{ asset('images/sprite.svg#vk') }}"></use> 193 <use xlink:href="{{ asset('images/sprite.svg#vk') }}"></use>
194 </svg> 194 </svg>
195 </a> 195 </a>
196 <a href="{{ $companies[0]->telegram }}" target="_blank"> 196 <a href="{{ $companies[0]->telegram }}" target="_blank">
197 <svg> 197 <svg>
198 <use xlink:href="{{ asset('images/sprite.svg#tg') }}"></use> 198 <use xlink:href="{{ asset('images/sprite.svg#tg') }}"></use>
199 </svg> 199 </svg>
200 </a> 200 </a>
201 </div> 201 </div>
202 </div> 202 </div>
203 </div> 203 </div>
204 <div class="footer__main-copy"> 204 <div class="footer__main-copy">
205 <div>&copy; 2023 &mdash; RekaMore.su</div> 205 <div>&copy; 2023 &mdash; RekaMore.su</div>
206 <nav> 206 <nav>
207 <a href="{{ route('page', ['pages' => "Politika-konfidencialnosti"]) }}">Политика конфиденциальности</a> 207 <a href="{{ route('page', ['pages' => "Politika-konfidencialnosti"]) }}">Политика конфиденциальности</a>
208 <span></span> 208 <span></span>
209 <a href="{{ route('page', ['pages' => "Polzovatelskoe-soglashenie"]) }}">Пользовательское соглашение</a> 209 <a href="{{ route('page', ['pages' => "Polzovatelskoe-soglashenie"]) }}">Пользовательское соглашение</a>
210 </nav> 210 </nav>
211 <a href="{{ route('index') }}" class="nls" target="_blank"> 211 <a href="{{ route('index') }}" class="nls" target="_blank">
212 <svg> 212 <svg>
213 <use xlink:href="{{ asset('images/sprite.svg#nls') }}"></use> 213 <use xlink:href="{{ asset('images/sprite.svg#nls') }}"></use>
214 </svg> 214 </svg>
215 <span> 215 <span>
216 Дизайн и разработка: 216 Дизайн и разработка:
217 <b>NoLogoStudio.ru</b> 217 <b>NoLogoStudio.ru</b>
218 </span> 218 </span>
219 </a> 219 </a>
220 </div> 220 </div>
221 </div> 221 </div>
222 </div> 222 </div>
223 </footer> 223 </footer>
224 </div> <!-- END BOTTOM WRAPPER --> 224 </div> <!-- END BOTTOM WRAPPER -->
225 225
226 <div hidden> <!-- BEGIN MODALS WRAPPER --> 226 <div hidden> <!-- BEGIN MODALS WRAPPER -->
227 <!-- Отправить сообщение соискателю -->
227 @include('modals.send_worker') 228 @include('modals.send_worker')
228 <div id="question" class="modal modal_bg">
229 <div class="modal__body">
230 <div class="modal__title">Отправить сообщение "Наяда"</div>
231 <div class="modal__text">Вы должны быть авторизованы, чтобы отправить личное сообщение</div>
232 <div class="modal__buttons">
233 <a href="#" class="button">Войти</a>
234 <a href="#" class="button button_light">Зарегистрироваться</a>
235 </div>
236 </div>
237 </div>
238 229
230 <!-- Сообщение-предупреждение о том, что сообщения только можно отправить авторизованным пользователям -->
231 @include('modals.send_message_noaut')
232
233 <!-- Форма авторизации -->
239 @include('modals.send_login') 234 @include('modals.send_login')
240 235
241 <div id="reset" class="modal"> 236 <!-- Сбросить пароль -->
242 <div class="modal__body"> 237 @include('modals.reset_password')
243 <div class="modal__title left">Сбросить пароль</div> 238
244 <div class="modal__text left">Пожалуйста, введите имя пользователя или адрес электронной почты</div> 239 <!-- Регистрация -->
245 <form class="modal__sign"> 240 @include('modals.register')
246 <div class="modal__sign-item"> 241
247 <input type="text" class="input" placeholder="Имя пользователя или email адрес" required> 242 <!-- Благодарность по отправке сообщения работодателю -->
248 </div> 243 @include('modals.thank_you_send_employer')
249 <div class="modal__sign-item"> 244
250 <button type="submit" class="button">Получить новый пароль</button> 245 <!-- Благодарность по отправке сообщения менеджеру -->
251 </div> 246 @include('modals.thank_you_send_manager')
252 </form> 247
253 <div class="modal__text"> 248
254 <span>Вспомнили пароль?</span>
255 &nbsp;
256 <a href="#">Войти</a>
257 </div>
258 </div>
259 </div>
260 <div id="reg" class="modal">
261 <div class="modal__body">
262 <div class="modal__title left">Регистрация</div>
263 <div class="modal__tabs">
264 <button type="button" class="modal__tabs-item button button_light active" data-tab="1">Кандидат</button>
265 <button type="button" class="modal__tabs-item button button_light" data-tab="2">Работодатель</button>
266 </div>
267 <form class="modal__reg showed" data-body="1">
268 <div class="modal__reg-item form-group">
269 <label class="form-group__label">Электронная почта</label>
270 <div class="form-group__item">
271 <input type="email" class="input" placeholder="info@rekamore.su" required>
272 </div>
273 </div>
274 <div class="modal__reg-item form-group">
275 <label class="form-group__label">Пароль</label>
276 <div class="form-group__item">
277 <input type="password" class="input" placeholder="**********" required>
278 <button type="button" class="eye">
279 <svg class="js-password-show">
280 <use xlink:href="images/sprite.svg#eye"></use>
281 </svg>
282 <svg class="js-password-hide">
283 <use xlink:href="images/sprite.svg#eye-2"></use>
284 </svg>
285 </button>
286 </div>
287 </div>
288 <div class="modal__reg-item form-group">
289 <label class="form-group__label">Подтвердить пароль</label>
290 <div class="form-group__item">
291 <input type="password" class="input" placeholder="**********" required>
292 <button type="button" class="eye">
293 <svg class="js-password-show">
294 <use xlink:href="images/sprite.svg#eye"></use>
295 </svg>
296 <svg class="js-password-hide">
297 <use xlink:href="images/sprite.svg#eye-2"></use>
298 </svg>
299 </button>
300 </div>
301 </div>
302 <div class="modal__reg-item form-group">
303 <label class="form-group__label">Статус</label>
304 <div class="form-group__item">
305 <div class="select">
306 <select class="js-select2">
307 <option selected disabled>Не указано</option>
308 <option>Вариант 1</option>
309 <option>Вариант 2</option>
310 <option>Вариант 3</option>
311 <option>Вариант 4</option>
312 <option>Вариант 5</option>
313 <option>Вариант 6</option>
314 </select>
315 </div>
316 </div>
317 </div>
318 <div class="modal__reg-item form-group">
319 <label class="form-group__label">Ф.И.О.</label>
320 <div class="form-group__item">
321 <input type="text" class="input" placeholder="Шестаков Михаил Юрьевич" required>
322 </div>
323 </div>
324 <div class="modal__reg-item form-group">
325 <label class="form-group__label">Должность</label>
326 <div class="form-group__item">
327 <input type="text" class="input" placeholder="Палуба" required>
328 </div>
329 </div>
330 <div class="modal__reg-item form-group">
331 <label class="form-group__label">Номер телефона</label>
332 <div class="form-group__item">
333 <input type="tel" class="input" placeholder="+7 (___) ___-__-__" required>
334 </div>
335 </div>
336 <div class="modal__reg-item">
337 <img src="images/catpcha.jpg" alt="" class="captcha">
338 </div>
339 <div class="modal__reg-item">
340 <label class="checkbox">
341 <input type="checkbox" class="checkbox__input" required>
342 <span class="checkbox__icon">
343 <svg>
344 <use xlink:href="images/sprite.svg#v"></use>
345 </svg>
346 </span>
347 <span class="checkbox__text">
348 <span>
349 Я согласен(на) с <a href="#">Политикой конфиденциальности</a>
350 </span>
351 </span>
352 </label>
353 </div>
354 <button type="submit" class="button">Зарегистрироваться</button>
355 </form>
356 <form class="modal__reg" data-body="2">
357 <div class="modal__reg-item form-group">
358 <label class="form-group__label">Электронная почта</label>
359 <div class="form-group__item">
360 <input type="email" class="input" placeholder="info@rekamore.su" required>
361 </div>
362 </div>
363 <div class="modal__reg-item form-group">
364 <label class="form-group__label">Пароль</label>
365 <div class="form-group__item">
366 <input type="password" class="input" placeholder="**********" required>
367 <button type="button" class="eye">
368 <svg class="js-password-show">
369 <use xlink:href="images/sprite.svg#eye"></use>
370 </svg>
371 <svg class="js-password-hide">
372 <use xlink:href="images/sprite.svg#eye-2"></use>
373 </svg>
374 </button>
375 </div>
376 </div>
377 <div class="modal__reg-item form-group">
378 <label class="form-group__label">Подтвердить пароль</label>
379 <div class="form-group__item">
380 <input type="password" class="input" placeholder="**********" required>
381 <button type="button" class="eye">
382 <svg class="js-password-show">
383 <use xlink:href="images/sprite.svg#eye"></use>
384 </svg>
385 <svg class="js-password-hide">
386 <use xlink:href="images/sprite.svg#eye-2"></use>
387 </svg>
388 </button>
389 </div>
390 </div>
391 <div class="modal__reg-item form-group">
392 <label class="form-group__label">Номер телефона</label>
393 <div class="form-group__item">
394 <input type="tel" class="input" placeholder="+7 (___) ___-__-__" required>
395 </div>
396 </div>
397 <div class="modal__reg-item form-group">
398 <label class="form-group__label">Название судоходной компании</label>
399 <div class="form-group__item">
400 <input type="text" class="input" placeholder="ООО Река Море" required>
401 </div>
402 </div>
403 <div class="modal__reg-item">
404 <img src="images/catpcha.jpg" alt="" class="captcha">
405 </div>
406 <div class="modal__reg-item">
407 <label class="checkbox">
408 <input type="checkbox" class="checkbox__input" required>
409 <span class="checkbox__icon">
410 <svg>
411 <use xlink:href="images/sprite.svg#v"></use>
412 </svg>
413 </span>
414 <span class="checkbox__text">
415 <span>
416 Я согласен(на) с <a href="#">Политикой конфиденциальности</a>
417 </span>
418 </span>
419 </label>
420 </div>
421 <button type="submit" class="button">Зарегистрироваться</button>
422 </form>
423 <div class="modal__text">
424 <span>Вспомнили пароль?</span>
425 &nbsp;
426 <a href="#">Войти</a>
427 </div>
428 </div>
429 </div>
430 <div id="thanks" class="modal modal_bg">
431 <div class="modal__body">
432 <div class="modal__title">Спасибо!</div>
433 <div class="modal__text">Ваша сообщение успешно отправлена работодателю <a href="#">"Наяда"</a></div>
434 <a href="#" class="button button_light modal__button">На главную</a>
435 </div>
436 </div>
437 <div id="thanks-2" class="modal modal_bg">
438 <div class="modal__body">
439 <div class="modal__title">Спасибо!</div>
440 <div class="modal__text">Ваша заявка успешно отправлена</div>
441 <div class="modal__text"><span>В ближайшее время с вами свяжется наш менеджер для уточнения необходимой информации</span></div>
442 <a href="#" class="button button_light modal__button">На главную</a>
443 </div>
444 </div>
445 <div id="thanks-3" class="modal modal_bg"> 249 <div id="thanks-3" class="modal modal_bg">
446 <div class="modal__body"> 250 <div class="modal__body">
447 <div class="modal__title">Спасибо!</div> 251 <div class="modal__title">Спасибо!</div>
448 <div class="modal__text">Вы успешно зарегистрировались</div> 252 <div class="modal__text">Вы успешно зарегистрировались</div>
449 <div class="modal__text left"><span>Ваш аккаунт требует подтверждение администратора сайта. Администратор сайта должен изменить статус работодателя, чтобы вы смогли авторизоваться в системе.</span></div> 253 <div class="modal__text left"><span>Ваш аккаунт требует подтверждение администратора сайта. Администратор сайта должен изменить статус работодателя, чтобы вы смогли авторизоваться в системе.</span></div>
450 <div class="modal__text left"><span>После подтверждения администратором, вам прейдет сообщение на электронную почту, о подтверждении регистрации.</span></div> 254 <div class="modal__text left"><span>После подтверждения администратором, вам прейдет сообщение на электронную почту, о подтверждении регистрации.</span></div>
451 <a href="#" class="button button_light modal__button">Войти</a> 255 <a href="#" class="button button_light modal__button">Войти</a>
452 </div> 256 </div>
453 </div> 257 </div>
258
454 <div id="thanks-4" class="modal modal_bg"> 259 <div id="thanks-4" class="modal modal_bg">
455 <div class="modal__body"> 260 <div class="modal__body">
456 <div class="modal__title">Спасибо!</div> 261 <div class="modal__title">Спасибо!</div>
457 <div class="modal__text">Ваше сообщение успешно отправлено администратору сайта на подтверждение.</div> 262 <div class="modal__text">Ваше сообщение успешно отправлено администратору сайта на подтверждение.</div>
458 <a href="#" class="button button_light modal__button">На главную</a> 263 <a href="#" class="button button_light modal__button">На главную</a>
459 </div> 264 </div>
460 </div> 265 </div>
461 <div id="delete" class="modal modal_bg"> 266 <div id="delete" class="modal modal_bg">
462 <div class="modal__body"> 267 <div class="modal__body">
463 <div class="modal__title">Удалить профиль?</div> 268 <div class="modal__title">Удалить профиль?</div>
464 <div class="modal__text">Вы действительно хотите удалить свой профиль?</div> 269 <div class="modal__text">Вы действительно хотите удалить свой профиль?</div>
465 <div class="modal__buttons"> 270 <div class="modal__buttons">
466 <button href="button" class="button">Да</button> 271 <button href="button" class="button">Да</button>
467 <button href="button" class="button button_light">Нет</button> 272 <button href="button" class="button button_light">Нет</button>
468 </div> 273 </div>
469 </div> 274 </div>
470 </div> 275 </div>
471 <div id="is-deleted" class="modal modal_bg"> 276 <div id="is-deleted" class="modal modal_bg">
472 <div class="modal__body"> 277 <div class="modal__body">
473 <div class="modal__title">Профиль удален</div> 278 <div class="modal__title">Профиль удален</div>
474 <div class="modal__text">Вы успешно удалили свой профиль.</div> 279 <div class="modal__text">Вы успешно удалили свой профиль.</div>
475 <a href="#" class="button button_light modal__button">На главную</a> 280 <a href="#" class="button button_light modal__button">На главную</a>
476 </div> 281 </div>
477 </div> 282 </div>
478 </div> <!-- END MODALS WRAPPER --> 283 </div> <!-- END MODALS WRAPPER -->
479 284
480 285
481 <script src="{{ asset('js/jquery.maskedinput.js') }}"></script> 286 <script src="{{ asset('js/jquery.maskedinput.js') }}"></script>
482 <script src="{{ asset('js/jquery.fancybox.js') }}"></script> 287 <script src="{{ asset('js/jquery.fancybox.js') }}"></script>
483 <script src="{{ asset('js/jquery.select2.js') }}"></script> 288 <script src="{{ asset('js/jquery.select2.js') }}"></script>
484 <script src="{{ asset('js/swiper.js') }}"></script> 289 <script src="{{ asset('js/swiper.js') }}"></script>
485 <script src="{{ asset('js/script.js') }}"></script> 290 <script src="{{ asset('js/script.js') }}"></script>
486 <script> 291 <script>
487 var getUrlParameter = function getUrlParameter(sParam) { 292 var getUrlParameter = function getUrlParameter(sParam) {
488 var sPageURL = decodeURIComponent(window.location.search.substring(1)), 293 var sPageURL = decodeURIComponent(window.location.search.substring(1)),
489 sURLVariables = sPageURL.split('&'), 294 sURLVariables = sPageURL.split('&'),
490 sParameterName, 295 sParameterName,
491 i; 296 i;
492 for (i = 0; i < sURLVariables.length; i++) { 297 for (i = 0; i < sURLVariables.length; i++) {
493 sParameterName = sURLVariables[i].split('='); 298 sParameterName = sURLVariables[i].split('=');
494 if (sParameterName[0] === sParam) { 299 if (sParameterName[0] === sParam) {
495 return sParameterName[1] === undefined ? true : sParameterName[1]; 300 return sParameterName[1] === undefined ? true : sParameterName[1];
496 } 301 }
497 } 302 }
resources/views/modals/register.blade.php
File was created 1 <div id="reg" class="modal">
2 <div class="modal__body">
3 <div class="modal__title left">Регистрация</div>
4 <div class="modal__tabs">
5 <button type="button" class="modal__tabs-item button button_light active" data-tab="1">Кандидат</button>
6 <button type="button" class="modal__tabs-item button button_light" data-tab="2">Работодатель</button>
7 </div>
8 <form class="modal__reg showed" data-body="1">
9 <div class="modal__reg-item form-group">
10 <label class="form-group__label">Электронная почта</label>
11 <div class="form-group__item">
12 <input type="email" class="input" placeholder="info@rekamore.su" required>
13 </div>
14 </div>
15 <div class="modal__reg-item form-group">
16 <label class="form-group__label">Пароль</label>
17 <div class="form-group__item">
18 <input type="password" class="input" placeholder="**********" required>
19 <button type="button" class="eye">
20 <svg class="js-password-show">
21 <use xlink:href="images/sprite.svg#eye"></use>
22 </svg>
23 <svg class="js-password-hide">
24 <use xlink:href="images/sprite.svg#eye-2"></use>
25 </svg>
26 </button>
27 </div>
28 </div>
29 <div class="modal__reg-item form-group">
30 <label class="form-group__label">Подтвердить пароль</label>
31 <div class="form-group__item">
32 <input type="password" class="input" placeholder="**********" required>
33 <button type="button" class="eye">
34 <svg class="js-password-show">
35 <use xlink:href="images/sprite.svg#eye"></use>
36 </svg>
37 <svg class="js-password-hide">
38 <use xlink:href="images/sprite.svg#eye-2"></use>
39 </svg>
40 </button>
41 </div>
42 </div>
43 <div class="modal__reg-item form-group">
44 <label class="form-group__label">Статус</label>
45 <div class="form-group__item">
46 <div class="select">
47 <select class="js-select2">
48 <option selected disabled>Не указано</option>
49 <option>Вариант 1</option>
50 <option>Вариант 2</option>
51 <option>Вариант 3</option>
52 <option>Вариант 4</option>
53 <option>Вариант 5</option>
54 <option>Вариант 6</option>
55 </select>
56 </div>
57 </div>
58 </div>
59 <div class="modal__reg-item form-group">
60 <label class="form-group__label">Ф.И.О.</label>
61 <div class="form-group__item">
62 <input type="text" class="input" placeholder="Шестаков Михаил Юрьевич" required>
63 </div>
64 </div>
65 <div class="modal__reg-item form-group">
66 <label class="form-group__label">Должность</label>
67 <div class="form-group__item">
68 <input type="text" class="input" placeholder="Палуба" required>
69 </div>
70 </div>
71 <div class="modal__reg-item form-group">
72 <label class="form-group__label">Номер телефона</label>
73 <div class="form-group__item">
74 <input type="tel" class="input" placeholder="+7 (___) ___-__-__" required>
75 </div>
76 </div>
77 <div class="modal__reg-item">
78 <img src="images/catpcha.jpg" alt="" class="captcha">
79 </div>
80 <div class="modal__reg-item">
81 <label class="checkbox">
82 <input type="checkbox" class="checkbox__input" required>
83 <span class="checkbox__icon">
84 <svg>
85 <use xlink:href="images/sprite.svg#v"></use>
86 </svg>
87 </span>
88 <span class="checkbox__text">
89 <span>
90 Я согласен(на) с <a href="#">Политикой конфиденциальности</a>
91 </span>
92 </span>
93 </label>
94 </div>
95 <button type="submit" class="button">Зарегистрироваться</button>
96 </form>
97 <form class="modal__reg" data-body="2">
98 <div class="modal__reg-item form-group">
99 <label class="form-group__label">Электронная почта</label>
100 <div class="form-group__item">
101 <input type="email" class="input" placeholder="info@rekamore.su" required>
102 </div>
103 </div>
104 <div class="modal__reg-item form-group">
105 <label class="form-group__label">Пароль</label>
106 <div class="form-group__item">
107 <input type="password" class="input" placeholder="**********" required>
108 <button type="button" class="eye">
109 <svg class="js-password-show">
110 <use xlink:href="images/sprite.svg#eye"></use>
111 </svg>
112 <svg class="js-password-hide">
113 <use xlink:href="images/sprite.svg#eye-2"></use>
114 </svg>
115 </button>
116 </div>
117 </div>
118 <div class="modal__reg-item form-group">
119 <label class="form-group__label">Подтвердить пароль</label>
120 <div class="form-group__item">
121 <input type="password" class="input" placeholder="**********" required>
122 <button type="button" class="eye">
123 <svg class="js-password-show">
124 <use xlink:href="images/sprite.svg#eye"></use>
125 </svg>
126 <svg class="js-password-hide">
127 <use xlink:href="images/sprite.svg#eye-2"></use>
128 </svg>
129 </button>
130 </div>
131 </div>
132 <div class="modal__reg-item form-group">
133 <label class="form-group__label">Номер телефона</label>
134 <div class="form-group__item">
135 <input type="tel" class="input" placeholder="+7 (___) ___-__-__" required>
136 </div>
137 </div>
138 <div class="modal__reg-item form-group">
139 <label class="form-group__label">Название судоходной компании</label>
140 <div class="form-group__item">
141 <input type="text" class="input" placeholder="ООО Река Море" required>
142 </div>
143 </div>
144 <div class="modal__reg-item">
145 <img src="images/catpcha.jpg" alt="" class="captcha">
146 </div>
147 <div class="modal__reg-item">
148 <label class="checkbox">
149 <input type="checkbox" class="checkbox__input" required>
150 <span class="checkbox__icon">
151 <svg>
152 <use xlink:href="images/sprite.svg#v"></use>
153 </svg>
154 </span>
155 <span class="checkbox__text">
156 <span>
157 Я согласен(на) с <a href="#">Политикой конфиденциальности</a>
158 </span>
159 </span>
160 </label>
161 </div>
162 <button type="submit" class="button">Зарегистрироваться</button>
163 </form>
164 <div class="modal__text">
165 <span>Вспомнили пароль?</span>
166 &nbsp;
167 <a href="#">Войти</a>
168 </div>
169 </div>
170 </div>
171
resources/views/modals/reset_password.blade.php
File was created 1 <div id="reset" class="modal">
2 <div class="modal__body">
3 <div class="modal__title left">Сбросить пароль</div>
4 <div class="modal__text left">Пожалуйста, введите имя пользователя или адрес электронной почты</div>
5 <form class="modal__sign">
6 <div class="modal__sign-item">
7 <input type="text" class="input" placeholder="Имя пользователя или email адрес" required>
8 </div>
9 <div class="modal__sign-item">
10 <button type="submit" class="button">Получить новый пароль</button>
11 </div>
12 </form>
13 <div class="modal__text">
14 <span>Вспомнили пароль?</span>
15 &nbsp;
16 <a href="#">Войти</a>
17 </div>
18 </div>
19 </div>
20
resources/views/modals/send_message_noaut.blade.php
File was created 1 <div id="question" class="modal modal_bg">
2 <div class="modal__body">
3 <div class="modal__title">Отправить сообщение "Наяда"</div>
4 <div class="modal__text">Вы должны быть авторизованы, чтобы отправить личное сообщение</div>
5 <div class="modal__buttons">
6 <a href="#" class="button">Войти</a>
7 <a href="#" class="button button_light">Зарегистрироваться</a>
8 </div>
9 </div>
10 </div>
11
resources/views/modals/thank_you_send_employer.blade.php
File was created 1 <div id="thanks" class="modal modal_bg">
2 <div class="modal__body">
3 <div class="modal__title">Спасибо!</div>
4 <div class="modal__text">Ваша сообщение успешно отправлена работодателю <a href="#">"Наяда"</a></div>
5 <a href="#" class="button button_light modal__button">На главную</a>
6 </div>
7 </div>
8
resources/views/modals/thank_you_send_manager.blade.php
File was created 1 <div id="thanks-2" class="modal modal_bg">
2 <div class="modal__body">
3 <div class="modal__title">Спасибо!</div>
4 <div class="modal__text">Ваша заявка успешно отправлена</div>
5 <div class="modal__text"><span>В ближайшее время с вами свяжется наш менеджер для уточнения необходимой информации</span></div>
6 <a href="#" class="button button_light modal__button">На главную</a>
7 </div>
8 </div>
9