Commit 75665e78f4c42b2e557fdd1a9884cca334b6fa18

Authored by Андрей Ларионов
Exists in master

Merge branch 'master' of http://gitlab.nologostudio.ru/alarionov/rekamore-su

Showing 4 changed files Inline Diff

app/Http/Controllers/Admin/WorkersController.php
1 <?php 1 <?php
2 2
3 namespace App\Http\Controllers\Admin; 3 namespace App\Http\Controllers\Admin;
4 4
5 use App\Http\Controllers\Controller; 5 use App\Http\Controllers\Controller;
6 use App\Models\Company; 6 use App\Models\Company;
7 use App\Models\Job_title; 7 use App\Models\Job_title;
8 use App\Models\Static_worker; 8 use App\Models\Static_worker;
9 use App\Models\User; 9 use App\Models\User;
10 use App\Models\Worker; 10 use App\Models\Worker;
11 use Illuminate\Database\Eloquent\Builder; 11 use Illuminate\Database\Eloquent\Builder;
12 use Illuminate\Http\Request; 12 use Illuminate\Http\Request;
13 use Illuminate\Support\Facades\DB; 13 use Illuminate\Support\Facades\DB;
14 use Illuminate\Support\Facades\Storage; 14 use Illuminate\Support\Facades\Storage;
15 use Illuminate\Support\Facades\Validator; 15 use Illuminate\Support\Facades\Validator;
16 16
17 class WorkersController extends Controller 17 class WorkersController extends Controller
18 { 18 {
19 public function index(Request $request) { 19 public function index(Request $request) {
20 if ($request->ajax()) { 20 if ($request->ajax()) {
21 $user = User::find($request->id); 21 $user = User::find($request->id);
22 $request->offsetUnset('id'); 22 $request->offsetUnset('id');
23 $user->update($request->all()); 23 $user->update($request->all());
24 } 24 }
25 25
26 $status_work = Job_title::query()->active()->orderBy('name')->get(); 26 $status_work = Job_title::query()->active()->orderBy('name')->get();
27 $users = User::with('jobtitles')->where('is_worker', '1'); 27 $users = User::with('jobtitles')->where('is_worker', '1');
28 28
29 $find_status_work = ""; 29 $find_status_work = "";
30 if (isset($request->status_work)) { 30 if (isset($request->status_work)) {
31 $find_status_work = $request->status_work; 31 $find_status_work = $request->status_work;
32 //$users = $users->where('position_work', '=', $find_status_work); 32 //$users = $users->where('position_work', '=', $find_status_work);
33 33
34 /*if ($request->status_work > 0) 34 /*if ($request->status_work > 0)
35 $users = $users->with(['workers' => function($query) use ($find_status_work){ 35 $users = $users->with(['workers' => function($query) use ($find_status_work){
36 $query->where('position_work', $find_status_work); 36 $query->where('position_work', $find_status_work);
37 }]); 37 }]);
38 else 38 else
39 $users = $users->with('workers');*/ 39 $users = $users->with('workers');*/
40 40
41 /*$users = $users->where(function($query) use($find_status_work) { 41 /*$users = $users->where(function($query) use($find_status_work) {
42 $query->with(['workers' => function($query1) use ($find_status_work){ 42 $query->with(['workers' => function($query1) use ($find_status_work){
43 $query1->where('position_work', $find_status_work); 43 $query1->where('position_work', $find_status_work);
44 }]); 44 }]);
45 });*/ 45 });*/
46 if ($request->status_work > 0) { 46 if ($request->status_work > 0) {
47 $users = $users->with('workers')-> 47 $users = $users->with('workers')->
48 whereHas('workers', 48 whereHas('workers',
49 function (Builder $query) use ($find_status_work) { 49 function (Builder $query) use ($find_status_work) {
50 $query->where('position_work', $find_status_work); 50 $query->where('position_work', $find_status_work);
51 } 51 }
52 ); 52 );
53 } else { 53 } else {
54 $users = $users->with('workers'); 54 $users = $users->with('workers');
55 } 55 }
56 56
57 } else { 57 } else {
58 $users = $users->with('workers'); 58 $users = $users->with('workers');
59 } 59 }
60 60
61 $find_key = ""; 61 $find_key = "";
62 if (isset($request->find)) { 62 if (isset($request->find)) {
63 $find_key = $request->find; 63 $find_key = $request->find;
64 $users = $users->where(function($query) use($find_key) { 64 $users = $users->where(function($query) use($find_key) {
65 $query->Where('name_man', 'LIKE', "%$find_key%") 65 $query->Where('name_man', 'LIKE', "%$find_key%")
66 ->orWhere('email', 'LIKE', "%$find_key%") 66 ->orWhere('email', 'LIKE', "%$find_key%")
67 ->orWhere('telephone', 'LIKE', "%$find_key%"); 67 ->orWhere('telephone', 'LIKE', "%$find_key%")
68 ->orWhere('surname', 'LIKE', "%$find_key%")
69 ->orWhere('surname2', 'LIKE', "%$find_key%");
68 }); 70 });
69 } 71 }
70 72
71 $users = $users->paginate(15); 73 $users = $users->paginate(15);
72 74
73 /* 75 /*
74 $Arr = array(); 76 $Arr = array();
75 $where = ''; 77 $where = '';
76 $find_status_work = ""; 78 $find_status_work = "";
77 if (isset($request->status_work)) { 79 if (isset($request->status_work)) {
78 $find_status_work = $request->status_work; 80 $find_status_work = $request->status_work;
79 //$users = $users->where('position_work', '=', $find_status_work); 81 //$users = $users->where('position_work', '=', $find_status_work);
80 $where.= ' and (w.position_work = :uid1)'; 82 $where.= ' and (w.position_work = :uid1)';
81 $Arr['uid1'] = $find_status_work; 83 $Arr['uid1'] = $find_status_work;
82 } 84 }
83 85
84 $find_key = ""; 86 $find_key = "";
85 if (isset($request->find)) { 87 if (isset($request->find)) {
86 $find_key = $request->find; 88 $find_key = $request->find;
87 /*$users = $users->where(function($query) use($find_key) { 89 /*$users = $users->where(function($query) use($find_key) {
88 $query->Where('name_man', 'LIKE', "%$find_key%") 90 $query->Where('name_man', 'LIKE', "%$find_key%")
89 ->orWhere('email', 'LIKE', "%$find_key%") 91 ->orWhere('email', 'LIKE', "%$find_key%")
90 ->orWhere('telephone', 'LIKE', "%$find_key%"); 92 ->orWhere('telephone', 'LIKE', "%$find_key%");
91 });*/ 93 });*/
92 /*$where.= " and ((u.name_man LIKE %:uid2%) or (w.email LIKE %:uid2%) or (w.telephone LIKE %:uid2%))"; 94 /*$where.= " and ((u.name_man LIKE %:uid2%) or (w.email LIKE %:uid2%) or (w.telephone LIKE %:uid2%))";
93 $Arr['uid2'] = $find_key; 95 $Arr['uid2'] = $find_key;
94 } 96 }
95 97
96 //$users = $users->paginate(15); 98 //$users = $users->paginate(15);
97 99
98 //DB::enableQueryLog(); 100 //DB::enableQueryLog();
99 $users = DB::select('SELECT u.*, w.*, j.* 101 $users = DB::select('SELECT u.*, w.*, j.*
100 FROM workers w 102 FROM workers w
101 JOIN users u ON u.id = w.user_id 103 JOIN users u ON u.id = w.user_id
102 JOIN job_titles j ON j.id = w.position_work 104 JOIN job_titles j ON j.id = w.position_work
103 Where (u.is_worker = 1) 105 Where (u.is_worker = 1)
104 '.$where, $Arr); 106 '.$where, $Arr);
105 //dump(DB::getQueryLog()); 107 //dump(DB::getQueryLog());
106 dd($users); 108 dd($users);
107 */ 109 */
108 110
109 if ($request->ajax()) { 111 if ($request->ajax()) {
110 return view('admin.worker.index_ajax', compact('users')); 112 return view('admin.worker.index_ajax', compact('users'));
111 } else { 113 } else {
112 return view('admin.worker.index', compact('users', 'find_key', 'find_status_work', 'status_work')); 114 return view('admin.worker.index', compact('users', 'find_key', 'find_status_work', 'status_work'));
113 } 115 }
114 } 116 }
115 117
116 public function form_edit_worker(Worker $worker) { 118 public function form_edit_worker(Worker $worker) {
117 $job_titles = Job_title::query()->active()->orderBy('name')->get(); 119 $job_titles = Job_title::query()->active()->orderBy('name')->get();
118 120
119 $time_end_anketa = 'Бессрочно'; 121 $time_end_anketa = 'Бессрочно';
120 if (!empty($worker->updated_at)) { 122 if (!empty($worker->updated_at)) {
121 $long_days = Company::find(1)->time_resume; 123 $long_days = Company::find(1)->time_resume;
122 $time_end_anketa = date("d.m.Y H:i:s", strtotime($worker->updated_at . "+$long_days days")); 124 $time_end_anketa = date("d.m.Y H:i:s", strtotime($worker->updated_at . "+$long_days days"));
123 } 125 }
124 return view('admin.worker.edit', compact('worker', 'job_titles', 'time_end_anketa')); 126 return view('admin.worker.edit', compact('worker', 'job_titles', 'time_end_anketa'));
125 } 127 }
126 128
127 public function form_update_worker(Request $request, Worker $worker) 129 public function form_update_worker(Request $request, Worker $worker)
128 { 130 {
129 $params = $request->all(); 131 $params = $request->all();
130 132
131 $rules = [ 133 $rules = [
132 'email' => 'email|string|max:255', 134 'email' => 'email|string|max:255',
133 //'photo' => 'mimes:jpeg,jpg,png|max:15000', 135 //'photo' => 'mimes:jpeg,jpg,png|max:15000',
134 ]; 136 ];
135 137
136 $messages = [ 138 $messages = [
137 'required' => 'Укажите обязательное поле «:attribute»', 139 'required' => 'Укажите обязательное поле «:attribute»',
138 'confirmed' => 'Пароли не совпадают', 140 'confirmed' => 'Пароли не совпадают',
139 'email' => 'Введите корректный email', 141 'email' => 'Введите корректный email',
140 'min' => [ 142 'min' => [
141 'string' => 'Поле «:attribute» должно быть не меньше :min символов', 143 'string' => 'Поле «:attribute» должно быть не меньше :min символов',
142 'file' => 'Файл «:attribute» должен быть не меньше :min Кбайт' 144 'file' => 'Файл «:attribute» должен быть не меньше :min Кбайт'
143 ], 145 ],
144 'max' => [ 146 'max' => [
145 'string' => 'Поле «:attribute» должно быть не больше :max символов', 147 'string' => 'Поле «:attribute» должно быть не больше :max символов',
146 'file' => 'Файл «:attribute» должен быть не больше :max Кбайт' 148 'file' => 'Файл «:attribute» должен быть не больше :max Кбайт'
147 ], 149 ],
148 ]; 150 ];
149 151
150 $validator = Validator::make($params, $rules, $messages); 152 $validator = Validator::make($params, $rules, $messages);
151 153
152 if ($validator->fails()) { 154 if ($validator->fails()) {
153 return back()->withErrors($validator)->withInput(); 155 return back()->withErrors($validator)->withInput();
154 } else { 156 } else {
155 $user_id = $worker->user_id; 157 $user_id = $worker->user_id;
156 if ($request->has('photo')) { 158 if ($request->has('photo')) {
157 if (!empty($worker->photo)) { 159 if (!empty($worker->photo)) {
158 Storage::delete($worker->photo); 160 Storage::delete($worker->photo);
159 } 161 }
160 if (!empty($request->photo)) 162 if (!empty($request->photo))
161 $params['photo'] = $request->file('photo')->store("workers/$user_id", 'public'); 163 $params['photo'] = $request->file('photo')->store("workers/$user_id", 'public');
162 } 164 }
163 $worker->update($params); 165 $worker->update($params);
164 166
165 return redirect()->route('admin.workers'); 167 return redirect()->route('admin.workers');
166 } 168 }
167 } 169 }
168 170
169 // кабинет - статистика работников 171 // кабинет - статистика работников
170 public function static_workers(Request $request) { 172 public function static_workers(Request $request) {
171 $stat = Static_worker::with('users'); 173 $stat = Static_worker::with('users');
172 //->join('users', 'users.id', '=', 'static_workers.user_id'); 174 //->join('users', 'users.id', '=', 'static_workers.user_id');
173 $users = User::query()->active()->OrderBy('id')->get(); 175 $users = User::query()->active()->OrderBy('id')->get();
174 $periods = Static_worker::query()->distinct('year_month')->select('year_month')->get(); 176 $periods = Static_worker::query()->distinct('year_month')->select('year_month')->get();
175 if ($request->ajax()) { 177 if ($request->ajax()) {
176 if (isset($request->user_id)) 178 if (isset($request->user_id))
177 if (!$request->user_id == "0") 179 if (!$request->user_id == "0")
178 $stat = $stat->Where('user_id', '=', $request->user_id); 180 $stat = $stat->Where('user_id', '=', $request->user_id);
179 if (isset($request->year_month)) { 181 if (isset($request->year_month)) {
180 if (!$request->year_month == "0") 182 if (!$request->year_month == "0")
181 $stat = $stat->Where('year_month', '=', $request->year_month); 183 $stat = $stat->Where('year_month', '=', $request->year_month);
182 } 184 }
183 } 185 }
184 186
185 $stat = $stat->OrderByDesc('year_month'); 187 $stat = $stat->OrderByDesc('year_month');
186 //->OrderBy('users.name'); 188 //->OrderBy('users.name');
187 //OrderBy('users.name')-> 189 //OrderBy('users.name')->
188 /*$stat->implode() loadMissing(['users' => function (Builder $query) { 190 /*$stat->implode() loadMissing(['users' => function (Builder $query) {
189 $query->orderBy('name', 'asc'); 191 $query->orderBy('name', 'asc');
190 }]);*/ 192 }]);*/
191 193
192 $stat = $stat->paginate(15); 194 $stat = $stat->paginate(15);
193 195
194 if ($request->ajax()) 196 if ($request->ajax())
195 return view('admin.static.index_workers_ajax', compact('stat')); 197 return view('admin.static.index_workers_ajax', compact('stat'));
196 else 198 else
197 return view('admin.static.index_workers', compact('stat', 'users', 'periods')); 199 return view('admin.static.index_workers', compact('stat', 'users', 'periods'));
198 200
199 } 201 }
200 202
201 } 203 }
202 204
resources/views/admin/users/profile.blade.php
1 @extends('layout.admin', ['title' => 'Админка - Профиль '.$user->name]) 1 @extends('layout.admin', ['title' => 'Админка - Профиль '.$user->name])
2 2
3 @section('content') 3 @section('content')
4 <h4 class="mb-4 text-lg font-semibold text-gray-600 dark:text-gray-300"> 4 <h4 class="mb-4 text-lg font-semibold text-gray-600 dark:text-gray-300">
5 Личные данные пользователя "{{$user->name}} ({{$user->id}})" 5 Личные данные пользователя "{{$user->name}} ({{$user->id}})"
6 </h4> 6 </h4>
7 <form method="POST" action=""> 7 <form method="POST" action="">
8 @csrf 8 @csrf
9 <div class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800"> 9 <div class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800">
10 <label class="block text-sm"> 10 <label class="block text-sm">
11 <span class="text-gray-700 dark:text-gray-400">Имя/Псевдоним/Имя компании</span> 11 <span class="text-gray-700 dark:text-gray-400">Имя/Псевдоним/Имя компании</span>
12 <input name="name" id="name" 12 <input name="name" id="name"
13 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 13 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
14 placeholder="Псевдоним для админки" value="{{ old('name') ?? $user->name ?? '' }}" 14 placeholder="Псевдоним для админки" value="{{ old('name') ?? $user->name ?? '' }}"
15 /> 15 />
16 @error('name') 16 @error('name')
17 <span class="text-xs text-red-600 dark:text-red-400"> 17 <span class="text-xs text-red-600 dark:text-red-400">
18 {{ $message }} 18 {{ $message }}
19 </span> 19 </span>
20 @enderror 20 @enderror
21 </label><br> 21 </label><br>
22 22
23 <!--<label class="block text-sm"> 23 <!--<label class="block text-sm">
24 <span class="text-gray-700 dark:text-gray-400">Email</span> 24 <span class="text-gray-700 dark:text-gray-400">Email</span>
25 <input name="email" id="email" 25 <input name="email" id="email"
26 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 26 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
27 placeholder="Почта" value="{{ old('email') ?? $user->email ?? '' }}" 27 placeholder="Почта" value="{{ old('email') ?? $user->email ?? '' }}"
28 /> 28 />
29 @error('email') 29 @error('email')
30 <span class="text-xs text-red-600 dark:text-red-400"> 30 <span class="text-xs text-red-600 dark:text-red-400">
31 {{ $message }} 31 {{ $message }}
32 </span> 32 </span>
33 @enderror 33 @enderror
34 </label><br>--> 34 </label><br>-->
35 35
36 <label class="block text-sm"> 36 <label class="block text-sm">
37 <span class="text-gray-700 dark:text-gray-400">Телефон</span> 37 <span class="text-gray-700 dark:text-gray-400">Телефон</span>
38 <input name="telephone" id="telephone" 38 <input name="telephone" id="telephone"
39 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 39 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
40 placeholder="Телефон" value="{{ old('telephone') ?? $user->telephone ?? '' }}" 40 placeholder="Телефон" value="{{ old('telephone') ?? $user->telephone ?? '' }}"
41 /> 41 />
42 @error('telephone') 42 @error('telephone')
43 <span class="text-xs text-red-600 dark:text-red-400"> 43 <span class="text-xs text-red-600 dark:text-red-400">
44 {{ $message }} 44 {{ $message }}
45 </span> 45 </span>
46 @enderror 46 @enderror
47 </label><br> 47 </label><br>
48 48
49 <label class="block text-sm"> 49 <label class="block text-sm">
50 <span class="text-gray-700 dark:text-gray-400">Фамилия</span> 50 <span class="text-gray-700 dark:text-gray-400">Фамилия</span>
51 <input name="surname" id="surname" 51 <input name="surname" id="surname"
52 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 52 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
53 placeholder="Фамилия" value="{{ old('surname') ?? $user->surname ?? '' }}" 53 placeholder="Фамилия" value="{{ old('surname') ?? $user->surname ?? '' }}"
54 /> 54 />
55 @error('surname') 55 @error('surname')
56 <span class="text-xs text-red-600 dark:text-red-400"> 56 <span class="text-xs text-red-600 dark:text-red-400">
57 {{ $message }} 57 {{ $message }}
58 </span> 58 </span>
59 @enderror 59 @enderror
60 </label><br> 60 </label><br>
61 61
62 <label class="block text-sm"> 62 <label class="block text-sm">
63 <span class="text-gray-700 dark:text-gray-400">Имя человека</span> 63 <span class="text-gray-700 dark:text-gray-400">Имя человека</span>
64 <input name="name_man" id="name_man" 64 <input name="name_man" id="name_man"
65 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 65 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
66 placeholder="Имя человека" value="{{ old('name_man') ?? $user->name_man ?? '' }}" 66 placeholder="Имя человека" value="{{ old('name_man') ?? $user->name_man ?? '' }}"
67 /> 67 />
68 @error('name_man') 68 @error('name_man')
69 <span class="text-xs text-red-600 dark:text-red-400"> 69 <span class="text-xs text-red-600 dark:text-red-400">
70 {{ $message }} 70 {{ $message }}
71 </span> 71 </span>
72 @enderror 72 @enderror
73 </label><br> 73 </label><br>
74 74
75 <label class="block text-sm"> 75 <label class="block text-sm">
76 <span class="text-gray-700 dark:text-gray-400">Отчество</span> 76 <span class="text-gray-700 dark:text-gray-400">Отчество</span>
77 <input name="surname2" id="surname2" 77 <input name="surname2" id="surname2"
78 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 78 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
79 placeholder="Отчество" value="{{ old('surname2') ?? $user->surname2 ?? '' }}" 79 placeholder="Отчество" value="{{ old('surname2') ?? $user->surname2 ?? '' }}"
80 /> 80 />
81 @error('surname2') 81 @error('surname2')
82 <span class="text-xs text-red-600 dark:text-red-400"> 82 <span class="text-xs text-red-600 dark:text-red-400">
83 {{ $message }} 83 {{ $message }}
84 </span> 84 </span>
85 @enderror 85 @enderror
86 </label><br> 86 </label><br>
87 87
88 88
89 89
90 <div class="flex flex-col flex-wrap mb-4 space-y-4 md:flex-row md:items-end md:space-x-4"> 90 <div class="flex flex-col flex-wrap mb-4 space-y-4 md:flex-row md:items-end md:space-x-4">
91 <div> 91 <div>
92 <button type="submit" class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple"> 92 <button type="submit" class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple">
93 Сохранить 93 Сохранить
94 </button> 94 </button>
95 <a href="{{ route('admin.users') }}" 95 <!--<a href="{{ route('admin.users') }}"
96 class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple" 96 class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple"
97 style="display: -webkit-inline-box; height: 30px!important;" 97 style="display: -webkit-inline-box; height: 30px!important;"
98 >Назад</a> 98 >Назад</a>-->
99 @if ($visible==true) 99 @if ($visible==true)
100 <a href="{{$link}}" 100 <a href="{{$link}}"
101 class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple" 101 class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple"
102 style="display: -webkit-inline-box; height: 30px!important;"> 102 style="display: -webkit-inline-box; height: 30px!important;">
103 {{ $caption }} 103 {{ $caption }}
104 </a> 104 </a>
105 @endif 105 @endif
106 </div> 106 </div>
107 </div> 107 </div>
108 </div> 108 </div>
109 </form> 109 </form>
110 @endsection 110 @endsection
111 111
resources/views/admin/worker/edit.blade.php
1 <?php 1 <?php
2 use Illuminate\Support\Facades\Storage; 2 use Illuminate\Support\Facades\Storage;
3 ?> 3 ?>
4 @extends('layout.admin', ['title' => 'Админка - Редактирование соискателя']) 4 @extends('layout.admin', ['title' => 'Админка - Редактирование соискателя'])
5 5
6 @section('content') 6 @section('content')
7 <h4 class="mb-4 text-lg font-semibold text-gray-600 dark:text-gray-300"> 7 <h4 class="mb-4 text-lg font-semibold text-gray-600 dark:text-gray-300">
8 Соискатель-пользователь: "{{$worker->users->surname}} {{$worker->users->name_man}} {{$worker->users->surname2}} ({{$worker->user_id}})" 8 Соискатель-пользователь: <a style="text-decoration: underline;" href="{{ route('admin.user-profile', ['user' => $worker->user_id]) }}">"{{$worker->users->surname}} {{$worker->users->name_man}} {{$worker->users->surname2}} ({{$worker->user_id}})"</a>
9 </h4> 9 </h4>
10 <form method="POST" action=""> 10 <form method="POST" action="">
11 @csrf 11 @csrf
12 <div class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800"> 12 <div class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800">
13 <div class="tabs"> 13 <div class="tabs">
14 <input type="radio" name="tab-btn" id="tab-btn-1" value="" checked> 14 <input type="radio" name="tab-btn" id="tab-btn-1" value="" checked>
15 <label for="tab-btn-1">Общие настройки</label> 15 <label for="tab-btn-1">Общие настройки</label>
16 <input type="radio" name="tab-btn" id="tab-btn-2" value=""> 16 <input type="radio" name="tab-btn" id="tab-btn-2" value="">
17 <label for="tab-btn-2">Анкета</label> 17 <label for="tab-btn-2">Анкета</label>
18 <!--<input type="radio" name="tab-btn" id="tab-btn-3" value=""> 18 <!--<input type="radio" name="tab-btn" id="tab-btn-3" value="">
19 <label for="tab-btn-3">Вкладка 3</label>--> 19 <label for="tab-btn-3">Вкладка 3</label>-->
20 <div id="content-1"> 20 <div id="content-1">
21 <label class="block text-sm"> 21 <label class="block text-sm">
22 <span class="text-gray-700 dark:text-gray-400">Должность соискателя</span> 22 <span class="text-gray-700 dark:text-gray-400">Должность соискателя</span>
23 <select name="position_work" id="position_work" class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-select focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray"> 23 <select name="position_work" id="position_work" class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-select focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray">
24 @foreach($job_titles as $job) 24 @foreach($job_titles as $job)
25 <option value="{{ $job->id }}" 25 <option value="{{ $job->id }}"
26 @if($worker->position_work == $job->id) 26 @if($worker->position_work == $job->id)
27 selected 27 selected
28 @endif 28 @endif
29 >{{ $job->name }} ({{ $job->id }})</option> 29 >{{ $job->name }} ({{ $job->id }})</option>
30 @endforeach 30 @endforeach
31 </select> 31 </select>
32 @error('position_work') 32 @error('position_work')
33 <span class="text-xs text-red-600 dark:text-red-400"> 33 <span class="text-xs text-red-600 dark:text-red-400">
34 {{ $message }} 34 {{ $message }}
35 </span> 35 </span>
36 @enderror 36 @enderror
37 </label><br> 37 </label><br>
38 38
39 <label class="block text-sm"> 39 <label class="block text-sm">
40 <p class="text-gray-700 dark:text-gray-400" style="float:left; margin-right: 10px">Избранный кандидат </p> 40 <p class="text-gray-700 dark:text-gray-400" style="float:left; margin-right: 10px">Избранный кандидат </p>
41 <input type="hidden" name="favorite_user" value="0" /> 41 <input type="hidden" name="favorite_user" value="0" />
42 <input name="favorite_user" <? if ($worker->favorite_user) echo "checked";?> 42 <input name="favorite_user" <? if ($worker->favorite_user) echo "checked";?>
43 class="block mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray " 43 class="block mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray "
44 placeholder="" type="checkbox" value="1" 44 placeholder="" type="checkbox" value="1"
45 /><br> 45 /><br>
46 46
47 <p class="text-gray-700 dark:text-gray-400" style="float:left; margin-right: 10px">Срочный кандидат</p> 47 <p class="text-gray-700 dark:text-gray-400" style="float:left; margin-right: 10px">Срочный кандидат</p>
48 <input type="hidden" name="sroch_user" value="0" /> 48 <input type="hidden" name="sroch_user" value="0" />
49 <input name="sroch_user" id="sroch_user" <? if ($worker->sroch_user) echo "checked";?> 49 <input name="sroch_user" id="sroch_user" <? if ($worker->sroch_user) echo "checked";?>
50 class="block mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray " 50 class="block mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray "
51 placeholder="" type="checkbox" value="1" 51 placeholder="" type="checkbox" value="1"
52 /><br> 52 /><br>
53 53
54 </label> 54 </label>
55 55
56 <label class="block text-sm"> 56 <label class="block text-sm">
57 <p class="text-gray-700 dark:text-gray-400" style="float:left; margin-right: 10px">Анкета действительна до <span style="color:#333">{{ $time_end_anketa }}</span></p> 57 <p class="text-gray-700 dark:text-gray-400" style="float:left; margin-right: 10px">Анкета действительна до <span style="color:#333">{{ $time_end_anketa }}</span></p>
58 58
59 </label><br> 59 </label><br>
60 </div> 60 </div>
61 <div id="content-2"> 61 <div id="content-2">
62 <label class="block text-sm"> 62 <label class="block text-sm">
63 <span class="text-gray-700 dark:text-gray-400">Email</span> 63 <span class="text-gray-700 dark:text-gray-400">Email</span>
64 <input name="email" id="email" 64 <input name="email" id="email"
65 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 65 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
66 placeholder="Почта" value="{{ old('email') ?? $worker->email ?? '' }}" 66 placeholder="Почта" value="{{ old('email') ?? $worker->email ?? '' }}"
67 /> 67 />
68 @error('email') 68 @error('email')
69 <span class="text-xs text-red-600 dark:text-red-400"> 69 <span class="text-xs text-red-600 dark:text-red-400">
70 {{ $message }} 70 {{ $message }}
71 </span> 71 </span>
72 @enderror 72 @enderror
73 </label><br> 73 </label><br>
74 74
75 <label class="block text-sm"> 75 <label class="block text-sm">
76 <span class="text-gray-700 dark:text-gray-400">Телефон</span> 76 <span class="text-gray-700 dark:text-gray-400">Телефон</span>
77 <input name="telephone" id="telephone" 77 <input name="telephone" id="telephone"
78 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 78 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
79 placeholder="Телефон" value="{{ old('telephone') ?? $worker->telephone ?? '' }}" 79 placeholder="Телефон" value="{{ old('telephone') ?? $worker->telephone ?? '' }}"
80 /> 80 />
81 @error('telephone') 81 @error('telephone')
82 <span class="text-xs text-red-600 dark:text-red-400"> 82 <span class="text-xs text-red-600 dark:text-red-400">
83 {{ $message }} 83 {{ $message }}
84 </span> 84 </span>
85 @enderror 85 @enderror
86 </label><br> 86 </label><br>
87 87
88 <label class="block text-sm"> 88 <label class="block text-sm">
89 <span class="text-gray-700 dark:text-gray-400">Адрес</span> 89 <span class="text-gray-700 dark:text-gray-400">Адрес</span>
90 <input name="address" id="address" 90 <input name="address" id="address"
91 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 91 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
92 placeholder="Адрес" value="{{ old('address') ?? $worker->address ?? '' }}" 92 placeholder="Адрес" value="{{ old('address') ?? $worker->address ?? '' }}"
93 /> 93 />
94 @error('address') 94 @error('address')
95 <span class="text-xs text-red-600 dark:text-red-400"> 95 <span class="text-xs text-red-600 dark:text-red-400">
96 {{ $message }} 96 {{ $message }}
97 </span> 97 </span>
98 @enderror 98 @enderror
99 </label><br> 99 </label><br>
100 100
101 <label class="block text-sm"> 101 <label class="block text-sm">
102 <span class="text-gray-700 dark:text-gray-400">Город</span> 102 <span class="text-gray-700 dark:text-gray-400">Город</span>
103 <input name="city" id="city" 103 <input name="city" id="city"
104 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 104 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
105 placeholder="Город" value="{{ old('city') ?? $worker->city ?? '' }}" 105 placeholder="Город" value="{{ old('city') ?? $worker->city ?? '' }}"
106 /> 106 />
107 @error('city') 107 @error('city')
108 <span class="text-xs text-red-600 dark:text-red-400"> 108 <span class="text-xs text-red-600 dark:text-red-400">
109 {{ $message }} 109 {{ $message }}
110 </span> 110 </span>
111 @enderror 111 @enderror
112 </label><br> 112 </label><br>
113 113
114 <label class="block text-sm"> 114 <label class="block text-sm">
115 <span class="text-gray-700 dark:text-gray-400">Фото</span> 115 <span class="text-gray-700 dark:text-gray-400">Фото</span>
116 116
117 <input name="photo" id="photo" type="file" 117 <input name="photo" id="photo" type="file"
118 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input" 118 class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
119 placeholder="Фото" value="" 119 placeholder="Фото" value=""
120 /> 120 />
121 @isset($worker->photo) 121 @isset($worker->photo)
122 <img src="<?=asset(Storage::url($worker->photo))?>" width="150"/> 122 <img src="<?=asset(Storage::url($worker->photo))?>" width="150"/>
123 @endisset 123 @endisset
124 @error('logo') 124 @error('logo')
125 <span class="text-xs text-red-600 dark:text-red-400"> 125 <span class="text-xs text-red-600 dark:text-red-400">
126 {{ $message }} 126 {{ $message }}
127 </span> 127 </span>
128 @enderror 128 @enderror
129 </label><br> 129 </label><br>
130 130
131 <label class="block text-sm"> 131 <label class="block text-sm">
132 <span class="text-gray-700 dark:text-gray-400">Согласие на рассылку</span> 132 <span class="text-gray-700 dark:text-gray-400">Согласие на рассылку</span>
133 <input type="hidden" name="email_data" value="0" /> 133 <input type="hidden" name="email_data" value="0" />
134 <input name="email_data" id="email_data" @php if ($worker->email_data) echo "checked"; @endphp 134 <input name="email_data" id="email_data" @php if ($worker->email_data) echo "checked"; @endphp
135 placeholder="" 135 placeholder=""
136 type="checkbox" 136 type="checkbox"
137 value="1" 137 value="1"
138 /> 138 />
139 </label> 139 </label>
140 140
141 <label class="block mt-4 text-sm"> 141 <label class="block mt-4 text-sm">
142 <span class="text-gray-700 dark:text-gray-400">Об соискателе</span> 142 <span class="text-gray-700 dark:text-gray-400">Об соискателе</span>
143 <textarea name="text" id="text" 143 <textarea name="text" id="text"
144 class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-textarea focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray" 144 class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-textarea focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray"
145 rows="3" 145 rows="3"
146 placeholder="О соискателе" 146 placeholder="О соискателе"
147 >{{ old('text') ?? $worker->text ?? '' }}</textarea> 147 >{{ old('text') ?? $worker->text ?? '' }}</textarea>
148 </label> 148 </label>
149 </div> 149 </div>
150 <div id="content-3"> 150 <div id="content-3">
151 151
152 </div> 152 </div>
153 </div><br> 153 </div><br>
154 154
155 <div class="flex flex-col flex-wrap mb-4 space-y-4 md:flex-row md:items-end md:space-x-4"> 155 <div class="flex flex-col flex-wrap mb-4 space-y-4 md:flex-row md:items-end md:space-x-4">
156 <div> 156 <div>
157 <button type="submit" class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple"> 157 <button type="submit" class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple">
158 Сохранить 158 Сохранить
159 </button> 159 </button>
160 <a href="{{ route('admin.workers') }}" 160 <a href="{{ route('admin.workers') }}"
161 class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple" 161 class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple"
162 style="display: -webkit-inline-box; height: 30px!important;" 162 style="display: -webkit-inline-box; height: 30px!important;"
163 >Назад</a> 163 >Назад</a>
164 </div> 164 </div>
165 </div> 165 </div>
166 </div> 166 </div>
167 </form> 167 </form>
168 <!-- 168 <!--
169 <label class="block mt-4 text-sm"> 169 <label class="block mt-4 text-sm">
170 <span class="text-gray-700 dark:text-gray-400"> 170 <span class="text-gray-700 dark:text-gray-400">
171 Requested Limit 171 Requested Limit
172 </span> 172 </span>
173 <select 173 <select
174 class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-select focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray" 174 class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-select focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray"
175 > 175 >
176 <option>$1,000</option> 176 <option>$1,000</option>
177 <option>$5,000</option> 177 <option>$5,000</option>
178 <option>$10,000</option> 178 <option>$10,000</option>
179 <option>$25,000</option> 179 <option>$25,000</option>
180 </select> 180 </select>
181 </label> 181 </label>
182 182
183 <label class="block mt-4 text-sm"> 183 <label class="block mt-4 text-sm">
184 <span class="text-gray-700 dark:text-gray-400"> 184 <span class="text-gray-700 dark:text-gray-400">
185 Multiselect 185 Multiselect
186 </span> 186 </span>
187 <select 187 <select
188 class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-multiselect focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray" 188 class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-multiselect focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray"
189 multiple 189 multiple
190 > 190 >
191 <option>Option 1</option> 191 <option>Option 1</option>
192 <option>Option 2</option> 192 <option>Option 2</option>
193 <option>Option 3</option> 193 <option>Option 3</option>
194 <option>Option 4</option> 194 <option>Option 4</option>
195 <option>Option 5</option> 195 <option>Option 5</option>
196 </select> 196 </select>
197 </label> 197 </label>
198 198
199 <label class="block mt-4 text-sm"> 199 <label class="block mt-4 text-sm">
200 <span class="text-gray-700 dark:text-gray-400">Message</span> 200 <span class="text-gray-700 dark:text-gray-400">Message</span>
201 <textarea 201 <textarea
202 class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-textarea focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray" 202 class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-textarea focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray"
203 rows="3" 203 rows="3"
204 placeholder="Enter some long form content." 204 placeholder="Enter some long form content."
205 ></textarea> 205 ></textarea>
206 </label> 206 </label>
207 207
208 <div class="flex mt-6 text-sm"> 208 <div class="flex mt-6 text-sm">
209 <label class="flex items-center dark:text-gray-400"> 209 <label class="flex items-center dark:text-gray-400">
210 <input 210 <input
211 type="checkbox" 211 type="checkbox"
212 class="text-purple-600 form-checkbox focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray" 212 class="text-purple-600 form-checkbox focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray"
213 /> 213 />
214 <span class="ml-2"> 214 <span class="ml-2">
215 I agree to the 215 I agree to the
216 <span class="underline">privacy policy</span> 216 <span class="underline">privacy policy</span>
217 </span> 217 </span>
218 </label> 218 </label>
219 </div> 219 </div>
220 </div> 220 </div>
221 221
222 <!-- Validation inputs --> 222 <!-- Validation inputs -->
223 <!--<h4 223 <!--<h4
224 class="mb-4 text-lg font-semibold text-gray-600 dark:text-gray-300" 224 class="mb-4 text-lg font-semibold text-gray-600 dark:text-gray-300"
225 > 225 >
226 Validation 226 Validation
227 </h4> 227 </h4>
228 <div 228 <div
229 class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800" 229 class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800"
230 > 230 >
231 <!-- Invalid input --> 231 <!-- Invalid input -->
232 <!--<label class="block text-sm"> 232 <!--<label class="block text-sm">
233 <span class="text-gray-700 dark:text-gray-400"> 233 <span class="text-gray-700 dark:text-gray-400">
234 Invalid input 234 Invalid input
235 </span> 235 </span>
236 <input 236 <input
237 class="block w-full mt-1 text-sm border-red-600 dark:text-gray-300 dark:bg-gray-700 focus:border-red-400 focus:outline-none focus:shadow-outline-red form-input" 237 class="block w-full mt-1 text-sm border-red-600 dark:text-gray-300 dark:bg-gray-700 focus:border-red-400 focus:outline-none focus:shadow-outline-red form-input"
238 placeholder="Jane Doe" 238 placeholder="Jane Doe"
239 /> 239 />
240 <span class="text-xs text-red-600 dark:text-red-400"> 240 <span class="text-xs text-red-600 dark:text-red-400">
241 Your password is too short. 241 Your password is too short.
242 </span> 242 </span>
243 </label> 243 </label>
244 244
245 <!-- Valid input --> 245 <!-- Valid input -->
246 <!--<label class="block mt-4 text-sm"> 246 <!--<label class="block mt-4 text-sm">
247 <span class="text-gray-700 dark:text-gray-400"> 247 <span class="text-gray-700 dark:text-gray-400">
248 Valid input 248 Valid input
249 </span> 249 </span>
250 <input 250 <input
251 class="block w-full mt-1 text-sm border-green-600 dark:text-gray-300 dark:bg-gray-700 focus:border-green-400 focus:outline-none focus:shadow-outline-green form-input" 251 class="block w-full mt-1 text-sm border-green-600 dark:text-gray-300 dark:bg-gray-700 focus:border-green-400 focus:outline-none focus:shadow-outline-green form-input"
252 placeholder="Jane Doe" 252 placeholder="Jane Doe"
253 /> 253 />
254 <span class="text-xs text-green-600 dark:text-green-400"> 254 <span class="text-xs text-green-600 dark:text-green-400">
255 Your password is strong. 255 Your password is strong.
256 </span> 256 </span>
257 </label> 257 </label>
258 258
259 <!-- Helper text --> 259 <!-- Helper text -->
260 <!--<label class="block mt-4 text-sm"> 260 <!--<label class="block mt-4 text-sm">
261 <span class="text-gray-700 dark:text-gray-400"> 261 <span class="text-gray-700 dark:text-gray-400">
262 Helper text 262 Helper text
263 </span> 263 </span>
264 <input 264 <input
265 class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray form-input" 265 class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray form-input"
266 placeholder="Jane Doe" 266 placeholder="Jane Doe"
267 /> 267 />
268 <span class="text-xs text-gray-600 dark:text-gray-400"> 268 <span class="text-xs text-gray-600 dark:text-gray-400">
269 Your password must be at least 6 characters long. 269 Your password must be at least 6 characters long.
270 </span> 270 </span>
271 </label> 271 </label>
272 </div> 272 </div>
273 273
274 <!-- Inputs with icons --> 274 <!-- Inputs with icons -->
275 <!--<h4 275 <!--<h4
276 class="mb-4 text-lg font-semibold text-gray-600 dark:text-gray-300" 276 class="mb-4 text-lg font-semibold text-gray-600 dark:text-gray-300"
277 > 277 >
278 Icons 278 Icons
279 </h4> 279 </h4>
280 <div 280 <div
281 class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800" 281 class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800"
282 > 282 >
283 <label class="block text-sm"> 283 <label class="block text-sm">
284 <span class="text-gray-700 dark:text-gray-400">Icon left</span> 284 <span class="text-gray-700 dark:text-gray-400">Icon left</span>
285 <!-- focus-within sets the color for the icon when input is focused --> 285 <!-- focus-within sets the color for the icon when input is focused -->
286 <!--<div 286 <!--<div
287 class="relative text-gray-500 focus-within:text-purple-600 dark:focus-within:text-purple-400" 287 class="relative text-gray-500 focus-within:text-purple-600 dark:focus-within:text-purple-400"
288 > 288 >
289 <input 289 <input
290 class="block w-full pl-10 mt-1 text-sm text-black dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray form-input" 290 class="block w-full pl-10 mt-1 text-sm text-black dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray form-input"
291 placeholder="Jane Doe" 291 placeholder="Jane Doe"
292 /> 292 />
293 <div 293 <div
294 class="absolute inset-y-0 flex items-center ml-3 pointer-events-none" 294 class="absolute inset-y-0 flex items-center ml-3 pointer-events-none"
295 > 295 >
296 <svg 296 <svg
297 class="w-5 h-5" 297 class="w-5 h-5"
298 aria-hidden="true" 298 aria-hidden="true"
299 fill="none" 299 fill="none"
300 stroke-linecap="round" 300 stroke-linecap="round"
301 stroke-linejoin="round" 301 stroke-linejoin="round"
302 stroke-width="2" 302 stroke-width="2"
303 viewBox="0 0 24 24" 303 viewBox="0 0 24 24"
304 stroke="currentColor" 304 stroke="currentColor"
305 > 305 >
306 <path 306 <path
307 d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z" 307 d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"
308 ></path> 308 ></path>
309 </svg> 309 </svg>
310 </div> 310 </div>
311 </div> 311 </div>
312 </label> 312 </label>
313 313
314 <label class="block mt-4 text-sm"> 314 <label class="block mt-4 text-sm">
315 <span class="text-gray-700 dark:text-gray-400">Icon right</span> 315 <span class="text-gray-700 dark:text-gray-400">Icon right</span>
316 <!-- focus-within sets the color for the icon when input is focused --> 316 <!-- focus-within sets the color for the icon when input is focused -->
317 <!--<div 317 <!--<div
318 class="relative text-gray-500 focus-within:text-purple-600 dark:focus-within:text-purple-400" 318 class="relative text-gray-500 focus-within:text-purple-600 dark:focus-within:text-purple-400"
319 > 319 >
320 <input 320 <input
321 class="block w-full pr-10 mt-1 text-sm text-black dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray form-input" 321 class="block w-full pr-10 mt-1 text-sm text-black dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray form-input"
322 placeholder="Jane Doe" 322 placeholder="Jane Doe"
323 /> 323 />
324 <div 324 <div
325 class="absolute inset-y-0 right-0 flex items-center mr-3 pointer-events-none" 325 class="absolute inset-y-0 right-0 flex items-center mr-3 pointer-events-none"
326 > 326 >
327 <svg 327 <svg
328 class="w-5 h-5" 328 class="w-5 h-5"
329 aria-hidden="true" 329 aria-hidden="true"
330 fill="none" 330 fill="none"
331 stroke-linecap="round" 331 stroke-linecap="round"
332 stroke-linejoin="round" 332 stroke-linejoin="round"
333 stroke-width="2" 333 stroke-width="2"
334 viewBox="0 0 24 24" 334 viewBox="0 0 24 24"
335 stroke="currentColor" 335 stroke="currentColor"
336 > 336 >
337 <path 337 <path
338 d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z" 338 d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"
339 ></path> 339 ></path>
340 </svg> 340 </svg>
341 </div> 341 </div>
342 </div> 342 </div>
343 </label> 343 </label>
344 </div> 344 </div>
345 345
346 <!-- Inputs with buttons --> 346 <!-- Inputs with buttons -->
347 <!--<h4 347 <!--<h4
348 class="mb-4 text-lg font-semibold text-gray-600 dark:text-gray-300" 348 class="mb-4 text-lg font-semibold text-gray-600 dark:text-gray-300"
349 > 349 >
350 Buttons 350 Buttons
351 </h4> 351 </h4>
352 <div 352 <div
353 class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800" 353 class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800"
354 > 354 >
355 <label class="block text-sm"> 355 <label class="block text-sm">
356 <span class="text-gray-700 dark:text-gray-400"> 356 <span class="text-gray-700 dark:text-gray-400">
357 Button left 357 Button left
358 </span> 358 </span>
359 <div class="relative"> 359 <div class="relative">
360 <input 360 <input
361 class="block w-full pl-20 mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray form-input" 361 class="block w-full pl-20 mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray form-input"
362 placeholder="Jane Doe" 362 placeholder="Jane Doe"
363 /> 363 />
364 <button 364 <button
365 class="absolute inset-y-0 px-4 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-l-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray" 365 class="absolute inset-y-0 px-4 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-l-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray"
366 > 366 >
367 Click 367 Click
368 </button> 368 </button>
369 </div> 369 </div>
370 </label> 370 </label>
371 371
372 <label class="block mt-4 text-sm"> 372 <label class="block mt-4 text-sm">
373 <span class="text-gray-700 dark:text-gray-400"> 373 <span class="text-gray-700 dark:text-gray-400">
374 Button right 374 Button right
375 </span> 375 </span>
376 <div 376 <div
377 class="relative text-gray-500 focus-within:text-purple-600" 377 class="relative text-gray-500 focus-within:text-purple-600"
378 > 378 >
379 <input 379 <input
380 class="block w-full pr-20 mt-1 text-sm text-black dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray form-input" 380 class="block w-full pr-20 mt-1 text-sm text-black dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray form-input"
381 placeholder="Jane Doe" 381 placeholder="Jane Doe"
382 /> 382 />
383 <button 383 <button
384 class="absolute inset-y-0 right-0 px-4 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-r-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple" 384 class="absolute inset-y-0 right-0 px-4 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-r-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple"
385 > 385 >
386 Click 386 Click
387 </button> 387 </button>
388 </div> 388 </div>
389 </label> 389 </label>
390 </div>--> 390 </div>-->
391 @endsection 391 @endsection
392 392
resources/views/admin/worker/index.blade.php
1 @extends('layout.admin', ['title' => 'Админка - Работники']) 1 @extends('layout.admin', ['title' => 'Админка - Работники'])
2 2
3 @section('script') 3 @section('script')
4 <script> 4 <script>
5 $(document).ready(function() { 5 $(document).ready(function() {
6 $(document).on('click', '.checkban', function () { 6 $(document).on('click', '.checkban', function () {
7 var this_ = $(this); 7 var this_ = $(this);
8 var value = this_.val(); 8 var value = this_.val();
9 var ajax_block = $('#ajax_block'); 9 var ajax_block = $('#ajax_block');
10 var bool = 0; 10 var bool = 0;
11 11
12 if(this.checked){ 12 if(this.checked){
13 bool = 1; 13 bool = 1;
14 } else { 14 } else {
15 bool = 0; 15 bool = 0;
16 } 16 }
17 17
18 $.ajax({ 18 $.ajax({
19 type: "GET", 19 type: "GET",
20 url: "{{ url()->full()}}", 20 url: "{{ url()->full()}}",
21 data: "id=" + value + "&is_ban=" + bool, 21 data: "id=" + value + "&is_ban=" + bool,
22 success: function (data) { 22 success: function (data) {
23 console.log('Обновление таблицы работников '); 23 console.log('Обновление таблицы работников ');
24 //data = JSON.parse(data); 24 //data = JSON.parse(data);
25 console.log(data); 25 console.log(data);
26 ajax_block.html(data); 26 ajax_block.html(data);
27 }, 27 },
28 headers: { 28 headers: {
29 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') 29 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
30 }, 30 },
31 error: function (data) { 31 error: function (data) {
32 console.log('Error: ' + data); 32 console.log('Error: ' + data);
33 } 33 }
34 }); 34 });
35 }); 35 });
36 36
37 }); 37 });
38 </script> 38 </script>
39 @endsection 39 @endsection
40 40
41 @section('search') 41 @section('search')
42 @include('admin.find_worker', ['find_status_work' => $find_status_work]) 42 @include('admin.find_worker', ['find_status_work' => $find_status_work])
43 @endsection 43 @endsection
44 44
45 @section('content') 45 @section('content')
46 <div class="w-full overflow-hidden rounded-lg shadow-xs" id="ajax_block"> 46 <div class="w-full overflow-hidden rounded-lg shadow-xs" id="ajax_block">
47 <div class="w-full overflow-x-auto"> 47 <div class="w-full overflow-x-auto">
48 <table class="w-full whitespace-no-wrap"> 48 <table class="w-full whitespace-no-wrap">
49 <thead> 49 <thead>
50 <tr 50 <tr
51 class="text-xs font-semibold tracking-wide text-left text-gray-500 uppercase border-b dark:border-gray-700 bg-gray-50 dark:text-gray-400 dark:bg-gray-800" 51 class="text-xs font-semibold tracking-wide text-left text-gray-500 uppercase border-b dark:border-gray-700 bg-gray-50 dark:text-gray-400 dark:bg-gray-800"
52 > 52 >
53 <th class="px-4 py-3">№</th> 53 <th class="px-4 py-3">№</th>
54 <th class="px-4 py-3">ФИО</th> 54 <th class="px-4 py-3">ФИО</th>
55 <th class="px-4 py-3">Email/Телефон</th> 55 <th class="px-4 py-3">Email/Телефон</th>
56 <th class="px-4 py-3">% заполнения анкеты</th> 56 <th class="px-4 py-3">% заполнения анкеты</th>
57 <th class="px-4 py-3">Должность</th> 57 <th class="px-4 py-3">Должность</th>
58 <th class="px-4 py-3">Дата регистрации</th> 58 <th class="px-4 py-3">Дата регистрации</th>
59 <th class="px-4 py-3">Изменить</th> 59 <th class="px-4 py-3">Изменить</th>
60 <!--<th class="px-4 py-3">Бан</th>--> 60 <!--<th class="px-4 py-3">Бан</th>-->
61 </tr> 61 </tr>
62 </thead> 62 </thead>
63 <tbody class="bg-white divide-y dark:divide-gray-700 dark:bg-gray-800"> 63 <tbody class="bg-white divide-y dark:divide-gray-700 dark:bg-gray-800">
64 @foreach($users as $user) 64 @foreach($users as $user)
65 <tr class="text-gray-700 dark:text-gray-400"> 65 <tr class="text-gray-700 dark:text-gray-400">
66 <td class="px-4 py-3"> 66 <td class="px-4 py-3">
67 {{$user->id}} 67 {{$user->id}}
68 </td> 68 </td>
69 <td class="px-4 py-3"> 69 <td class="px-4 py-3">
70 {{ $user->surname }} {{ !empty($user->name_man) ? $user->name_man : $user->name }} {{ $user->surname2 }} 70 @if (isset($user->id))
71 <a style="text-decoration: underline;" href="{{ route('admin.user-profile', ['user' => $user->id]) }}}">{{ $user->surname }} {{ !empty($user->name_man) ? $user->name_man : $user->name }} {{ $user->surname2 }}</a>
72 @else
73 {{ $user->surname }} {{ !empty($user->name_man) ? $user->name_man : $user->name }} {{ $user->surname2 }}
74 @endif
71 </td> 75 </td>
72 <td class="px-4 py-3 text-sm"> 76 <td class="px-4 py-3 text-sm">
73 <div class="flex items-center text-sm"> 77 <div class="flex items-center text-sm">
74 <div> 78 <div>
75 <p class="font-semibold">{{ empty($user->workers->email) ? $user->email : $user->workers->email }}</p> 79 <p class="font-semibold">{{ empty($user->workers->email) ? $user->email : $user->workers->email }}</p>
76 <p class="text-xs text-gray-600 dark:text-gray-400"> 80 <p class="text-xs text-gray-600 dark:text-gray-400">
77 {{ empty($user->workers->telephone) ? $user->telephone : $user->workers->telephone }} 81 {{ empty($user->workers->telephone) ? $user->telephone : $user->workers->telephone }}
78 </p> 82 </p>
79 </div> 83 </div>
80 </div> 84 </div>
81 </td> 85 </td>
82 <td class="px-4 py-3 text-xs"> 86 <td class="px-4 py-3 text-xs">
83 @if (isset($user->workers[0]->persent_anketa)) 87 @if (isset($user->workers[0]->persent_anketa))
84 @if ($user->workers[0]->persent_anketa > 40) 88 @if ($user->workers[0]->persent_anketa > 40)
85 <span class="px-2 py-1 font-semibold leading-tight text-green-700 bg-green-100 rounded-full dark:bg-green-700 dark:text-green-100"> 89 <span class="px-2 py-1 font-semibold leading-tight text-green-700 bg-green-100 rounded-full dark:bg-green-700 dark:text-green-100">
86 {{$user->workers[0]->persent_anketa}}% 90 {{$user->workers[0]->persent_anketa}}%
87 </span> 91 </span>
88 @else 92 @else
89 <span class="px-2 py-1 font-semibold leading-tight text-orange-700 bg-orange-100 rounded-full dark:text-white dark:bg-orange-600"> 93 <span class="px-2 py-1 font-semibold leading-tight text-orange-700 bg-orange-100 rounded-full dark:text-white dark:bg-orange-600">
90 {{$user->workers[0]->persent_anketa}}% 94 {{$user->workers[0]->persent_anketa}}%
91 </span> 95 </span>
92 @endif 96 @endif
93 @else 97 @else
94 <span class="px-2 py-1 font-semibold leading-tight text-orange-700 bg-orange-100 rounded-full dark:text-white dark:bg-orange-600"> 98 <span class="px-2 py-1 font-semibold leading-tight text-orange-700 bg-orange-100 rounded-full dark:text-white dark:bg-orange-600">
95 0% 99 0%
96 </span> 100 </span>
97 @endif 101 @endif
98 </td> 102 </td>
99 <td class="px-4 py-3 text-sm"> 103 <td class="px-4 py-3 text-sm">
100 @if (isset($user->jobtitles[0]->name)) 104 @if (isset($user->jobtitles[0]->name))
101 {{ $user->jobtitles[0]->name }} 105 {{ $user->jobtitles[0]->name }}
102 @else 106 @else
103 Не задана 107 Не задана
104 @endif 108 @endif
105 </td> 109 </td>
106 <td class="px-4 py-3 text-sm"> 110 <td class="px-4 py-3 text-sm">
107 {{ $user->created_at }} 111 {{ $user->created_at }}
108 </td> 112 </td>
109 <td class="px-4 py-3 text-sm"> 113 <td class="px-4 py-3 text-sm">
110 <!--if ($user->id > 1)--> 114 <!--if ($user->id > 1)-->
111 @if (isset($user->workers[0]->id)) 115 @if (isset($user->workers[0]->id))
112 <a href="{{ route('admin.worker-profile-edit', ['worker' => $user->workers[0]->id]) }}">Изменить</a> 116 <a href="{{ route('admin.worker-profile-edit', ['worker' => $user->workers[0]->id]) }}">Изменить</a>
113 117
114 @endif 118 @endif
115 <!--endif--> 119 <!--endif-->
116 </td> 120 </td>
117 <!--<td class="px-4 py-3 text-sm"> 121 <!--<td class="px-4 py-3 text-sm">
118 @if ($user->id > 1) 122 @if ($user->id > 1)
119 <input type="checkbox" class="checkban" value="{{$user->id}}" name="ban_{{$user->id}}" {{ ($user->is_ban) ? "checked" : "" }}/> 123 <input type="checkbox" class="checkban" value="{{$user->id}}" name="ban_{{$user->id}}" {{ ($user->is_ban) ? "checked" : "" }}/>
120 @endif 124 @endif
121 </td>--> 125 </td>-->
122 </tr> 126 </tr>
123 @endforeach 127 @endforeach
124 </tbody> 128 </tbody>
125 </table> 129 </table>
126 </div> 130 </div>
127 131
128 <div class="grid px-4 py-3 text-xs font-semibold tracking-wide text-gray-500 uppercase border-t dark:border-gray-700 bg-gray-50 sm:grid-cols-9 dark:text-gray-400 dark:bg-gray-800"> 132 <div class="grid px-4 py-3 text-xs font-semibold tracking-wide text-gray-500 uppercase border-t dark:border-gray-700 bg-gray-50 sm:grid-cols-9 dark:text-gray-400 dark:bg-gray-800">
129 <?=$users->appends($_GET)->links('admin.pagginate'); ?> 133 <?=$users->appends($_GET)->links('admin.pagginate'); ?>
130 </div> 134 </div>
131 135
132 136
133 <!--<div 137 <!--<div
134 class="grid px-4 py-3 text-xs font-semibold tracking-wide text-gray-500 uppercase border-t dark:border-gray-700 bg-gray-50 sm:grid-cols-9 dark:text-gray-400 dark:bg-gray-800" 138 class="grid px-4 py-3 text-xs font-semibold tracking-wide text-gray-500 uppercase border-t dark:border-gray-700 bg-gray-50 sm:grid-cols-9 dark:text-gray-400 dark:bg-gray-800"
135 > 139 >
136 <span class="flex items-center col-span-3"> 140 <span class="flex items-center col-span-3">
137 Showing 21-30 of 100 141 Showing 21-30 of 100
138 </span> 142 </span>
139 <span class="col-span-2"></span> 143 <span class="col-span-2"></span>
140 144
141 <span class="flex col-span-4 mt-2 sm:mt-auto sm:justify-end"> 145 <span class="flex col-span-4 mt-2 sm:mt-auto sm:justify-end">
142 <nav aria-label="Table navigation"> 146 <nav aria-label="Table navigation">
143 <ul class="inline-flex items-center"> 147 <ul class="inline-flex items-center">
144 <li> 148 <li>
145 <button 149 <button
146 class="px-3 py-1 rounded-md rounded-l-lg focus:outline-none focus:shadow-outline-purple" 150 class="px-3 py-1 rounded-md rounded-l-lg focus:outline-none focus:shadow-outline-purple"
147 aria-label="Previous" 151 aria-label="Previous"
148 > 152 >
149 <svg 153 <svg
150 aria-hidden="true" 154 aria-hidden="true"
151 class="w-4 h-4 fill-current" 155 class="w-4 h-4 fill-current"
152 viewBox="0 0 20 20" 156 viewBox="0 0 20 20"
153 > 157 >
154 <path 158 <path
155 d="M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z" 159 d="M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z"
156 clip-rule="evenodd" 160 clip-rule="evenodd"
157 fill-rule="evenodd" 161 fill-rule="evenodd"
158 ></path> 162 ></path>
159 </svg> 163 </svg>
160 </button> 164 </button>
161 </li> 165 </li>
162 <li> 166 <li>
163 <button 167 <button
164 class="px-3 py-1 rounded-md focus:outline-none focus:shadow-outline-purple" 168 class="px-3 py-1 rounded-md focus:outline-none focus:shadow-outline-purple"
165 > 169 >
166 1 170 1
167 </button> 171 </button>
168 </li> 172 </li>
169 <li> 173 <li>
170 <button 174 <button
171 class="px-3 py-1 rounded-md focus:outline-none focus:shadow-outline-purple" 175 class="px-3 py-1 rounded-md focus:outline-none focus:shadow-outline-purple"
172 > 176 >
173 2 177 2
174 </button> 178 </button>
175 </li> 179 </li>
176 <li> 180 <li>
177 <button 181 <button
178 class="px-3 py-1 text-white transition-colors duration-150 bg-purple-600 border border-r-0 border-purple-600 rounded-md focus:outline-none focus:shadow-outline-purple" 182 class="px-3 py-1 text-white transition-colors duration-150 bg-purple-600 border border-r-0 border-purple-600 rounded-md focus:outline-none focus:shadow-outline-purple"
179 > 183 >
180 3 184 3
181 </button> 185 </button>
182 </li> 186 </li>
183 <li> 187 <li>
184 <button 188 <button
185 class="px-3 py-1 rounded-md focus:outline-none focus:shadow-outline-purple" 189 class="px-3 py-1 rounded-md focus:outline-none focus:shadow-outline-purple"
186 > 190 >
187 4 191 4
188 </button> 192 </button>
189 </li> 193 </li>
190 <li> 194 <li>
191 <span class="px-3 py-1">...</span> 195 <span class="px-3 py-1">...</span>
192 </li> 196 </li>
193 <li> 197 <li>
194 <button 198 <button
195 class="px-3 py-1 rounded-md focus:outline-none focus:shadow-outline-purple" 199 class="px-3 py-1 rounded-md focus:outline-none focus:shadow-outline-purple"
196 > 200 >
197 8 201 8
198 </button> 202 </button>
199 </li> 203 </li>
200 <li> 204 <li>
201 <button 205 <button
202 class="px-3 py-1 rounded-md focus:outline-none focus:shadow-outline-purple" 206 class="px-3 py-1 rounded-md focus:outline-none focus:shadow-outline-purple"
203 > 207 >
204 9 208 9
205 </button> 209 </button>
206 </li> 210 </li>
207 <li> 211 <li>
208 <button 212 <button
209 class="px-3 py-1 rounded-md rounded-r-lg focus:outline-none focus:shadow-outline-purple" 213 class="px-3 py-1 rounded-md rounded-r-lg focus:outline-none focus:shadow-outline-purple"
210 aria-label="Next" 214 aria-label="Next"
211 > 215 >
212 <svg 216 <svg
213 class="w-4 h-4 fill-current" 217 class="w-4 h-4 fill-current"
214 aria-hidden="true" 218 aria-hidden="true"
215 viewBox="0 0 20 20" 219 viewBox="0 0 20 20"
216 > 220 >
217 <path 221 <path
218 d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z" 222 d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z"
219 clip-rule="evenodd" 223 clip-rule="evenodd"
220 fill-rule="evenodd" 224 fill-rule="evenodd"
221 ></path> 225 ></path>
222 </svg> 226 </svg>
223 </button> 227 </button>
224 </li> 228 </li>
225 </ul> 229 </ul>
226 </nav> 230 </nav>
227 </span> 231 </span>
228 </div>--> 232 </div>-->
229 </div> 233 </div>
230 234
231 <?//=$users->appends($_GET)->links('catalogs.paginate'); ?> 235 <?//=$users->appends($_GET)->links('catalogs.paginate'); ?>
232 236
233 237
234 @endsection 238 @endsection
235 239