Commit a44088132e9faf99d6ac141558984c06929e33aa
Exists in
master
Merge branch 'master' of http://gitlab.nologostudio.ru/alarionov/rekamore-su
Showing 13 changed files Side-by-side Diff
- app/Http/Controllers/WorkerController.php
- public/css/style_may2024.css
- resources/views/employers/favorite.blade.php
- resources/views/info_company_new.blade.php
- resources/views/modals/send_employer.blade.php
- resources/views/modals/send_worker.blade.php
- resources/views/modals/send_worker_new.blade.php
- resources/views/resume.blade.php
- resources/views/worker.blade.php
- resources/views/workers/form_additional_documents.blade.php
- resources/views/workers/form_basic_information.blade.php
- resources/views/workers/sertificate_add.blade.php
- routes/web.php
app/Http/Controllers/WorkerController.php
... | ... | @@ -475,7 +475,7 @@ class WorkerController extends Controller |
475 | 475 | |
476 | 476 | public function cabinet_save_foto(Worker $worker, Request $request){ |
477 | 477 | $params = ['photo' => null]; |
478 | - | |
478 | + | |
479 | 479 | if ($request->has('photo')) { |
480 | 480 | if (!empty($worker->photo)) { |
481 | 481 | Storage::delete($worker->photo); |
... | ... | @@ -952,6 +952,23 @@ class WorkerController extends Controller |
952 | 952 | return redirect()->route('worker.cabinet')->with('success', 'Вы успешно отредактировали запись!'); |
953 | 953 | } |
954 | 954 | |
955 | + public function edit_diploms(Request $request, Worker $worker) { | |
956 | + $dop_info_data = $request->input('diploms'); | |
957 | + | |
958 | + if (empty($dop_info_data)) { | |
959 | + return redirect()->route('worker.additional_documents')->with('error', 'Данные не предоставлены!'); | |
960 | + } | |
961 | + | |
962 | + foreach ($dop_info_data as $infoblok_id => $status) { | |
963 | + Dop_info::updateOrCreate( | |
964 | + ['worker_id' => $worker->id, 'infoblok_id' => $infoblok_id], | |
965 | + ['status' => $status] | |
966 | + ); | |
967 | + } | |
968 | + | |
969 | + return redirect()->route('worker.additional_documents')->with('success', 'Успешно сохранено!'); | |
970 | + } | |
971 | + | |
955 | 972 | public function delete_add_diplom(Request $request, Worker $worker) { |
956 | 973 | $infoblok_id = $request->get('infoblok_id'); |
957 | 974 |
public/css/style_may2024.css
... | ... | @@ -4365,6 +4365,20 @@ h1 { |
4365 | 4365 | .main__resume-profile-about-buttons .like{ |
4366 | 4366 | width: 200px; |
4367 | 4367 | } |
4368 | +.main__resume-profile-about-buttons .like.active{ | |
4369 | + background: #fff; | |
4370 | + color: #eb5757; | |
4371 | +} | |
4372 | +.main__resume-profile-about-buttons .like .in-favorites{ | |
4373 | + display: none; | |
4374 | +} | |
4375 | +.main__resume-profile-about-buttons .like.active .in-favorites{ | |
4376 | + display: block; | |
4377 | + color: #eb5757; | |
4378 | +} | |
4379 | +.main__resume-profile-about-buttons .like.active .to-favorites{ | |
4380 | + display: none; | |
4381 | +} | |
4368 | 4382 | .main__resume-profile-about-text { |
4369 | 4383 | position: relative; |
4370 | 4384 | z-index: 2; |
... | ... | @@ -7362,15 +7376,33 @@ main + .news { |
7362 | 7376 | display: flex; |
7363 | 7377 | } |
7364 | 7378 | .cvs__item-like { |
7365 | - position: absolute; | |
7366 | - top: 10px; | |
7367 | - right: 10px; | |
7379 | + width: unset; | |
7380 | + padding: 5px 10px; | |
7381 | + margin-right: 10px; | |
7368 | 7382 | } |
7369 | -@media (min-width: 768px) { | |
7370 | - .cvs__item-like { | |
7371 | - top: 20px; | |
7372 | - right: 20px; | |
7373 | - } | |
7383 | +.cvs__item .cvs__item-buttons .chat{ | |
7384 | + width: unset; | |
7385 | + padding: 5px 10px; | |
7386 | + margin-right: 10px; | |
7387 | +} | |
7388 | +.cvs__item-like.active{ | |
7389 | + background: #ffffff; | |
7390 | + color: #eb5757; | |
7391 | +} | |
7392 | +.cvs__item-like .in-favorites{ | |
7393 | + display: none; | |
7394 | +} | |
7395 | +.cvs__item-like.active .in-favorites{ | |
7396 | + display: block; | |
7397 | + color: #eb5757; | |
7398 | +} | |
7399 | +.cvs__item-like.active .to-favorites{ | |
7400 | + display: none; | |
7401 | +} | |
7402 | +.cvs__item .cvs__item-header{ | |
7403 | + display: flex; | |
7404 | + width: 100%; | |
7405 | + justify-content: space-between; | |
7374 | 7406 | } |
7375 | 7407 | .cvs__item-photo { |
7376 | 7408 | position: relative; |
... | ... | @@ -7419,71 +7451,47 @@ main + .news { |
7419 | 7451 | -ms-flex-direction: column; |
7420 | 7452 | flex-direction: column; |
7421 | 7453 | gap: 10px; |
7454 | + width: 100%; | |
7455 | + margin-top: 30px; | |
7422 | 7456 | } |
7423 | -@media (min-width: 768px) { | |
7424 | - .cvs__item-text { | |
7425 | - gap: 20px; | |
7426 | - width: calc(100% - 68px); | |
7427 | - padding-left: 20px; | |
7428 | - padding-right: 60px; | |
7429 | - } | |
7457 | +.cvs__item .cvs__item-buttons{ | |
7458 | + display: flex; | |
7459 | + align-items: start; | |
7430 | 7460 | } |
7431 | -.cvs__item-text div { | |
7461 | +.cvs.active .cvs__item { | |
7432 | 7462 | display: -webkit-box; |
7433 | 7463 | display: -ms-flexbox; |
7434 | 7464 | display: flex; |
7435 | - -webkit-box-align: center; | |
7436 | - -ms-flex-align: center; | |
7437 | - align-items: center; | |
7438 | - -webkit-box-pack: justify; | |
7439 | - -ms-flex-pack: justify; | |
7440 | - justify-content: space-between; | |
7441 | 7465 | } |
7442 | -@media (min-width: 768px) { | |
7443 | - .cvs__item-text div { | |
7444 | - -webkit-box-orient: vertical; | |
7445 | - -webkit-box-direction: normal; | |
7446 | - -ms-flex-direction: column; | |
7447 | - flex-direction: column; | |
7448 | - -webkit-box-pack: start; | |
7449 | - -ms-flex-pack: start; | |
7450 | - justify-content: flex-start; | |
7451 | - -webkit-box-align: start; | |
7452 | - -ms-flex-align: start; | |
7453 | - align-items: flex-start; | |
7454 | - } | |
7466 | +.cvs__item-text .cvs__item-text-row{ | |
7467 | + display: flex; | |
7468 | + justify-content: space-between; | |
7469 | + width: 100%; | |
7455 | 7470 | } |
7456 | -.cvs__item-text span, | |
7457 | -.cvs__item-text a { | |
7458 | - color: #000; | |
7471 | +.cvs__item-text .cvs__item-text-row > div{ | |
7472 | + width: 50%; | |
7459 | 7473 | } |
7460 | -.cvs__item-button { | |
7461 | - display: -webkit-box; | |
7462 | - display: -ms-flexbox; | |
7463 | - display: flex; | |
7464 | - -webkit-box-orient: vertical; | |
7465 | - -webkit-box-direction: normal; | |
7466 | - -ms-flex-direction: column; | |
7467 | - flex-direction: column; | |
7468 | - -webkit-box-align: center; | |
7469 | - -ms-flex-align: center; | |
7470 | - align-items: center; | |
7474 | +.cvs__item-text .cvs__item-text-row b{ | |
7475 | + color: #377d87; | |
7476 | + font-size: 18px; | |
7471 | 7477 | } |
7472 | -@media (min-width: 768px) { | |
7473 | - .cvs__item-button { | |
7474 | - -webkit-box-align: end; | |
7475 | - -ms-flex-align: end; | |
7476 | - align-items: flex-end; | |
7477 | - width: 100%; | |
7478 | - padding-top: 20px; | |
7479 | - } | |
7478 | +.cvs__item-text .cvs__item-text-status { | |
7479 | + width: fit-content; | |
7480 | + background-color: #e6e6e6; | |
7481 | + font-weight: bold; | |
7482 | + padding: 5px 10px; | |
7483 | + border-radius: 8px; | |
7484 | + margin-right: 30px; | |
7480 | 7485 | } |
7481 | -.cvs.active .cvs__item { | |
7482 | - display: -webkit-box; | |
7483 | - display: -ms-flexbox; | |
7484 | - display: flex; | |
7486 | +.cvs__item-text .cvs__item-text-status.looking-for-job { | |
7487 | + background-color: #eb5757; | |
7488 | + color: #fff; | |
7489 | +} | |
7490 | +.cvs__item-text .cvs__item-text-updated-at{ | |
7491 | + padding: 5px 10px; | |
7492 | + border-radius: 8px; | |
7493 | + border: 1px #e6e6e6 solid; | |
7485 | 7494 | } |
7486 | - | |
7487 | 7495 | .faqs { |
7488 | 7496 | display: -webkit-box; |
7489 | 7497 | display: -ms-flexbox; |
resources/views/employers/favorite.blade.php
... | ... | @@ -83,90 +83,162 @@ |
83 | 83 | </span> |
84 | 84 | </form> |
85 | 85 | </div> |
86 | - <!--<div class="cabinet__filters-item"> | |
87 | - <div class="select"> | |
88 | - <select class="js-select2" id="sort_ajax" name="sort_ajax"> | |
89 | - <option value="default">Сортировка (по умолчанию)</option> | |
90 | - <option value="name (asc)">По имени (возрастание)</option> | |
91 | - <option value="name (desc)">По имени (убывание)</option> | |
92 | - <option value="created_at (asc)">По дате (возрастание)</option> | |
93 | - <option value="created_at (desc)">По дате (убывание)</option> | |
94 | - </select> | |
95 | - </div> | |
96 | - </div>--> | |
97 | 86 | </div> |
98 | 87 | <div class="cvs"> |
99 | - <!--<button type="button" class="cvs__button js-toggle js-parent-toggle button button_light button_more"> | |
100 | - <span>Показать ещё</span> | |
101 | - <span>Скрыть</span> | |
102 | - </button>--> | |
103 | 88 | @if ((isset($Workers) && ($Workers->count()))) |
104 | 89 | @foreach ($Workers as $it) |
105 | 90 | <div class="cvs__body"> |
106 | 91 | <div class="cvs__item"> |
107 | - <button type="button" id="elem_{{ $it->id }}" data-val="{{ $it->id }}" class="like cvs__item-like js_box_favorit js-toggle {{ \App\Classes\LikesClass::get_status_worker($it) }}"> | |
108 | - <svg> | |
109 | - <use xlink:href="{{ asset('images/sprite.svg#heart') }}"></use> | |
110 | - </svg> | |
111 | - </button> | |
112 | - <div class="cvs__item-photo"> | |
113 | - <svg> | |
114 | - <use xlink:href="{{ asset('images/sprite.svg#pic') }}"></use> | |
115 | - </svg> | |
116 | - @if (!empty($it->photo)) | |
92 | + | |
93 | + <div class="cvs__item-header"> | |
94 | + <div class="cvs__item-photo"> | |
95 | + <svg> | |
96 | + <use xlink:href="{{ asset('images/sprite.svg#pic') }}"></use> | |
97 | + </svg> | |
98 | + @if (!empty($it->photo)) | |
117 | 99 | <img src="{{ asset(\Illuminate\Support\Facades\Storage::url($it->photo)) }}" alt=""> |
118 | - @else | |
100 | + @else | |
119 | 101 | <img src="{{ asset('images/default_man.jpg') }}" alt=""> |
120 | - @endif | |
102 | + @endif | |
103 | + </div> | |
104 | + | |
105 | + <div class="cvs__item-buttons"> | |
106 | + <button type="button" id="elem_{{ $it->id }}" data-val="{{ $it->id }}" class="like cvs__item-like js_box_favorit js-toggle {{ \App\Classes\LikesClass::get_status_worker($it) }}"> | |
107 | + <svg class="mr-10"> | |
108 | + <use xlink:href="{{ asset('images/sprite.svg#heart') }}"></use> | |
109 | + </svg> | |
110 | + <span class="to-favorites">Добавить в избранное</span> | |
111 | + <span class="in-favorites">Убрать из избранного</span> | |
112 | + </button> | |
113 | + | |
114 | + @guest | |
115 | + <button type="button" data-fancybox data-src="#question" data-options='{"touch":false,"autoFocus":false}' | |
116 | + class="chat"> | |
117 | + <svg class="mr-10"> | |
118 | + <use xlink:href="{{ asset('images/sprite.svg#chat') }}"></use> | |
119 | + </svg> | |
120 | + <span>Написать</span> | |
121 | + </button> | |
122 | + @else | |
123 | + @if (App\Classes\StatusUser::Status()==0) | |
124 | + @if ((!Auth()->user()->is_worker) && (Auth()->user()->is_message)) | |
125 | + <button type="button" class="chat" data-fancybox data-src="#send2" data-vacancy="0" data-uid="{{ Auth()->user()->id }}" data-tuid="{{ $it->users->id }}" data-options='{"touch":false,"autoFocus":false}'> | |
126 | + <svg class="mr-10"> | |
127 | + <use xlink:href="{{ asset('images/sprite.svg#chat') }}"></use> | |
128 | + </svg> | |
129 | + <span>Написать</span> | |
130 | + </button> | |
131 | + @endif | |
132 | + @else | |
133 | + <button type="button" data-fancybox data-src="#question2" data-options='{"touch":false,"autoFocus":false}' | |
134 | + class="chat"> | |
135 | + <svg class="mr-10"> | |
136 | + <use xlink:href="{{ asset('images/sprite.svg#chat') }}"></use> | |
137 | + </svg> | |
138 | + <span>Написать</span> | |
139 | + </button> | |
140 | + @endif | |
141 | + @endif | |
142 | + | |
143 | + <a href="{{ route('resume_profile', ['worker' => $it->id]) }}" class="button">Подробнее</a> | |
144 | + </div> | |
121 | 145 | </div> |
146 | + | |
147 | + | |
122 | 148 | <div class="cvs__item-text"> |
123 | - <div> | |
124 | - Статус | |
125 | - <span>@if ($it->status_work == 0) Ищу работу | |
126 | - @elseif ($it->status_work == 1) Не указано | |
127 | - @elseif ($it->status_work == 2) Не ищу | |
128 | - @endif | |
129 | - </span> | |
149 | + <div class="cvs__item-text-row"> | |
150 | + <div class="flex" style="align-items: start;"> | |
151 | + <div class="cvs__item-text-status @if ($it->status_work == 0) looking-for-job @endif"> | |
152 | + @if ($it->status_work == 0) Ищу работу | |
153 | + @elseif ($it->status_work == 1) Не указано | |
154 | + @elseif ($it->status_work == 2) Не ищу | |
155 | + @endif | |
156 | + </div> | |
157 | + <div class="cvs__item-text-updated-at"> | |
158 | + Обновлено: {{ date('d.m.Y', strtotime($it->updated_at)) }} | |
159 | + </div> | |
160 | + </div> | |
161 | + <div> | |
162 | + <b>Предпочтение по типу судна:</b> | |
163 | + <div>{{ $it->boart_type_preference ?? '-' }}</div> | |
164 | + </div> | |
130 | 165 | </div> |
131 | - <div> | |
132 | - Имя кандидата | |
133 | - <span>({{ $it->id }}) @if (isset($it->users)) {{ $it->users->surname." ".$it->users->name_man." ".$it->users->surname2." (".$it->users->id.")" }} @endif</span> | |
166 | + | |
167 | + <div class="cvs__item-text-row"> | |
168 | + <div> | |
169 | + <b>ФИО:</b> | |
170 | + <div>@if (isset($it->users)){{ $it->users->surname." ".$it->users->name_man." ".$it->users->surname2 }} @endif</div> | |
171 | + </div> | |
172 | + <div> | |
173 | + <b>Наличие визы:</b> | |
174 | + <div>{{ $it->visa_available ?? '-' }}</div> | |
175 | + </div> | |
134 | 176 | </div> |
135 | 177 | |
136 | - @if (!empty($it->telephone)) | |
137 | - <div> | |
138 | - Номер телефона | |
139 | - <a href="tel:{{ $it->telephone }}">{{ $it->telephone }}</a> | |
178 | + <div class="cvs__item-text-row"> | |
179 | + <div> | |
180 | + <b>Возраст:</b> | |
181 | + <div>{{ $it->old_year ?? '-' }}</div> | |
182 | + </div> | |
183 | + <div> | |
184 | + <b>Наличие танкерных документов:</b> | |
185 | + <div>{{ $it->tanker_documents_available ?? '-' }}</div> | |
186 | + </div> | |
140 | 187 | </div> |
141 | - @endif | |
142 | 188 | |
143 | - @if (!empty($it->telephone2)) | |
144 | - <div> | |
145 | - Номер телефона2 | |
146 | - <a href="tel:{{ $it->telephone2 }}">{{ $it->telephone2 }}</a> | |
189 | + <div class="cvs__item-text-row"> | |
190 | + <div> | |
191 | + <b>Желаемые вакансии:</b> | |
192 | + <div> | |
193 | + @if ($it->job_titles->count()) | |
194 | + @foreach ($it->job_titles as $job_title) | |
195 | + {{ $job_title->name }} | |
196 | + @if (!$loop->last) / @endif | |
197 | + @endforeach | |
198 | + @else | |
199 | + - | |
200 | + @endif | |
201 | + </div> | |
202 | + </div> | |
203 | + <div> | |
204 | + <b>Наличие подтверждения для работы на ВВП:</b> | |
205 | + <div>{{ $it->confirmation_work_for_vvp ?? '-' }}</div> | |
206 | + </div> | |
147 | 207 | </div> |
148 | - @endif | |
149 | - @if (!empty($it->email)) | |
150 | - <div> | |
151 | - Электронный адрес | |
152 | - <a href="mailto: {{ $it->email }}">{{ $it->email }}</a> | |
208 | + | |
209 | + <div class="cvs__item-text-row"> | |
210 | + <div> | |
211 | + <b>Пожелание к З/П:</b> | |
212 | + <div>{{ $it->salary_expectations ?? '-' }}</div> | |
213 | + </div> | |
214 | + <div> | |
215 | + <b>Город проживания</b> | |
216 | + <div>{{ $it->city ?? "-" }}</div> | |
217 | + </div> | |
153 | 218 | </div> |
154 | - @endif | |
155 | - @if (!empty($it->city)) | |
156 | - <div> | |
157 | - Город проживания | |
158 | - <span>{{ $it->city }}, {{ $it->address }}</span> | |
219 | + | |
220 | + <div class="cvs__item-text-row"> | |
221 | + <div> | |
222 | + <b>Уровень английского:</b> | |
223 | + <div>{{ $it->english_level ?? '-' }}</div> | |
224 | + </div> | |
225 | + <div> | |
226 | + <b>Телефон:</b> | |
227 | + <div><a href="tel:{{ $it->telephone }}">{{ $it->telephone ?? '-' }}</a></div> | |
228 | + </div> | |
159 | 229 | </div> |
160 | - @endif | |
161 | 230 | |
162 | - <div> | |
163 | - Опыт работы на танкерах | |
164 | - <span>@if (!empty($it->experience)) {{ $it->experience }} @else 0 @endif годов (лет).</span> | |
231 | + <div class="cvs__item-text-row"> | |
232 | + <div> | |
233 | + <b>Дата готовности к посадке:</b> | |
234 | + <div>{{ $it->ready_boart_date ?? '-' }}</div> | |
235 | + </div> | |
236 | + <div> | |
237 | + <b>E-mail:</b> | |
238 | + <div><a href="mailto:{{ $it->email }}">{{ $it->email }}</a></div> | |
239 | + </div> | |
165 | 240 | </div> |
166 | 241 | </div> |
167 | - <div class="cvs__item-button"> | |
168 | - <a href="{{ route('resume_profile', ['worker' => $it->id]) }}" class="button">Перейти к профилю</a> | |
169 | - </div> | |
170 | 242 | </div> |
171 | 243 | </div> |
172 | 244 | @endforeach |
resources/views/info_company_new.blade.php
... | ... | @@ -225,54 +225,12 @@ |
225 | 225 | @endif |
226 | 226 | <span>{{ $company[0]->name_company }}</span> |
227 | 227 | </div> |
228 | - <!--<div class="main__employer-page-two-item-title"> $item->flot }}</div>--> | |
229 | - <div class="main__employer-page-two-item-text"> | |
228 | + <div class="main__employer-page-two-item-text-body"> | |
230 | 229 | <h3>{{ $job->name }}</h3> |
231 | - <!--if ((isset($job->jobs)) && ($job->jobs->count())) | |
232 | - foreach($job->jobs as $item) | |
233 | - <a class="main__employer-page-two-item-text-name"> | |
234 | - { $item->name }} | |
235 | - </a> | |
236 | - endforeach | |
237 | - endif | |
238 | - --> | |
239 | 230 | <span>Описание: |
240 | 231 | {!! $job->text !!} |
241 | 232 | </span> |
242 | - <!--<div class="main__employer-page-two-item-text-body"> | |
243 | - <p>Зарплата: $item->min_salary }} - $item->max_salary }}р + $item->sytki }} суточные.</p> | |
244 | - <p>Контракт: $item->period }} мес.</p> | |
245 | - </div>--> | |
246 | 233 | </div> |
247 | - <!--<div class="main__employer-page-two-item-text"> | |
248 | - <div class="main__employer-page-two-item-text-name">Район работы</div> | |
249 | - <div class="main__employer-page-two-item-text-body"> | |
250 | - <p> $item->region }}</p> | |
251 | - </div> | |
252 | - </div> | |
253 | - <div class="main__employer-page-two-item-text"> | |
254 | - <div class="main__employer-page-two-item-text-name">Посадка</div> | |
255 | - <div class="main__employer-page-two-item-text-body"> | |
256 | - <p> $item->start }}</p> | |
257 | - !! $item->description !!} | |
258 | - </div> | |
259 | - </div>--> | |
260 | - | |
261 | - <!--<div class="main__employer-page-two-item-text"> | |
262 | - <div class="main__employer-page-two-item-text-name">Звонить по вопросам на: | |
263 | - </div> | |
264 | - <div class="main__employer-page-two-item-text-body"> | |
265 | - <a href="tel: $job->telephone }}"> $job->telephone }}</a> | |
266 | - </div> | |
267 | - </div> | |
268 | - <div class="main__employer-page-two-item-text"> | |
269 | - <div class="main__employer-page-two-item-text-name">Анкеты присылать на | |
270 | - почту: | |
271 | - </div> | |
272 | - <div class="main__employer-page-two-item-text-body"> | |
273 | - <a href="mailto: $job->email }}"> $job->email }}</a> | |
274 | - </div> | |
275 | - </div>--> | |
276 | 234 | |
277 | 235 | @if ((isset($job->jobs)) && ($job->jobs->count())) |
278 | 236 | <div class="main__employer-page-two-item-tags"> |
resources/views/modals/send_employer.blade.php
... | ... | @@ -12,7 +12,6 @@ |
12 | 12 | <div id="send2" class="modal"> |
13 | 13 | <div class="modal__body"> |
14 | 14 | <div class="modal__title">Отправить сообщение</div> |
15 | - <div class="modal__text">Если у вас есть предложение, вы можете сделать конретное предложение</div> | |
16 | 15 | <form class="modal__form" id="form_from_emp" name="form_from_emp" enctype="multipart/form-data" action="{{ route('employer.new_message') }}" method="POST"> |
17 | 16 | @csrf |
18 | 17 | <div class="modal__form-item" style="display:none"> |
resources/views/modals/send_worker.blade.php
... | ... | @@ -22,7 +22,6 @@ |
22 | 22 | <div id="send3" class="modal"> |
23 | 23 | <div class="modal__body"> |
24 | 24 | <div class="modal__title">Отправить сообщение работодателю</div> |
25 | - <div class="modal__text">Если вы готовы владеете компитентыми навыками, напишите данному работодателю письмо</div> | |
26 | 25 | <form class="modal__form" id="form_worker" name="form_worker" enctype="multipart/form-data" action="{{ route('worker.new_message') }}" method="POST"> |
27 | 26 | @csrf |
28 | 27 | <div class="modal__form-item" style="display: none"> |
resources/views/modals/send_worker_new.blade.php
... | ... | @@ -22,7 +22,6 @@ |
22 | 22 | <div id="send" class="modal"> |
23 | 23 | <div class="modal__body"> |
24 | 24 | <div class="modal__title">Отправить сообщение работодателю</div> |
25 | - <div class="modal__text">Если вы готовы владеете компитентыми навыками, напишите данному работодателю письмо</div> | |
26 | 25 | <form class="modal__form" id="form_worker" name="form_worker" enctype="multipart/form-data" action="{{ route('worker.new_message') }}" method="POST"> |
27 | 26 | @csrf |
28 | 27 | <div class="modal__form-item" style="display: none"> |
resources/views/resume.blade.php
resources/views/worker.blade.php
... | ... | @@ -5,6 +5,7 @@ |
5 | 5 | $(function(){ |
6 | 6 | $('[name="footer-like-button"]').click(function(){ |
7 | 7 | $('[name="header-like-button"]').click(); |
8 | + $(this).toggleClass('active'); | |
8 | 9 | }); |
9 | 10 | $('[name="header-like-button"]').click(function(){ |
10 | 11 | $('[name="footer-like-button"]').toggleClass('active'); |
... | ... | @@ -78,20 +79,28 @@ |
78 | 79 | <h1 class="thing__title">@if (isset($Query[0]->users)) {{ $Query[0]->users->surname." ".$Query[0]->users->name_man." ".$Query[0]->users->surname2 }} @else Неизвестно @endif</h1> |
79 | 80 | <p class="thing__text">Сложно сказать, почему ключевые особенности структуры проекта рассмотрены |
80 | 81 | исключительно в разрезе маркетинговых и финансовых предпосылок.</p> |
81 | - <div class="thing__bottom"> | |
82 | + <div class="main__resume-profile-about-buttons thing__bottom"> | |
83 | + <button type="button" class="like js-toggle js_box_favorit {{ \App\Classes\LikesClass::get_status_worker($Query[0]) }}" data-val="{{ $Query[0]->id }}" id="elem{{ $Query[0]->id }}" | |
84 | + name="header-like-button" | |
85 | + > | |
86 | + <svg class="mr-10"> | |
87 | + <use xlink:href="{{ asset('images/sprite.svg#heart') }}"></use> | |
88 | + </svg> | |
89 | + <span class="to-favorites">В избранное</span> | |
90 | + <span class="in-favorites">В избранном</span> | |
91 | + </button> | |
92 | + <div class="button button_light mr-10 main__resume-profile-about-button js_it_button" data-fancybox data-src="#send2" data-vacancy="0" data-uid="{{ $idiot }}" data-tuid="{{ $Query[0]->users->id }}" data-options='{"touch":false,"autoFocus":false}'> | |
93 | + <svg> | |
94 | + <use xlink:href="{{ asset('images/sprite.svg#chat') }}"></use> | |
95 | + </svg> | |
96 | + Написать | |
97 | + </div> | |
82 | 98 | <a class="button" href="{{ route('resume_download', ['worker' => $Query[0]->id]) }}"> |
83 | 99 | Скачать резюме |
84 | 100 | <svg> |
85 | 101 | <use xlink:href="{{ asset('images/sprite.svg#download') }}"></use> |
86 | 102 | </svg> |
87 | 103 | </a> |
88 | - <button type="button" class="like js-toggle js_box_favorit {{ \App\Classes\LikesClass::get_status_worker($Query[0]) }}" data-val="{{ $Query[0]->id }}" id="elem{{ $Query[0]->id }}" | |
89 | - name="header-like-button" | |
90 | - > | |
91 | - <svg> | |
92 | - <use xlink:href="{{ asset('images/sprite.svg#heart') }}"></use> | |
93 | - </svg> | |
94 | - </button> | |
95 | 104 | </div> |
96 | 105 | </div> |
97 | 106 | </div> |
... | ... | @@ -275,7 +284,7 @@ |
275 | 284 | <td><b>Водоизмещение (DWT):</b></td> |
276 | 285 | <td><b>Название компании:</b></td> |
277 | 286 | <td><b>Начало контракта:</b></td> |
278 | - <td><b>Конец контракта:</b></td> | |
287 | + <td><b>Окончание контракта:</b></td> | |
279 | 288 | </tr> |
280 | 289 | @foreach($Query[0]->place_worker as $it) |
281 | 290 | <tr> |
... | ... | @@ -333,10 +342,11 @@ |
333 | 342 | <button type="button" class="like js-toggle mr-10 js_box_favorit {{ \App\Classes\LikesClass::get_status_worker($Query[0]) }}" |
334 | 343 | name="footer-like-button" |
335 | 344 | > |
336 | - <svg class="mr-5"> | |
345 | + <svg class="mr-10"> | |
337 | 346 | <use xlink:href="{{ asset('images/sprite.svg#heart') }}"></use> |
338 | 347 | </svg> |
339 | - В избранное | |
348 | + <span class="to-favorites">В избранное</span> | |
349 | + <span class="in-favorites">В избранном</span> | |
340 | 350 | </button> |
341 | 351 | <div class="button button_light mr-10 main__resume-profile-about-button js_it_button" data-fancybox data-src="#send2" data-vacancy="0" data-uid="{{ $idiot }}" data-tuid="{{ $Query[0]->users->id }}" data-options='{"touch":false,"autoFocus":false}'> |
342 | 352 | <svg> |
... | ... | @@ -359,7 +369,7 @@ |
359 | 369 | <h2 class="main__resume-profile-info-title">Количество просмотров страницы: ({{ $stat[0]->lookin }})</h2> |
360 | 370 | </div> |
361 | 371 | |
362 | - <div class="main__resume-profile-info"> | |
372 | + <div class="main__resume-profile-info"> | |
363 | 373 | <h2 class="main__resume-profile-info-title">Отзывы о работнике ({{ $Query[0]->response->count() }})</h2> |
364 | 374 | <div class="main__resume-profile-info-body"> |
365 | 375 | @if ((isset($Query[0]->response)) && ($Query[0]->response->count())) |
resources/views/workers/form_additional_documents.blade.php
1 | 1 | @extends('workers.cabinet_layout', ['title' => 'Дополнительные документы - РекаМоре']) |
2 | 2 | |
3 | -@section('scripts') | |
4 | -<script> | |
5 | - $(function () { | |
6 | - $('.sertificates_js').change(function(){ | |
7 | - var this_btn = $(this); | |
8 | - var wrap = this_btn.closest('.cabinet__inputs-item'); | |
9 | - var infoblock_id = this_btn.attr('data-info'); | |
10 | - var val = this_btn.val(); | |
11 | - | |
12 | - $.ajax({ | |
13 | - type: "GET", | |
14 | - url: "{{ route('worker.delete_add_diplom', ['worker' => $worker->id]) }}", | |
15 | - data: "&infoblok_id=" + infoblock_id+"&val="+val, | |
16 | - success: function (data) { | |
17 | - wrap.find('.form-group__label').append('<span class="success font12 ml-10 green">Сохранено</span>'); | |
18 | - setTimeout(function(){ | |
19 | - wrap.find('.form-group__label .success').fadeOut(300, function(){ | |
20 | - wrap.find('.form-group__label .success').remove(); | |
21 | - }); | |
22 | - }, 2000); | |
23 | - }, | |
24 | - headers: { | |
25 | - 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') | |
26 | - }, | |
27 | - error: function (data) { | |
28 | - data = JSON.stringify(data); | |
29 | - console.log('Error: ' + data); | |
30 | - } | |
31 | - }); | |
32 | - }); | |
33 | - }); | |
34 | -</script> | |
35 | -@endsection | |
36 | - | |
37 | 3 | @section('cabinet_content') |
38 | -<div class="mb-40" name="ajax_dop_diplomi" id="ajax_dop_diplomi"> | |
4 | +<form action="{{ route('worker.edit_diploms', ['worker' => $worker->id]) }}" class="cabinet__inputs" method="POST"> | |
39 | 5 | @csrf |
6 | + @method('PUT') | |
40 | 7 | |
8 | +<div class="mb-40" name="ajax_dop_diplomi" id="ajax_dop_diplomi"> | |
41 | 9 | <div class="cabinet__body-item"> |
42 | 10 | <div class="cabinet__anketa"> |
43 | 11 | <h2 class="title cabinet__title">Дополнительные документы</h2> |
... | ... | @@ -57,7 +25,7 @@ |
57 | 25 | @php $status = $worker->dop_info[$info_block->id]['status']; @endphp |
58 | 26 | @endif |
59 | 27 | |
60 | - <select data-info="{{ $info_block->id }}" class="js-select2 sertificates_js"> | |
28 | + <select name="diploms[{{ $info_block->id }}]" data-info="{{ $info_block->id }}" class="js-select2 sertificates_js"> | |
61 | 29 | @foreach($additional_document_statuses as $key => $value) |
62 | 30 | <option value="{{ $key }}" @if ($status == $key) selected @endif>{{ $value }}</option> |
63 | 31 | @endforeach |
... | ... | @@ -69,10 +37,12 @@ |
69 | 37 | |
70 | 38 | <div class="cabinet__body-item cabinet__inputs-item-full-row"> |
71 | 39 | <div class="cabinet__buttons_flex"> |
72 | - <a href="{{ route('worker.cabinet') }}" class="button button_light active">Назад</a> | |
40 | + <button type="submit" class="button mr-10">Сохранить</button> | |
41 | + <a href="{{ route('worker.cabinet') }}" class="button button_light active">Отменить</a> | |
73 | 42 | </div> |
74 | 43 | </div> |
75 | 44 | </div> |
76 | 45 | </div> |
77 | 46 | </div> |
47 | +</form> | |
78 | 48 | @endsection |
resources/views/workers/form_basic_information.blade.php
... | ... | @@ -160,7 +160,7 @@ |
160 | 160 | <div class="cabinet__inputs-item form-group"> |
161 | 161 | <label class="form-group__label">Контакты родственников:</label> |
162 | 162 | <div class="form-group__item"> |
163 | - <input type="tel" name="telephone2" id="telephon2" value="{{ old('telephone2') ?? $worker->telephone2 ?? '' }}" class="input" placeholder="+7 (___) ___-__-__"> | |
163 | + <input type="text" name="telephone2" id="telephon2" value="{{ old('telephone2') ?? $worker->telephone2 ?? '' }}" class="input"> | |
164 | 164 | </div> |
165 | 165 | </div> |
166 | 166 | <div class="cabinet__inputs-item form-group"></div> |
... | ... | @@ -174,12 +174,6 @@ |
174 | 174 | <div class="cabinet__buttons_flex"> |
175 | 175 | <button type="submit" class="button">Сохранить</button> |
176 | 176 | <a href="{{ route('worker.cabinet') }}" class="button button_light active">Отменить</a> |
177 | - <label class="file"> | |
178 | - <span class="file__input"> | |
179 | - <input type="file" name="file" id="file"> | |
180 | - <span class="button button_light">@if (empty($worker->file)) Прикрепить резюме @else Обновить резюме @endif</span> | |
181 | - </span> | |
182 | - </label> | |
183 | 177 | </div> |
184 | 178 | </div> |
185 | 179 | </div> |
resources/views/workers/sertificate_add.blade.php
... | ... | @@ -14,7 +14,7 @@ |
14 | 14 | @error('name') |
15 | 15 | <div class="error red">{{ $message }}</div> |
16 | 16 | @enderror |
17 | - <input type="text" name="name" id="name" class="input" value="{{ old('name') ?? 'Начальная подготовка' }}" required> | |
17 | + <input type="text" name="name" id="name" class="input" value="{{ old('name') ?? '' }}" required> | |
18 | 18 | </div> |
19 | 19 | </div> |
20 | 20 | <div class="cabinet__inputs-item form-group"> |
... | ... | @@ -23,7 +23,7 @@ |
23 | 23 | @error('end_begin') |
24 | 24 | <div class="error red">{{ $message }}</div> |
25 | 25 | @enderror |
26 | - <input type="text" name="end_begin" id="end_begin" class="input" value="{{ old('end_begin') ?? date('d.m.Y', strtotime('+1 year')) }}" required> | |
26 | + <input type="text" name="end_begin" id="end_begin" class="input" value="{{ old('end_begin') ?? '' }}" required> | |
27 | 27 | </div> |
28 | 28 | </div> |
29 | 29 | </div> |
routes/web.php
... | ... | @@ -550,6 +550,7 @@ Route::group([ |
550 | 550 | // Добавление документа-диплома |
551 | 551 | Route::get('кабинет/add_diplom/{worker}', [WorkerController::class, 'add_diplom'])->name('add_diplom'); |
552 | 552 | Route::post('кабинет/add_diplom', [WorkerController::class, 'add_diplom_save'])->name('dop_info_save'); |
553 | + Route::put('кабинет/edit_diploms/{worker}', [WorkerController::class, 'edit_diploms'])->name('edit_diploms'); | |
553 | 554 | Route::get('кабинет/delete_ad_diplom/{worker}', [WorkerController::class, 'delete_add_diplom'])->name('delete_add_diplom'); |
554 | 555 | |
555 | 556 | // Добавление стандартного диплома |