Commit 0b9fba095578d792b87dbd4e72776de4c9a4409d
1 parent
694201330f
Exists in
master
Карта на странице 'объекты на карте'
Showing 4 changed files with 88 additions and 9 deletions Inline Diff
app/Http/Controllers/MainController.php
1 | <?php | 1 | <?php |
2 | 2 | ||
3 | namespace App\Http\Controllers; | 3 | namespace App\Http\Controllers; |
4 | 4 | ||
5 | use App\Http\Requests\EmailRequest; | 5 | use App\Http\Requests\EmailRequest; |
6 | use App\Http\Requests\FooterFeedbackRequest; | 6 | use App\Http\Requests\FooterFeedbackRequest; |
7 | use App\Models\Area; | 7 | use App\Models\Area; |
8 | use App\Models\Contact; | 8 | use App\Models\Contact; |
9 | use App\Models\format_area; | 9 | use App\Models\format_area; |
10 | use App\Models\House; | 10 | use App\Models\House; |
11 | use App\Models\ModelMailFeedback; | 11 | use App\Models\ModelMailFeedback; |
12 | use App\Models\News; | 12 | use App\Models\News; |
13 | use App\Models\Partners; | 13 | use App\Models\Partners; |
14 | use App\Models\type_area; | 14 | use App\Models\type_area; |
15 | use Illuminate\Database\Eloquent\Model; | 15 | use Illuminate\Database\Eloquent\Model; |
16 | use Illuminate\Http\Request; | 16 | use Illuminate\Http\Request; |
17 | use App\Classes\RusDate; | 17 | use App\Classes\RusDate; |
18 | use Illuminate\Support\Facades\Mail; | 18 | use Illuminate\Support\Facades\Mail; |
19 | use PhpParser\Node\Stmt\Switch_; | 19 | use PhpParser\Node\Stmt\Switch_; |
20 | use Illuminate\Support\Facades\Response; | 20 | use Illuminate\Support\Facades\Response; |
21 | 21 | ||
22 | class MainController extends Controller | 22 | class MainController extends Controller |
23 | { | 23 | { |
24 | /* | 24 | /* |
25 | * Главная страница проекта | 25 | * Главная страница проекта |
26 | */ | 26 | */ |
27 | public function index() { | 27 | public function index() { |
28 | $houses = House::with('areas')->orderByDesc('created_at')->limit(8)->get(); | 28 | $houses = House::with('areas')->orderByDesc('created_at')->limit(8)->get(); |
29 | $news = News::query()->orderByDesc('created_at')->limit(8)->get(); | 29 | $news = News::query()->orderByDesc('created_at')->limit(8)->get(); |
30 | $partners = Partners::query()->limit(18)->get(); | 30 | $partners = Partners::query()->limit(18)->get(); |
31 | return view('index', compact('houses', 'news', 'partners')); | 31 | return view('index', compact('houses', 'news', 'partners')); |
32 | } | 32 | } |
33 | 33 | ||
34 | /* | 34 | /* |
35 | * Фильтр ajax в каталоге | 35 | * Фильтр ajax в каталоге |
36 | */ | 36 | */ |
37 | public function catalog_ajax_filter(Request $request) { | 37 | public function catalog_ajax_filter(Request $request) { |
38 | $Res = Array(); | 38 | $Res = Array(); |
39 | if (!empty($request->area)) { | 39 | if (!empty($request->area)) { |
40 | $area_table = Area::where('id', '=', $request->area)->get(); | 40 | $area_table = Area::where('id', '=', $request->area)->get(); |
41 | $Res[] = $area_table[0]->name_area; | 41 | $Res[] = $area_table[0]->name_area; |
42 | } else { | 42 | } else { |
43 | $Res[] = "Все объекты"; | 43 | $Res[] = "Все объекты"; |
44 | } | 44 | } |
45 | 45 | ||
46 | if (!empty($request->type_area)) { | 46 | if (!empty($request->type_area)) { |
47 | $type_area_table = type_area::where('id', '=', $request->type_area)->get(); | 47 | $type_area_table = type_area::where('id', '=', $request->type_area)->get(); |
48 | $Res[] = $type_area_table[0]->name_type; | 48 | $Res[] = $type_area_table[0]->name_type; |
49 | } else { | 49 | } else { |
50 | $Res[] = "Тип недвижимости"; | 50 | $Res[] = "Тип недвижимости"; |
51 | } | 51 | } |
52 | 52 | ||
53 | if (!empty($request->format_area)) { | 53 | if (!empty($request->format_area)) { |
54 | $format_area_table = format_area::where('id', '=', $request->format_area)->get(); | 54 | $format_area_table = format_area::where('id', '=', $request->format_area)->get(); |
55 | $Res[] = $format_area_table[0]->name_format; | 55 | $Res[] = $format_area_table[0]->name_format; |
56 | } else { | 56 | } else { |
57 | $Res[] = "Формат недвижимости"; | 57 | $Res[] = "Формат недвижимости"; |
58 | } | 58 | } |
59 | 59 | ||
60 | return json_encode($Res); | 60 | return json_encode($Res); |
61 | } | 61 | } |
62 | 62 | ||
63 | /* | 63 | /* |
64 | * Страница ЖК | 64 | * Страница ЖК |
65 | */ | 65 | */ |
66 | public function Complex(Area $area, Request $request) { | 66 | public function Complex(Area $area, Request $request) { |
67 | //////////раздел аренда | 67 | //////////раздел аренда |
68 | $house_arenda = House::with('areas')-> | 68 | $house_arenda = House::with('areas')-> |
69 | where('area_id', '=', $area->id)-> | 69 | where('area_id', '=', $area->id)-> |
70 | where('format_house', '=', 'Аренда'); | 70 | where('format_house', '=', 'Аренда'); |
71 | 71 | ||
72 | if ($request->view == 'arenda') { | 72 | if ($request->view == 'arenda') { |
73 | switch ($request->sort_price) { | 73 | switch ($request->sort_price) { |
74 | case 1: $house_arenda = $house_arenda->orderBy('price');break; | 74 | case 1: $house_arenda = $house_arenda->orderBy('price');break; |
75 | case 2: $house_arenda = $house_arenda->orderByDesc('price');break; | 75 | case 2: $house_arenda = $house_arenda->orderByDesc('price');break; |
76 | } | 76 | } |
77 | switch ($request->sort_new) { | 77 | switch ($request->sort_new) { |
78 | case 1: $house_arenda = $house_arenda->orderByDesc('created_at');break; | 78 | case 1: $house_arenda = $house_arenda->orderByDesc('created_at');break; |
79 | case 2: $house_arenda = $house_arenda->orderBy('created_at');break; | 79 | case 2: $house_arenda = $house_arenda->orderBy('created_at');break; |
80 | } | 80 | } |
81 | switch ($request->sort_area) { | 81 | switch ($request->sort_area) { |
82 | case 1: $house_arenda = $house_arenda->orderByDesc('area')->get();break; | 82 | case 1: $house_arenda = $house_arenda->orderByDesc('area')->get();break; |
83 | case 2: $house_arenda = $house_arenda->orderBy('area')->get();break; | 83 | case 2: $house_arenda = $house_arenda->orderBy('area')->get();break; |
84 | } | 84 | } |
85 | } else { | 85 | } else { |
86 | $house_arenda = $house_arenda->orderBy('price')-> | 86 | $house_arenda = $house_arenda->orderBy('price')-> |
87 | orderByDesc('created_at')-> | 87 | orderByDesc('created_at')-> |
88 | orderByDesc('area')->get(); | 88 | orderByDesc('area')->get(); |
89 | } | 89 | } |
90 | 90 | ||
91 | ////////раздел продажа | 91 | ////////раздел продажа |
92 | $house_prodaja = House::with('areas')-> | 92 | $house_prodaja = House::with('areas')-> |
93 | where('area_id', '=', $area->id)-> | 93 | where('area_id', '=', $area->id)-> |
94 | where('format_house', '=', 'Продажа'); | 94 | where('format_house', '=', 'Продажа'); |
95 | 95 | ||
96 | if ($request->view == 'prodaja') { | 96 | if ($request->view == 'prodaja') { |
97 | switch ($request->sort_price) { | 97 | switch ($request->sort_price) { |
98 | case 1: $house_prodaja = $house_prodaja->orderBy('price');break; | 98 | case 1: $house_prodaja = $house_prodaja->orderBy('price');break; |
99 | case 2: $house_prodaja = $house_prodaja->orderByDesc('price');break; | 99 | case 2: $house_prodaja = $house_prodaja->orderByDesc('price');break; |
100 | } | 100 | } |
101 | switch ($request->sort_new) { | 101 | switch ($request->sort_new) { |
102 | case 1: $house_prodaja = $house_prodaja->orderByDesc('created_at');break; | 102 | case 1: $house_prodaja = $house_prodaja->orderByDesc('created_at');break; |
103 | case 2: $house_prodaja = $house_prodaja->orderBy('created_at');break; | 103 | case 2: $house_prodaja = $house_prodaja->orderBy('created_at');break; |
104 | } | 104 | } |
105 | switch ($request->sort_area) { | 105 | switch ($request->sort_area) { |
106 | case 1: $house_prodaja = $house_prodaja->orderByDesc('area')->get();break; | 106 | case 1: $house_prodaja = $house_prodaja->orderByDesc('area')->get();break; |
107 | case 2: $house_prodaja = $house_prodaja->orderBy('area')->get();break; | 107 | case 2: $house_prodaja = $house_prodaja->orderBy('area')->get();break; |
108 | } | 108 | } |
109 | } else { | 109 | } else { |
110 | $house_prodaja = $house_prodaja->orderBy('price')-> | 110 | $house_prodaja = $house_prodaja->orderBy('price')-> |
111 | orderByDesc('created_at')-> | 111 | orderByDesc('created_at')-> |
112 | orderByDesc('area')->get(); | 112 | orderByDesc('area')->get(); |
113 | } | 113 | } |
114 | 114 | ||
115 | //////////////// Раздел бизнеса | 115 | //////////////// Раздел бизнеса |
116 | $house_bissnes = House::with('areas')-> | 116 | $house_bissnes = House::with('areas')-> |
117 | where('area_id', '=', $area->id)-> | 117 | where('area_id', '=', $area->id)-> |
118 | where('format_house', '=', 'Бизнес'); | 118 | where('format_house', '=', 'Бизнес'); |
119 | //orderByDesc('created_at')->get(); | 119 | //orderByDesc('created_at')->get(); |
120 | 120 | ||
121 | if ($request->view == 'bissnes') { | 121 | if ($request->view == 'bissnes') { |
122 | switch ($request->sort_price) { | 122 | switch ($request->sort_price) { |
123 | case 1: $house_bissnes = $house_bissnes->orderBy('price');break; | 123 | case 1: $house_bissnes = $house_bissnes->orderBy('price');break; |
124 | case 2: $house_bissnes = $house_bissnes->orderByDesc('price');break; | 124 | case 2: $house_bissnes = $house_bissnes->orderByDesc('price');break; |
125 | } | 125 | } |
126 | switch ($request->sort_new) { | 126 | switch ($request->sort_new) { |
127 | case 1: $house_bissnes = $house_bissnes->orderByDesc('created_at');break; | 127 | case 1: $house_bissnes = $house_bissnes->orderByDesc('created_at');break; |
128 | case 2: $house_bissnes = $house_bissnes->orderBy('created_at');break; | 128 | case 2: $house_bissnes = $house_bissnes->orderBy('created_at');break; |
129 | } | 129 | } |
130 | switch ($request->sort_area) { | 130 | switch ($request->sort_area) { |
131 | case 1: $house_bissnes = $house_bissnes->orderByDesc('area')->get();break; | 131 | case 1: $house_bissnes = $house_bissnes->orderByDesc('area')->get();break; |
132 | case 2: $house_bissnes = $house_bissnes->orderBy('area')->get();break; | 132 | case 2: $house_bissnes = $house_bissnes->orderBy('area')->get();break; |
133 | } | 133 | } |
134 | } else { | 134 | } else { |
135 | $house_bissnes = $house_bissnes->orderBy('price')-> | 135 | $house_bissnes = $house_bissnes->orderBy('price')-> |
136 | orderByDesc('created_at')-> | 136 | orderByDesc('created_at')-> |
137 | orderByDesc('area')->get(); | 137 | orderByDesc('area')->get(); |
138 | } | 138 | } |
139 | 139 | ||
140 | //////////раздел арендованные | 140 | //////////раздел арендованные |
141 | $house_arendovannie = House::with('areas')-> | 141 | $house_arendovannie = House::with('areas')-> |
142 | where('area_id', '=', $area->id)-> | 142 | where('area_id', '=', $area->id)-> |
143 | where('format_house', '=', 'Арендованные'); | 143 | where('format_house', '=', 'Арендованные'); |
144 | //orderByDesc('created_at')->get(); | 144 | //orderByDesc('created_at')->get(); |
145 | 145 | ||
146 | if ($request->view == 'arendovannie') { | 146 | if ($request->view == 'arendovannie') { |
147 | switch ($request->sort_price) { | 147 | switch ($request->sort_price) { |
148 | case 1: $house_arendovannie = $house_arendovannie->orderBy('price');break; | 148 | case 1: $house_arendovannie = $house_arendovannie->orderBy('price');break; |
149 | case 2: $house_arendovannie = $house_arendovannie->orderByDesc('price');break; | 149 | case 2: $house_arendovannie = $house_arendovannie->orderByDesc('price');break; |
150 | } | 150 | } |
151 | switch ($request->sort_new) { | 151 | switch ($request->sort_new) { |
152 | case 1: $house_arendovannie = $house_arendovannie->orderByDesc('created_at');break; | 152 | case 1: $house_arendovannie = $house_arendovannie->orderByDesc('created_at');break; |
153 | case 2: $house_arendovannie = $house_arendovannie->orderBy('created_at');break; | 153 | case 2: $house_arendovannie = $house_arendovannie->orderBy('created_at');break; |
154 | } | 154 | } |
155 | switch ($request->sort_area) { | 155 | switch ($request->sort_area) { |
156 | case 1: $house_arendovannie = $house_arendovannie->orderByDesc('area')->get();break; | 156 | case 1: $house_arendovannie = $house_arendovannie->orderByDesc('area')->get();break; |
157 | case 2: $house_arendovannie = $house_arendovannie->orderBy('area')->get();break; | 157 | case 2: $house_arendovannie = $house_arendovannie->orderBy('area')->get();break; |
158 | } | 158 | } |
159 | } else { | 159 | } else { |
160 | $house_arendovannie = $house_arendovannie->orderBy('price')-> | 160 | $house_arendovannie = $house_arendovannie->orderBy('price')-> |
161 | orderByDesc('created_at')-> | 161 | orderByDesc('created_at')-> |
162 | orderByDesc('area')->get(); | 162 | orderByDesc('area')->get(); |
163 | } | 163 | } |
164 | 164 | ||
165 | if ($request->ajax()) { | 165 | if ($request->ajax()) { |
166 | switch($request->view) { | 166 | switch($request->view) { |
167 | case 'arenda': return view('ajax.complex.arenda', compact('house_arenda')); break; | 167 | case 'arenda': return view('ajax.complex.arenda', compact('house_arenda')); break; |
168 | case 'prodaja': return view('ajax.complex.prodaja', compact('house_prodaja'));break; | 168 | case 'prodaja': return view('ajax.complex.prodaja', compact('house_prodaja'));break; |
169 | case 'bissnes': return view('ajax.complex.bissnes', compact('house_bissnes')); break; | 169 | case 'bissnes': return view('ajax.complex.bissnes', compact('house_bissnes')); break; |
170 | case 'arendovannie': return view('ajax.complex.arendovannie', compact('house_arendovannie')); break; | 170 | case 'arendovannie': return view('ajax.complex.arendovannie', compact('house_arendovannie')); break; |
171 | } | 171 | } |
172 | } | 172 | } |
173 | 173 | ||
174 | return view('complex', compact('area', | 174 | return view('complex', compact('area', |
175 | 'house_arenda', | 175 | 'house_arenda', |
176 | 'house_prodaja', | 176 | 'house_prodaja', |
177 | 'house_bissnes', | 177 | 'house_bissnes', |
178 | 'house_arendovannie')); | 178 | 'house_arendovannie')); |
179 | 179 | ||
180 | } | 180 | } |
181 | 181 | ||
182 | /* | 182 | /* |
183 | * О компании | 183 | * О компании |
184 | */ | 184 | */ |
185 | public function About(): \Illuminate\Contracts\View\Factory|\Illuminate\Contracts\View\View|\Illuminate\Contracts\Foundation\Application | 185 | public function About(): \Illuminate\Contracts\View\Factory|\Illuminate\Contracts\View\View|\Illuminate\Contracts\Foundation\Application |
186 | { | 186 | { |
187 | $news = News::query()->orderByDesc('created_at')->limit(8)->get(); | 187 | $news = News::query()->orderByDesc('created_at')->limit(8)->get(); |
188 | $partners = Partners::query()->limit(18)->get(); | 188 | $partners = Partners::query()->limit(18)->get(); |
189 | return view('about', compact('news', 'partners')); | 189 | return view('about', compact('news', 'partners')); |
190 | } | 190 | } |
191 | 191 | ||
192 | /* | 192 | /* |
193 | * Форма обратной связи внизу сайта | 193 | * Форма обратной связи внизу сайта |
194 | */ | 194 | */ |
195 | public function main_form(FooterFeedbackRequest $request) { | 195 | public function main_form(FooterFeedbackRequest $request) { |
196 | $RentTorg = Contact::query()->limit(1)->get(); | 196 | $RentTorg = Contact::query()->limit(1)->get(); |
197 | $MailBD = new ModelMailFeedback(); | 197 | $MailBD = new ModelMailFeedback(); |
198 | $MailBD->to = 'Администрации сайта'; | 198 | $MailBD->to = 'Администрации сайта'; |
199 | $MailBD->from = $request->TelephoneUser; | 199 | $MailBD->from = $request->TelephoneUser; |
200 | $MailBD->subject = "Пользователь <".$request->NameUser.">"; | 200 | $MailBD->subject = "Пользователь <".$request->NameUser.">"; |
201 | $MailBD->form = 'Форма в футере'; | 201 | $MailBD->form = 'Форма в футере'; |
202 | $MailBD->text = "От пользователя: ".$request->NameUser.". Заявка на лучшие предложения. Сообщение: ".$request->TextUser; | 202 | $MailBD->text = "От пользователя: ".$request->NameUser.". Заявка на лучшие предложения. Сообщение: ".$request->TextUser; |
203 | $MailBD->save(); | 203 | $MailBD->save(); |
204 | 204 | ||
205 | //return true; | 205 | //return true; |
206 | /* | 206 | /* |
207 | Mail::send('emails.feedback', ['user' => $user], | 207 | Mail::send('emails.feedback', ['user' => $user], |
208 | function ($message) use ($user) { | 208 | function ($message) use ($user) { |
209 | $message->from('sender@gmail.com', 'Sender'); | 209 | $message->from('sender@gmail.com', 'Sender'); |
210 | $message->to($user->email, $user->name)->subject('Test message'); | 210 | $message->to($user->email, $user->name)->subject('Test message'); |
211 | }); | 211 | }); |
212 | */ | 212 | */ |
213 | } | 213 | } |
214 | 214 | ||
215 | /* | 215 | /* |
216 | * Форма обратной связе в хедере | 216 | * Форма обратной связе в хедере |
217 | */ | 217 | */ |
218 | public function header_form(FooterFeedbackRequest $request) { | 218 | public function header_form(FooterFeedbackRequest $request) { |
219 | $RentTorg = Contact::query()->limit(1)->get(); | 219 | $RentTorg = Contact::query()->limit(1)->get(); |
220 | $MailBD = new ModelMailFeedback(); | 220 | $MailBD = new ModelMailFeedback(); |
221 | $MailBD->to = 'Администрации сайта'; | 221 | $MailBD->to = 'Администрации сайта'; |
222 | $MailBD->from = $request->TelephoneUser; | 222 | $MailBD->from = $request->TelephoneUser; |
223 | $MailBD->subject = "Пользователь <".$request->NameUser.">"; | 223 | $MailBD->subject = "Пользователь <".$request->NameUser.">"; |
224 | $MailBD->form = 'Форма в заголовке сайта'; | 224 | $MailBD->form = 'Форма в заголовке сайта'; |
225 | $MailBD->text = "От пользователя: ".$request->NameUser." Сообщение: Заказываю обратный звонок"; | 225 | $MailBD->text = "От пользователя: ".$request->NameUser." Сообщение: Заказываю обратный звонок"; |
226 | $MailBD->save(); | 226 | $MailBD->save(); |
227 | } | 227 | } |
228 | 228 | ||
229 | public function rec_view_form(FooterFeedbackRequest $request) { | 229 | public function rec_view_form(FooterFeedbackRequest $request) { |
230 | $RentTorg = Contact::query()->limit(1)->get(); | 230 | $RentTorg = Contact::query()->limit(1)->get(); |
231 | $MailBD = new ModelMailFeedback(); | 231 | $MailBD = new ModelMailFeedback(); |
232 | $MailBD->to = 'Администрации сайта'; | 232 | $MailBD->to = 'Администрации сайта'; |
233 | $MailBD->from = $request->TelephoneUser; | 233 | $MailBD->from = $request->TelephoneUser; |
234 | $MailBD->subject = "Пользователь <".$request->NameUser.">"; | 234 | $MailBD->subject = "Пользователь <".$request->NameUser.">"; |
235 | $MailBD->form = 'Форма записи на просмотр'; | 235 | $MailBD->form = 'Форма записи на просмотр'; |
236 | $MailBD->text = "От пользователя: ".$request->NameUser." Сообщение: Заказываю просмотр офиса"; | 236 | $MailBD->text = "От пользователя: ".$request->NameUser." Сообщение: Заказываю просмотр офиса"; |
237 | $MailBD->save(); | 237 | $MailBD->save(); |
238 | } | 238 | } |
239 | 239 | ||
240 | /* | 240 | /* |
241 | * Форма обратной связи на странице "Контакты" | 241 | * Форма обратной связи на странице "Контакты" |
242 | */ | 242 | */ |
243 | public function page_contact_form(FooterFeedbackRequest $request) { | 243 | public function page_contact_form(FooterFeedbackRequest $request) { |
244 | $RentTorg = Contact::query()->limit(1)->get(); | 244 | $RentTorg = Contact::query()->limit(1)->get(); |
245 | $MailBD = new ModelMailFeedback(); | 245 | $MailBD = new ModelMailFeedback(); |
246 | $MailBD->to = 'Администрации сайта'; | 246 | $MailBD->to = 'Администрации сайта'; |
247 | $MailBD->from = $request->TelephoneUser; | 247 | $MailBD->from = $request->TelephoneUser; |
248 | $MailBD->subject = "Пользователь <".$request->NameUser."> Компания <".$request->NameCompany.">"; | 248 | $MailBD->subject = "Пользователь <".$request->NameUser."> Компания <".$request->NameCompany.">"; |
249 | $MailBD->form = 'Форма на странице "Контакты"'; | 249 | $MailBD->form = 'Форма на странице "Контакты"'; |
250 | $MailBD->text = "От пользователя: ".$request->NameUser."Телефон: ".$request->TelephoneUser." Почта: <".$request->EmailUser."> Сообщение:".$request->TextUser; | 250 | $MailBD->text = "От пользователя: ".$request->NameUser."Телефон: ".$request->TelephoneUser." Почта: <".$request->EmailUser."> Сообщение:".$request->TextUser; |
251 | $MailBD->save(); | 251 | $MailBD->save(); |
252 | } | 252 | } |
253 | /* | 253 | /* |
254 | * Форма обратной связи по емайлу | 254 | * Форма обратной связи по емайлу |
255 | */ | 255 | */ |
256 | public function email_form(EmailRequest $request) { | 256 | public function email_form(EmailRequest $request) { |
257 | $RentTorg = Contact::query()->limit(1)->get(); | 257 | $RentTorg = Contact::query()->limit(1)->get(); |
258 | $MailBD = new ModelMailFeedback(); | 258 | $MailBD = new ModelMailFeedback(); |
259 | $MailBD->to = 'Администрации сайта'; | 259 | $MailBD->to = 'Администрации сайта'; |
260 | $MailBD->from = $request->EmailUser; | 260 | $MailBD->from = $request->EmailUser; |
261 | $MailBD->subject = "Пользователь <".$request->EmailUser.">"; | 261 | $MailBD->subject = "Пользователь <".$request->EmailUser.">"; |
262 | $MailBD->form = 'Форма обратной связи по Email'; | 262 | $MailBD->form = 'Форма обратной связи по Email'; |
263 | $MailBD->text = "От почты: ".$request->EmailUser." Сообщение: Отправить на данную почту предложения RentTorg"; | 263 | $MailBD->text = "От почты: ".$request->EmailUser." Сообщение: Отправить на данную почту предложения RentTorg"; |
264 | $MailBD->save(); | 264 | $MailBD->save(); |
265 | //dd('Email form'); | 265 | //dd('Email form'); |
266 | return redirect()->route('index'); | 266 | return redirect()->route('index'); |
267 | } | 267 | } |
268 | 268 | ||
269 | /* | 269 | /* |
270 | * Избранное | 270 | * Избранное |
271 | */ | 271 | */ |
272 | public function Favorite(Request $request) { | 272 | public function Favorite(Request $request) { |
273 | if (empty($_COOKIE['favorite_house'])) { | 273 | if (empty($_COOKIE['favorite_house'])) { |
274 | $Arr = Array(); | 274 | $Arr = Array(); |
275 | } else { | 275 | } else { |
276 | $Arr = json_decode($_COOKIE['favorite_house'], true); | 276 | $Arr = json_decode($_COOKIE['favorite_house'], true); |
277 | } | 277 | } |
278 | if (!empty($Arr) && is_array($Arr)) { | 278 | if (!empty($Arr) && is_array($Arr)) { |
279 | $houses = House::with('areas')->whereIn('id', $Arr); | 279 | $houses = House::with('areas')->whereIn('id', $Arr); |
280 | 280 | ||
281 | if (isset($request->sort_price)) { | 281 | if (isset($request->sort_price)) { |
282 | switch ($request->sort_price) { | 282 | switch ($request->sort_price) { |
283 | case 1: $houses = $houses->orderBy('price');break; | 283 | case 1: $houses = $houses->orderBy('price');break; |
284 | case 2: $houses = $houses->orderByDesc('price');break; | 284 | case 2: $houses = $houses->orderByDesc('price');break; |
285 | } | 285 | } |
286 | switch ($request->sort_new) { | 286 | switch ($request->sort_new) { |
287 | case 1: $houses = $houses->orderByDesc('created_at');break; | 287 | case 1: $houses = $houses->orderByDesc('created_at');break; |
288 | case 2: $houses = $houses->orderBy('created_at');break; | 288 | case 2: $houses = $houses->orderBy('created_at');break; |
289 | } | 289 | } |
290 | switch ($request->sort_area) { | 290 | switch ($request->sort_area) { |
291 | case 1: $houses = $houses->orderByDesc('area');break; | 291 | case 1: $houses = $houses->orderByDesc('area');break; |
292 | case 2: $houses = $houses->orderBy('area');break; | 292 | case 2: $houses = $houses->orderBy('area');break; |
293 | } | 293 | } |
294 | 294 | ||
295 | } else { | 295 | } else { |
296 | $houses = $houses->orderBy('price')-> | 296 | $houses = $houses->orderBy('price')-> |
297 | orderByDesc('created_at')-> | 297 | orderByDesc('created_at')-> |
298 | orderByDesc('area'); | 298 | orderByDesc('area'); |
299 | } | 299 | } |
300 | 300 | ||
301 | $houses = $houses->paginate(4); | 301 | $houses = $houses->paginate(4); |
302 | 302 | ||
303 | if ($request->ajax()) { | 303 | if ($request->ajax()) { |
304 | return view('ajax.complex.favorite', compact('houses')); | 304 | return view('ajax.complex.favorite', compact('houses')); |
305 | } | 305 | } |
306 | 306 | ||
307 | return view('favorite_data', compact('houses')); | 307 | return view('favorite_data', compact('houses')); |
308 | } else { | 308 | } else { |
309 | return view('favorite', compact('Arr')); | 309 | return view('favorite', compact('Arr')); |
310 | } | 310 | } |
311 | 311 | ||
312 | 312 | ||
313 | } | 313 | } |
314 | 314 | ||
315 | /* | 315 | /* |
316 | * Категории каталога Аренда/Продажа/Бизнес | 316 | * Категории каталога Аренда/Продажа/Бизнес |
317 | */ | 317 | */ |
318 | public function Category($cat, Request $request) { | 318 | public function Category($cat, Request $request) { |
319 | switch ($cat) { | 319 | switch ($cat) { |
320 | case 'arenda': | 320 | case 'arenda': |
321 | $title = "Аренда торговых помещениий"; | 321 | $title = "Аренда торговых помещениий"; |
322 | $format_house = 'Аренда'; | 322 | $format_house = 'Аренда'; |
323 | break; | 323 | break; |
324 | case 'sale': | 324 | case 'sale': |
325 | $title = "Продажа торговых помещений"; | 325 | $title = "Продажа торговых помещений"; |
326 | $format_house = 'Продажа'; | 326 | $format_house = 'Продажа'; |
327 | break; | 327 | break; |
328 | case 'bussiness': | 328 | case 'bussiness': |
329 | $title = "Арендый бизнес"; | 329 | $title = "Арендый бизнес"; |
330 | $format_house = 'Бизнес'; | 330 | $format_house = 'Бизнес'; |
331 | break; | 331 | break; |
332 | default: | 332 | default: |
333 | $title = "Аренда торговых помещениий"; | 333 | $title = "Аренда торговых помещениий"; |
334 | $format_house = 'Аренда'; | 334 | $format_house = 'Аренда'; |
335 | break; | 335 | break; |
336 | } | 336 | } |
337 | 337 | ||
338 | $houses = House::with('areas')-> | 338 | $houses = House::with('areas')-> |
339 | where('format_house', '=', $format_house); | 339 | where('format_house', '=', $format_house); |
340 | //->appends(request()->query()); | 340 | //->appends(request()->query()); |
341 | 341 | ||
342 | if (!empty($request->area)) { | 342 | if (!empty($request->area)) { |
343 | $houses = $houses->where('area_id', '=', $request->area); | 343 | $houses = $houses->where('area_id', '=', $request->area); |
344 | } | 344 | } |
345 | // условия поиска по типу недвижимости | 345 | // условия поиска по типу недвижимости |
346 | if (!empty($request->type_area)) { | 346 | if (!empty($request->type_area)) { |
347 | $houses = $houses->where('type_area_id', '=', $request->type_area); | 347 | $houses = $houses->where('type_area_id', '=', $request->type_area); |
348 | } | 348 | } |
349 | // условия поиска по формату недвижимости | 349 | // условия поиска по формату недвижимости |
350 | if (!empty($request->format_area)) { | 350 | if (!empty($request->format_area)) { |
351 | $houses = $houses->where('format_area_id', '=', $request->format_area); | 351 | $houses = $houses->where('format_area_id', '=', $request->format_area); |
352 | } | 352 | } |
353 | // условия поиска по площади - минимальная площадь | 353 | // условия поиска по площади - минимальная площадь |
354 | if (!empty($request->area_m2_min)) { | 354 | if (!empty($request->area_m2_min)) { |
355 | $houses = $houses->where('area', '>', $request->area_m2_min); | 355 | $houses = $houses->where('area', '>', $request->area_m2_min); |
356 | } | 356 | } |
357 | // условия поиска по площади - максимальная площадь | 357 | // условия поиска по площади - максимальная площадь |
358 | if (!empty($request->area_m2_max)) { | 358 | if (!empty($request->area_m2_max)) { |
359 | $houses = $houses->where('area', '<', $request->area_m2_max); | 359 | $houses = $houses->where('area', '<', $request->area_m2_max); |
360 | } | 360 | } |
361 | // условия поиска по цене - минимальная цена | 361 | // условия поиска по цене - минимальная цена |
362 | if (!empty($request->price_min)) { | 362 | if (!empty($request->price_min)) { |
363 | $houses = $houses->where('price', '>', $request->price_min); | 363 | $houses = $houses->where('price', '>', $request->price_min); |
364 | } | 364 | } |
365 | // условия поиска по цене - максимальная цена | 365 | // условия поиска по цене - максимальная цена |
366 | if (!empty($request->price_max)) { | 366 | if (!empty($request->price_max)) { |
367 | $houses = $houses->where('price', '<', $request->price_max); | 367 | $houses = $houses->where('price', '<', $request->price_max); |
368 | } | 368 | } |
369 | // условия поиска по адресу | 369 | // условия поиска по адресу |
370 | if (!empty($request->address)) { | 370 | if (!empty($request->address)) { |
371 | $houses = $houses->where('address', 'LIKE', "%".$request->address."%"); | 371 | $houses = $houses->where('address', 'LIKE', "%".$request->address."%"); |
372 | } | 372 | } |
373 | 373 | ||
374 | if (isset($request->sort_price)) { | 374 | if (isset($request->sort_price)) { |
375 | switch ($request->sort_price) { | 375 | switch ($request->sort_price) { |
376 | case 1: $houses = $houses->orderBy('price');break; | 376 | case 1: $houses = $houses->orderBy('price');break; |
377 | case 2: $houses = $houses->orderByDesc('price');break; | 377 | case 2: $houses = $houses->orderByDesc('price');break; |
378 | } | 378 | } |
379 | switch ($request->sort_new) { | 379 | switch ($request->sort_new) { |
380 | case 1: $houses = $houses->orderByDesc('created_at');break; | 380 | case 1: $houses = $houses->orderByDesc('created_at');break; |
381 | case 2: $houses = $houses->orderBy('created_at');break; | 381 | case 2: $houses = $houses->orderBy('created_at');break; |
382 | } | 382 | } |
383 | switch ($request->sort_area) { | 383 | switch ($request->sort_area) { |
384 | case 1: $houses = $houses->orderByDesc('area');break; | 384 | case 1: $houses = $houses->orderByDesc('area');break; |
385 | case 2: $houses = $houses->orderBy('area');break; | 385 | case 2: $houses = $houses->orderBy('area');break; |
386 | } | 386 | } |
387 | 387 | ||
388 | } else { | 388 | } else { |
389 | $houses = $houses->orderBy('price')-> | 389 | $houses = $houses->orderBy('price')-> |
390 | orderByDesc('created_at')-> | 390 | orderByDesc('created_at')-> |
391 | orderByDesc('area'); | 391 | orderByDesc('area'); |
392 | } | 392 | } |
393 | 393 | ||
394 | $houses = $houses->paginate(4); | 394 | $houses = $houses->paginate(4); |
395 | 395 | ||
396 | if ($request->ajax()) { | 396 | if ($request->ajax()) { |
397 | return view('ajax.complex.category', compact('houses')); | 397 | return view('ajax.complex.category', compact('houses')); |
398 | } | 398 | } |
399 | 399 | ||
400 | return view('category_catalog', compact('title', 'cat', 'houses')); | 400 | return view('category_catalog', compact('title', 'cat', 'houses')); |
401 | } | 401 | } |
402 | 402 | ||
403 | 403 | ||
404 | /* | 404 | /* |
405 | * Каталог | 405 | * Каталог |
406 | */ | 406 | */ |
407 | public function Catalog(Request $request) { | 407 | public function Catalog(Request $request) { |
408 | 408 | ||
409 | //////////раздел аренда///////////////////////////////////////////////////////////////// | 409 | //////////раздел аренда///////////////////////////////////////////////////////////////// |
410 | $house_arenda = House::with('areas')-> | 410 | $house_arenda = House::with('areas')-> |
411 | where('format_house', '=', 'Аренда'); | 411 | where('format_house', '=', 'Аренда'); |
412 | // условия поиска по объектам комплексов | 412 | // условия поиска по объектам комплексов |
413 | if (!empty($request->area)) { | 413 | if (!empty($request->area)) { |
414 | $house_arenda = $house_arenda->where('area_id', '=', $request->area); | 414 | $house_arenda = $house_arenda->where('area_id', '=', $request->area); |
415 | } | 415 | } |
416 | // условия поиска по типу недвижимости | 416 | // условия поиска по типу недвижимости |
417 | if (!empty($request->type_area)) { | 417 | if (!empty($request->type_area)) { |
418 | $house_arenda = $house_arenda->where('type_area_id', '=', $request->type_area); | 418 | $house_arenda = $house_arenda->where('type_area_id', '=', $request->type_area); |
419 | } | 419 | } |
420 | // условия поиска по формату недвижимости | 420 | // условия поиска по формату недвижимости |
421 | if (!empty($request->format_area)) { | 421 | if (!empty($request->format_area)) { |
422 | $house_arenda = $house_arenda->where('format_area_id', '=', $request->format_area); | 422 | $house_arenda = $house_arenda->where('format_area_id', '=', $request->format_area); |
423 | } | 423 | } |
424 | // условия поиска по площади - минимальная площадь | 424 | // условия поиска по площади - минимальная площадь |
425 | if (!empty($request->area_m2_min)) { | 425 | if (!empty($request->area_m2_min)) { |
426 | $house_arenda = $house_arenda->where('area', '>', $request->area_m2_min); | 426 | $house_arenda = $house_arenda->where('area', '>', $request->area_m2_min); |
427 | } | 427 | } |
428 | // условия поиска по площади - максимальная площадь | 428 | // условия поиска по площади - максимальная площадь |
429 | if (!empty($request->area_m2_max)) { | 429 | if (!empty($request->area_m2_max)) { |
430 | $house_arenda = $house_arenda->where('area', '<', $request->area_m2_max); | 430 | $house_arenda = $house_arenda->where('area', '<', $request->area_m2_max); |
431 | } | 431 | } |
432 | // условия поиска по цене - минимальная цена | 432 | // условия поиска по цене - минимальная цена |
433 | if (!empty($request->price_min)) { | 433 | if (!empty($request->price_min)) { |
434 | $house_arenda = $house_arenda->where('price', '>', $request->price_min); | 434 | $house_arenda = $house_arenda->where('price', '>', $request->price_min); |
435 | } | 435 | } |
436 | // условия поиска по цене - максимальная цена | 436 | // условия поиска по цене - максимальная цена |
437 | if (!empty($request->price_max)) { | 437 | if (!empty($request->price_max)) { |
438 | $house_arenda = $house_arenda->where('price', '<', $request->price_max); | 438 | $house_arenda = $house_arenda->where('price', '<', $request->price_max); |
439 | } | 439 | } |
440 | // условия поиска по адресу | 440 | // условия поиска по адресу |
441 | if (!empty($request->address)) { | 441 | if (!empty($request->address)) { |
442 | $house_arenda = $house_arenda->where('address', 'LIKE', "%".$request->address."%"); | 442 | $house_arenda = $house_arenda->where('address', 'LIKE', "%".$request->address."%"); |
443 | } | 443 | } |
444 | 444 | ||
445 | if ($request->view == 'arenda') { | 445 | if ($request->view == 'arenda') { |
446 | switch ($request->sort_price) { | 446 | switch ($request->sort_price) { |
447 | case 1: $house_arenda = $house_arenda->orderBy('price');break; | 447 | case 1: $house_arenda = $house_arenda->orderBy('price');break; |
448 | case 2: $house_arenda = $house_arenda->orderByDesc('price');break; | 448 | case 2: $house_arenda = $house_arenda->orderByDesc('price');break; |
449 | } | 449 | } |
450 | switch ($request->sort_new) { | 450 | switch ($request->sort_new) { |
451 | case 1: $house_arenda = $house_arenda->orderByDesc('created_at');break; | 451 | case 1: $house_arenda = $house_arenda->orderByDesc('created_at');break; |
452 | case 2: $house_arenda = $house_arenda->orderBy('created_at');break; | 452 | case 2: $house_arenda = $house_arenda->orderBy('created_at');break; |
453 | } | 453 | } |
454 | switch ($request->sort_area) { | 454 | switch ($request->sort_area) { |
455 | case 1: $house_arenda = $house_arenda->orderByDesc('area')->get();break; | 455 | case 1: $house_arenda = $house_arenda->orderByDesc('area')->get();break; |
456 | case 2: $house_arenda = $house_arenda->orderBy('area')->get();break; | 456 | case 2: $house_arenda = $house_arenda->orderBy('area')->get();break; |
457 | } | 457 | } |
458 | } else { | 458 | } else { |
459 | $house_arenda = $house_arenda->orderBy('price')-> | 459 | $house_arenda = $house_arenda->orderBy('price')-> |
460 | orderByDesc('created_at')-> | 460 | orderByDesc('created_at')-> |
461 | orderByDesc('area')->get(); | 461 | orderByDesc('area')->get(); |
462 | } | 462 | } |
463 | 463 | ||
464 | ////////раздел продажа////////////////////////////////////////////////////////////////// | 464 | ////////раздел продажа////////////////////////////////////////////////////////////////// |
465 | $house_prodaja = House::with('areas')-> | 465 | $house_prodaja = House::with('areas')-> |
466 | where('format_house', '=', 'Продажа'); | 466 | where('format_house', '=', 'Продажа'); |
467 | 467 | ||
468 | // условия поиска по объектам комплексов | 468 | // условия поиска по объектам комплексов |
469 | if (!empty($request->area)) { | 469 | if (!empty($request->area)) { |
470 | $house_prodaja = $house_prodaja->where('area_id', '=', $request->area); | 470 | $house_prodaja = $house_prodaja->where('area_id', '=', $request->area); |
471 | } | 471 | } |
472 | // условия поиска по типу недвижимости | 472 | // условия поиска по типу недвижимости |
473 | if (!empty($request->type_area)) { | 473 | if (!empty($request->type_area)) { |
474 | $house_prodaja = $house_prodaja->where('type_area_id', '=', $request->type_area); | 474 | $house_prodaja = $house_prodaja->where('type_area_id', '=', $request->type_area); |
475 | } | 475 | } |
476 | // условия поиска по формату недвижимости | 476 | // условия поиска по формату недвижимости |
477 | if (!empty($request->format_area)) { | 477 | if (!empty($request->format_area)) { |
478 | $house_prodaja = $house_prodaja->where('format_area_id', '=', $request->format_area); | 478 | $house_prodaja = $house_prodaja->where('format_area_id', '=', $request->format_area); |
479 | } | 479 | } |
480 | // условия поиска по площади - минимальная площадь | 480 | // условия поиска по площади - минимальная площадь |
481 | if (!empty($request->area_m2_min)) { | 481 | if (!empty($request->area_m2_min)) { |
482 | $house_prodaja = $house_prodaja->where('area', '>', $request->area_m2_min); | 482 | $house_prodaja = $house_prodaja->where('area', '>', $request->area_m2_min); |
483 | } | 483 | } |
484 | // условия поиска по площади - максимальная площадь | 484 | // условия поиска по площади - максимальная площадь |
485 | if (!empty($request->area_m2_max)) { | 485 | if (!empty($request->area_m2_max)) { |
486 | $house_prodaja = $house_prodaja->where('area', '<', $request->area_m2_max); | 486 | $house_prodaja = $house_prodaja->where('area', '<', $request->area_m2_max); |
487 | } | 487 | } |
488 | // условия поиска по цене - минимальная цена | 488 | // условия поиска по цене - минимальная цена |
489 | if (!empty($request->price_min)) { | 489 | if (!empty($request->price_min)) { |
490 | $house_prodaja = $house_prodaja->where('price', '>', $request->price_min); | 490 | $house_prodaja = $house_prodaja->where('price', '>', $request->price_min); |
491 | } | 491 | } |
492 | // условия поиска по цене - максимальная цена | 492 | // условия поиска по цене - максимальная цена |
493 | if (!empty($request->price_max)) { | 493 | if (!empty($request->price_max)) { |
494 | $house_prodaja = $house_prodaja->where('price', '<', $request->price_max); | 494 | $house_prodaja = $house_prodaja->where('price', '<', $request->price_max); |
495 | } | 495 | } |
496 | // условия поиска по адресу | 496 | // условия поиска по адресу |
497 | if (!empty($request->address)) { | 497 | if (!empty($request->address)) { |
498 | $house_prodaja = $house_prodaja->where('address', 'LIKE', "%".$request->address."%"); | 498 | $house_prodaja = $house_prodaja->where('address', 'LIKE', "%".$request->address."%"); |
499 | } | 499 | } |
500 | 500 | ||
501 | if ($request->view == 'prodaja') { | 501 | if ($request->view == 'prodaja') { |
502 | switch ($request->sort_price) { | 502 | switch ($request->sort_price) { |
503 | case 1: $house_prodaja = $house_prodaja->orderBy('price');break; | 503 | case 1: $house_prodaja = $house_prodaja->orderBy('price');break; |
504 | case 2: $house_prodaja = $house_prodaja->orderByDesc('price');break; | 504 | case 2: $house_prodaja = $house_prodaja->orderByDesc('price');break; |
505 | } | 505 | } |
506 | switch ($request->sort_new) { | 506 | switch ($request->sort_new) { |
507 | case 1: $house_prodaja = $house_prodaja->orderByDesc('created_at');break; | 507 | case 1: $house_prodaja = $house_prodaja->orderByDesc('created_at');break; |
508 | case 2: $house_prodaja = $house_prodaja->orderBy('created_at');break; | 508 | case 2: $house_prodaja = $house_prodaja->orderBy('created_at');break; |
509 | } | 509 | } |
510 | switch ($request->sort_area) { | 510 | switch ($request->sort_area) { |
511 | case 1: $house_prodaja = $house_prodaja->orderByDesc('area')->get();break; | 511 | case 1: $house_prodaja = $house_prodaja->orderByDesc('area')->get();break; |
512 | case 2: $house_prodaja = $house_prodaja->orderBy('area')->get();break; | 512 | case 2: $house_prodaja = $house_prodaja->orderBy('area')->get();break; |
513 | } | 513 | } |
514 | } else { | 514 | } else { |
515 | $house_prodaja = $house_prodaja->orderBy('price')-> | 515 | $house_prodaja = $house_prodaja->orderBy('price')-> |
516 | orderByDesc('created_at')-> | 516 | orderByDesc('created_at')-> |
517 | orderByDesc('area')->get(); | 517 | orderByDesc('area')->get(); |
518 | } | 518 | } |
519 | 519 | ||
520 | //////////////// Раздел бизнеса///////////////////////////////////////////////////////// | 520 | //////////////// Раздел бизнеса///////////////////////////////////////////////////////// |
521 | $house_bissnes = House::with('areas')-> | 521 | $house_bissnes = House::with('areas')-> |
522 | where('format_house', '=', 'Бизнес'); | 522 | where('format_house', '=', 'Бизнес'); |
523 | //orderByDesc('created_at')->get(); | 523 | //orderByDesc('created_at')->get(); |
524 | 524 | ||
525 | // условия поиска по объектам комплексов | 525 | // условия поиска по объектам комплексов |
526 | if (!empty($request->area)) { | 526 | if (!empty($request->area)) { |
527 | $house_bissnes = $house_bissnes->where('area_id', '=', $request->area); | 527 | $house_bissnes = $house_bissnes->where('area_id', '=', $request->area); |
528 | } | 528 | } |
529 | // условия поиска по типу недвижимости | 529 | // условия поиска по типу недвижимости |
530 | if (!empty($request->type_area)) { | 530 | if (!empty($request->type_area)) { |
531 | $house_bissnes = $house_bissnes->where('type_area_id', '=', $request->type_area); | 531 | $house_bissnes = $house_bissnes->where('type_area_id', '=', $request->type_area); |
532 | } | 532 | } |
533 | // условия поиска по формату недвижимости | 533 | // условия поиска по формату недвижимости |
534 | if (!empty($request->format_area)) { | 534 | if (!empty($request->format_area)) { |
535 | $house_bissnes = $house_bissnes->where('format_area_id', '=', $request->format_area); | 535 | $house_bissnes = $house_bissnes->where('format_area_id', '=', $request->format_area); |
536 | } | 536 | } |
537 | // условия поиска по площади - минимальная площадь | 537 | // условия поиска по площади - минимальная площадь |
538 | if (!empty($request->area_m2_min)) { | 538 | if (!empty($request->area_m2_min)) { |
539 | $house_bissnes = $house_bissnes->where('area', '>', $request->area_m2_min); | 539 | $house_bissnes = $house_bissnes->where('area', '>', $request->area_m2_min); |
540 | } | 540 | } |
541 | // условия поиска по площади - максимальная площадь | 541 | // условия поиска по площади - максимальная площадь |
542 | if (!empty($request->area_m2_max)) { | 542 | if (!empty($request->area_m2_max)) { |
543 | $house_bissnes = $house_bissnes->where('area', '<', $request->area_m2_max); | 543 | $house_bissnes = $house_bissnes->where('area', '<', $request->area_m2_max); |
544 | } | 544 | } |
545 | // условия поиска по цене - минимальная цена | 545 | // условия поиска по цене - минимальная цена |
546 | if (!empty($request->price_min)) { | 546 | if (!empty($request->price_min)) { |
547 | $house_bissnes = $house_bissnes->where('price', '>', $request->price_min); | 547 | $house_bissnes = $house_bissnes->where('price', '>', $request->price_min); |
548 | } | 548 | } |
549 | // условия поиска по цене - максимальная цена | 549 | // условия поиска по цене - максимальная цена |
550 | if (!empty($request->price_max)) { | 550 | if (!empty($request->price_max)) { |
551 | $house_bissnes = $house_bissnes->where('price', '<', $request->price_max); | 551 | $house_bissnes = $house_bissnes->where('price', '<', $request->price_max); |
552 | } | 552 | } |
553 | // условия поиска по адресу | 553 | // условия поиска по адресу |
554 | if (!empty($request->address)) { | 554 | if (!empty($request->address)) { |
555 | $house_bissnes = $house_bissnes->where('address', 'LIKE', "%".$request->address."%"); | 555 | $house_bissnes = $house_bissnes->where('address', 'LIKE', "%".$request->address."%"); |
556 | } | 556 | } |
557 | 557 | ||
558 | if ($request->view == 'bissnes') { | 558 | if ($request->view == 'bissnes') { |
559 | switch ($request->sort_price) { | 559 | switch ($request->sort_price) { |
560 | case 1: $house_bissnes = $house_bissnes->orderBy('price');break; | 560 | case 1: $house_bissnes = $house_bissnes->orderBy('price');break; |
561 | case 2: $house_bissnes = $house_bissnes->orderByDesc('price');break; | 561 | case 2: $house_bissnes = $house_bissnes->orderByDesc('price');break; |
562 | } | 562 | } |
563 | switch ($request->sort_new) { | 563 | switch ($request->sort_new) { |
564 | case 1: $house_bissnes = $house_bissnes->orderByDesc('created_at');break; | 564 | case 1: $house_bissnes = $house_bissnes->orderByDesc('created_at');break; |
565 | case 2: $house_bissnes = $house_bissnes->orderBy('created_at');break; | 565 | case 2: $house_bissnes = $house_bissnes->orderBy('created_at');break; |
566 | } | 566 | } |
567 | switch ($request->sort_area) { | 567 | switch ($request->sort_area) { |
568 | case 1: $house_bissnes = $house_bissnes->orderByDesc('area')->get();break; | 568 | case 1: $house_bissnes = $house_bissnes->orderByDesc('area')->get();break; |
569 | case 2: $house_bissnes = $house_bissnes->orderBy('area')->get();break; | 569 | case 2: $house_bissnes = $house_bissnes->orderBy('area')->get();break; |
570 | } | 570 | } |
571 | } else { | 571 | } else { |
572 | $house_bissnes = $house_bissnes->orderBy('price')-> | 572 | $house_bissnes = $house_bissnes->orderBy('price')-> |
573 | orderByDesc('created_at')-> | 573 | orderByDesc('created_at')-> |
574 | orderByDesc('area')->get(); | 574 | orderByDesc('area')->get(); |
575 | } | 575 | } |
576 | 576 | ||
577 | //////////раздел арендованные////////////////////////////////////////////////////////// | 577 | //////////раздел арендованные////////////////////////////////////////////////////////// |
578 | $house_arendovannie = House::with('areas')-> | 578 | $house_arendovannie = House::with('areas')-> |
579 | where('format_house', '=', 'Арендованные'); | 579 | where('format_house', '=', 'Арендованные'); |
580 | //orderByDesc('created_at')->get(); | 580 | //orderByDesc('created_at')->get(); |
581 | 581 | ||
582 | // условия поиска по объектам комплексов | 582 | // условия поиска по объектам комплексов |
583 | if (!empty($request->area)) { | 583 | if (!empty($request->area)) { |
584 | $house_arendovannie = $house_arendovannie->where('area_id', '=', $request->area); | 584 | $house_arendovannie = $house_arendovannie->where('area_id', '=', $request->area); |
585 | } | 585 | } |
586 | // условия поиска по типу недвижимости | 586 | // условия поиска по типу недвижимости |
587 | if (!empty($request->type_area)) { | 587 | if (!empty($request->type_area)) { |
588 | $house_arendovannie = $house_arendovannie->where('type_area_id', '=', $request->type_area); | 588 | $house_arendovannie = $house_arendovannie->where('type_area_id', '=', $request->type_area); |
589 | } | 589 | } |
590 | // условия поиска по формату недвижимости | 590 | // условия поиска по формату недвижимости |
591 | if (!empty($request->format_area)) { | 591 | if (!empty($request->format_area)) { |
592 | $house_arendovannie = $house_arendovannie->where('format_area_id', '=', $request->format_area); | 592 | $house_arendovannie = $house_arendovannie->where('format_area_id', '=', $request->format_area); |
593 | } | 593 | } |
594 | // условия поиска по площади - минимальная площадь | 594 | // условия поиска по площади - минимальная площадь |
595 | if (!empty($request->area_m2_min)) { | 595 | if (!empty($request->area_m2_min)) { |
596 | $house_arendovannie = $house_arendovannie->where('area', '>', $request->area_m2_min); | 596 | $house_arendovannie = $house_arendovannie->where('area', '>', $request->area_m2_min); |
597 | } | 597 | } |
598 | // условия поиска по площади - максимальная площадь | 598 | // условия поиска по площади - максимальная площадь |
599 | if (!empty($request->area_m2_max)) { | 599 | if (!empty($request->area_m2_max)) { |
600 | $house_arendovannie = $house_arendovannie->where('area', '<', $request->area_m2_max); | 600 | $house_arendovannie = $house_arendovannie->where('area', '<', $request->area_m2_max); |
601 | } | 601 | } |
602 | // условия поиска по цене - минимальная цена | 602 | // условия поиска по цене - минимальная цена |
603 | if (!empty($request->price_min)) { | 603 | if (!empty($request->price_min)) { |
604 | $house_arendovannie = $house_arendovannie->where('price', '>', $request->price_min); | 604 | $house_arendovannie = $house_arendovannie->where('price', '>', $request->price_min); |
605 | } | 605 | } |
606 | // условия поиска по цене - максимальная цена | 606 | // условия поиска по цене - максимальная цена |
607 | if (!empty($request->price_max)) { | 607 | if (!empty($request->price_max)) { |
608 | $house_arendovannie = $house_arendovannie->where('price', '<', $request->price_max); | 608 | $house_arendovannie = $house_arendovannie->where('price', '<', $request->price_max); |
609 | } | 609 | } |
610 | // условия поиска по адресу | 610 | // условия поиска по адресу |
611 | if (!empty($request->address)) { | 611 | if (!empty($request->address)) { |
612 | $house_arendovannie = $house_arendovannie->where('address', 'LIKE', "%".$request->address."%"); | 612 | $house_arendovannie = $house_arendovannie->where('address', 'LIKE', "%".$request->address."%"); |
613 | } | 613 | } |
614 | 614 | ||
615 | if ($request->view == 'arendovannie') { | 615 | if ($request->view == 'arendovannie') { |
616 | switch ($request->sort_price) { | 616 | switch ($request->sort_price) { |
617 | case 1: $house_arendovannie = $house_arendovannie->orderBy('price');break; | 617 | case 1: $house_arendovannie = $house_arendovannie->orderBy('price');break; |
618 | case 2: $house_arendovannie = $house_arendovannie->orderByDesc('price');break; | 618 | case 2: $house_arendovannie = $house_arendovannie->orderByDesc('price');break; |
619 | } | 619 | } |
620 | switch ($request->sort_new) { | 620 | switch ($request->sort_new) { |
621 | case 1: $house_arendovannie = $house_arendovannie->orderByDesc('created_at');break; | 621 | case 1: $house_arendovannie = $house_arendovannie->orderByDesc('created_at');break; |
622 | case 2: $house_arendovannie = $house_arendovannie->orderBy('created_at');break; | 622 | case 2: $house_arendovannie = $house_arendovannie->orderBy('created_at');break; |
623 | } | 623 | } |
624 | switch ($request->sort_area) { | 624 | switch ($request->sort_area) { |
625 | case 1: $house_arendovannie = $house_arendovannie->orderByDesc('area')->get();break; | 625 | case 1: $house_arendovannie = $house_arendovannie->orderByDesc('area')->get();break; |
626 | case 2: $house_arendovannie = $house_arendovannie->orderBy('area')->get();break; | 626 | case 2: $house_arendovannie = $house_arendovannie->orderBy('area')->get();break; |
627 | } | 627 | } |
628 | } else { | 628 | } else { |
629 | $house_arendovannie = $house_arendovannie->orderBy('price')-> | 629 | $house_arendovannie = $house_arendovannie->orderBy('price')-> |
630 | orderByDesc('created_at')-> | 630 | orderByDesc('created_at')-> |
631 | orderByDesc('area')->get(); | 631 | orderByDesc('area')->get(); |
632 | } | 632 | } |
633 | 633 | ||
634 | if ($request->ajax()) { | 634 | if ($request->ajax()) { |
635 | switch($request->view) { | 635 | switch($request->view) { |
636 | case 'arenda': return view('ajax.complex.arenda', compact('house_arenda')); break; | 636 | case 'arenda': return view('ajax.complex.arenda', compact('house_arenda')); break; |
637 | case 'prodaja': return view('ajax.complex.prodaja', compact('house_prodaja'));break; | 637 | case 'prodaja': return view('ajax.complex.prodaja', compact('house_prodaja'));break; |
638 | case 'bissnes': return view('ajax.complex.bissnes', compact('house_bissnes')); break; | 638 | case 'bissnes': return view('ajax.complex.bissnes', compact('house_bissnes')); break; |
639 | case 'arendovannie': return view('ajax.complex.arendovannie', compact('house_arendovannie')); break; | 639 | case 'arendovannie': return view('ajax.complex.arendovannie', compact('house_arendovannie')); break; |
640 | } | 640 | } |
641 | } | 641 | } |
642 | if (session('message') == 'Искать') { | 642 | if (session('message') == 'Искать') { |
643 | session()->flash('message', 'Сброс'); | 643 | session()->flash('message', 'Сброс'); |
644 | } else { | 644 | } else { |
645 | session()->flash('message', 'Искать'); | 645 | session()->flash('message', 'Искать'); |
646 | } | 646 | } |
647 | 647 | ||
648 | if (empty($request)) { | 648 | if (empty($request)) { |
649 | session()->flash('message', 'Искать'); | 649 | session()->flash('message', 'Искать'); |
650 | } | 650 | } |
651 | 651 | ||
652 | return view('catalog', compact( | 652 | return view('catalog', compact( |
653 | 'house_arenda', | 653 | 'house_arenda', |
654 | 'house_prodaja', | 654 | 'house_prodaja', |
655 | 'house_bissnes', | 655 | 'house_bissnes', |
656 | 'house_arendovannie' | 656 | 'house_arendovannie' |
657 | )); | 657 | )); |
658 | 658 | ||
659 | 659 | ||
660 | } | 660 | } |
661 | 661 | ||
662 | /* | 662 | /* |
663 | * Новости | 663 | * Новости |
664 | */ | 664 | */ |
665 | public function News() { | 665 | public function News() { |
666 | //$news = News::orderByDesc('created_at')->limit(1)->paginate(); | 666 | //$news = News::orderByDesc('created_at')->limit(1)->paginate(); |
667 | $news_ = News::query()->orderByDesc('created_at')->paginate(4); | 667 | $news_ = News::query()->orderByDesc('created_at')->paginate(4); |
668 | return view('news', compact('news_')); | 668 | return view('news', compact('news_')); |
669 | } | 669 | } |
670 | 670 | ||
671 | /* | 671 | /* |
672 | * Контакты | 672 | * Контакты |
673 | */ | 673 | */ |
674 | public function Contact() { | 674 | public function Contact() { |
675 | return view('contact'); | 675 | return view('contact'); |
676 | } | 676 | } |
677 | 677 | ||
678 | /* | 678 | /* |
679 | * Карта объектов | 679 | * Карта объектов |
680 | */ | 680 | */ |
681 | public function MapsObj(Request $request) { | 681 | public function MapsObj(Request $request) { |
682 | //$houses = House::with('areas'); | 682 | //$houses = House::with('areas'); |
683 | //$houses = $houses->orderBy('id')->get(); | 683 | //$houses = $houses->orderBy('id')->get(); |
684 | $input = $request->all(); | ||
685 | |||
686 | $houses = House::with('areas'); | ||
687 | if (empty($input)) { | ||
688 | |||
689 | } else { | ||
690 | |||
691 | // условия поиска по объектам комплексов | ||
692 | if (!empty($request->area)) { | ||
693 | $houses = $houses->where('area_id', '=', $request->area); | ||
694 | } | ||
695 | // условия поиска по типу недвижимости | ||
696 | if (!empty($request->type_area)) { | ||
697 | $houses = $houses->where('type_area_id', '=', $request->type_area); | ||
698 | } | ||
699 | // условия поиска по формату недвижимости | ||
700 | if (!empty($request->format_area)) { | ||
701 | $houses = $houses->where('format_area_id', '=', $request->format_area); | ||
702 | } | ||
703 | // условия поиска по площади - минимальная площадь | ||
704 | if (!empty($request->area_m2_min)) { | ||
705 | $houses = $houses->where('area', '>', $request->area_m2_min); | ||
706 | } | ||
707 | // условия поиска по площади - максимальная площадь | ||
708 | if (!empty($request->area_m2_max)) { | ||
709 | $houses = $houses->where('area', '<', $request->area_m2_max); | ||
710 | } | ||
711 | // условия поиска по цене - минимальная цена | ||
712 | if (!empty($request->price_min)) { | ||
713 | $houses = $houses->where('price', '>', $request->price_min); | ||
714 | } | ||
715 | // условия поиска по цене - максимальная цена | ||
716 | if (!empty($request->price_max)) { | ||
717 | $houses = $houses->where('price', '<', $request->price_max); | ||
718 | } | ||
719 | // условия поиска по адресу | ||
720 | if (!empty($request->address)) { | ||
721 | $houses = $houses->where('address', 'LIKE', "%".$request->address."%"); | ||
722 | } | ||
723 | } | ||
724 | |||
725 | $houses = $houses->orderByDesc('id')->get(); | ||
726 | |||
684 | $areas = Area::query()->orderBy('id')->get(); | 727 | $areas = Area::query()->orderBy('id')->get(); |
685 | 728 | ||
686 | return view('mapsobj', compact('areas')); | 729 | return view('mapsobj', compact('areas', 'input', 'houses')); |
687 | } | 730 | } |
688 | 731 | ||
689 | /* | 732 | /* |
690 | * Посмотр конктретного предложение офиса | 733 | * Посмотр конктретного предложение офиса |
691 | */ | 734 | */ |
692 | public function Offer(House $house) { | 735 | public function Offer(House $house) { |
693 | $houses = House::with('areas'); | 736 | $houses = House::with('areas'); |
694 | $houses = $houses->where('type_area_id', '=', $house->typearea->id); | 737 | $houses = $houses->where('type_area_id', '=', $house->typearea->id); |
695 | $houses = $houses->where('format_house', '=', $house->format_house); | 738 | $houses = $houses->where('format_house', '=', $house->format_house); |
696 | $houses = $houses->orderByDesc('created_at')->limit(8)->get(); | 739 | $houses = $houses->orderByDesc('created_at')->limit(8)->get(); |
697 | 740 | ||
698 | return view('house.post', compact('house', 'houses')); | 741 | return view('house.post', compact('house', 'houses')); |
699 | } | 742 | } |
700 | 743 | ||
701 | /* | 744 | /* |
702 | * Просмотр детально конкретной новости | 745 | * Просмотр детально конкретной новости |
703 | */ | 746 | */ |
704 | public function DetailNew(News $news) { | 747 | public function DetailNew(News $news) { |
705 | $news_list = News::query()->orderByDesc('created_at')->limit(8)->get(); | 748 | $news_list = News::query()->orderByDesc('created_at')->limit(8)->get(); |
706 | return view('new.post', compact('news', 'news_list')); | 749 | return view('new.post', compact('news', 'news_list')); |
707 | } | 750 | } |
708 | } | 751 | } |
709 | 752 |
app/Models/House.php
1 | <?php | 1 | <?php |
2 | 2 | ||
3 | namespace App\Models; | 3 | namespace App\Models; |
4 | 4 | ||
5 | use Illuminate\Database\Eloquent\Factories\HasFactory; | 5 | use Illuminate\Database\Eloquent\Factories\HasFactory; |
6 | use Illuminate\Database\Eloquent\Model; | 6 | use Illuminate\Database\Eloquent\Model; |
7 | 7 | ||
8 | class House extends Model | 8 | class House extends Model |
9 | { | 9 | { |
10 | use HasFactory; | 10 | use HasFactory; |
11 | 11 | ||
12 | protected $fillable = ['area_id', 'type_area_id', 'format_area_id', 'metro', 'color_metro', 'foto_main', | 12 | protected $fillable = ['area_id', 'type_area_id', 'format_area_id', 'metro', 'color_metro', 'foto_main', |
13 | 'address', 'okrug', 'articul_area', 'format_house', 'floor', 'description_metro', | 13 | 'address', 'okrug', 'articul_area', 'format_house', 'floor', 'description_metro', |
14 | 'floor_bild', 'renter', 'uploading_area', 'electric_power', 'travel_card', | 14 | 'floor_bild', 'renter', 'uploading_area', 'electric_power', 'travel_card', |
15 | 'passing_place', 'separate_input', 'shop_windows', 'place_advertising', 'windows', | 15 | 'passing_place', 'separate_input', 'shop_windows', 'place_advertising', 'windows', |
16 | 'hood', 'central_heating', 'opening_hours', 'finishing', 'parking', 'price', 'rent_in_year', | 16 | 'hood', 'central_heating', 'opening_hours', 'finishing', 'parking', 'price', 'rent_in_year', |
17 | 'rent_in_month', 'scheme_deal', 'present', 'object_plan', 'floor_plan', 'description_house', | 17 | 'rent_in_month', 'scheme_deal', 'present', 'object_plan', 'floor_plan', 'description_house', |
18 | 'map_coord', 'title', 'area', 'best', 'sos_obj', 'type_plan', 'description_2', | 18 | 'map_coord', 'title', 'area', 'best', 'sos_obj', 'type_plan', 'description_2', |
19 | 'price_m2']; | 19 | 'price_m2', 'coord_x', 'coord_y']; |
20 | 20 | ||
21 | 21 | ||
22 | /* | 22 | /* |
23 | * Связь таблицы ТИП НЕДВИЖИМОСТИ с таблицей ОФИСЫ | 23 | * Связь таблицы ТИП НЕДВИЖИМОСТИ с таблицей ОФИСЫ |
24 | */ | 24 | */ |
25 | public function typearea() { | 25 | public function typearea() { |
26 | return $this->belongsTo(type_area::class, 'type_area_id'); | 26 | return $this->belongsTo(type_area::class, 'type_area_id'); |
27 | } | 27 | } |
28 | 28 | ||
29 | /* | 29 | /* |
30 | * Связь таблицы ФОРМАТ НЕДВИЖИМОСТИ с таблицей ОФИСЫ | 30 | * Связь таблицы ФОРМАТ НЕДВИЖИМОСТИ с таблицей ОФИСЫ |
31 | */ | 31 | */ |
32 | public function formatarea() { | 32 | public function formatarea() { |
33 | return $this->belongsTo(format_area::class, 'format_area_id'); | 33 | return $this->belongsTo(format_area::class, 'format_area_id'); |
34 | } | 34 | } |
35 | 35 | ||
36 | /* | 36 | /* |
37 | * Связь таблицы ОБЪЕКТЫ НЕДВИЖИМОСТИ с таблицей ОФИСЫ | 37 | * Связь таблицы ОБЪЕКТЫ НЕДВИЖИМОСТИ с таблицей ОФИСЫ |
38 | */ | 38 | */ |
39 | public function areas() { | 39 | public function areas() { |
40 | return $this->belongsTo(Area::class, 'area_id'); | 40 | return $this->belongsTo(Area::class, 'area_id'); |
41 | } | 41 | } |
42 | 42 | ||
43 | /* | 43 | /* |
44 | * Связь таблицы ОФИСЫ с ФОТОГАЛЕРЕЕЙ | 44 | * Связь таблицы ОФИСЫ с ФОТОГАЛЕРЕЕЙ |
45 | */ | 45 | */ |
46 | public function fotohouse() { | 46 | public function fotohouse() { |
47 | return $this->hasMany(foto_house::class); | 47 | return $this->hasMany(foto_house::class); |
48 | } | 48 | } |
49 | } | 49 | } |
50 | 50 |
resources/views/admin/houses/form.blade.php
1 | @csrf | 1 | @csrf |
2 | 2 | ||
3 | @isset($house) | 3 | @isset($house) |
4 | @method('PUT') | 4 | @method('PUT') |
5 | @endisset | 5 | @endisset |
6 | 6 | ||
7 | <label for="title">Заголовок офиса: <span class="req">*</span></label><br> | 7 | <label for="title">Заголовок офиса: <span class="req">*</span></label><br> |
8 | @error('title') | 8 | @error('title') |
9 | <div class="alert alert-danger">{{ $message }}</div> | 9 | <div class="alert alert-danger">{{ $message }}</div> |
10 | @enderror | 10 | @enderror |
11 | <input type="text" class="form-control_ txt" name="title" placeholder="Название офиса" | 11 | <input type="text" class="form-control_ txt" name="title" placeholder="Название офиса" |
12 | required maxlength="100" style="width: 80%" value="{{ old('title') ?? $house->title ?? '' }}"><br><br> | 12 | required maxlength="100" style="width: 80%" value="{{ old('title') ?? $house->title ?? '' }}"><br><br> |
13 | 13 | ||
14 | <label for="best">Лучшее предложение: </label><br> | 14 | <label for="best">Лучшее предложение: </label><br> |
15 | @error('best') | 15 | @error('best') |
16 | <div class="alert alert-danger">{{ $message }}</div> | 16 | <div class="alert alert-danger">{{ $message }}</div> |
17 | @enderror | 17 | @enderror |
18 | <select name="best" id="best" class="form-control"> | 18 | <select name="best" id="best" class="form-control"> |
19 | <option value="1" | 19 | <option value="1" |
20 | @isset($house) | 20 | @isset($house) |
21 | @if($house->best == '1') | 21 | @if($house->best == '1') |
22 | selected | 22 | selected |
23 | @endif | 23 | @endif |
24 | @endisset | 24 | @endisset |
25 | >Да</option> | 25 | >Да</option> |
26 | <option value="0" | 26 | <option value="0" |
27 | @isset($house) | 27 | @isset($house) |
28 | @if($house->best == '0') | 28 | @if($house->best == '0') |
29 | selected | 29 | selected |
30 | @endif | 30 | @endif |
31 | @endisset | 31 | @endisset |
32 | >Нет</option> | 32 | >Нет</option> |
33 | </select><br><br> | 33 | </select><br><br> |
34 | 34 | ||
35 | <label for="area_id">Объект недвижимости (ЖК): <span class="req">*</span></label><br> | 35 | <label for="area_id">Объект недвижимости (ЖК): <span class="req">*</span></label><br> |
36 | @error('area_id') | 36 | @error('area_id') |
37 | <div class="alert alert-danger">{{ $message }}</div> | 37 | <div class="alert alert-danger">{{ $message }}</div> |
38 | @enderror | 38 | @enderror |
39 | <select name="area_id" id="area_id" class="form-control"> | 39 | <select name="area_id" id="area_id" class="form-control"> |
40 | @foreach($areas as $area) | 40 | @foreach($areas as $area) |
41 | <option value="{{ $area->id }}" | 41 | <option value="{{ $area->id }}" |
42 | @isset($house) | 42 | @isset($house) |
43 | @if($house->area_id == $area->id) | 43 | @if($house->area_id == $area->id) |
44 | selected | 44 | selected |
45 | @endif | 45 | @endif |
46 | @endisset | 46 | @endisset |
47 | >{{ $area->name_area }}</option> | 47 | >{{ $area->name_area }}</option> |
48 | @endforeach | 48 | @endforeach |
49 | </select><br><br> | 49 | </select><br><br> |
50 | 50 | ||
51 | <label for="type_area_id">Тип недвижимости: <span class="req">*</span></label><br> | 51 | <label for="type_area_id">Тип недвижимости: <span class="req">*</span></label><br> |
52 | @error('type_area_id') | 52 | @error('type_area_id') |
53 | <div class="alert alert-danger">{{ $message }}</div> | 53 | <div class="alert alert-danger">{{ $message }}</div> |
54 | @enderror | 54 | @enderror |
55 | <select name="type_area_id" id="type_area_id" class="form-control"> | 55 | <select name="type_area_id" id="type_area_id" class="form-control"> |
56 | @foreach($type_areas as $tarea) | 56 | @foreach($type_areas as $tarea) |
57 | <option value="{{ $tarea->id }}" | 57 | <option value="{{ $tarea->id }}" |
58 | @isset($house) | 58 | @isset($house) |
59 | @if($house->type_area_id == $tarea->id) | 59 | @if($house->type_area_id == $tarea->id) |
60 | selected | 60 | selected |
61 | @endif | 61 | @endif |
62 | @endisset | 62 | @endisset |
63 | >{{ $tarea->name_type }}</option> | 63 | >{{ $tarea->name_type }}</option> |
64 | @endforeach | 64 | @endforeach |
65 | </select><br><br> | 65 | </select><br><br> |
66 | 66 | ||
67 | <label for="format_area_id">Формат недвижимости: <span class="req">*</span></label><br> | 67 | <label for="format_area_id">Формат недвижимости: <span class="req">*</span></label><br> |
68 | @error('format_area_id') | 68 | @error('format_area_id') |
69 | <div class="alert alert-danger">{{ $message }}</div> | 69 | <div class="alert alert-danger">{{ $message }}</div> |
70 | @enderror | 70 | @enderror |
71 | <select name="format_area_id" id="format_area_id" class="form-control"> | 71 | <select name="format_area_id" id="format_area_id" class="form-control"> |
72 | @foreach($format_areas as $farea) | 72 | @foreach($format_areas as $farea) |
73 | <option value="{{ $farea->id }}" | 73 | <option value="{{ $farea->id }}" |
74 | @isset($house) | 74 | @isset($house) |
75 | @if($house->format_area_id == $farea->id) | 75 | @if($house->format_area_id == $farea->id) |
76 | selected | 76 | selected |
77 | @endif | 77 | @endif |
78 | @endisset | 78 | @endisset |
79 | >{{ $farea->name_format }}</option> | 79 | >{{ $farea->name_format }}</option> |
80 | @endforeach | 80 | @endforeach |
81 | </select><br><br> | 81 | </select><br><br> |
82 | 82 | ||
83 | <label for="metro">Метро: <span class="req">*</span></label><br> | 83 | <label for="metro">Метро: <span class="req">*</span></label><br> |
84 | @error('metro') | 84 | @error('metro') |
85 | <div class="alert alert-danger">{{ $message }}</div> | 85 | <div class="alert alert-danger">{{ $message }}</div> |
86 | @enderror | 86 | @enderror |
87 | <input type="text" class="form-control_ txt" name="metro" placeholder="Название метро" | 87 | <input type="text" class="form-control_ txt" name="metro" placeholder="Название метро" |
88 | required maxlength="100" style="width: 80%" value="{{ old('metro') ?? $house->metro ?? '' }}"><br><br> | 88 | required maxlength="100" style="width: 80%" value="{{ old('metro') ?? $house->metro ?? '' }}"><br><br> |
89 | 89 | ||
90 | <label for="description_metro">Удаленность метро: </label><br> | 90 | <label for="description_metro">Удаленность метро: </label><br> |
91 | @error('description_metro') | 91 | @error('description_metro') |
92 | <div class="alert alert-danger">{{ $message }}</div> | 92 | <div class="alert alert-danger">{{ $message }}</div> |
93 | @enderror | 93 | @enderror |
94 | <input type="text" class="form-control_ txt" name="description_metro" placeholder="Удаленность метро" | 94 | <input type="text" class="form-control_ txt" name="description_metro" placeholder="Удаленность метро" |
95 | required maxlength="100" style="width: 80%" value="{{ old('description_metro') ?? $house->description_metro ?? '' }}"><br><br> | 95 | required maxlength="100" style="width: 80%" value="{{ old('description_metro') ?? $house->description_metro ?? '' }}"><br><br> |
96 | 96 | ||
97 | <label for="address">Адрес: <span class="req">*</span></label><br> | 97 | <label for="address">Адрес: <span class="req">*</span></label><br> |
98 | @error('address') | 98 | @error('address') |
99 | <div class="alert alert-danger">{{ $message }}</div> | 99 | <div class="alert alert-danger">{{ $message }}</div> |
100 | @enderror | 100 | @enderror |
101 | <input type="text" class="form-control_ txt" name="address" placeholder="Адрес" | 101 | <input type="text" class="form-control_ txt" name="address" placeholder="Адрес" |
102 | required maxlength="100" style="width: 80%" value="{{ old('address') ?? $house->address ?? '' }}"><br><br> | 102 | required maxlength="100" style="width: 80%" value="{{ old('address') ?? $house->address ?? '' }}"><br><br> |
103 | 103 | ||
104 | <label for="okrug">Округ: <span class="req">*</span></label><br> | 104 | <label for="okrug">Округ: <span class="req">*</span></label><br> |
105 | @error('okrug') | 105 | @error('okrug') |
106 | <div class="alert alert-danger">{{ $message }}</div> | 106 | <div class="alert alert-danger">{{ $message }}</div> |
107 | @enderror | 107 | @enderror |
108 | <input type="text" class="form-control_ txt" name="okrug" placeholder="Округ" | 108 | <input type="text" class="form-control_ txt" name="okrug" placeholder="Округ" |
109 | required maxlength="100" style="width: 80%" value="{{ old('okrug') ?? $house->okrug ?? '' }}"><br><br> | 109 | required maxlength="100" style="width: 80%" value="{{ old('okrug') ?? $house->okrug ?? '' }}"><br><br> |
110 | 110 | ||
111 | <label for="foto_main">Файл-картинка:</label><br> | 111 | <label for="foto_main">Файл-картинка:</label><br> |
112 | <input type="file" class="form-control-file txt" name="foto_main" id="foto_main" accept="image/png, image/jpeg"><br> | 112 | <input type="file" class="form-control-file txt" name="foto_main" id="foto_main" accept="image/png, image/jpeg"><br> |
113 | 113 | ||
114 | @isset($house->foto_main) | 114 | @isset($house->foto_main) |
115 | <div class="form-group form-check"> | 115 | <div class="form-group form-check"> |
116 | <img src="<?=asset(Storage::url($house->foto_main))?>" width="100px"/> | 116 | <img src="<?=asset(Storage::url($house->foto_main))?>" width="100px"/> |
117 | <input type="checkbox" class="form-check-input" name="remove" id="remove"> | 117 | <input type="checkbox" class="form-check-input" name="remove" id="remove"> |
118 | <label class="form-check-label" for="remove"> | 118 | <label class="form-check-label" for="remove"> |
119 | Удалить загруженное изображение | 119 | Удалить загруженное изображение |
120 | </label> | 120 | </label> |
121 | </div> | 121 | </div> |
122 | @endisset | 122 | @endisset |
123 | <br> | 123 | <br> |
124 | 124 | ||
125 | <label for="articul_area">Артикул помещения: </label><br> | 125 | <label for="articul_area">Артикул помещения: </label><br> |
126 | @error('articul_area') | 126 | @error('articul_area') |
127 | <div class="alert alert-danger">{{ $message }}</div> | 127 | <div class="alert alert-danger">{{ $message }}</div> |
128 | @enderror | 128 | @enderror |
129 | <input type="text" class="form-control_ txt" name="articul_area" placeholder="Артикул помещения" | 129 | <input type="text" class="form-control_ txt" name="articul_area" placeholder="Артикул помещения" |
130 | required maxlength="100" style="width: 80%" value="{{ old('articul_area') ?? $house->articul_area ?? '' }}"><br><br> | 130 | required maxlength="100" style="width: 80%" value="{{ old('articul_area') ?? $house->articul_area ?? '' }}"><br><br> |
131 | 131 | ||
132 | <label for="format_house">Формат помещения: <span class="req">*</span></label><br> | 132 | <label for="format_house">Формат помещения: <span class="req">*</span></label><br> |
133 | @error('format_house') | 133 | @error('format_house') |
134 | <div class="alert alert-danger">{{ $message }}</div> | 134 | <div class="alert alert-danger">{{ $message }}</div> |
135 | @enderror | 135 | @enderror |
136 | <select name="format_house" id="format_house" class="form-control"> | 136 | <select name="format_house" id="format_house" class="form-control"> |
137 | <option value="Аренда" | 137 | <option value="Аренда" |
138 | @isset($house) | 138 | @isset($house) |
139 | @if($house->format_house == 'Аренда') | 139 | @if($house->format_house == 'Аренда') |
140 | selected | 140 | selected |
141 | @endif | 141 | @endif |
142 | @endisset | 142 | @endisset |
143 | >Аренда</option> | 143 | >Аренда</option> |
144 | <option value="Продажа" | 144 | <option value="Продажа" |
145 | @isset($house) | 145 | @isset($house) |
146 | @if($house->format_house == 'Продажа') | 146 | @if($house->format_house == 'Продажа') |
147 | selected | 147 | selected |
148 | @endif | 148 | @endif |
149 | @endisset | 149 | @endisset |
150 | >Продажа</option> | 150 | >Продажа</option> |
151 | <option value="Бизнес" | 151 | <option value="Бизнес" |
152 | @isset($house) | 152 | @isset($house) |
153 | @if($house->format_house == 'Бизнес') | 153 | @if($house->format_house == 'Бизнес') |
154 | selected | 154 | selected |
155 | @endif | 155 | @endif |
156 | @endisset | 156 | @endisset |
157 | >Бизнес</option> | 157 | >Бизнес</option> |
158 | <option value="Арендованные" | 158 | <option value="Арендованные" |
159 | @isset($house) | 159 | @isset($house) |
160 | @if($house->format_house == 'Арендованные') | 160 | @if($house->format_house == 'Арендованные') |
161 | selected | 161 | selected |
162 | @endif | 162 | @endif |
163 | @endisset | 163 | @endisset |
164 | >Арендованные</option> | 164 | >Арендованные</option> |
165 | </select><br><br> | 165 | </select><br><br> |
166 | 166 | ||
167 | <label for="area">Площадь помещения: <span class="req">*</span></label><br> | 167 | <label for="area">Площадь помещения: <span class="req">*</span></label><br> |
168 | @error('area') | 168 | @error('area') |
169 | <div class="alert alert-danger">{{ $message }}</div> | 169 | <div class="alert alert-danger">{{ $message }}</div> |
170 | @enderror | 170 | @enderror |
171 | <input type="text" class="form-control_ txt" name="area" placeholder="Площадь помещения" | 171 | <input type="text" class="form-control_ txt" name="area" placeholder="Площадь помещения" |
172 | required maxlength="100" style="width: 80%" value="{{ old('area') ?? $house->area ?? '' }}"><br><br> | 172 | required maxlength="100" style="width: 80%" value="{{ old('area') ?? $house->area ?? '' }}"><br><br> |
173 | 173 | ||
174 | <label for="floor">Этаж: </label><br> | 174 | <label for="floor">Этаж: </label><br> |
175 | @error('floor') | 175 | @error('floor') |
176 | <div class="alert alert-danger">{{ $message }}</div> | 176 | <div class="alert alert-danger">{{ $message }}</div> |
177 | @enderror | 177 | @enderror |
178 | <input type="text" class="form-control_ txt" name="floor" placeholder="Этаж" | 178 | <input type="text" class="form-control_ txt" name="floor" placeholder="Этаж" |
179 | required maxlength="100" style="width: 80%" value="{{ old('floor') ?? $house->floor ?? '' }}"><br><br> | 179 | required maxlength="100" style="width: 80%" value="{{ old('floor') ?? $house->floor ?? '' }}"><br><br> |
180 | 180 | ||
181 | <label for="floor_bild">Этажность здания: </label><br> | 181 | <label for="floor_bild">Этажность здания: </label><br> |
182 | @error('floor_bild') | 182 | @error('floor_bild') |
183 | <div class="alert alert-danger">{{ $message }}</div> | 183 | <div class="alert alert-danger">{{ $message }}</div> |
184 | @enderror | 184 | @enderror |
185 | <input type="text" class="form-control_ txt" name="floor_bild" placeholder="Этажность здания" | 185 | <input type="text" class="form-control_ txt" name="floor_bild" placeholder="Этажность здания" |
186 | required maxlength="100" style="width: 80%" value="{{ old('floor_bild') ?? $house->floor_bild ?? '' }}"><br><br> | 186 | required maxlength="100" style="width: 80%" value="{{ old('floor_bild') ?? $house->floor_bild ?? '' }}"><br><br> |
187 | 187 | ||
188 | <label for="renter">Арендатор (поле только для аренды и арендованные): </label><br> | 188 | <label for="renter">Арендатор (поле только для аренды и арендованные): </label><br> |
189 | @error('renter') | 189 | @error('renter') |
190 | <div class="alert alert-danger">{{ $message }}</div> | 190 | <div class="alert alert-danger">{{ $message }}</div> |
191 | @enderror | 191 | @enderror |
192 | <input type="text" class="form-control_ txt" name="renter" placeholder="Арендатор" | 192 | <input type="text" class="form-control_ txt" name="renter" placeholder="Арендатор" |
193 | required maxlength="100" style="width: 80%" value="{{ old('renter') ?? $house->renter ?? '' }}"><br><br> | 193 | required maxlength="100" style="width: 80%" value="{{ old('renter') ?? $house->renter ?? '' }}"><br><br> |
194 | 194 | ||
195 | <label for="price">Цена: </label><br> | 195 | <label for="price">Цена: </label><br> |
196 | @error('price') | 196 | @error('price') |
197 | <div class="alert alert-danger">{{ $message }}</div> | 197 | <div class="alert alert-danger">{{ $message }}</div> |
198 | @enderror | 198 | @enderror |
199 | <input type="text" class="form-control_ txt" name="price" placeholder="Цена" | 199 | <input type="text" class="form-control_ txt" name="price" placeholder="Цена" |
200 | required maxlength="100" style="width: 80%" value="{{ old('price') ?? $house->price ?? '' }}"><br><br> | 200 | required maxlength="100" style="width: 80%" value="{{ old('price') ?? $house->price ?? '' }}"><br><br> |
201 | 201 | ||
202 | <label for="price_m2">Цена за метр2: </label><br> | 202 | <label for="price_m2">Цена за метр2: </label><br> |
203 | @error('price_m2') | 203 | @error('price_m2') |
204 | <div class="alert alert-danger">{{ $message }}</div> | 204 | <div class="alert alert-danger">{{ $message }}</div> |
205 | @enderror | 205 | @enderror |
206 | <input type="text" class="form-control_ txt" name="price_m2" placeholder="Цена за метр2" | 206 | <input type="text" class="form-control_ txt" name="price_m2" placeholder="Цена за метр2" |
207 | required maxlength="100" style="width: 80%" value="{{ old('price_m2') ?? $house->price_m2 ?? '' }}"><br><br> | 207 | required maxlength="100" style="width: 80%" value="{{ old('price_m2') ?? $house->price_m2 ?? '' }}"><br><br> |
208 | 208 | ||
209 | <label for="rent_in_year">Аренда в год (поле только для аренды): </label><br> | 209 | <label for="rent_in_year">Аренда в год (поле только для аренды): </label><br> |
210 | @error('rent_in_year') | 210 | @error('rent_in_year') |
211 | <div class="alert alert-danger">{{ $message }}</div> | 211 | <div class="alert alert-danger">{{ $message }}</div> |
212 | @enderror | 212 | @enderror |
213 | <input type="text" class="form-control_ txt" name="rent_in_year" placeholder="Аренда в год" | 213 | <input type="text" class="form-control_ txt" name="rent_in_year" placeholder="Аренда в год" |
214 | required maxlength="100" style="width: 80%" value="{{ old('rent_in_year') ?? $house->rent_in_year ?? '' }}"><br><br> | 214 | required maxlength="100" style="width: 80%" value="{{ old('rent_in_year') ?? $house->rent_in_year ?? '' }}"><br><br> |
215 | 215 | ||
216 | <label for="description_house">Описание офиса: </label><br> | 216 | <label for="description_house">Описание офиса: </label><br> |
217 | @error('description_house') | 217 | @error('description_house') |
218 | <div class="alert alert-danger">{{ $message }}</div> | 218 | <div class="alert alert-danger">{{ $message }}</div> |
219 | @enderror | 219 | @enderror |
220 | <textarea class="form-control_ txtarea ckeditor" name="description_house" placeholder="Описание офиса" required | 220 | <textarea class="form-control_ txtarea ckeditor" name="description_house" placeholder="Описание офиса" required |
221 | rows="10" style="width: 80%">{{ old('description_house') ?? $area->description_house ?? '' }}</textarea><br><br> | 221 | rows="10" style="width: 80%">{{ old('description_house') ?? $house->description_house ?? '' }}</textarea><br><br> |
222 | 222 | ||
223 | <label for="object_plan">План-объекта (картинка):</label><br> | 223 | <label for="object_plan">План-объекта (картинка):</label><br> |
224 | <input type="file" class="form-control-file txt" name="object_plan" id="object_plan" accept="image/png, image/jpeg"> | 224 | <input type="file" class="form-control-file txt" name="object_plan" id="object_plan" accept="image/png, image/jpeg"> |
225 | 225 | ||
226 | @isset($house->object_plan) | 226 | @isset($house->object_plan) |
227 | <div class="form-group form-check"> | 227 | <div class="form-group form-check"> |
228 | <img src="<?=asset(Storage::url($house->object_plan))?>" width="100px"/> | 228 | <img src="<?=asset(Storage::url($house->object_plan))?>" width="100px"/> |
229 | </div> | 229 | </div> |
230 | @endisset | 230 | @endisset |
231 | <br><br> | 231 | <br><br> |
232 | 232 | ||
233 | <label for="floor_plan">План-этажа (картинка):</label><br> | 233 | <label for="floor_plan">План-этажа (картинка):</label><br> |
234 | <input type="file" class="form-control-file txt" name="floor_plan" id="floor_plan" accept="image/png, image/jpeg"> | 234 | <input type="file" class="form-control-file txt" name="floor_plan" id="floor_plan" accept="image/png, image/jpeg"> |
235 | 235 | ||
236 | @isset($house->floor_plan) | 236 | @isset($house->floor_plan) |
237 | <div class="form-group form-check"> | 237 | <div class="form-group form-check"> |
238 | <img src="<?=asset(Storage::url($house->floor_plan))?>" width="100px"/> | 238 | <img src="<?=asset(Storage::url($house->floor_plan))?>" width="100px"/> |
239 | </div> | 239 | </div> |
240 | @endisset | 240 | @endisset |
241 | <br><br> | 241 | <br><br> |
242 | 242 | ||
243 | <label for="present">Презентация:</label><br> | 243 | <label for="present">Презентация:</label><br> |
244 | <input type="file" class="form-control-file txt" name="present" id="present"> | 244 | <input type="file" class="form-control-file txt" name="present" id="present"> |
245 | 245 | ||
246 | @isset($house->present) | 246 | @isset($house->present) |
247 | <div class="form-group form-check"> | 247 | <div class="form-group form-check"> |
248 | <a href="<?=asset(Storage::url($house->floor_plan))?>">Презентация</a> | 248 | <a href="<?=asset(Storage::url($house->floor_plan))?>">Презентация</a> |
249 | </div> | 249 | </div> |
250 | @endisset | 250 | @endisset |
251 | <br><br> | 251 | <br><br> |
252 | 252 | ||
253 | <label for="unloading_area">Зона разгрузки: </label><br> | 253 | <label for="unloading_area">Зона разгрузки: </label><br> |
254 | @error('unloading_area') | 254 | @error('unloading_area') |
255 | <div class="alert alert-danger">{{ $message }}</div> | 255 | <div class="alert alert-danger">{{ $message }}</div> |
256 | @enderror | 256 | @enderror |
257 | <select name="unloading_area" id="unloading_area" class="form-control"> | 257 | <select name="unloading_area" id="unloading_area" class="form-control"> |
258 | <option value="1" | 258 | <option value="1" |
259 | @isset($house) | 259 | @isset($house) |
260 | @if($house->unloading_area == '1') | 260 | @if($house->unloading_area == '1') |
261 | selected | 261 | selected |
262 | @endif | 262 | @endif |
263 | @endisset | 263 | @endisset |
264 | >Есть</option> | 264 | >Есть</option> |
265 | <option value="0" | 265 | <option value="0" |
266 | @isset($house) | 266 | @isset($house) |
267 | @if($house->unloading_area == '0') | 267 | @if($house->unloading_area == '0') |
268 | selected | 268 | selected |
269 | @endif | 269 | @endif |
270 | @endisset | 270 | @endisset |
271 | >Нет</option> | 271 | >Нет</option> |
272 | </select><br><br> | 272 | </select><br><br> |
273 | 273 | ||
274 | <label for="electric_power">Электрическая мощность: </label><br> | 274 | <label for="electric_power">Электрическая мощность: </label><br> |
275 | @error('electric_power') | 275 | @error('electric_power') |
276 | <div class="alert alert-danger">{{ $message }}</div> | 276 | <div class="alert alert-danger">{{ $message }}</div> |
277 | @enderror | 277 | @enderror |
278 | <input type="text" class="form-control_ txt" name="electric_power" placeholder="Электрическая мощность" | 278 | <input type="text" class="form-control_ txt" name="electric_power" placeholder="Электрическая мощность" |
279 | required maxlength="100" style="width: 80%" value="{{ old('electric_power') ?? $house->electric_power ?? '' }}"><br><br> | 279 | required maxlength="100" style="width: 80%" value="{{ old('electric_power') ?? $house->electric_power ?? '' }}"><br><br> |
280 | 280 | ||
281 | <label for="travel_card">Проездное место: </label><br> | 281 | <label for="travel_card">Проездное место: </label><br> |
282 | @error('travel_card') | 282 | @error('travel_card') |
283 | <div class="alert alert-danger">{{ $message }}</div> | 283 | <div class="alert alert-danger">{{ $message }}</div> |
284 | @enderror | 284 | @enderror |
285 | <select name="travel_card" id="travel_card" class="form-control"> | 285 | <select name="travel_card" id="travel_card" class="form-control"> |
286 | <option value="1" | 286 | <option value="1" |
287 | @isset($house) | 287 | @isset($house) |
288 | @if($house->travel_card == '1') | 288 | @if($house->travel_card == '1') |
289 | selected | 289 | selected |
290 | @endif | 290 | @endif |
291 | @endisset | 291 | @endisset |
292 | >Да</option> | 292 | >Да</option> |
293 | <option value="0" | 293 | <option value="0" |
294 | @isset($house) | 294 | @isset($house) |
295 | @if($house->travel_card == '0') | 295 | @if($house->travel_card == '0') |
296 | selected | 296 | selected |
297 | @endif | 297 | @endif |
298 | @endisset | 298 | @endisset |
299 | >Нет</option> | 299 | >Нет</option> |
300 | </select><br><br> | 300 | </select><br><br> |
301 | 301 | ||
302 | <label for="passing_place">Проходное место: </label><br> | 302 | <label for="passing_place">Проходное место: </label><br> |
303 | @error('passing_place') | 303 | @error('passing_place') |
304 | <div class="alert alert-danger">{{ $message }}</div> | 304 | <div class="alert alert-danger">{{ $message }}</div> |
305 | @enderror | 305 | @enderror |
306 | <select name="passing_place" id="passing_place" class="form-control"> | 306 | <select name="passing_place" id="passing_place" class="form-control"> |
307 | <option value="1" | 307 | <option value="1" |
308 | @isset($house) | 308 | @isset($house) |
309 | @if($house->passing_place == '1') | 309 | @if($house->passing_place == '1') |
310 | selected | 310 | selected |
311 | @endif | 311 | @endif |
312 | @endisset | 312 | @endisset |
313 | >Да</option> | 313 | >Да</option> |
314 | <option value="0" | 314 | <option value="0" |
315 | @isset($house) | 315 | @isset($house) |
316 | @if($house->passing_place == '0') | 316 | @if($house->passing_place == '0') |
317 | selected | 317 | selected |
318 | @endif | 318 | @endif |
319 | @endisset | 319 | @endisset |
320 | >Нет</option> | 320 | >Нет</option> |
321 | </select><br><br> | 321 | </select><br><br> |
322 | 322 | ||
323 | <label for="separate_input">Отдельный вход: </label><br> | 323 | <label for="separate_input">Отдельный вход: </label><br> |
324 | @error('separate_input') | 324 | @error('separate_input') |
325 | <div class="alert alert-danger">{{ $message }}</div> | 325 | <div class="alert alert-danger">{{ $message }}</div> |
326 | @enderror | 326 | @enderror |
327 | <select name="separate_input" id="separate_input" class="form-control"> | 327 | <select name="separate_input" id="separate_input" class="form-control"> |
328 | <option value="1" | 328 | <option value="1" |
329 | @isset($house) | 329 | @isset($house) |
330 | @if($house->separate_input == '1') | 330 | @if($house->separate_input == '1') |
331 | selected | 331 | selected |
332 | @endif | 332 | @endif |
333 | @endisset | 333 | @endisset |
334 | >Да</option> | 334 | >Да</option> |
335 | <option value="0" | 335 | <option value="0" |
336 | @isset($house) | 336 | @isset($house) |
337 | @if($house->separate_input == '0') | 337 | @if($house->separate_input == '0') |
338 | selected | 338 | selected |
339 | @endif | 339 | @endif |
340 | @endisset | 340 | @endisset |
341 | >Нет</option> | 341 | >Нет</option> |
342 | </select><br><br> | 342 | </select><br><br> |
343 | 343 | ||
344 | <label for="shop_windows">Витрины: </label><br> | 344 | <label for="shop_windows">Витрины: </label><br> |
345 | @error('shop_windows') | 345 | @error('shop_windows') |
346 | <div class="alert alert-danger">{{ $message }}</div> | 346 | <div class="alert alert-danger">{{ $message }}</div> |
347 | @enderror | 347 | @enderror |
348 | <select name="shop_windows" id="shop_windows" class="form-control"> | 348 | <select name="shop_windows" id="shop_windows" class="form-control"> |
349 | <option value="1" | 349 | <option value="1" |
350 | @isset($house) | 350 | @isset($house) |
351 | @if($house->shop_windows == '1') | 351 | @if($house->shop_windows == '1') |
352 | selected | 352 | selected |
353 | @endif | 353 | @endif |
354 | @endisset | 354 | @endisset |
355 | >Да</option> | 355 | >Да</option> |
356 | <option value="0" | 356 | <option value="0" |
357 | @isset($house) | 357 | @isset($house) |
358 | @if($house->shop_windows == '0') | 358 | @if($house->shop_windows == '0') |
359 | selected | 359 | selected |
360 | @endif | 360 | @endif |
361 | @endisset | 361 | @endisset |
362 | >Нет</option> | 362 | >Нет</option> |
363 | </select><br><br> | 363 | </select><br><br> |
364 | 364 | ||
365 | <label for="place_advertising">Место для рекламы: </label><br> | 365 | <label for="place_advertising">Место для рекламы: </label><br> |
366 | @error('place_advertising') | 366 | @error('place_advertising') |
367 | <div class="alert alert-danger">{{ $message }}</div> | 367 | <div class="alert alert-danger">{{ $message }}</div> |
368 | @enderror | 368 | @enderror |
369 | <select name="place_advertising" id="place_advertising" class="form-control"> | 369 | <select name="place_advertising" id="place_advertising" class="form-control"> |
370 | <option value="1" | 370 | <option value="1" |
371 | @isset($house) | 371 | @isset($house) |
372 | @if($house->place_advertising == '1') | 372 | @if($house->place_advertising == '1') |
373 | selected | 373 | selected |
374 | @endif | 374 | @endif |
375 | @endisset | 375 | @endisset |
376 | >Да</option> | 376 | >Да</option> |
377 | <option value="0" | 377 | <option value="0" |
378 | @isset($house) | 378 | @isset($house) |
379 | @if($house->place_advertising == '0') | 379 | @if($house->place_advertising == '0') |
380 | selected | 380 | selected |
381 | @endif | 381 | @endif |
382 | @endisset | 382 | @endisset |
383 | >Нет</option> | 383 | >Нет</option> |
384 | </select><br><br> | 384 | </select><br><br> |
385 | 385 | ||
386 | <label for="windows">Окна: </label><br> | 386 | <label for="windows">Окна: </label><br> |
387 | @error('windows') | 387 | @error('windows') |
388 | <div class="alert alert-danger">{{ $message }}</div> | 388 | <div class="alert alert-danger">{{ $message }}</div> |
389 | @enderror | 389 | @enderror |
390 | <input type="text" class="form-control_ txt" name="windows" placeholder="Окна" | 390 | <input type="text" class="form-control_ txt" name="windows" placeholder="Окна" |
391 | required maxlength="100" style="width: 80%" value="{{ old('windows') ?? $house->windows ?? '' }}"><br><br> | 391 | required maxlength="100" style="width: 80%" value="{{ old('windows') ?? $house->windows ?? '' }}"><br><br> |
392 | 392 | ||
393 | <label for="hood">Вытяжка: </label><br> | 393 | <label for="hood">Вытяжка: </label><br> |
394 | @error('hood') | 394 | @error('hood') |
395 | <div class="alert alert-danger">{{ $message }}</div> | 395 | <div class="alert alert-danger">{{ $message }}</div> |
396 | @enderror | 396 | @enderror |
397 | <select name="hood" id="hood" class="form-control"> | 397 | <select name="hood" id="hood" class="form-control"> |
398 | <option value="1" | 398 | <option value="1" |
399 | @isset($house) | 399 | @isset($house) |
400 | @if($house->hood == '1') | 400 | @if($house->hood == '1') |
401 | selected | 401 | selected |
402 | @endif | 402 | @endif |
403 | @endisset | 403 | @endisset |
404 | >Да</option> | 404 | >Да</option> |
405 | <option value="0" | 405 | <option value="0" |
406 | @isset($house) | 406 | @isset($house) |
407 | @if($house->hood == '0') | 407 | @if($house->hood == '0') |
408 | selected | 408 | selected |
409 | @endif | 409 | @endif |
410 | @endisset | 410 | @endisset |
411 | >Нет</option> | 411 | >Нет</option> |
412 | </select><br><br> | 412 | </select><br><br> |
413 | 413 | ||
414 | <label for="central_heating">Центральное отопление: </label><br> | 414 | <label for="central_heating">Центральное отопление: </label><br> |
415 | @error('central_heating') | 415 | @error('central_heating') |
416 | <div class="alert alert-danger">{{ $message }}</div> | 416 | <div class="alert alert-danger">{{ $message }}</div> |
417 | @enderror | 417 | @enderror |
418 | <select name="central_heating" id="central_heating" class="form-control"> | 418 | <select name="central_heating" id="central_heating" class="form-control"> |
419 | <option value="1" | 419 | <option value="1" |
420 | @isset($house) | 420 | @isset($house) |
421 | @if($house->central_heating == '1') | 421 | @if($house->central_heating == '1') |
422 | selected | 422 | selected |
423 | @endif | 423 | @endif |
424 | @endisset | 424 | @endisset |
425 | >Да</option> | 425 | >Да</option> |
426 | <option value="0" | 426 | <option value="0" |
427 | @isset($house) | 427 | @isset($house) |
428 | @if($house->central_heating == '0') | 428 | @if($house->central_heating == '0') |
429 | selected | 429 | selected |
430 | @endif | 430 | @endif |
431 | @endisset | 431 | @endisset |
432 | >Нет</option> | 432 | >Нет</option> |
433 | </select><br><br> | 433 | </select><br><br> |
434 | 434 | ||
435 | <label for="opening_hours">Возможные часы работы: </label><br> | 435 | <label for="opening_hours">Возможные часы работы: </label><br> |
436 | @error('opening_hours') | 436 | @error('opening_hours') |
437 | <div class="alert alert-danger">{{ $message }}</div> | 437 | <div class="alert alert-danger">{{ $message }}</div> |
438 | @enderror | 438 | @enderror |
439 | <input type="text" class="form-control_ txt" name="opening_hours" placeholder="Возможные часы работы" | 439 | <input type="text" class="form-control_ txt" name="opening_hours" placeholder="Возможные часы работы" |
440 | required maxlength="100" style="width: 80%" value="{{ old('opening_hours') ?? $house->opening_hours ?? '' }}"><br><br> | 440 | required maxlength="100" style="width: 80%" value="{{ old('opening_hours') ?? $house->opening_hours ?? '' }}"><br><br> |
441 | 441 | ||
442 | <label for="finishing">Отделка: </label><br> | 442 | <label for="finishing">Отделка: </label><br> |
443 | @error('finishing') | 443 | @error('finishing') |
444 | <div class="alert alert-danger">{{ $message }}</div> | 444 | <div class="alert alert-danger">{{ $message }}</div> |
445 | @enderror | 445 | @enderror |
446 | <select name="finishing" id="finishing" class="form-control"> | 446 | <select name="finishing" id="finishing" class="form-control"> |
447 | <option value="1" | 447 | <option value="1" |
448 | @isset($house) | 448 | @isset($house) |
449 | @if($house->finishing == '1') | 449 | @if($house->finishing == '1') |
450 | selected | 450 | selected |
451 | @endif | 451 | @endif |
452 | @endisset | 452 | @endisset |
453 | >Да</option> | 453 | >Да</option> |
454 | <option value="0" | 454 | <option value="0" |
455 | @isset($house) | 455 | @isset($house) |
456 | @if($house->finishing == '0') | 456 | @if($house->finishing == '0') |
457 | selected | 457 | selected |
458 | @endif | 458 | @endif |
459 | @endisset | 459 | @endisset |
460 | >Нет</option> | 460 | >Нет</option> |
461 | </select><br><br> | 461 | </select><br><br> |
462 | 462 | ||
463 | <label for="parking">Парковка (кол-во мест): </label><br> | 463 | <label for="parking">Парковка (кол-во мест): </label><br> |
464 | @error('parking') | 464 | @error('parking') |
465 | <div class="alert alert-danger">{{ $message }}</div> | 465 | <div class="alert alert-danger">{{ $message }}</div> |
466 | @enderror | 466 | @enderror |
467 | <input type="text" class="form-control_ txt" name="parking" placeholder="Парковка" | 467 | <input type="text" class="form-control_ txt" name="parking" placeholder="Парковка" |
468 | required maxlength="100" style="width: 80%" value="{{ old('parking') ?? $house->parking ?? '' }}"><br><br> | 468 | required maxlength="100" style="width: 80%" value="{{ old('parking') ?? $house->parking ?? '' }}"><br><br> |
469 | 469 | ||
470 | <label for="scheme_deal">Схема сделки: </label><br> | 470 | <label for="scheme_deal">Схема сделки: </label><br> |
471 | @error('scheme_deal') | 471 | @error('scheme_deal') |
472 | <div class="alert alert-danger">{{ $message }}</div> | 472 | <div class="alert alert-danger">{{ $message }}</div> |
473 | @enderror | 473 | @enderror |
474 | <input type="text" class="form-control_ txt" name="scheme_deal" placeholder="Схема сделки" | 474 | <input type="text" class="form-control_ txt" name="scheme_deal" placeholder="Схема сделки" |
475 | required maxlength="100" style="width: 80%" value="{{ old('scheme_deal') ?? $house->scheme_deal ?? '' }}"><br><br> | 475 | required maxlength="100" style="width: 80%" value="{{ old('scheme_deal') ?? $house->scheme_deal ?? '' }}"><br><br> |
476 | 476 | ||
477 | <label for="coord_x">Координаты дома X: </label><br> | 477 | <label for="coord_x">Координаты дома X: </label><br> |
478 | <input type="text" class="form-control_ txt" name="coord_x" placeholder="Координаты дома X" | 478 | <input type="text" class="form-control_ txt" name="coord_x" placeholder="Координаты дома X" |
479 | required maxlength="100" value="{{ old('coord_x') ?? $house->coord_x ?? '0' }}"><br><br> | 479 | required maxlength="100" value="{{ old('coord_x') ?? $house->coord_x ?? '0' }}"><br><br> |
480 | 480 | ||
481 | <label for="coord_y">Координаты дома Y: </label><br> | 481 | <label for="coord_y">Координаты дома Y: </label><br> |
482 | <input type="text" class="form-control_ txt" name="coord_y" placeholder="Координаты дома Y" | 482 | <input type="text" class="form-control_ txt" name="coord_y" placeholder="Координаты дома Y" |
483 | required maxlength="100" value="{{ old('coord_y') ?? $house->coord_y ?? '0' }}"><br><br> | 483 | required maxlength="100" value="{{ old('coord_y') ?? $house->coord_y ?? '0' }}"><br><br> |
484 | 484 | ||
485 | <label for="sos_obj">Состояние объекта: </label><br> | 485 | <label for="sos_obj">Состояние объекта: </label><br> |
486 | @error('sos_obj') | 486 | @error('sos_obj') |
487 | <div class="alert alert-danger">{{ $message }}</div> | 487 | <div class="alert alert-danger">{{ $message }}</div> |
488 | @enderror | 488 | @enderror |
489 | <select name="sos_obj" id="sos_obj" class="form-control"> | 489 | <select name="sos_obj" id="sos_obj" class="form-control"> |
490 | <option value="Рабочее" | 490 | <option value="Рабочее" |
491 | @isset($house) | 491 | @isset($house) |
492 | @if($house->sos_obj == 'Рабочее') | 492 | @if($house->sos_obj == 'Рабочее') |
493 | selected | 493 | selected |
494 | @endif | 494 | @endif |
495 | @endisset | 495 | @endisset |
496 | >Рабочее</option> | 496 | >Рабочее</option> |
497 | <option value="Не рабочее" | 497 | <option value="Не рабочее" |
498 | @isset($house) | 498 | @isset($house) |
499 | @if($house->sos_obj == 'Не рабочее') | 499 | @if($house->sos_obj == 'Не рабочее') |
500 | selected | 500 | selected |
501 | @endif | 501 | @endif |
502 | @endisset | 502 | @endisset |
503 | >Не рабочее</option> | 503 | >Не рабочее</option> |
504 | </select><br><br> | 504 | </select><br><br> |
505 | 505 | ||
506 | <label for="type_plan">Тип планировки: </label><br> | 506 | <label for="type_plan">Тип планировки: </label><br> |
507 | @error('type_plan') | 507 | @error('type_plan') |
508 | <div class="alert alert-danger">{{ $message }}</div> | 508 | <div class="alert alert-danger">{{ $message }}</div> |
509 | @enderror | 509 | @enderror |
510 | <select name="type_plan" id="type_plan" class="form-control"> | 510 | <select name="type_plan" id="type_plan" class="form-control"> |
511 | <option value="Открытая" | 511 | <option value="Открытая" |
512 | @isset($house) | 512 | @isset($house) |
513 | @if($house->type_plan == 'Открытая') | 513 | @if($house->type_plan == 'Открытая') |
514 | selected | 514 | selected |
515 | @endif | 515 | @endif |
516 | @endisset | 516 | @endisset |
517 | >Открытая</option> | 517 | >Открытая</option> |
518 | <option value="Закрытая" | 518 | <option value="Закрытая" |
519 | @isset($house) | 519 | @isset($house) |
520 | @if($house->type_plan == 'Закрытая') | 520 | @if($house->type_plan == 'Закрытая') |
521 | selected | 521 | selected |
522 | @endif | 522 | @endif |
523 | @endisset | 523 | @endisset |
524 | >Закрытая</option> | 524 | >Закрытая</option> |
525 | </select><br><br> | 525 | </select><br><br> |
526 | 526 | ||
527 | <label for="description_2">Описание офиса дополнительно: </label><br> | 527 | <label for="description_2">Описание офиса дополнительно: </label><br> |
528 | @error('description_2') | 528 | @error('description_2') |
529 | <div class="alert alert-danger">{{ $message }}</div> | 529 | <div class="alert alert-danger">{{ $message }}</div> |
530 | @enderror | 530 | @enderror |
531 | <textarea class="form-control_ txtarea ckeditor" name="description_2" placeholder="Описание офиса дополнительно" required | 531 | <textarea class="form-control_ txtarea ckeditor" name="description_2" placeholder="Описание офиса дополнительно" required |
532 | rows="10" style="width: 80%">{{ old('description_2') ?? $house->description_2 ?? '' }}</textarea><br><br> | 532 | rows="10" style="width: 80%">{{ old('description_2') ?? $house->description_2 ?? '' }}</textarea><br><br> |
533 | 533 | ||
534 | <br> | 534 | <br> |
535 | <button type="submit" class="btn hero-search__btn btn--main">Сохранить</button> | 535 | <button type="submit" class="btn hero-search__btn btn--main">Сохранить</button> |
536 | 536 | ||
537 | 537 | ||
538 | 538 |
resources/views/mapsobj.blade.php
1 | @extends('layout.site', ['title' => 'Объекты на карте RentTorg']) | 1 | @extends('layout.site', ['title' => 'Объекты на карте RentTorg']) |
2 | 2 | ||
3 | @section('filter') | 3 | @section('filter') |
4 | @include('part.filter.mapsobj') | 4 | @include('part.filter.mapsobj') |
5 | @endsection | 5 | @endsection |
6 | 6 | ||
7 | @section('custom_js') | 7 | @section('custom_js') |
8 | @include('js.filter_value') | 8 | @include('js.filter_value') |
9 | <script> | 9 | <script> |
10 | function setGeneralMap() { | 10 | function setGeneralMap() { |
11 | 11 | ||
12 | if (document.querySelector('#general-map')) { | 12 | if (document.querySelector('#general-map')) { |
13 | 13 | ||
14 | ymaps.ready(init); // Дождёмся загрузки API и готовности DOM; | 14 | ymaps.ready(init); // Дождёмся загрузки API и готовности DOM; |
15 | 15 | ||
16 | function init() { | 16 | function init() { |
17 | 17 | ||
18 | const myMap = new ymaps.Map('general-map', { // Создание экземпляра карты и его привязка к контейнеру с заданным id; | 18 | const myMap = new ymaps.Map('general-map', { // Создание экземпляра карты и его привязка к контейнеру с заданным id; |
19 | center: [55.752933963675126, 37.52233749962665], // При инициализации карты обязательно нужно указать её центр и коэффициент масштабирования; | 19 | center: [55.752933963675126, 37.52233749962665], // При инициализации карты обязательно нужно указать её центр и коэффициент масштабирования; |
20 | zoom: 10, | 20 | zoom: 10, |
21 | controls: [] // Скрываем элементы управления на карте; | 21 | controls: [] // Скрываем элементы управления на карте; |
22 | }); | 22 | }); |
23 | 23 | ||
24 | // Создаём макет содержимого. | 24 | // Создаём макет содержимого. |
25 | const MyIconContentLayout = ymaps.templateLayoutFactory.createClass( | 25 | const MyIconContentLayout = ymaps.templateLayoutFactory.createClass( |
26 | '<div style="color: #FFFFFF; font-weight: bold;">$[properties.iconContent]</div>' | 26 | '<div style="color: #FFFFFF; font-weight: bold;">$[properties.iconContent]</div>' |
27 | ); | 27 | ); |
28 | 28 | ||
29 | let collection = new ymaps.GeoObjectCollection(null, { // Создаём коллекцию, в которую будемпомещать метки (что-то типа массива); | 29 | let collection = new ymaps.GeoObjectCollection(null, { // Создаём коллекцию, в которую будемпомещать метки (что-то типа массива); |
30 | // preset: 'islands#yellowIcon' | 30 | // preset: 'islands#yellowIcon' |
31 | }); | 31 | }); |
32 | 32 | ||
33 | let collectionCoords = [ // Создаём массив с координатами (координаты должны располагаться в том же порядке, что и адреса в списке на сайте); | 33 | let collectionCoords = [ // Создаём массив с координатами (координаты должны располагаться в том же порядке, что и адреса в списке на сайте); |
34 | @if ($areas->count()) | 34 | @if (!empty($input)) |
35 | @if ($houses->count()) | ||
36 | @foreach ($houses as $house) | ||
37 | [{{ $house->coord_x }}, {{$house->coord_y}}], | ||
38 | @endforeach | ||
39 | @endif | ||
40 | @else | ||
41 | @if ($areas->count()) | ||
35 | @foreach ($areas as $area) | 42 | @foreach ($areas as $area) |
36 | [{{ $area->coord_x }}, {{$area->coord_y}}], | 43 | [{{ $area->coord_x }}, {{$area->coord_y}}], |
37 | @endforeach | 44 | @endforeach |
38 | @endif | 45 | @endif |
46 | @endif | ||
39 | // [55.867783219108354, 37.392867499999916], | 47 | // [55.867783219108354, 37.392867499999916], |
40 | // [55.728043075486504, 37.73937949999994], | 48 | // [55.728043075486504, 37.73937949999994], |
41 | // [55.72624100423305, 37.476078499999964], | 49 | // [55.72624100423305, 37.476078499999964], |
42 | // [55.80751105044832, 37.449622999999974], | 50 | // [55.80751105044832, 37.449622999999974], |
43 | // [55.601783098948836, 37.36700499999998], | 51 | // [55.601783098948836, 37.36700499999998], |
44 | // [55.86086502152225, 37.540348999999964], | 52 | // [55.86086502152225, 37.540348999999964], |
45 | // [55.784961528728715, 37.56188599999996], | 53 | // [55.784961528728715, 37.56188599999996], |
46 | // [55.63910010399773, 37.319407999999996], | 54 | // [55.63910010399773, 37.319407999999996], |
47 | // [55.55819256767507, 37.55711549999994], | 55 | // [55.55819256767507, 37.55711549999994], |
48 | // [55.79829252928473, 37.52063549999999], | 56 | // [55.79829252928473, 37.52063549999999], |
49 | ]; | 57 | ]; |
50 | 58 | ||
51 | for (let i = 0, l = collectionCoords.length; i < l; i++) { // C помощью цикла добавляем все метки в коллекцию; | 59 | for (let i = 0, l = collectionCoords.length; i < l; i++) { // C помощью цикла добавляем все метки в коллекцию; |
52 | collection.add(new ymaps.Placemark(collectionCoords[i])); | 60 | collection.add(new ymaps.Placemark(collectionCoords[i])); |
53 | collection.get(i).properties.set('iconContent', `${i + 1}`); // Добавляем каждой метке порядковый номер, записываем его в свойство 'iconContent'; | 61 | collection.get(i).properties.set('iconContent', `${i + 1}`); // Добавляем каждой метке порядковый номер, записываем его в свойство 'iconContent'; |
54 | } | 62 | } |
55 | 63 | ||
56 | myMap.geoObjects.add(collection); // Добавляем коллекцию с метками на карту; | 64 | myMap.geoObjects.add(collection); // Добавляем коллекцию с метками на карту; |
57 | 65 | ||
58 | collection.options.set('iconLayout', 'default#imageWithContent'); // Необходимо указать данный тип макета; | 66 | collection.options.set('iconLayout', 'default#imageWithContent'); // Необходимо указать данный тип макета; |
59 | collection.options.set('iconImageHref', 'images/mark-complex.svg'); // Своё изображение иконки метки; | 67 | collection.options.set('iconImageHref', 'images/mark-complex.svg'); // Своё изображение иконки метки; |
60 | collection.options.set('iconImageSize', [52, 67]); // Размеры метки; | 68 | collection.options.set('iconImageSize', [52, 67]); // Размеры метки; |
61 | collection.options.set('iconImageOffset', [-26, -67]); // Смещение левого верхнего угла иконки относительно её "ножки" (точки привязки); | 69 | collection.options.set('iconImageOffset', [-26, -67]); // Смещение левого верхнего угла иконки относительно её "ножки" (точки привязки); |
62 | collection.options.set('iconContentOffset', [0, 17]); | 70 | collection.options.set('iconContentOffset', [0, 17]); |
63 | collection.options.set('iconContentLayout', MyIconContentLayout); // Смещение левого верхнего угла иконки относительно её "ножки" (точки привязки); | 71 | collection.options.set('iconContentLayout', MyIconContentLayout); // Смещение левого верхнего угла иконки относительно её "ножки" (точки привязки); |
64 | 72 | ||
65 | const pageMapBar = document.querySelector('.js_page_map_bar'); | 73 | const pageMapBar = document.querySelector('.js_page_map_bar'); |
66 | const pageMapBarBtn = pageMapBar.querySelector('.js_page_map_bar_btn'); | 74 | const pageMapBarBtn = pageMapBar.querySelector('.js_page_map_bar_btn'); |
67 | const pageMapBarList = pageMapBar.querySelector('.js_page_map_bar_list'); | 75 | const pageMapBarList = pageMapBar.querySelector('.js_page_map_bar_list'); |
68 | const pageMapBarCards = pageMapBar.querySelectorAll('.card-news'); | 76 | const pageMapBarCards = pageMapBar.querySelectorAll('.card-news'); |
69 | 77 | ||
70 | const showCard = (i) => { | 78 | const showCard = (i) => { |
71 | 79 | ||
72 | pageMapBarCards.forEach((card, k) => { | 80 | pageMapBarCards.forEach((card, k) => { |
73 | 81 | ||
74 | card.classList.remove('active'); | 82 | card.classList.remove('active'); |
75 | 83 | ||
76 | if (i == k) { | 84 | if (i == k) { |
77 | card.classList.add('active'); | 85 | card.classList.add('active'); |
78 | } | 86 | } |
79 | 87 | ||
80 | }); | 88 | }); |
81 | 89 | ||
82 | }; | 90 | }; |
83 | 91 | ||
84 | const hidecard = () => { | 92 | const hidecard = () => { |
85 | 93 | ||
86 | pageMapBarCards.forEach(card => { | 94 | pageMapBarCards.forEach(card => { |
87 | card.classList.remove('active'); | 95 | card.classList.remove('active'); |
88 | }); | 96 | }); |
89 | 97 | ||
90 | } | 98 | } |
91 | 99 | ||
92 | let pageMapBarItems; | 100 | let pageMapBarItems; |
93 | 101 | ||
94 | pageMapBarBtn.addEventListener('click', () => { | 102 | pageMapBarBtn.addEventListener('click', () => { |
95 | pageMapBar.classList.toggle('active'); | 103 | pageMapBar.classList.toggle('active'); |
96 | }); | 104 | }); |
97 | 105 | ||
98 | pageMapBarList.addEventListener('click', (e) => { | 106 | pageMapBarList.addEventListener('click', (e) => { |
99 | 107 | ||
100 | if (e.target.closest('.page-map-bar__item')) { | 108 | if (e.target.closest('.page-map-bar__item')) { |
101 | 109 | ||
102 | pageMapBarItems = pageMapBarList.querySelectorAll('.page-map-bar__item'); | 110 | pageMapBarItems = pageMapBarList.querySelectorAll('.page-map-bar__item'); |
103 | 111 | ||
104 | pageMapBarItems.forEach((item, i) => { | 112 | pageMapBarItems.forEach((item, i) => { |
105 | 113 | ||
106 | if (e.target == item && e.target.classList.contains('active')) { | 114 | if (e.target == item && e.target.classList.contains('active')) { |
107 | 115 | ||
108 | item.classList.remove('active'); | 116 | item.classList.remove('active'); |
109 | 117 | ||
110 | hidecard(); | 118 | hidecard(); |
111 | 119 | ||
112 | } else if (e.target == item) { | 120 | } else if (e.target == item) { |
113 | 121 | ||
114 | pageMapBarItems.forEach(item => { | 122 | pageMapBarItems.forEach(item => { |
115 | item.classList.remove('active'); | 123 | item.classList.remove('active'); |
116 | }); | 124 | }); |
117 | 125 | ||
118 | item.classList.add('active'); | 126 | item.classList.add('active'); |
119 | 127 | ||
120 | let offsetCoords = collection.get(i).geometry.getCoordinates(); | 128 | let offsetCoords = collection.get(i).geometry.getCoordinates(); |
121 | 129 | ||
122 | offsetCoords = [ | 130 | offsetCoords = [ |
123 | offsetCoords[0] - 0.0025, | 131 | offsetCoords[0] - 0.0025, |
124 | offsetCoords[1] | 132 | offsetCoords[1] |
125 | ]; | 133 | ]; |
126 | 134 | ||
127 | myMap.setZoom(16); | 135 | myMap.setZoom(16); |
128 | // myMap.setCenter(collection.get(i).geometry.getCoordinates()); | 136 | // myMap.setCenter(collection.get(i).geometry.getCoordinates()); |
129 | myMap.setCenter(offsetCoords); | 137 | myMap.setCenter(offsetCoords); |
130 | 138 | ||
131 | showCard(i); | 139 | showCard(i); |
132 | 140 | ||
133 | } | 141 | } |
134 | 142 | ||
135 | }); | 143 | }); |
136 | } | 144 | } |
137 | 145 | ||
138 | }); | 146 | }); |
139 | 147 | ||
140 | collection.events.add('click', function (e) { | 148 | collection.events.add('click', function (e) { |
141 | 149 | ||
142 | for (let i = 0, l = collection.getLength(); i < l; i++) { | 150 | for (let i = 0, l = collection.getLength(); i < l; i++) { |
143 | 151 | ||
144 | if (e.get('target') == collection.get(i)) { | 152 | if (e.get('target') == collection.get(i)) { |
145 | 153 | ||
146 | pageMapBarItems = pageMapBarList.querySelectorAll('.page-map-bar__item'); | 154 | pageMapBarItems = pageMapBarList.querySelectorAll('.page-map-bar__item'); |
147 | 155 | ||
148 | pageMapBarItems.forEach((item) => { | 156 | pageMapBarItems.forEach((item) => { |
149 | pageMapBar.classList.add('active'); | 157 | pageMapBar.classList.add('active'); |
150 | item.classList.remove('active'); | 158 | item.classList.remove('active'); |
151 | }); | 159 | }); |
152 | 160 | ||
153 | pageMapBarItems[i].classList.add('active'); | 161 | pageMapBarItems[i].classList.add('active'); |
154 | 162 | ||
155 | showCard(i); | 163 | showCard(i); |
156 | 164 | ||
157 | } | 165 | } |
158 | 166 | ||
159 | } | 167 | } |
160 | 168 | ||
161 | }); | 169 | }); |
162 | 170 | ||
163 | } | 171 | } |
164 | 172 | ||
165 | } | 173 | } |
166 | 174 | ||
167 | } | 175 | } |
168 | 176 | ||
169 | setGeneralMap(); | 177 | setGeneralMap(); |
170 | </script> | 178 | </script> |
171 | @endsection | 179 | @endsection |
172 | 180 | ||
173 | @section('content') | 181 | @section('content') |
174 | <section class="page-map"> | 182 | <section class="page-map"> |
175 | <div class="page-map__wrap"> | 183 | <div class="page-map__wrap"> |
176 | <h2 class="visually-hidden">Карта</h2> | 184 | <h2 class="visually-hidden">Карта</h2> |
177 | <div class="page-map__map" id="general-map"></div> | 185 | <div class="page-map__map" id="general-map"></div> |
178 | <div class="container"> | 186 | <div class="container"> |
179 | <div class="page-map__inner"> | 187 | <div class="page-map__inner"> |
180 | <div class="page-map-bar js_page_map_bar active"> | 188 | <div class="page-map-bar js_page_map_bar active"> |
181 | <div class="page-map-bar__top">Все объекты | 189 | <div class="page-map-bar__top">Все объекты |
182 | <button class="page-map-bar__close js_page_map_bar_btn" type="button"> | 190 | <button class="page-map-bar__close js_page_map_bar_btn" type="button"> |
183 | <svg width="20" height="20"> | 191 | <svg width="20" height="20"> |
184 | <use xlink:href="images/sprite.svg#popup-close"></use> | 192 | <use xlink:href="images/sprite.svg#popup-close"></use> |
185 | </svg> | 193 | </svg> |
186 | </button> | 194 | </button> |
187 | </div> | 195 | </div> |
188 | <ul class="page-map-bar__list js_page_map_bar_list"> | 196 | |
189 | @if ($areas->count()) | 197 | @if (!empty($input)) |
198 | <ul class="page-map-bar__list js_page_map_bar_list"> | ||
199 | @if ($houses->count()) | ||
200 | @foreach ($houses as $house) | ||
201 | <li class="page-map-bar__item">{{ $house->title }}</li> | ||
202 | @endforeach | ||
203 | @endif | ||
204 | </ul> | ||
205 | @if ($houses->count()) | ||
206 | @foreach ($houses as $house) | ||
207 | <div class="card-news"> | ||
208 | <div class="card-news__top"><img src="{{ asset(Storage::url($house->foto_main)) }}" alt="Превью по {{$house->title}}" loading="lazy"> | ||
209 | <div class="card-news__date"><span>{{ $house->title }}</span><span></span></div> | ||
210 | </div> | ||
211 | <div class="card-news__cnt"> | ||
212 | <p class="card-news__descr">{{ $house->description_house }}</p> | ||
213 | <a class="card-news__link" href="{{ route('offer', ['house' => $house->id]) }}">Подробнее | ||
214 | <svg width="17" height="12"> | ||
215 | <use xlink:href="{{ asset('images/sprite.svg#card-news-link-arrow') }}"></use> | ||
216 | </svg> | ||
217 | </a> | ||
218 | </div> | ||
219 | </div> | ||
220 | @endforeach | ||
221 | @endif | ||
222 | @else | ||
223 | <ul class="page-map-bar__list js_page_map_bar_list"> | ||
224 | @if ($areas->count()) | ||
190 | @foreach ($areas as $area) | 225 | @foreach ($areas as $area) |
191 | <li class="page-map-bar__item">{{ $area->name_area }}</li> | 226 | <li class="page-map-bar__item">{{ $area->name_area }}</li> |
192 | @endforeach | 227 | @endforeach |
193 | @endif | 228 | @endif |
194 | <!--<li class="page-map-bar__item">ЖК Большое Путилково</li> | 229 | <!--<li class="page-map-bar__item">ЖК Большое Путилково</li> |
195 | <li class="page-map-bar__item">ЖК Среда</li> | 230 | <li class="page-map-bar__item">ЖК Среда</li> |
196 | <li class="page-map-bar__item">ЖК Квартал Триумфальный</li> | 231 | <li class="page-map-bar__item">ЖК Квартал Триумфальный</li> |
197 | <li class="page-map-bar__item">ЖК Алые Паруса</li> | 232 | <li class="page-map-bar__item">ЖК Алые Паруса</li> |
198 | <li class="page-map-bar__item">ЖК Первый Московский</li> | 233 | <li class="page-map-bar__item">ЖК Первый Московский</li> |
199 | <li class="page-map-bar__item">ЖК Ильменский 17</li> | 234 | <li class="page-map-bar__item">ЖК Ильменский 17</li> |
200 | <li class="page-map-bar__item">ЖК Царская Площадь</li> | 235 | <li class="page-map-bar__item">ЖК Царская Площадь</li> |
201 | <li class="page-map-bar__item">ЖК Переделкино Ближнее</li> | 236 | <li class="page-map-bar__item">ЖК Переделкино Ближнее</li> |
202 | <li class="page-map-bar__item">ЖК Этолон Cити</li> | 237 | <li class="page-map-bar__item">ЖК Этолон Cити</li> |
203 | <li class="page-map-bar__item">ЖК Триумф Палас</li>--> | 238 | <li class="page-map-bar__item">ЖК Триумф Палас</li>--> |
204 | </ul> | 239 | </ul> |
205 | @if ($areas->count()) | 240 | @if ($areas->count()) |
206 | @foreach ($areas as $area) | 241 | @foreach ($areas as $area) |
207 | <div class="card-news"> | 242 | <div class="card-news"> |
208 | <div class="card-news__top"><img src="{{ asset(Storage::url($area->foto_main)) }}" alt="Превью по {{$area->name_area}}" loading="lazy"> | 243 | <div class="card-news__top"><img src="{{ asset(Storage::url($area->foto_main)) }}" alt="Превью по {{$area->name_area}}" loading="lazy"> |
209 | <div class="card-news__date"><span>{{ $area->name_area }}</span><span></span></div> | 244 | <div class="card-news__date"><span>{{ $area->name_area }}</span><span></span></div> |
210 | </div> | 245 | </div> |
211 | <div class="card-news__cnt"> | 246 | <div class="card-news__cnt"> |
212 | <p class="card-news__descr">{{ $area->description }}</p> | 247 | <p class="card-news__descr">{{ $area->description }}</p> |
213 | <a class="card-news__link" href="{{ route('complex', ['area' => $area->id]) }}">Подробнее | 248 | <a class="card-news__link" href="{{ route('complex', ['area' => $area->id]) }}">Подробнее |
214 | <svg width="17" height="12"> | 249 | <svg width="17" height="12"> |
215 | <use xlink:href="{{ asset('images/sprite.svg#card-news-link-arrow') }}"></use> | 250 | <use xlink:href="{{ asset('images/sprite.svg#card-news-link-arrow') }}"></use> |
216 | </svg> | 251 | </svg> |
217 | </a> | 252 | </a> |
218 | </div> | 253 | </div> |
219 | </div> | 254 | </div> |
220 | @endforeach | 255 | @endforeach |
256 | @endif | ||
221 | @endif | 257 | @endif |
222 | <!--<div class="card-news"> | 258 | <!--<div class="card-news"> |
223 | <div class="card-news__top"><img src="images/card/card-img-5.jpg" alt="Превью к новости" loading="lazy"> | 259 | <div class="card-news__top"><img src="images/card/card-img-5.jpg" alt="Превью к новости" loading="lazy"> |
224 | <div class="card-news__date"><span>ЖК Большое Путилково</span><span></span></div> | 260 | <div class="card-news__date"><span>ЖК Большое Путилково</span><span></span></div> |
225 | </div> | 261 | </div> |
226 | <div class="card-news__cnt"> | 262 | <div class="card-news__cnt"> |
227 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее | 263 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее |
228 | <svg width="17" height="12"> | 264 | <svg width="17" height="12"> |
229 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> | 265 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> |
230 | </svg></a> | 266 | </svg></a> |
231 | </div> | 267 | </div> |
232 | </div> | 268 | </div> |
233 | <div class="card-news"> | 269 | <div class="card-news"> |
234 | <div class="card-news__top"><img src="images/card/card-img-6.jpg" alt="Превью к новости" loading="lazy"> | 270 | <div class="card-news__top"><img src="images/card/card-img-6.jpg" alt="Превью к новости" loading="lazy"> |
235 | <div class="card-news__date"><span>ЖК Среда</span><span></span></div> | 271 | <div class="card-news__date"><span>ЖК Среда</span><span></span></div> |
236 | </div> | 272 | </div> |
237 | <div class="card-news__cnt"> | 273 | <div class="card-news__cnt"> |
238 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее | 274 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее |
239 | <svg width="17" height="12"> | 275 | <svg width="17" height="12"> |
240 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> | 276 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> |
241 | </svg></a> | 277 | </svg></a> |
242 | </div> | 278 | </div> |
243 | </div> | 279 | </div> |
244 | <div class="card-news"> | 280 | <div class="card-news"> |
245 | <div class="card-news__top"><img src="images/card/card-img-7.jpg" alt="Превью к новости" loading="lazy"> | 281 | <div class="card-news__top"><img src="images/card/card-img-7.jpg" alt="Превью к новости" loading="lazy"> |
246 | <div class="card-news__date"><span>ЖК Квартал Триумфальный</span><span></span></div> | 282 | <div class="card-news__date"><span>ЖК Квартал Триумфальный</span><span></span></div> |
247 | </div> | 283 | </div> |
248 | <div class="card-news__cnt"> | 284 | <div class="card-news__cnt"> |
249 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее | 285 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее |
250 | <svg width="17" height="12"> | 286 | <svg width="17" height="12"> |
251 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> | 287 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> |
252 | </svg></a> | 288 | </svg></a> |
253 | </div> | 289 | </div> |
254 | </div> | 290 | </div> |
255 | <div class="card-news"> | 291 | <div class="card-news"> |
256 | <div class="card-news__top"><img src="images/card/card-img-8.jpg" alt="Превью к новости" loading="lazy"> | 292 | <div class="card-news__top"><img src="images/card/card-img-8.jpg" alt="Превью к новости" loading="lazy"> |
257 | <div class="card-news__date"><span>ЖК Алые Паруса</span><span></span></div> | 293 | <div class="card-news__date"><span>ЖК Алые Паруса</span><span></span></div> |
258 | </div> | 294 | </div> |
259 | <div class="card-news__cnt"> | 295 | <div class="card-news__cnt"> |
260 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее | 296 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее |
261 | <svg width="17" height="12"> | 297 | <svg width="17" height="12"> |
262 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> | 298 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> |
263 | </svg></a> | 299 | </svg></a> |
264 | </div> | 300 | </div> |
265 | </div> | 301 | </div> |
266 | <div class="card-news"> | 302 | <div class="card-news"> |
267 | <div class="card-news__top"><img src="images/card/card-img-5.jpg" alt="Превью к новости" loading="lazy"> | 303 | <div class="card-news__top"><img src="images/card/card-img-5.jpg" alt="Превью к новости" loading="lazy"> |
268 | <div class="card-news__date"><span>ЖК Первый Московский</span><span></span></div> | 304 | <div class="card-news__date"><span>ЖК Первый Московский</span><span></span></div> |
269 | </div> | 305 | </div> |
270 | <div class="card-news__cnt"> | 306 | <div class="card-news__cnt"> |
271 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее | 307 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее |
272 | <svg width="17" height="12"> | 308 | <svg width="17" height="12"> |
273 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> | 309 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> |
274 | </svg></a> | 310 | </svg></a> |
275 | </div> | 311 | </div> |
276 | </div> | 312 | </div> |
277 | <div class="card-news"> | 313 | <div class="card-news"> |
278 | <div class="card-news__top"><img src="images/card/card-img-6.jpg" alt="Превью к новости" loading="lazy"> | 314 | <div class="card-news__top"><img src="images/card/card-img-6.jpg" alt="Превью к новости" loading="lazy"> |
279 | <div class="card-news__date"><span>ЖК Ильменский 17</span><span></span></div> | 315 | <div class="card-news__date"><span>ЖК Ильменский 17</span><span></span></div> |
280 | </div> | 316 | </div> |
281 | <div class="card-news__cnt"> | 317 | <div class="card-news__cnt"> |
282 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее | 318 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее |
283 | <svg width="17" height="12"> | 319 | <svg width="17" height="12"> |
284 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> | 320 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> |
285 | </svg></a> | 321 | </svg></a> |
286 | </div> | 322 | </div> |
287 | </div> | 323 | </div> |
288 | <div class="card-news"> | 324 | <div class="card-news"> |
289 | <div class="card-news__top"><img src="images/card/card-img-7.jpg" alt="Превью к новости" loading="lazy"> | 325 | <div class="card-news__top"><img src="images/card/card-img-7.jpg" alt="Превью к новости" loading="lazy"> |
290 | <div class="card-news__date"><span>ЖК Царская Площадь</span><span></span></div> | 326 | <div class="card-news__date"><span>ЖК Царская Площадь</span><span></span></div> |
291 | </div> | 327 | </div> |
292 | <div class="card-news__cnt"> | 328 | <div class="card-news__cnt"> |
293 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее | 329 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее |
294 | <svg width="17" height="12"> | 330 | <svg width="17" height="12"> |
295 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> | 331 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> |
296 | </svg></a> | 332 | </svg></a> |
297 | </div> | 333 | </div> |
298 | </div> | 334 | </div> |
299 | <div class="card-news"> | 335 | <div class="card-news"> |
300 | <div class="card-news__top"><img src="images/card/card-img-8.jpg" alt="Превью к новости" loading="lazy"> | 336 | <div class="card-news__top"><img src="images/card/card-img-8.jpg" alt="Превью к новости" loading="lazy"> |
301 | <div class="card-news__date"><span>ЖК Переделкино Ближнее</span><span></span></div> | 337 | <div class="card-news__date"><span>ЖК Переделкино Ближнее</span><span></span></div> |
302 | </div> | 338 | </div> |
303 | <div class="card-news__cnt"> | 339 | <div class="card-news__cnt"> |
304 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее | 340 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее |
305 | <svg width="17" height="12"> | 341 | <svg width="17" height="12"> |
306 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> | 342 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> |
307 | </svg></a> | 343 | </svg></a> |
308 | </div> | 344 | </div> |
309 | </div> | 345 | </div> |
310 | <div class="card-news"> | 346 | <div class="card-news"> |
311 | <div class="card-news__top"><img src="images/card/card-img-5.jpg" alt="Превью к новости" loading="lazy"> | 347 | <div class="card-news__top"><img src="images/card/card-img-5.jpg" alt="Превью к новости" loading="lazy"> |
312 | <div class="card-news__date"><span>ЖК Этолон Cити</span><span></span></div> | 348 | <div class="card-news__date"><span>ЖК Этолон Cити</span><span></span></div> |
313 | </div> | 349 | </div> |
314 | <div class="card-news__cnt"> | 350 | <div class="card-news__cnt"> |
315 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее | 351 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее |
316 | <svg width="17" height="12"> | 352 | <svg width="17" height="12"> |
317 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> | 353 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> |
318 | </svg></a> | 354 | </svg></a> |
319 | </div> | 355 | </div> |
320 | </div> | 356 | </div> |
321 | <div class="card-news"> | 357 | <div class="card-news"> |
322 | <div class="card-news__top"><img src="images/card/card-img-6.jpg" alt="Превью к новости" loading="lazy"> | 358 | <div class="card-news__top"><img src="images/card/card-img-6.jpg" alt="Превью к новости" loading="lazy"> |
323 | <div class="card-news__date"><span>ЖК Триумф Палас</span><span></span></div> | 359 | <div class="card-news__date"><span>ЖК Триумф Палас</span><span></span></div> |
324 | </div> | 360 | </div> |
325 | <div class="card-news__cnt"> | 361 | <div class="card-news__cnt"> |
326 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее | 362 | <p class="card-news__descr">Помещение расположено на первой фасадной линии Лесной улицы. В нескольких минутах пешком от метро «Белорусская», Бизнес центра класса «А» «Белая площадь», напротив гостиницы «Holiday Inn» и рядом с фудмоллом</p><a class="card-news__link" href="#">Подробнее |
327 | <svg width="17" height="12"> | 363 | <svg width="17" height="12"> |
328 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> | 364 | <use xlink:href="images/sprite.svg#card-news-link-arrow"></use> |
329 | </svg></a> | 365 | </svg></a> |
330 | </div> | 366 | </div> |
331 | </div>--> | 367 | </div>--> |
332 | </div> | 368 | </div> |
333 | </div> | 369 | </div> |
334 | </div> | 370 | </div> |
335 | </div> | 371 | </div> |
336 | </section> | 372 | </section> |
337 | @endsection | 373 | @endsection |
338 | 374 | ||
339 | @section('form_feedback') | 375 | @section('form_feedback') |
340 | <!-- Форма обратной связи --> | 376 | <!-- Форма обратной связи --> |
341 | @include('form.form_feedback') | 377 | @include('form.form_feedback') |
342 | @endsection | 378 | @endsection |
343 | 379 | ||
344 | 380 |