Commit 0a94fb81dd67d8e1c0f0a292ac095389a7b637cc

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

Админка - форма редактирования пароля и редактирование контроллера AdminController

Showing 10 changed files with 118 additions and 1 deletions Inline Diff

app/Http/Controllers/AdminController.php
1 <?php 1 <?php
2 2
3 namespace App\Http\Controllers; 3 namespace App\Http\Controllers;
4 4
5 use App\Models\User;
5 use Illuminate\Http\Request; 6 use Illuminate\Http\Request;
7 use Illuminate\Support\Facades\Auth;
8 use Illuminate\Support\Facades\Hash;
9 use Illuminate\Support\Facades\Validator;
6 10
7 class AdminController extends Controller 11 class AdminController extends Controller
8 { 12 {
9 // главная страница административного раздела 13 // главная страница административного раздела
10 public function index() { 14 public function index() {
11 return view('admin.index'); 15 return view('admin.index');
12 } 16 }
17
18 // форма смены пароля
19 public function form_password() {
20 return view('admin.password');
21 }
22
23 //валидация смены пароля
24 public function validate_password(Request $request) {
25
26 $rules = [
27 'old_password' => 'required|min:6', //|current_password:api',
28 'password' => 'required|min:6|confirmed',
29 ];
30 $messages = [
31 'required' => 'Укажите обязательное поле',
32 'confirmed' => 'Пароли не совпадают'
33 ];
34
35 $validator = Validator::make($request->all(), $rules, $messages);
36
37 if (! Hash::check($request->old_password, $request->user()->password)) {
38 return back()->withErrors([
39 'old_password' => ['Неверный предыдущий пароль']
40 ]);
41 }
42
43 if ($validator->fails()) {
44 return redirect()->route('admin.form_password')
45 ->withErrors($validator);
46 } else {
47 $params = $request->all();
48 // устанавливаем новый пароль для пользователя
49 User::where('id', Auth::id())
50 ->update(['password' => Hash::make($request->password)]);
51 session()->flash('success', 'Успешно изменен пароль!');
52
53 return redirect()->route('admin.form_password');
54 }
55 }
13 } 56 }
14 57
1 <?php 1 <?php
2 2
3 return [ 3 return [
4 4
5 /* 5 /*
6 |-------------------------------------------------------------------------- 6 |--------------------------------------------------------------------------
7 | Authentication Defaults 7 | Authentication Defaults
8 |-------------------------------------------------------------------------- 8 |--------------------------------------------------------------------------
9 | 9 |
10 | This option controls the default authentication "guard" and password 10 | This option controls the default authentication "guard" and password
11 | reset options for your application. You may change these defaults 11 | reset options for your application. You may change these defaults
12 | as required, but they're a perfect start for most applications. 12 | as required, but they're a perfect start for most applications.
13 | 13 |
14 */ 14 */
15 15
16 'defaults' => [ 16 'defaults' => [
17 'guard' => 'web', 17 'guard' => 'web',
18 'passwords' => 'users', 18 'passwords' => 'users',
19 ], 19 ],
20 20
21 /* 21 /*
22 |-------------------------------------------------------------------------- 22 |--------------------------------------------------------------------------
23 | Authentication Guards 23 | Authentication Guards
24 |-------------------------------------------------------------------------- 24 |--------------------------------------------------------------------------
25 | 25 |
26 | Next, you may define every authentication guard for your application. 26 | Next, you may define every authentication guard for your application.
27 | Of course, a great default configuration has been defined for you 27 | Of course, a great default configuration has been defined for you
28 | here which uses session storage and the Eloquent user provider. 28 | here which uses session storage and the Eloquent user provider.
29 | 29 |
30 | All authentication drivers have a user provider. This defines how the 30 | All authentication drivers have a user provider. This defines how the
31 | users are actually retrieved out of your database or other storage 31 | users are actually retrieved out of your database or other storage
32 | mechanisms used by this application to persist your user's data. 32 | mechanisms used by this application to persist your user's data.
33 | 33 |
34 | Supported: "session" 34 | Supported: "session"
35 | 35 |
36 */ 36 */
37 37
38 'guards' => [ 38 'guards' => [
39 'web' => [ 39 'web' => [
40 'driver' => 'session', 40 'driver' => 'session',
41 'provider' => 'users', 41 'provider' => 'users',
42 ], 42 ],
43
44 'api' => [
45 'driver' => 'passport',
46 'provider' => 'users',
47 'hash' => true,
48 ],
43 ], 49 ],
44 50
45 /* 51 /*
46 |-------------------------------------------------------------------------- 52 |--------------------------------------------------------------------------
47 | User Providers 53 | User Providers
48 |-------------------------------------------------------------------------- 54 |--------------------------------------------------------------------------
49 | 55 |
50 | All authentication drivers have a user provider. This defines how the 56 | All authentication drivers have a user provider. This defines how the
51 | users are actually retrieved out of your database or other storage 57 | users are actually retrieved out of your database or other storage
52 | mechanisms used by this application to persist your user's data. 58 | mechanisms used by this application to persist your user's data.
53 | 59 |
54 | If you have multiple user tables or models you may configure multiple 60 | If you have multiple user tables or models you may configure multiple
55 | sources which represent each model / table. These sources may then 61 | sources which represent each model / table. These sources may then
56 | be assigned to any extra authentication guards you have defined. 62 | be assigned to any extra authentication guards you have defined.
57 | 63 |
58 | Supported: "database", "eloquent" 64 | Supported: "database", "eloquent"
59 | 65 |
60 */ 66 */
61 67
62 'providers' => [ 68 'providers' => [
63 'users' => [ 69 'users' => [
64 'driver' => 'eloquent', 70 'driver' => 'eloquent',
65 'model' => App\Models\User::class, 71 'model' => App\Models\User::class,
66 ], 72 ],
67 73
68 // 'users' => [ 74 // 'users' => [
69 // 'driver' => 'database', 75 // 'driver' => 'database',
70 // 'table' => 'users', 76 // 'table' => 'users',
71 // ], 77 // ],
72 ], 78 ],
73 79
74 /* 80 /*
75 |-------------------------------------------------------------------------- 81 |--------------------------------------------------------------------------
76 | Resetting Passwords 82 | Resetting Passwords
77 |-------------------------------------------------------------------------- 83 |--------------------------------------------------------------------------
78 | 84 |
79 | You may specify multiple password reset configurations if you have more 85 | You may specify multiple password reset configurations if you have more
80 | than one user table or model in the application and you want to have 86 | than one user table or model in the application and you want to have
81 | separate password reset settings based on the specific user types. 87 | separate password reset settings based on the specific user types.
82 | 88 |
83 | The expire time is the number of minutes that each reset token will be 89 | The expire time is the number of minutes that each reset token will be
84 | considered valid. This security feature keeps tokens short-lived so 90 | considered valid. This security feature keeps tokens short-lived so
85 | they have less time to be guessed. You may change this as needed. 91 | they have less time to be guessed. You may change this as needed.
86 | 92 |
87 */ 93 */
88 94
89 'passwords' => [ 95 'passwords' => [
90 'users' => [ 96 'users' => [
91 'provider' => 'users', 97 'provider' => 'users',
92 'table' => 'password_resets', 98 'table' => 'password_resets',
93 'expire' => 60, 99 'expire' => 60,
94 'throttle' => 60, 100 'throttle' => 60,
95 ], 101 ],
96 ], 102 ],
97 103
98 /* 104 /*
99 |-------------------------------------------------------------------------- 105 |--------------------------------------------------------------------------
100 | Password Confirmation Timeout 106 | Password Confirmation Timeout
101 |-------------------------------------------------------------------------- 107 |--------------------------------------------------------------------------
102 | 108 |
103 | Here you may define the amount of seconds before a password confirmation 109 | Here you may define the amount of seconds before a password confirmation
104 | times out and the user is prompted to re-enter their password via the 110 | times out and the user is prompted to re-enter their password via the
105 | confirmation screen. By default, the timeout lasts for three hours. 111 | confirmation screen. By default, the timeout lasts for three hours.
106 | 112 |
107 */ 113 */
108 114
109 'password_timeout' => 10800, 115 'password_timeout' => 10800,
110 116
111 ]; 117 ];
112 118
public/images/favicon.png

326 Bytes

resources/views/admin/index.blade.php
1 @extends('layout.site', ['title' => 'Личный кабинет']) 1 @extends('layout.site', ['title' => 'Личный кабинет'])
2 2
3 @section('content') 3 @section('content')
4 <section class="favorites"> 4 <section class="favorites">
5 <div class="favorites-top"> 5 <div class="favorites-top">
6 <div class="container"> 6 <div class="container">
7 <div class="breadcrumbs"> 7 <div class="breadcrumbs">
8 <ul class="breadcrumbs__list"> 8 <ul class="breadcrumbs__list">
9 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('index') }}">Главная</a></li> 9 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('index') }}">Главная</a></li>
10 <li class="breadcrumbs__item"><span class="breadcrumbs__link">Админка </span></li> 10 <li class="breadcrumbs__item"><span class="breadcrumbs__link">Админка </span></li>
11 </ul> 11 </ul>
12 </div> 12 </div>
13 <h1 class="favorites__title title-main">Личный кабинет</h1> 13 <h1 class="favorites__title title-main">Личный кабинет</h1>
14 <p class="favorites__descr"> 14 <p class="favorites__descr">
15 Добрый день {{ auth()->user()->name }}!<br> 15 Добрый день {{ auth()->user()->name }}!<br>
16 Это личный кабинет пользователя сайта.<br> 16 Это личный кабинет пользователя сайта.<br>
17 <a class="btn hero-search__btn btn--main" href="{{ route('auth.logout') }}">Выйти из системы</a><br> 17 <a class="btn hero-search__btn btn--main" href="{{ route('auth.logout') }}">Выйти из системы</a><br>
18 </p> 18 </p>
19 <h2>Меню</h2> 19 <h2>Меню</h2>
20 <ul class="breadcrumbs__list"> 20 <ul class="breadcrumbs__list">
21 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('index') }}">Сайт</a></li> 21 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('index') }}">Сайт</a></li>
22 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.area.index') }}">Объекты </a></li> 22 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.area.index') }}">Объекты </a></li>
23 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.news.index') }}">Новости</a></li> 23 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.news.index') }}">Новости</a></li>
24 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.company.show', ['company' => 1]) }}">Компания</a></li> 24 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.company.show', ['company' => 1]) }}">Компания</a></li>
25 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.typearea.index') }}">Типы недвижимости</a></li> 25 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.typearea.index') }}">Типы недвижимости</a></li>
26 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.formatarea.index') }}">Форматы недвижимости</a></li> 26 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.formatarea.index') }}">Форматы недвижимости</a></li>
27 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.message.index') }}">Сообщения</a></li> 27 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.message.index') }}">Сообщения</a></li>
28 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.houses.index') }}">Офисы</a></li> 28 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.houses.index') }}">Офисы</a></li>
29 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('admin.form_password') }}">Пароль</a></li>
29 </ul> 30 </ul>
30 </div> 31 </div>
31 </div> 32 </div>
32 <div class="favorites-cnt"> 33 <div class="favorites-cnt">
33 <div class="container"> 34 <div class="container">
34 <div class="favorites__items"> 35 <div class="favorites__items">
35 <div class="favorites-item"> 36 <div class="favorites-item">
36 <div class="favorites-item__img"><img src="images/favorites/favorites-item-img-1.svg" alt=""></div> 37 <div class="favorites-item__img"><img src="images/favorites/favorites-item-img-1.svg" alt=""></div>
37 <p class="favorites-item__descr"><a href="#">Найдите</a> идеальную планировку на сайте Renttorg</p> 38 <p class="favorites-item__descr"><a href="#">Найдите</a> идеальную планировку на сайте Renttorg</p>
38 </div> 39 </div>
39 <div class="favorites-item"> 40 <div class="favorites-item">
40 <div class="favorites-item__img"><img src="images/favorites/favorites-item-img-2.svg" alt=""></div> 41 <div class="favorites-item__img"><img src="images/favorites/favorites-item-img-2.svg" alt=""></div>
41 <p class="favorites-item__descr">Нажмите на <img src="images/favorites-icon-mini.svg" alt=""> для добавления недвижемости в избранное</p> 42 <p class="favorites-item__descr">Нажмите на <img src="images/favorites-icon-mini.svg" alt=""> для добавления недвижемости в избранное</p>
42 </div> 43 </div>
43 <div class="favorites-item"> 44 <div class="favorites-item">
44 <div class="favorites-item__img"><img src="images/favorites/favorites-item-img-3.svg" alt=""></div> 45 <div class="favorites-item__img"><img src="images/favorites/favorites-item-img-3.svg" alt=""></div>
45 <p class="favorites-item__descr">Перейдите в избранное или сравнение для выбора планировки</p> 46 <p class="favorites-item__descr">Перейдите в избранное или сравнение для выбора планировки</p>
46 </div> 47 </div>
47 </div> 48 </div>
48 </div> 49 </div>
49 </div> 50 </div>
50 </section> 51 </section>
51 @endsection 52 @endsection
52 53
53 54
resources/views/admin/password.blade.php
File was created 1 @extends('layout.admin', ['title' => 'Смена пароля'])
2
3 @section('content')
4 <section class="favorites">
5 <div class="favorites-top">
6 <div class="container">
7 <div class="breadcrumbs">
8 <ul class="breadcrumbs__list">
9 <li class="breadcrumbs__item"><a class="breadcrumbs__link" href="{{ route('user.index') }}">Главная</a></li>
10 <li class="breadcrumbs__item"><span class="breadcrumbs__link">Смена пароля </span></li>
11 </ul>
12 </div>
13 <h1 class="favorites__title title-main">Смена пароля</h1>
14 </div>
15 </div>
16 <div class="favorites-cnt">
17 <div class="container">
18 <form method="post" action="{{ route('admin.validate_password')}}" style="width:100%">
19 @csrf
20
21 <label for="old_password">Старый пароль: <span class="req">*</span></label><br>
22 @error('old_password')
23 <div class="alert alert-danger">{{ $message }}</div><br>
24 @enderror
25 <input type="text" class="form-control_ txt" name="old_password" placeholder="Старый пароль"
26 required maxlength="100" style="width: 80%" value=""><br><br>
27
28 <label for="new_password">Новый пароль: <span class="req">*</span></label><br>
29 @error('password')
30 <div class="alert alert-danger">{{ $message }}</div><br>
31 @enderror
32 <input type="password" class="form-control_ txt" name="password" placeholder="Новый пароль"
33 required maxlength="100" style="width: 80%" value=""><br><br>
34
35 <label for="new_password2">Новый пароль (еще раз): <span class="req">*</span></label><br>
36 @error('password_confirmation')
37 <div class="alert alert-danger">{{ $message }}</div><br>
38 @enderror
39 <input type="password" class="form-control_ txt" name="password_confirmation" placeholder="Новый пароль (еще раз)"
40 required maxlength="100" style="width: 80%" value=""><br><br>
41
42 <button type="submit" class="btn hero-search__btn btn--main">Сохранить</button>
43
44 </form>
45 </div>
46 </div>
47 </section>
48 @endsection
49
resources/views/auth/login.blade.php
1 @extends('layout.site', ['title' => 'Вход в личный кабинет']) 1 @extends('layout.site', ['title' => 'Вход в личный кабинет'])
2 2
3 @section('content') 3 @section('content')
4 <section class="favorites"> 4 <section class="favorites">
5 <div class="favorites-top"> 5 <div class="favorites-top">
6 <div class="container"> 6 <div class="container">
7 7
8 <div class="footer-top"> 8 <div class="footer-top">
9 <div class="container"> 9 <div class="container">
10 <div class="footer-feedback"> 10 <div class="footer-feedback">
11 <div class="footer-feedback__cnt"> 11 <div class="footer-feedback__cnt">
12 <h2 class="footer-feedback__title title">Вход в личный кабинет</h2> 12 <h2 class="footer-feedback__title title">Вход в личный кабинет</h2>
13 <p class="footer-feedback__descr">Настройте свой сайт по потребностям</p> 13 <p class="footer-feedback__descr">Настройте свой сайт по потребностям</p>
14 </div> 14 </div>
15 <form class="footer-feedback__form" method="post" action="{{ route('auth.auth') }}"> 15 <form class="footer-feedback__form" method="post" action="{{ route('auth.auth') }}">
16 @csrf 16 @csrf
17 <div class="footer-feedback__row"> 17 <div class="footer-feedback__row">
18 <div class="footer-feedback__col"> 18 <div class="footer-feedback__col">
19 <label class="footer-feedback__field field"> 19 <label class="footer-feedback__field field">
20 <input type="email" class="form-control" name="email" placeholder="Адрес почты" 20 <input type="email" class="form-control" name="email" placeholder="Адрес почты"
21 required maxlength="255" value="{{ old('email') ?? '' }}"> 21 required maxlength="255" value="{{ old('email') ?? '' }}">
22 </label> 22 </label>
23 <label class="footer-feedback__field field"> 23 <label class="footer-feedback__field field">
24 <input type="text" class="form-control" name="password" placeholder="Ваш пароль" 24 <input type="text" class="form-control" name="password" placeholder="Ваш пароль"
25 required maxlength="255" value=""> 25 required maxlength="255" value="">
26 </label> 26 </label>
27
28 <div class="form-group form-check">
29 <input type="checkbox" class="form-check-input" name="remember" id="remember">
30 <label class="form-check-label" for="remember">
31 Запомнить меня
32 </label>
33 </div>
27 </div> 34 </div>
28 <div class="footer-feedback__col"> 35 <div class="footer-feedback__col">
29 36
30 </div> 37 </div>
31 </div> 38 </div>
32 <div class="footer-feedback__control"> 39 <div class="footer-feedback__control">
33 <!--<button class="footer-feedback__btn btn btn--main js_form_btn">Отправить</button>--> 40 <!--<button class="footer-feedback__btn btn btn--main js_form_btn">Отправить</button>-->
34 41
35 <button type="submit" class="btn footer-feedback__btn">Войти</button> 42 <button type="submit" class="btn footer-feedback__btn">Войти</button>
36 </div> 43 </div>
37 </form> 44 </form>
38 </div> 45 </div>
39 </div> 46 </div>
40 </div> 47 </div>
41 48
42 </div> 49 </div>
43 </div> 50 </div>
44 </section> 51 </section>
45 @endsection 52 @endsection
46 53
resources/views/catalogs/house_mini.blade.php
1 <div class="card"> 1 <div class="card">
2 <div class="card__top"> 2 <div class="card__top">
3 @if (empty($house->foto_main)) 3 @if (empty($house->foto_main))
4 4
5 @else 5 @else
6 <img src="{{ asset(Storage::url($house->foto_main)) }}" alt="{{ $house->title }}" loading="lazy"/> 6 <img src="{{ asset(Storage::url($house->foto_main)) }}" alt="{{ $house->title }}" loading="lazy"/>
7 @endif; 7 @endif;
8 8
9 <h3 class="card__title">{{$house->typearea->name_type }}</h3> 9 <h3 class="card__title">{{$house->typearea->name_type }}</h3>
10 <div class="card__labels"><span class="card__label card__label-favorites js_card_favorites <?=\App\Classes\RusDate::selected_item($house->id);?>" data-val="{{$house->id}}" id="card_favorite{{$house->id}}" name="card_favorite{{$house->id}}"> 10 <div class="card__labels"><span class="card__label card__label-favorites js_card_favorites <?=\App\Classes\RusDate::selected_item($house->id);?>" data-val="{{$house->id}}" id="card_favorite{{$house->id}}" name="card_favorite{{$house->id}}">
11 <svg width="18" height="18"> 11 <svg width="18" height="18">
12 <use xlink:href="{{ asset('images/sprite.svg#card-favorites-empty') }}"></use> 12 <use xlink:href="{{ asset('images/sprite.svg#card-favorites-empty') }}"></use>
13 </svg> 13 </svg>
14 <svg width="18" height="18"> 14 <svg width="18" height="18">
15 <use xlink:href="{{ asset('images/sprite.svg#card-favorites') }}"></use> 15 <use xlink:href="{{ asset('images/sprite.svg#card-favorites') }}"></use>
16 </svg></span> 16 </svg></span>
17 <a class="card__label card__label-messenger" href="tel:{{ $items_contact[0]->telephone }}"> 17 <a class="card__label card__label-messenger" href="tel:{{ $items_contact[0]->telephone }}">
18 <svg width="25" height="25"> 18 <svg width="25" height="25">
19 <use xlink:href="{{ asset('images/sprite.svg#card-messenger') }}"></use> 19 <use xlink:href="{{ asset('images/sprite.svg#card-messenger') }}"></use>
20 </svg> 20 </svg>
21 </a> 21 </a>
22 </div> 22 </div>
23 </div> 23 </div>
24 <div class="card__cnt"> 24 <div class="card__cnt">
25 <div class="card__info"> 25 <div class="card__info">
26 <address class="card__line card__line-complex">{{ $house->areas->name_area }}</address> 26 <address class="card__line card__line-complex">{{ $house->areas->name_area }}</address>
27 <address class="card__line">{{$house->metro}} ({{$house->description_metro }})<span style="background-color: #FFC955;"></span></address> 27 <address class="card__line">{{$house->metro}} ({{$house->description_metro }})<span style="background-color: #FFC955;"></span></address>
28 <address class="card__line">{{$house->address }}</address> 28 <address class="card__line">{{$house->address }}</address>
29 <div class="card__line">Площадь: <b>{{$house->area}} м2</b></div> 29 <div class="card__line">Площадь: <b>{{$house->area}} м2</b></div>
30 <div class="card__line">Цена за м<sup>2</sup>: <b>{{ $house->price_m2 }}₽</b></div> 30 <div class="card__line">Цена за м<sup>2</sup>: <b>{{ $house->price_m2 }}₽</b></div>
31 </div> 31 </div>
32 <? switch ($house->format_house) { 32 <? switch ($house->format_house) {
33 case 'Аренда': 33 case 'Аренда':
34 $comment = "<span>в месяц</span>"; 34 $comment = "<span>в месяц</span>";
35 break; 35 break;
36 case 'Продажа': 36 case 'Продажа':
37 $comment = ""; 37 $comment = "";
38 break; 38 break;
39 case 'Бизнес': 39 case 'Бизнес':
40 $comment= "<span>в месяц</span>"; 40 $comment= "<span>в месяц</span>";
41 break; 41 break;
42 case 'Арендованные': 42 case 'Арендованные':
43 $comment = "<span>в месяц</span>"; 43 $comment = "<span>в месяц</span>";
44 break; 44 break;
45 default:
46 $comment = "<span>в месяц</span>";
47 break;
45 } 48 }
46 ?> 49 ?>
47 <div class="card__price"><span>{{ $house->price }} ₽ </span><? echo $comment; ?> 50 <div class="card__price"><span>{{ $house->price }} ₽ </span><? echo $comment; ?>
48 </div><a class="card__btn btn btn--bordered" href="{{ route('offer', ['house' => $house->id]) }}">Подробнее</a> 51 </div><a class="card__btn btn btn--bordered" href="{{ route('offer', ['house' => $house->id]) }}">Подробнее</a>
49 </div> 52 </div>
50 </div> 53 </div>
51 54
52 55
resources/views/layout/admin.blade.php
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html lang="{{ str_replace('_', '-', app()->getLocale()) }}"> 2 <html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
3 <head> 3 <head>
4 <meta charset="UTF-8"> 4 <meta charset="UTF-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <title>{{$title}}</title> 7 <title>{{$title}}</title>
8 <link rel="preload" href="{{ asset('fonts/Manrope-ExtraLight.woff2') }}" as="font" type="font/woff2" crossorigin> 8 <link rel="preload" href="{{ asset('fonts/Manrope-ExtraLight.woff2') }}" as="font" type="font/woff2" crossorigin>
9 <link rel="preload" href="{{ asset('fonts/Manrope-Light.woff2" as="font') }}" type="font/woff2" crossorigin> 9 <link rel="preload" href="{{ asset('fonts/Manrope-Light.woff2" as="font') }}" type="font/woff2" crossorigin>
10 <link rel="preload" href="{{ asset('fonts/Manrope-Regular.woff2') }}" as="font" type="font/woff2" crossorigin> 10 <link rel="preload" href="{{ asset('fonts/Manrope-Regular.woff2') }}" as="font" type="font/woff2" crossorigin>
11 <link rel="preload" href="{{ asset('fonts/Manrope-Medium.woff2') }}" as="font" type="font/woff2" crossorigin> 11 <link rel="preload" href="{{ asset('fonts/Manrope-Medium.woff2') }}" as="font" type="font/woff2" crossorigin>
12 <link rel="preload" href="{{ asset('fonts/Manrope-SemiBold.woff2') }}" as="font" type="font/woff2" crossorigin> 12 <link rel="preload" href="{{ asset('fonts/Manrope-SemiBold.woff2') }}" as="font" type="font/woff2" crossorigin>
13 <link rel="preload" href="{{ asset('fonts/Manrope-Bold.woff2') }}" as="font" type="font/woff2" crossorigin> 13 <link rel="preload" href="{{ asset('fonts/Manrope-Bold.woff2') }}" as="font" type="font/woff2" crossorigin>
14 <link rel="preload" href="{{ asset('fonts/Manrope-ExtraBold.woff2') }}" as="font" type="font/woff2" crossorigin> 14 <link rel="preload" href="{{ asset('fonts/Manrope-ExtraBold.woff2') }}" as="font" type="font/woff2" crossorigin>
15 <link rel="stylesheet" href="{{ asset('css/swiper-bundle.min.css') }}"> 15 <link rel="stylesheet" href="{{ asset('css/swiper-bundle.min.css') }}">
16 <link rel="stylesheet" href="{{ asset('css/style.css') }}"> 16 <link rel="stylesheet" href="{{ asset('css/style.css') }}">
17 <link rel="stylesheet" href="{{ asset('css/style_table.css') }}"> 17 <link rel="stylesheet" href="{{ asset('css/style_table.css') }}">
18 <style> 18 <style>
19 /* form styles */ 19 /* form styles */
20 form .row { 20 form .row {
21 display: block; 21 display: block;
22 padding: 7px 8px; 22 padding: 7px 8px;
23 margin-bottom: 7px; 23 margin-bottom: 7px;
24 } 24 }
25 form .row:hover { 25 form .row:hover {
26 background: #f1f7fa; 26 background: #f1f7fa;
27 } 27 }
28 28
29 form label { 29 form label {
30 display: inline-block; 30 display: inline-block;
31 font-size: 1.2em; 31 font-size: 1.2em;
32 font-weight: bold; 32 font-weight: bold;
33 width: 120px; 33 width: 120px;
34 padding: 6px 0; 34 padding: 6px 0;
35 color: #464646; 35 color: #464646;
36 vertical-align: top; 36 vertical-align: top;
37 } 37 }
38 form .req { color: #ca5354; } 38 form .req { color: #ca5354; }
39 39
40 form .note { 40 form .note {
41 font-size: 1.2em; 41 font-size: 1.2em;
42 line-height: 1.33em; 42 line-height: 1.33em;
43 font-weight: normal; 43 font-weight: normal;
44 padding: 2px 7px; 44 padding: 2px 7px;
45 margin-bottom: 10px; 45 margin-bottom: 10px;
46 } 46 }
47 47
48 form input:focus, form textarea:focus { outline: none; } 48 form input:focus, form textarea:focus { outline: none; }
49 49
50 /* placeholder styles: http://stackoverflow.com/a/2610741/477958 */ 50 /* placeholder styles: http://stackoverflow.com/a/2610741/477958 */
51 ::-webkit-input-placeholder { color: #aaafbd; font-style: italic; } /* WebKit */ 51 ::-webkit-input-placeholder { color: #aaafbd; font-style: italic; } /* WebKit */
52 :-moz-placeholder { color: #aaafbd; font-style: italic; } /* Mozilla Firefox 4 to 18 */ 52 :-moz-placeholder { color: #aaafbd; font-style: italic; } /* Mozilla Firefox 4 to 18 */
53 ::-moz-placeholder { color: #aaafbd; font-style: italic; } /* Mozilla Firefox 19+ */ 53 ::-moz-placeholder { color: #aaafbd; font-style: italic; } /* Mozilla Firefox 19+ */
54 :-ms-input-placeholder { color: #aaafbd; font-style: italic; } /* Internet Explorer 10+ */ 54 :-ms-input-placeholder { color: #aaafbd; font-style: italic; } /* Internet Explorer 10+ */
55 55
56 form .txt { 56 form .txt {
57 display: inline-block; 57 display: inline-block;
58 padding: 8px 9px; 58 padding: 8px 9px;
59 padding-right: 30px; 59 padding-right: 30px;
60 width: 240px; 60 width: 240px;
61 font-family: 'Oxygen', sans-serif; 61 font-family: 'Oxygen', sans-serif;
62 font-size: 1.35em; 62 font-size: 1.35em;
63 font-weight: normal; 63 font-weight: normal;
64 color: #898989; 64 color: #898989;
65 } 65 }
66 66
67 form .txtarea { 67 form .txtarea {
68 display: inline-block; 68 display: inline-block;
69 padding: 8px 9px; 69 padding: 8px 9px;
70 padding-right: 30px; 70 padding-right: 30px;
71 font-family: 'Oxygen', sans-serif; 71 font-family: 'Oxygen', sans-serif;
72 font-size: 1.35em; 72 font-size: 1.35em;
73 font-weight: normal; 73 font-weight: normal;
74 color: #898989; 74 color: #898989;
75 } 75 }
76 </style> 76 </style>
77 </head> 77 </head>
78 <body> 78 <body>
79 <div class="spinner"></div> 79 <div class="spinner"></div>
80 <div class="wrapper"> 80 <div class="wrapper">
81 <header class="header js_header"> 81 <header class="header js_header">
82 <div class="container"> 82 <div class="container">
83 <div class="header__wrap"><a class="header__logo" href="{{ route('index') }}"><img src="{{ asset('images/logo.svg') }}" alt="Лого"></a> 83 <div class="header__wrap"><a class="header__logo" href="{{ route('index') }}"><img src="{{ asset('images/logo.svg') }}" alt="Лого"></a>
84 <nav class="header__nav nav"> 84 <nav class="header__nav nav">
85 <ul class="nav__list"> 85 <ul class="nav__list">
86 <li class="nav__item"><a class="nav__link" href="{{ route('admin.area.index') }}">Объекты</a></li> 86 <li class="nav__item"><a class="nav__link" href="{{ route('admin.area.index') }}">Объекты</a></li>
87 <li class="nav__item"><a class="nav__link" href="{{ route('admin.news.index') }}">Новости</a></li> 87 <li class="nav__item"><a class="nav__link" href="{{ route('admin.news.index') }}">Новости</a></li>
88 <li class="nav__item"><a class="nav__link" href="{{ route('admin.company.show', ['company' => 1]) }}">Компания</a></li> 88 <li class="nav__item"><a class="nav__link" href="{{ route('admin.company.show', ['company' => 1]) }}">Компания</a></li>
89 <li class="nav__item"><a class="nav__link" href="{{ route('admin.typearea.index') }}">Типы</a></li> 89 <li class="nav__item"><a class="nav__link" href="{{ route('admin.typearea.index') }}">Типы</a></li>
90 <li class="nav__item"><a class="nav__link" href="{{ route('admin.formatarea.index') }}">Форматы</a></li> 90 <li class="nav__item"><a class="nav__link" href="{{ route('admin.formatarea.index') }}">Форматы</a></li>
91 <li class="nav__item"><a class="nav__link" href="{{ route('admin.message.index') }}">Сообщения</a></li> 91 <li class="nav__item"><a class="nav__link" href="{{ route('admin.message.index') }}">Сообщения</a></li>
92 <li class="nav__item"><a class="nav__link" href="{{ route('admin.houses.index') }}">Офисы</a></li> 92 <li class="nav__item"><a class="nav__link" href="{{ route('admin.houses.index') }}">Офисы</a></li>
93 93 <li class="nav__item"><a class="nav__link" href="{{ route('admin.form_password') }}">Пароль</a></li>
94 <li class="nav__item"><a class="nav__link btn_ hero-search__btn_ btn--main_" href="{{ route('auth.logout') }}">Выйти</a></li>
94 </ul> 95 </ul>
95 </nav> 96 </nav>
96 <div class="header__buttons"><a class="header__btn-phone" href="#" data-btn="feedback"> 97 <div class="header__buttons"><a class="header__btn-phone" href="#" data-btn="feedback">
97 <svg width="22" height="22"> 98 <svg width="22" height="22">
98 <use xlink:href="{{ asset('images/sprite.svg#header-btn-phone') }}"></use> 99 <use xlink:href="{{ asset('images/sprite.svg#header-btn-phone') }}"></use>
99 </svg></a> 100 </svg></a>
100 <button class="header__burger js_header_burger" type="button">Меню 101 <button class="header__burger js_header_burger" type="button">Меню
101 <svg width="28" height="18"> 102 <svg width="28" height="18">
102 <use xlink:href="{{ asset('images/sprite.svg#burger') }}"></use> 103 <use xlink:href="{{ asset('images/sprite.svg#burger') }}"></use>
103 </svg> 104 </svg>
104 </button> 105 </button>
105 </div> 106 </div>
106 <div class="menu js_menu"> 107 <div class="menu js_menu">
107 <div class="menu__wrap"> 108 <div class="menu__wrap">
108 <button class="menu__close js_menu_close" type="button">Меню 109 <button class="menu__close js_menu_close" type="button">Меню
109 <svg width="20" height="20"> 110 <svg width="20" height="20">
110 <use xlink:href="{{ asset('images/sprite.svg#popup-close') }}"></use> 111 <use xlink:href="{{ asset('images/sprite.svg#popup-close') }}"></use>
111 </svg> 112 </svg>
112 </button> 113 </button>
113 <div class="menu__inner"> 114 <div class="menu__inner">
114 <nav class="menu__nav"> 115 <nav class="menu__nav">
115 <ul class="menu__list"> 116 <ul class="menu__list">
116 <li class="menu__item"><a class="menu__link" href="{{ route('admin.area.index') }}">Объекты</a></li> 117 <li class="menu__item"><a class="menu__link" href="{{ route('admin.area.index') }}">Объекты</a></li>
117 <li class="menu__item"><a class="menu__link" href="{{ route('admin.news.index') }}">Новости</a></li> 118 <li class="menu__item"><a class="menu__link" href="{{ route('admin.news.index') }}">Новости</a></li>
118 <li class="menu__item"><a class="menu__link" href="{{ route('admin.company.show', ['company' => 1]) }}">Компания</a></li> 119 <li class="menu__item"><a class="menu__link" href="{{ route('admin.company.show', ['company' => 1]) }}">Компания</a></li>
119 <li class="menu__item"><a class="menu__link" href="{{ route('admin.typearea.index') }}">Типы недвижимости</a></li> 120 <li class="menu__item"><a class="menu__link" href="{{ route('admin.typearea.index') }}">Типы недвижимости</a></li>
120 <li class="menu__item"><a class="menu__link" href="{{ route('admin.formatarea.index') }}">Форматы недвижимости</a></li> 121 <li class="menu__item"><a class="menu__link" href="{{ route('admin.formatarea.index') }}">Форматы недвижимости</a></li>
121 <li class="menu__item"><a class="menu__link" href="{{ route('admin.message.index') }}">Сообщения</a></li> 122 <li class="menu__item"><a class="menu__link" href="{{ route('admin.message.index') }}">Сообщения</a></li>
122 <li class="menu__item"><a class="menu__link" href="{{ route('admin.houses.index') }}">Офисы</a></li> 123 <li class="menu__item"><a class="menu__link" href="{{ route('admin.houses.index') }}">Офисы</a></li>
124 <li class="menu__item"><a class="menu__link" href="{{ route('admin.form_password') }}">Пароль</a></li>
125 <li class="menu__item"><a class="btn hero-search__btn btn--main" href="{{ route('auth.logout') }}">Выйти</a></li>
123 </ul> 126 </ul>
124 </nav> 127 </nav>
125 <div class="menu__contacts"><a class="menu__contact" href="mailto:info@renttorg.ru">E-MAIL<span>info@renttorg.ru</span></a><a class="menu__contact" href="tel:+79290127262">ТЕЛЕФОН<span>+7 (929) 012-72-62</span></a></div> 128 <div class="menu__contacts"><a class="menu__contact" href="mailto:info@renttorg.ru">E-MAIL<span>info@renttorg.ru</span></a><a class="menu__contact" href="tel:+79290127262">ТЕЛЕФОН<span>+7 (929) 012-72-62</span></a></div>
126 <div class="menu__social social"> 129 <div class="menu__social social">
127 <ul class="social__list"> 130 <ul class="social__list">
128 <li class="social__item"><a class="social__link" href="#" target="_blank"><img src="{{ asset('images/tg.svg') }}" alt=""></a></li> 131 <li class="social__item"><a class="social__link" href="#" target="_blank"><img src="{{ asset('images/tg.svg') }}" alt=""></a></li>
129 <li class="social__item"><a class="social__link" href="#" target="_blank"> 132 <li class="social__item"><a class="social__link" href="#" target="_blank">
130 <svg width="40" height="40"> 133 <svg width="40" height="40">
131 <use xlink:href="{{ asset('images/sprite.svg#wa')}}"></use> 134 <use xlink:href="{{ asset('images/sprite.svg#wa')}}"></use>
132 </svg></a></li> 135 </svg></a></li>
133 </ul> 136 </ul>
134 </div> 137 </div>
135 </div> 138 </div>
136 </div> 139 </div>
137 </div> 140 </div>
138 </div> 141 </div>
139 </div> 142 </div>
140 </header> 143 </header>
141 <main> 144 <main>
142 @if ($message = Session::get('success')) 145 @if ($message = Session::get('success'))
143 <section> 146 <section>
144 <div class="alert alert-success alert-dismissible mt-0" role="alert"> 147 <div class="alert alert-success alert-dismissible mt-0" role="alert">
145 <button type="button" class="close" data-dismiss="alert" aria-label="Закрыть"> 148 <button type="button" class="close" data-dismiss="alert" aria-label="Закрыть">
146 <span aria-hidden="true">&times;</span> 149 <span aria-hidden="true">&times;</span>
147 </button> 150 </button>
148 {{ $message }} 151 {{ $message }}
149 </div> 152 </div>
150 </section> 153 </section>
151 @endif 154 @endif
152 155
153 @if ($errors->any()) 156 @if ($errors->any())
154 <section> 157 <section>
155 <div class="alert alert-danger alert-dismissible mt-4" role="alert"> 158 <div class="alert alert-danger alert-dismissible mt-4" role="alert">
156 <button type="button" class="close" data-dismiss="alert" aria-label="Закрыть"> 159 <button type="button" class="close" data-dismiss="alert" aria-label="Закрыть">
157 <span aria-hidden="true">&times;</span> 160 <span aria-hidden="true">&times;</span>
158 </button> 161 </button>
159 <ul class="mb-0"> 162 <ul class="mb-0">
160 @foreach ($errors->all() as $error) 163 @foreach ($errors->all() as $error)
161 <li>{{ $error }}</li> 164 <li>{{ $error }}</li>
162 @endforeach 165 @endforeach
163 </ul> 166 </ul>
164 </div> 167 </div>
165 </section> 168 </section>
166 @endif 169 @endif
167 <!-- Основной контент --> 170 <!-- Основной контент -->
168 @yield('content') 171 @yield('content')
169 172
170 </main> 173 </main>
171 174
172 <footer class="footer" style="background-image:url({{ asset('images/footer-bg.jpg')}})"> 175 <footer class="footer" style="background-image:url({{ asset('images/footer-bg.jpg')}})">
173 <div class="footer__buttons"> 176 <div class="footer__buttons">
174 <button class="footer__btn footer__btn-phone js_btn_contact_us" type="button"> 177 <button class="footer__btn footer__btn-phone js_btn_contact_us" type="button">
175 <svg width="30" height="32"> 178 <svg width="30" height="32">
176 <use xlink:href="{{ asset('images/sprite.svg#footer-btn-phone')}}"></use> 179 <use xlink:href="{{ asset('images/sprite.svg#footer-btn-phone')}}"></use>
177 </svg> 180 </svg>
178 </button> 181 </button>
179 <button class="footer__btn footer__btn-up js_btn_up" type="button"> 182 <button class="footer__btn footer__btn-up js_btn_up" type="button">
180 <svg width="19" height="11"> 183 <svg width="19" height="11">
181 <use xlink:href="{{ asset('images/sprite.svg#footer-btn-up')}}"></use> 184 <use xlink:href="{{ asset('images/sprite.svg#footer-btn-up')}}"></use>
182 </svg> 185 </svg>
183 </button> 186 </button>
184 </div> 187 </div>
185 188
186 <!-- Сам футер мееню --> 189 <!-- Сам футер мееню -->
187 <div class="footer-middle"> 190 <div class="footer-middle">
188 <div class="container"> 191 <div class="container">
189 <div class="footer-middle__wrap"> 192 <div class="footer-middle__wrap">
190 <div class="footer__col footer__col-intro"><a class="footer__logo" href="index.html"><img src="{{ asset('images/logo-footer.svg')}}" alt="Лого"></a> 193 <div class="footer__col footer__col-intro"><a class="footer__logo" href="index.html"><img src="{{ asset('images/logo-footer.svg')}}" alt="Лого"></a>
191 <p class="footer__descr">В группу “Renttorg” входит ряд ведущих российских девелоперских компаний полного цикла, реализующих масштабные объекты недвижимости.</p> 194 <p class="footer__descr">В группу “Renttorg” входит ряд ведущих российских девелоперских компаний полного цикла, реализующих масштабные объекты недвижимости.</p>
192 <div class="footer-questions"> 195 <div class="footer-questions">
193 <h3 class="footer-questions__title">Есть вопросы или предложения?</h3><a class="footer-questions__btn btn btn--main" href="#" data-btn="feedback">Напишите нам</a> 196 <h3 class="footer-questions__title">Есть вопросы или предложения?</h3><a class="footer-questions__btn btn btn--main" href="#" data-btn="feedback">Напишите нам</a>
194 </div> 197 </div>
195 </div> 198 </div>
196 <div class="footer__col footer__col-menu js_footer_col"> 199 <div class="footer__col footer__col-menu js_footer_col">
197 <h3 class="footer__caption js_footer_caption">Меню</h3> 200 <h3 class="footer__caption js_footer_caption">Меню</h3>
198 <div class="footer__block js_footer_block"> 201 <div class="footer__block js_footer_block">
199 <ul class="footer__list"> 202 <ul class="footer__list">
200 <li class="footer__item"><a class="footer__link" href="{{ route('index') }}">Главная</a></li> 203 <li class="footer__item"><a class="footer__link" href="{{ route('index') }}">Главная</a></li>
201 <li class="footer__item"><a class="footer__link" href="{{ route('catalog') }}">Каталог</a></li> 204 <li class="footer__item"><a class="footer__link" href="{{ route('catalog') }}">Каталог</a></li>
202 <li class="footer__item"><a class="footer__link" href="{{ route('about') }}">О компании</a></li> 205 <li class="footer__item"><a class="footer__link" href="{{ route('about') }}">О компании</a></li>
203 <li class="footer__item"><a class="footer__link" href="{{ route('contact') }}">Контакты</a></li> 206 <li class="footer__item"><a class="footer__link" href="{{ route('contact') }}">Контакты</a></li>
204 <li class="footer__item"><a class="footer__link" href="{{ route('favorite') }}">Избранное</a></li> 207 <li class="footer__item"><a class="footer__link" href="{{ route('favorite') }}">Избранное</a></li>
205 <li class="footer__item"><a class="footer__link" href="{{ route('news') }}">Новости</a></li> 208 <li class="footer__item"><a class="footer__link" href="{{ route('news') }}">Новости</a></li>
206 </ul> 209 </ul>
207 210
208 </div><a class="footer__author" href="#" target="_blank"><img src="{{ asset('images/author.png')}}" alt="Лого разработчика"></a> 211 </div><a class="footer__author" href="#" target="_blank"><img src="{{ asset('images/author.png')}}" alt="Лого разработчика"></a>
209 </div> 212 </div>
210 <div class="footer__col js_footer_col"> 213 <div class="footer__col js_footer_col">
211 <h3 class="footer__caption js_footer_caption">Админка</h3> 214 <h3 class="footer__caption js_footer_caption">Админка</h3>
212 <div class="footer__block js_footer_block"> 215 <div class="footer__block js_footer_block">
213 <ul class="footer__list"> 216 <ul class="footer__list">
214 <li class="footer__item"><a class="footer__link" href="{{ route('user.index') }}">Главная</a></li> 217 <li class="footer__item"><a class="footer__link" href="{{ route('user.index') }}">Главная</a></li>
215 218
216 </ul> 219 </ul>
217 </div> 220 </div>
218 </div> 221 </div>
219 <div class="footer__col js_footer_col"> 222 <div class="footer__col js_footer_col">
220 <h3 class="footer__caption js_footer_caption">Система</h3> 223 <h3 class="footer__caption js_footer_caption">Система</h3>
221 <div class="footer__block js_footer_block"> 224 <div class="footer__block js_footer_block">
222 <ul class="footer__list"> 225 <ul class="footer__list">
223 <li class="footer__item"><a class="footer__link" href="{{ route('auth.login') }}">Авторизация</a></li> 226 <li class="footer__item"><a class="footer__link" href="{{ route('auth.login') }}">Авторизация</a></li>
224 <li class="footer__item"><a class="footer__link" href="{{ route('auth.register') }}">Регистрация</a></li> 227 <li class="footer__item"><a class="footer__link" href="{{ route('auth.register') }}">Регистрация</a></li>
225 </ul> 228 </ul>
226 </div> 229 </div>
227 </div> 230 </div>
228 <div class="footer__col footer__col-contacts"> 231 <div class="footer__col footer__col-contacts">
229 <h3 class="footer__caption js_footer_caption">Контакты</h3> 232 <h3 class="footer__caption js_footer_caption">Контакты</h3>
230 <ul class="footer__list"> 233 <ul class="footer__list">
231 <li class="footer__item"><a class="footer__link" href="">EmailAdmin</a></li> 234 <li class="footer__item"><a class="footer__link" href="">EmailAdmin</a></li>
232 <li class="footer__item"><a class="footer__link" href="">ТелефонАдмин</a></li> 235 <li class="footer__item"><a class="footer__link" href="">ТелефонАдмин</a></li>
233 </ul> 236 </ul>
234 <div class="footer__social social"> 237 <div class="footer__social social">
235 <ul class="social__list"> 238 <ul class="social__list">
236 <li class="social__item"><a class="social__link" href="#" target="_blank"><img src="{{ asset('images/tg.svg')}}" alt=""></a></li> 239 <li class="social__item"><a class="social__link" href="#" target="_blank"><img src="{{ asset('images/tg.svg')}}" alt=""></a></li>
237 <li class="social__item"><a class="social__link" href="#" target="_blank"> 240 <li class="social__item"><a class="social__link" href="#" target="_blank">
238 <svg width="40" height="40"> 241 <svg width="40" height="40">
239 <use xlink:href="{{ asset('images/sprite.svg#wa') }}"></use> 242 <use xlink:href="{{ asset('images/sprite.svg#wa') }}"></use>
240 </svg></a></li> 243 </svg></a></li>
241 </ul> 244 </ul>
242 </div> 245 </div>
243 </div> 246 </div>
244 </div> 247 </div>
245 </div> 248 </div>
246 </div> 249 </div>
247 250
248 <div class="footer-bottom"> 251 <div class="footer-bottom">
249 <div class="container"> 252 <div class="container">
250 <div class="footer-bottom__wrap"> 253 <div class="footer-bottom__wrap">
251 <div class="footer__copy">© 2023 RentTorg</div><a class="footer__plicy" href="{{ route('conf') }}">Политика конфиденциальности</a> 254 <div class="footer__copy">© 2023 RentTorg</div><a class="footer__plicy" href="{{ route('conf') }}">Политика конфиденциальности</a>
252 </div> 255 </div>
253 </div> 256 </div>
254 </div> 257 </div>
255 </footer> 258 </footer>
256 </div> 259 </div>
257 260
258 <!-- Вплывающие окна --> 261 <!-- Вплывающие окна -->
259 <div class="popup popup-feedback" data-popup="feedback"> 262 <div class="popup popup-feedback" data-popup="feedback">
260 <div class="popup__wrap"> 263 <div class="popup__wrap">
261 <button class="popup__close js_popup_close" type="button"> 264 <button class="popup__close js_popup_close" type="button">
262 <svg width="20" height="20"> 265 <svg width="20" height="20">
263 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 266 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
264 </svg> 267 </svg>
265 </button> 268 </button>
266 <form class="popup-feedback__form js_popup_feedback_form" action="{{ route('header_form') }}" method="POST"> 269 <form class="popup-feedback__form js_popup_feedback_form" action="{{ route('header_form') }}" method="POST">
267 @csrf 270 @csrf
268 <div class="popup-feedback__title">Как с вами связаться</div> 271 <div class="popup-feedback__title">Как с вами связаться</div>
269 <div class="popup-feedback__fields"> 272 <div class="popup-feedback__fields">
270 <label class="popup-feedback__field field"> 273 <label class="popup-feedback__field field">
271 <input type="text" placeholder="Имя" name="NameUser"> 274 <input type="text" placeholder="Имя" name="NameUser">
272 </label> 275 </label>
273 <label class="popup-feedback__field field"> 276 <label class="popup-feedback__field field">
274 <input class="js_input_phone" type="text" placeholder="Телефон" name="TelephoneUser"> 277 <input class="js_input_phone" type="text" placeholder="Телефон" name="TelephoneUser">
275 </label> 278 </label>
276 </div> 279 </div>
277 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button> 280 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button>
278 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="{{ route('conf') }}">Политикой конфиденциальности</a>.</p> 281 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="{{ route('conf') }}">Политикой конфиденциальности</a>.</p>
279 </form> 282 </form>
280 </div> 283 </div>
281 </div> 284 </div>
282 <div class="popup popup-feedback" data-popup="viewing"> 285 <div class="popup popup-feedback" data-popup="viewing">
283 <div class="popup__wrap"> 286 <div class="popup__wrap">
284 <button class="popup__close js_popup_close" type="button"> 287 <button class="popup__close js_popup_close" type="button">
285 <svg width="20" height="20"> 288 <svg width="20" height="20">
286 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 289 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
287 </svg> 290 </svg>
288 </button> 291 </button>
289 <form class="popup-feedback__form js_popup_viewing_form" action="{{ route('rec_view_form') }}" method="POST"> 292 <form class="popup-feedback__form js_popup_viewing_form" action="{{ route('rec_view_form') }}" method="POST">
290 @csrf 293 @csrf
291 <div class="popup-feedback__title">Записаться на просмотр</div> 294 <div class="popup-feedback__title">Записаться на просмотр</div>
292 <div class="popup-feedback__fields"> 295 <div class="popup-feedback__fields">
293 <label class="popup-feedback__field field"> 296 <label class="popup-feedback__field field">
294 <input type="text" placeholder="Имя" name="NameUser"> 297 <input type="text" placeholder="Имя" name="NameUser">
295 </label> 298 </label>
296 <label class="popup-feedback__field field"> 299 <label class="popup-feedback__field field">
297 <input class="js_input_phone" type="text" placeholder="Телефон" name="TelephoneUser"> 300 <input class="js_input_phone" type="text" placeholder="Телефон" name="TelephoneUser">
298 </label> 301 </label>
299 </div> 302 </div>
300 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button> 303 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button>
301 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="#">Политикой конфиденциальности</a>.</p> 304 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="#">Политикой конфиденциальности</a>.</p>
302 </form> 305 </form>
303 </div> 306 </div>
304 </div> 307 </div>
305 <div class="popup popup-success" data-popup="success"> 308 <div class="popup popup-success" data-popup="success">
306 <div class="popup__wrap"> 309 <div class="popup__wrap">
307 <button class="popup__close js_popup_close" type="button"> 310 <button class="popup__close js_popup_close" type="button">
308 <svg width="20" height="20"> 311 <svg width="20" height="20">
309 <use xlink:href="{{ asset('images/sprite.svg#popup-close') }}"></use> 312 <use xlink:href="{{ asset('images/sprite.svg#popup-close') }}"></use>
310 </svg> 313 </svg>
311 </button> 314 </button>
312 <div class="popup-success__inner"> 315 <div class="popup-success__inner">
313 <div class="popup-success__logo"> 316 <div class="popup-success__logo">
314 <svg width="48" height="39"> 317 <svg width="48" height="39">
315 <use xlink:href="{{ asset('images/sprite.svg#popup-success-logo')}}"></use> 318 <use xlink:href="{{ asset('images/sprite.svg#popup-success-logo')}}"></use>
316 </svg> 319 </svg>
317 </div> 320 </div>
318 <div class="popup-success__title">Спасибо за заявку</div> 321 <div class="popup-success__title">Спасибо за заявку</div>
319 <p class="popup-success__descr">В ближайшее время с вами свяжется наш специалист для уточнения деталей вашей задачи.</p> 322 <p class="popup-success__descr">В ближайшее время с вами свяжется наш специалист для уточнения деталей вашей задачи.</p>
320 </div> 323 </div>
321 </div> 324 </div>
322 </div> 325 </div>
323 <div class="popup popup-feedback" data-popup="sending"> 326 <div class="popup popup-feedback" data-popup="sending">
324 <div class="popup__wrap"> 327 <div class="popup__wrap">
325 <button class="popup__close js_popup_close" type="button"> 328 <button class="popup__close js_popup_close" type="button">
326 <svg width="20" height="20"> 329 <svg width="20" height="20">
327 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 330 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
328 </svg> 331 </svg>
329 </button> 332 </button>
330 <form class="popup-feedback__form js_popup_sending_form" action="{{ route('email_form') }}" method="POST"> 333 <form class="popup-feedback__form js_popup_sending_form" action="{{ route('email_form') }}" method="POST">
331 @csrf 334 @csrf
332 <div class="popup-feedback__title">Отправить на почту</div> 335 <div class="popup-feedback__title">Отправить на почту</div>
333 <div class="popup-feedback__fields"> 336 <div class="popup-feedback__fields">
334 <label class="popup-feedback__field field"> 337 <label class="popup-feedback__field field">
335 <input class="js_input_email" type="text" placeholder="Электронная почта" name="EmailUser"> 338 <input class="js_input_email" type="text" placeholder="Электронная почта" name="EmailUser">
336 </label> 339 </label>
337 </div> 340 </div>
338 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button> 341 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button>
339 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="{{ route('conf') }}">Политикой конфиденциальности</a>.</p> 342 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="{{ route('conf') }}">Политикой конфиденциальности</a>.</p>
340 </form> 343 </form>
341 </div> 344 </div>
342 </div> 345 </div>
343 <div class="contact-us js_contact_us"> 346 <div class="contact-us js_contact_us">
344 <div class="contact-us__top"> 347 <div class="contact-us__top">
345 <button class="contact-us__close js_contact_us_close" type="button"> 348 <button class="contact-us__close js_contact_us_close" type="button">
346 <svg width="20" height="20"> 349 <svg width="20" height="20">
347 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 350 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
348 </svg> 351 </svg>
349 </button> 352 </button>
350 <div class="contact-us__title">Свяжитесь с нами</div> 353 <div class="contact-us__title">Свяжитесь с нами</div>
351 </div> 354 </div>
352 <div class="contact-us__body"> 355 <div class="contact-us__body">
353 <div class="contact-us__items"><a class="contact-us-item js_contact_us_close" data-btn="feedback"> 356 <div class="contact-us__items"><a class="contact-us-item js_contact_us_close" data-btn="feedback">
354 <div class="contact-us-item__icon"> 357 <div class="contact-us-item__icon">
355 <svg width="34" height="34"> 358 <svg width="34" height="34">
356 <use xlink:href="{{ asset('images/sprite.svg#contact-us-phone')}}"></use> 359 <use xlink:href="{{ asset('images/sprite.svg#contact-us-phone')}}"></use>
357 </svg> 360 </svg>
358 </div> 361 </div>
359 <div class="contact-us-item__name">Позвонить</div></a> 362 <div class="contact-us-item__name">Позвонить</div></a>
360 363
361 <a class="contact-us-item js_contact_us_close" data-btn="sending"> 364 <a class="contact-us-item js_contact_us_close" data-btn="sending">
362 <div class="contact-us-item__icon"> 365 <div class="contact-us-item__icon">
363 <svg width="44" height="44"> 366 <svg width="44" height="44">
364 <use xlink:href="{{ asset('images/sprite.svg#contact-us-email')}}"></use> 367 <use xlink:href="{{ asset('images/sprite.svg#contact-us-email')}}"></use>
365 </svg> 368 </svg>
366 </div> 369 </div>
367 <div class="contact-us-item__name">Написать</div></a> 370 <div class="contact-us-item__name">Написать</div></a>
368 371
369 <a class="contact-us-item js_contact_us_close" > 372 <a class="contact-us-item js_contact_us_close" >
370 <div class="contact-us-item__icon"> 373 <div class="contact-us-item__icon">
371 <svg width="34" height="34"> 374 <svg width="34" height="34">
372 <use xlink:href="{{ asset('images/sprite.svg#contact-us-chat')}}"></use> 375 <use xlink:href="{{ asset('images/sprite.svg#contact-us-chat')}}"></use>
373 </svg> 376 </svg>
374 </div> 377 </div>
375 <div class="contact-us-item__name">Онлайн-чат</div></a></div> 378 <div class="contact-us-item__name">Онлайн-чат</div></a></div>
376 <div class="contact-us__socials"><a class="contact-us-social js_contact_us_close" href="#" target="_blank"> 379 <div class="contact-us__socials"><a class="contact-us-social js_contact_us_close" href="#" target="_blank">
377 <div class="contact-us-social__icon contact-us-social__icon-tg"><img src="{{ asset('images/contact-us-tg.svg')}}" alt=""></div> 380 <div class="contact-us-social__icon contact-us-social__icon-tg"><img src="{{ asset('images/contact-us-tg.svg')}}" alt=""></div>
378 <div class="contact-us-social__name">Telegram</div></a><a class="contact-us-social js_contact_us_close" href="#" target="_blank"> 381 <div class="contact-us-social__name">Telegram</div></a><a class="contact-us-social js_contact_us_close" href="#" target="_blank">
379 <div class="contact-us-social__icon contact-us-social__icon-wa"> 382 <div class="contact-us-social__icon contact-us-social__icon-wa">
380 <svg width="31" height="31"> 383 <svg width="31" height="31">
381 <use xlink:href="{{ asset('images/sprite.svg#contact-us-wa')}}"></use> 384 <use xlink:href="{{ asset('images/sprite.svg#contact-us-wa')}}"></use>
382 </svg> 385 </svg>
383 </div> 386 </div>
384 <div class="contact-us-social__name">WhatsApp</div></a></div> 387 <div class="contact-us-social__name">WhatsApp</div></a></div>
385 </div> 388 </div>
386 </div> 389 </div>
387 <div class="offer-side-popup" data-popup="offer-side-popup"> 390 <div class="offer-side-popup" data-popup="offer-side-popup">
388 <div class="offer-side-popup__wrap"> 391 <div class="offer-side-popup__wrap">
389 <button class="offer-side-popup__close js_popup_close" type="button"> 392 <button class="offer-side-popup__close js_popup_close" type="button">
390 <svg width="20" height="20"> 393 <svg width="20" height="20">
391 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 394 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
392 </svg> 395 </svg>
393 </button> 396 </button>
394 <div class="offer-side-popup__cnt"> 397 <div class="offer-side-popup__cnt">
395 <div class="offer-side-popup__item js_offer_side_popup_item active" data-item="1"><img src="{{ asset('images/offer-side-item-img-1.jpg')}}" alt="План объекта"></div> 398 <div class="offer-side-popup__item js_offer_side_popup_item active" data-item="1"><img src="{{ asset('images/offer-side-item-img-1.jpg')}}" alt="План объекта"></div>
396 <div class="offer-side-popup__item js_offer_side_popup_item" data-item="2"><img src="{{ asset('images/offer-side-item-img-2.jpg')}}" alt="План этажа"></div> 399 <div class="offer-side-popup__item js_offer_side_popup_item" data-item="2"><img src="{{ asset('images/offer-side-item-img-2.jpg')}}" alt="План этажа"></div>
397 </div> 400 </div>
398 <div class="offer-side-popup__tabs"> 401 <div class="offer-side-popup__tabs">
399 <button class="offer-side-popup__tab js_offer_side_popup_tab active" type="button" data-tab="1">План объекта</button> 402 <button class="offer-side-popup__tab js_offer_side_popup_tab active" type="button" data-tab="1">План объекта</button>
400 <button class="offer-side-popup__tab js_offer_side_popup_tab" type="button" data-tab="2">План этажа</button> 403 <button class="offer-side-popup__tab js_offer_side_popup_tab" type="button" data-tab="2">План этажа</button>
401 </div> 404 </div>
402 <button class="offer-side-popup__sizeoff js_popup_close" type="button"> 405 <button class="offer-side-popup__sizeoff js_popup_close" type="button">
403 <svg width="18" height="18"> 406 <svg width="18" height="18">
404 <use xlink:href="{{ asset('images/sprite.svg#popup-sizeoff')}}"></use> 407 <use xlink:href="{{ asset('images/sprite.svg#popup-sizeoff')}}"></use>
405 </svg> 408 </svg>
406 </button> 409 </button>
407 </div> 410 </div>
408 </div> 411 </div>
409 <div class="img-viewer js_img_viewer"> 412 <div class="img-viewer js_img_viewer">
410 <div class="img-viewer__wrap"> 413 <div class="img-viewer__wrap">
411 <button class="img-viewer__close js_img_viewer_close" type="button"> 414 <button class="img-viewer__close js_img_viewer_close" type="button">
412 <svg width="20" height="20"> 415 <svg width="20" height="20">
413 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 416 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
414 </svg> 417 </svg>
415 </button> 418 </button>
416 <div class="img-viewer__thumbs js_img_viewer_thumbs"> 419 <div class="img-viewer__thumbs js_img_viewer_thumbs">
417 <div class="img-viewer__thumbs-swiper js_img_viewer_thumbs_swiper swiper"> 420 <div class="img-viewer__thumbs-swiper js_img_viewer_thumbs_swiper swiper">
418 <div class="swiper-wrapper"></div> 421 <div class="swiper-wrapper"></div>
419 </div> 422 </div>
420 </div> 423 </div>
421 <div class="img-viewer__slider"> 424 <div class="img-viewer__slider">
422 <div class="img-viewer__slider-swiper js_img_viewer_slider_swiper swiper"> 425 <div class="img-viewer__slider-swiper js_img_viewer_slider_swiper swiper">
423 <div class="swiper-wrapper"></div> 426 <div class="swiper-wrapper"></div>
424 </div> 427 </div>
425 <div class="swiper-button-prev"> 428 <div class="swiper-button-prev">
426 <svg width="10" height="17"> 429 <svg width="10" height="17">
427 <use xlink:href="{{ asset('images/sprite.svg#slider-arrow')}}"></use> 430 <use xlink:href="{{ asset('images/sprite.svg#slider-arrow')}}"></use>
428 </svg> 431 </svg>
429 </div> 432 </div>
430 <div class="swiper-button-next"> 433 <div class="swiper-button-next">
431 <svg width="10" height="17"> 434 <svg width="10" height="17">
432 <use xlink:href="{{ asset('images/sprite.svg#slider-arrow')}}"></use> 435 <use xlink:href="{{ asset('images/sprite.svg#slider-arrow')}}"></use>
433 </svg> 436 </svg>
434 </div> 437 </div>
435 </div> 438 </div>
436 <div class="img-viewer__caption js_img_viewer_caption"></div> 439 <div class="img-viewer__caption js_img_viewer_caption"></div>
437 <button class="img-viewer__sizeoff js_img_viewer_close" type="button"> 440 <button class="img-viewer__sizeoff js_img_viewer_close" type="button">
438 <svg width="18" height="18"> 441 <svg width="18" height="18">
439 <use xlink:href="{{ asset('images/sprite.svg#popup-sizeoff') }}"></use> 442 <use xlink:href="{{ asset('images/sprite.svg#popup-sizeoff') }}"></use>
440 </svg> 443 </svg>
441 </button> 444 </button>
442 </div> 445 </div>
443 </div> 446 </div>
444 <div class="cookies js_cookies"> 447 <div class="cookies js_cookies">
445 <div class="container"> 448 <div class="container">
446 <div class="cookies__wrap"> 449 <div class="cookies__wrap">
447 <div class="cookies__top"> 450 <div class="cookies__top">
448 <div class="cookies__img"><img src="{{ asset('images/cookies.svg') }}" alt="cookies"></div> 451 <div class="cookies__img"><img src="{{ asset('images/cookies.svg') }}" alt="cookies"></div>
449 <div class="cookies__title">Cookies</div> 452 <div class="cookies__title">Cookies</div>
450 </div> 453 </div>
451 <p class="cookies__descr">Мы используем cookie-файлы для наилучшего представления нашего сайта.<br>Продолжая использовать сайт, вы даете согласие с использованием cookie-файлов.</p> 454 <p class="cookies__descr">Мы используем cookie-файлы для наилучшего представления нашего сайта.<br>Продолжая использовать сайт, вы даете согласие с использованием cookie-файлов.</p>
452 <div class="cookies__buttons"> 455 <div class="cookies__buttons">
453 <button class="cookies__btn btn btn--main js_cookies_confirm" type="button">Принять</button><a class="cookies__link" href="{{ route('cookies') }}">Подробнее</a> 456 <button class="cookies__btn btn btn--main js_cookies_confirm" type="button">Принять</button><a class="cookies__link" href="{{ route('cookies') }}">Подробнее</a>
454 </div> 457 </div>
455 </div> 458 </div>
456 </div> 459 </div>
457 </div> 460 </div>
458 <script src="https://api-maps.yandex.ru/2.1/?lang=ru_RU"></script> 461 <script src="https://api-maps.yandex.ru/2.1/?lang=ru_RU"></script>
459 <script src="{{ asset('js/swiper-bundle.min.js') }}"></script> 462 <script src="{{ asset('js/swiper-bundle.min.js') }}"></script>
460 <script src="{{ asset('js/main_main.js') }}"></script> 463 <script src="{{ asset('js/main_main.js') }}"></script>
461 <script type="text/javascript" src="{{ asset('js/jquery.min.js') }}"></script> 464 <script type="text/javascript" src="{{ asset('js/jquery.min.js') }}"></script>
462 <script type="text/javascript" src="{{ asset('js/jquery.cookie.js') }}"></script> 465 <script type="text/javascript" src="{{ asset('js/jquery.cookie.js') }}"></script>
463 @yield('custom_js') 466 @yield('custom_js')
464 @include('js.cookies_favorite') 467 @include('js.cookies_favorite')
465 </body> 468 </body>
466 </html> 469 </html>
467 470
resources/views/layout/site.blade.php
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html lang="{{ str_replace('_', '-', app()->getLocale()) }}"> 2 <html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
3 <head> 3 <head>
4 <meta charset="UTF-8"> 4 <meta charset="UTF-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <title>{{$title}}</title> 7 <title>{{$title}}</title>
8 <link rel="shortcut icon" href="{{ asset('images/favicon.png')}}" type="image/x-icon">
8 <link rel="preload" href="{{ asset('fonts/Manrope-ExtraLight.woff2') }}" as="font" type="font/woff2" crossorigin> 9 <link rel="preload" href="{{ asset('fonts/Manrope-ExtraLight.woff2') }}" as="font" type="font/woff2" crossorigin>
9 <link rel="preload" href="{{ asset('fonts/Manrope-Light.woff2" as="font') }}" type="font/woff2" crossorigin> 10 <link rel="preload" href="{{ asset('fonts/Manrope-Light.woff2" as="font') }}" type="font/woff2" crossorigin>
10 <link rel="preload" href="{{ asset('fonts/Manrope-Regular.woff2') }}" as="font" type="font/woff2" crossorigin> 11 <link rel="preload" href="{{ asset('fonts/Manrope-Regular.woff2') }}" as="font" type="font/woff2" crossorigin>
11 <link rel="preload" href="{{ asset('fonts/Manrope-Medium.woff2') }}" as="font" type="font/woff2" crossorigin> 12 <link rel="preload" href="{{ asset('fonts/Manrope-Medium.woff2') }}" as="font" type="font/woff2" crossorigin>
12 <link rel="preload" href="{{ asset('fonts/Manrope-SemiBold.woff2') }}" as="font" type="font/woff2" crossorigin> 13 <link rel="preload" href="{{ asset('fonts/Manrope-SemiBold.woff2') }}" as="font" type="font/woff2" crossorigin>
13 <link rel="preload" href="{{ asset('fonts/Manrope-Bold.woff2') }}" as="font" type="font/woff2" crossorigin> 14 <link rel="preload" href="{{ asset('fonts/Manrope-Bold.woff2') }}" as="font" type="font/woff2" crossorigin>
14 <link rel="preload" href="{{ asset('fonts/Manrope-ExtraBold.woff2') }}" as="font" type="font/woff2" crossorigin> 15 <link rel="preload" href="{{ asset('fonts/Manrope-ExtraBold.woff2') }}" as="font" type="font/woff2" crossorigin>
15 <link rel="stylesheet" href="{{ asset('css/swiper-bundle.min.css') }}"> 16 <link rel="stylesheet" href="{{ asset('css/swiper-bundle.min.css') }}">
16 <link rel="stylesheet" href="{{ asset('css/style.css') }}"> 17 <link rel="stylesheet" href="{{ asset('css/style.css') }}">
17 </head> 18 </head>
18 <body> 19 <body>
19 <div class="spinner"></div> 20 <div class="spinner"></div>
20 <div class="wrapper"> 21 <div class="wrapper">
21 <header class="header js_header"> 22 <header class="header js_header">
22 <div class="container"> 23 <div class="container">
23 <div class="header__wrap"><a class="header__logo" href="{{ route('index') }}"><img src="{{ asset('images/logo.svg') }}" alt="Лого"></a> 24 <div class="header__wrap"><a class="header__logo" href="{{ route('index') }}"><img src="{{ asset('images/logo.svg') }}" alt="Лого"></a>
24 <nav class="header__nav nav"> 25 <nav class="header__nav nav">
25 <ul class="nav__list"> 26 <ul class="nav__list">
26 <li class="nav__item"><a class="nav__link" href="{{ route('catalog') }}">Каталог</a></li> 27 <li class="nav__item"><a class="nav__link" href="{{ route('catalog') }}">Каталог</a></li>
27 <li class="nav__item"><a class="nav__link" href="{{ route('about') }}">О компании</a></li> 28 <li class="nav__item"><a class="nav__link" href="{{ route('about') }}">О компании</a></li>
28 <li class="nav__item"><a class="nav__link" href="{{ route('contact') }}">Контакты</a></li> 29 <li class="nav__item"><a class="nav__link" href="{{ route('contact') }}">Контакты</a></li>
29 <li class="nav__item"><a class="nav__link nav__link-favorites" href="{{ route('favorite') }}">Избранное<span><?=\App\Classes\RusDate::count_item_fav();?></span></a></li> 30 <li class="nav__item"><a class="nav__link nav__link-favorites" href="{{ route('favorite') }}">Избранное<span><?=\App\Classes\RusDate::count_item_fav();?></span></a></li>
30 </ul> 31 </ul>
31 </nav> 32 </nav>
32 <div class="header__buttons"><a class="header__btn-phone" href="#" data-btn="feedback"> 33 <div class="header__buttons"><a class="header__btn-phone" href="#" data-btn="feedback">
33 <svg width="22" height="22"> 34 <svg width="22" height="22">
34 <use xlink:href="{{ asset('images/sprite.svg#header-btn-phone') }}"></use> 35 <use xlink:href="{{ asset('images/sprite.svg#header-btn-phone') }}"></use>
35 </svg></a> 36 </svg></a>
36 <div class="header__contacts"> 37 <div class="header__contacts">
37 <div class="header__col"><a class="header__contact" href="mailto:{{ $items_contact[0]->email }}">{{ $items_contact[0]->email }}</a></div> 38 <div class="header__col"><a class="header__contact" href="mailto:{{ $items_contact[0]->email }}">{{ $items_contact[0]->email }}</a></div>
38 <div class="header__col"><a class="header__contact" href="tel:{{ $items_contact[0]->telephone }}">{{ $items_contact[0]->telephone }}</a> 39 <div class="header__col"><a class="header__contact" href="tel:{{ $items_contact[0]->telephone }}">{{ $items_contact[0]->telephone }}</a>
39 <button class="header__btn-callback" type="button" data-btn="feedback">Обратный звонок</button> 40 <button class="header__btn-callback" type="button" data-btn="feedback">Обратный звонок</button>
40 </div> 41 </div>
41 </div> 42 </div>
42 <button class="header__burger js_header_burger" type="button">Меню 43 <button class="header__burger js_header_burger" type="button">Меню
43 <svg width="28" height="18"> 44 <svg width="28" height="18">
44 <use xlink:href="{{ asset('images/sprite.svg#burger') }}"></use> 45 <use xlink:href="{{ asset('images/sprite.svg#burger') }}"></use>
45 </svg> 46 </svg>
46 </button> 47 </button>
47 </div> 48 </div>
48 <div class="menu js_menu"> 49 <div class="menu js_menu">
49 <div class="menu__wrap"> 50 <div class="menu__wrap">
50 <button class="menu__close js_menu_close" type="button">Меню 51 <button class="menu__close js_menu_close" type="button">Меню
51 <svg width="20" height="20"> 52 <svg width="20" height="20">
52 <use xlink:href="{{ asset('images/sprite.svg#popup-close') }}"></use> 53 <use xlink:href="{{ asset('images/sprite.svg#popup-close') }}"></use>
53 </svg> 54 </svg>
54 </button> 55 </button>
55 <div class="menu__inner"> 56 <div class="menu__inner">
56 <nav class="menu__nav"> 57 <nav class="menu__nav">
57 <ul class="menu__list"> 58 <ul class="menu__list">
58 <li class="menu__item"><a class="menu__link" href="{{ route('about') }}">О компании</a></li> 59 <li class="menu__item"><a class="menu__link" href="{{ route('about') }}">О компании</a></li>
59 <li class="menu__item"><a class="menu__link menu__link-favorites" href="{{ route('favorite') }}">Избранное<span>5</span></a></li> 60 <li class="menu__item"><a class="menu__link menu__link-favorites" href="{{ route('favorite') }}">Избранное<span>5</span></a></li>
60 <li class="menu__item"><a class="menu__link" href="{{ route('catalog') }}">Каталог</a></li> 61 <li class="menu__item"><a class="menu__link" href="{{ route('catalog') }}">Каталог</a></li>
61 <li class="menu__item"><a class="menu__link" href="{{ route('news') }}">Новости</a></li> 62 <li class="menu__item"><a class="menu__link" href="{{ route('news') }}">Новости</a></li>
62 <li class="menu__item"><a class="menu__link" href="{{ route('contact') }}">Контакты</a></li> 63 <li class="menu__item"><a class="menu__link" href="{{ route('contact') }}">Контакты</a></li>
63 </ul> 64 </ul>
64 </nav> 65 </nav>
65 <div class="menu__contacts"><a class="menu__contact" href="mailto:info@renttorg.ru">E-MAIL<span>info@renttorg.ru</span></a><a class="menu__contact" href="tel:+79290127262">ТЕЛЕФОН<span>+7 (929) 012-72-62</span></a></div> 66 <div class="menu__contacts"><a class="menu__contact" href="mailto:info@renttorg.ru">E-MAIL<span>info@renttorg.ru</span></a><a class="menu__contact" href="tel:+79290127262">ТЕЛЕФОН<span>+7 (929) 012-72-62</span></a></div>
66 <div class="menu__social social"> 67 <div class="menu__social social">
67 <ul class="social__list"> 68 <ul class="social__list">
68 <li class="social__item"><a class="social__link" href="#" target="_blank"><img src="{{ asset('images/tg.svg') }}" alt=""></a></li> 69 <li class="social__item"><a class="social__link" href="#" target="_blank"><img src="{{ asset('images/tg.svg') }}" alt=""></a></li>
69 <li class="social__item"><a class="social__link" href="#" target="_blank"> 70 <li class="social__item"><a class="social__link" href="#" target="_blank">
70 <svg width="40" height="40"> 71 <svg width="40" height="40">
71 <use xlink:href="{{ asset('images/sprite.svg#wa')}}"></use> 72 <use xlink:href="{{ asset('images/sprite.svg#wa')}}"></use>
72 </svg></a></li> 73 </svg></a></li>
73 </ul> 74 </ul>
74 </div> 75 </div>
75 </div> 76 </div>
76 </div> 77 </div>
77 </div> 78 </div>
78 </div> 79 </div>
79 </div> 80 </div>
80 </header> 81 </header>
81 <main> 82 <main>
82 83
83 84
84 <!-- Фильтр --> 85 <!-- Фильтр -->
85 @yield('filter') 86 @yield('filter')
86 87
87 @if ($message = Session::get('success')) 88 @if ($message = Session::get('success'))
88 <section> 89 <section>
89 <div class="alert alert-success alert-dismissible mt-0" role="alert"> 90 <div class="alert alert-success alert-dismissible mt-0" role="alert">
90 <button type="button" class="close" data-dismiss="alert" aria-label="Закрыть"> 91 <button type="button" class="close" data-dismiss="alert" aria-label="Закрыть">
91 <span aria-hidden="true">&times;</span> 92 <span aria-hidden="true">&times;</span>
92 </button> 93 </button>
93 {{ $message }} 94 {{ $message }}
94 </div> 95 </div>
95 </section> 96 </section>
96 @endif 97 @endif
97 98
98 @if ($errors->any()) 99 @if ($errors->any())
99 <section> 100 <section>
100 <div class="alert alert-danger alert-dismissible mt-4" role="alert"> 101 <div class="alert alert-danger alert-dismissible mt-4" role="alert">
101 <button type="button" class="close" data-dismiss="alert" aria-label="Закрыть"> 102 <button type="button" class="close" data-dismiss="alert" aria-label="Закрыть">
102 <span aria-hidden="true">&times;</span> 103 <span aria-hidden="true">&times;</span>
103 </button> 104 </button>
104 <ul class="mb-0"> 105 <ul class="mb-0">
105 @foreach ($errors->all() as $error) 106 @foreach ($errors->all() as $error)
106 <li>{{ $error }}</li> 107 <li>{{ $error }}</li>
107 @endforeach 108 @endforeach
108 </ul> 109 </ul>
109 </div> 110 </div>
110 </section> 111 </section>
111 @endif 112 @endif
112 <!-- Основной контент --> 113 <!-- Основной контент -->
113 @yield('content') 114 @yield('content')
114 115
115 </main> 116 </main>
116 117
117 <footer class="footer" style="background-image:url({{ asset('images/footer-bg.jpg')}})"> 118 <footer class="footer" style="background-image:url({{ asset('images/footer-bg.jpg')}})">
118 <div class="footer__buttons"> 119 <div class="footer__buttons">
119 <button class="footer__btn footer__btn-phone js_btn_contact_us" type="button"> 120 <button class="footer__btn footer__btn-phone js_btn_contact_us" type="button">
120 <svg width="30" height="32"> 121 <svg width="30" height="32">
121 <use xlink:href="{{ asset('images/sprite.svg#footer-btn-phone')}}"></use> 122 <use xlink:href="{{ asset('images/sprite.svg#footer-btn-phone')}}"></use>
122 </svg> 123 </svg>
123 </button> 124 </button>
124 <button class="footer__btn footer__btn-up js_btn_up" type="button"> 125 <button class="footer__btn footer__btn-up js_btn_up" type="button">
125 <svg width="19" height="11"> 126 <svg width="19" height="11">
126 <use xlink:href="{{ asset('images/sprite.svg#footer-btn-up')}}"></use> 127 <use xlink:href="{{ asset('images/sprite.svg#footer-btn-up')}}"></use>
127 </svg> 128 </svg>
128 </button> 129 </button>
129 </div> 130 </div>
130 <!-- Форма обратной связи --> 131 <!-- Форма обратной связи -->
131 @yield('form_feedback') 132 @yield('form_feedback')
132 133
133 <!-- Сам футер мееню --> 134 <!-- Сам футер мееню -->
134 <div class="footer-middle"> 135 <div class="footer-middle">
135 <div class="container"> 136 <div class="container">
136 <div class="footer-middle__wrap"> 137 <div class="footer-middle__wrap">
137 <div class="footer__col footer__col-intro"><a class="footer__logo" href="index.html"><img src="{{ asset('images/logo-footer.svg')}}" alt="Лого"></a> 138 <div class="footer__col footer__col-intro"><a class="footer__logo" href="index.html"><img src="{{ asset('images/logo-footer.svg')}}" alt="Лого"></a>
138 <p class="footer__descr">В группу “Renttorg” входит ряд ведущих российских девелоперских компаний полного цикла, реализующих масштабные объекты недвижимости.</p> 139 <p class="footer__descr">В группу “Renttorg” входит ряд ведущих российских девелоперских компаний полного цикла, реализующих масштабные объекты недвижимости.</p>
139 <div class="footer-questions"> 140 <div class="footer-questions">
140 <h3 class="footer-questions__title">Есть вопросы или предложения?</h3><a class="footer-questions__btn btn btn--main" href="#" data-btn="feedback">Напишите нам</a> 141 <h3 class="footer-questions__title">Есть вопросы или предложения?</h3><a class="footer-questions__btn btn btn--main" href="#" data-btn="feedback">Напишите нам</a>
141 </div> 142 </div>
142 </div> 143 </div>
143 <div class="footer__col footer__col-menu js_footer_col"> 144 <div class="footer__col footer__col-menu js_footer_col">
144 <h3 class="footer__caption js_footer_caption">Меню</h3> 145 <h3 class="footer__caption js_footer_caption">Меню</h3>
145 <div class="footer__block js_footer_block"> 146 <div class="footer__block js_footer_block">
146 <ul class="footer__list"> 147 <ul class="footer__list">
147 <li class="footer__item"><a class="footer__link" href="{{ route('catalog') }}">Каталог</a></li> 148 <li class="footer__item"><a class="footer__link" href="{{ route('catalog') }}">Каталог</a></li>
148 <li class="footer__item"><a class="footer__link" href="{{ route('about') }}">О компании</a></li> 149 <li class="footer__item"><a class="footer__link" href="{{ route('about') }}">О компании</a></li>
149 <li class="footer__item"><a class="footer__link" href="{{ route('contact') }}">Контакты</a></li> 150 <li class="footer__item"><a class="footer__link" href="{{ route('contact') }}">Контакты</a></li>
150 <li class="footer__item"><a class="footer__link" href="{{ route('favorite') }}">Избранное</a></li> 151 <li class="footer__item"><a class="footer__link" href="{{ route('favorite') }}">Избранное</a></li>
151 <li class="footer__item"><a class="footer__link" href="{{ route('news') }}">Новости</a></li> 152 <li class="footer__item"><a class="footer__link" href="{{ route('news') }}">Новости</a></li>
152 </ul> 153 </ul>
153 154
154 </div><a class="footer__author" href="#" target="_blank"><img src="{{ asset('images/author.png')}}" alt="Лого разработчика"></a> 155 </div><a class="footer__author" href="#" target="_blank"><img src="{{ asset('images/author.png')}}" alt="Лого разработчика"></a>
155 </div> 156 </div>
156 <div class="footer__col js_footer_col"> 157 <div class="footer__col js_footer_col">
157 <h3 class="footer__caption js_footer_caption">Услуги</h3> 158 <h3 class="footer__caption js_footer_caption">Услуги</h3>
158 <div class="footer__block js_footer_block"> 159 <div class="footer__block js_footer_block">
159 <ul class="footer__list"> 160 <ul class="footer__list">
160 <li class="footer__item"><a class="footer__link" href="#">Продажа арендного бизнеса</a></li> 161 <li class="footer__item"><a class="footer__link" href="#">Продажа арендного бизнеса</a></li>
161 <li class="footer__item"><a class="footer__link" href="#">Арендованные помещения</a></li> 162 <li class="footer__item"><a class="footer__link" href="#">Арендованные помещения</a></li>
162 <li class="footer__item"><a class="footer__link" href="#">Свободные для аренды</a></li> 163 <li class="footer__item"><a class="footer__link" href="#">Свободные для аренды</a></li>
163 </ul> 164 </ul>
164 </div> 165 </div>
165 </div> 166 </div>
166 <div class="footer__col js_footer_col"> 167 <div class="footer__col js_footer_col">
167 <h3 class="footer__caption js_footer_caption">Страницы</h3> 168 <h3 class="footer__caption js_footer_caption">Страницы</h3>
168 <div class="footer__block js_footer_block"> 169 <div class="footer__block js_footer_block">
169 <ul class="footer__list"> 170 <ul class="footer__list">
170 <li class="footer__item"><a class="footer__link" href="{{ route('auth.login') }}">Админка</a></li> 171 <li class="footer__item"><a class="footer__link" href="{{ route('auth.login') }}">Админка</a></li>
171 <li class="footer__item"><a class="footer__link" href="{{ route('cookies') }}">Cookies</a></li> 172 <li class="footer__item"><a class="footer__link" href="{{ route('cookies') }}">Cookies</a></li>
172 173
173 <!--<li class="footer__item"><a class="footer__link" href="#">Новая Москва</a></li> 174 <!--<li class="footer__item"><a class="footer__link" href="#">Новая Москва</a></li>
174 <li class="footer__item"><a class="footer__link" href="#">Подмосковье</a></li> 175 <li class="footer__item"><a class="footer__link" href="#">Подмосковье</a></li>
175 <li class="footer__item"><a class="footer__link" href="#">Москва</a></li> 176 <li class="footer__item"><a class="footer__link" href="#">Москва</a></li>
176 <li class="footer__item"><a class="footer__link" href="#">Тип недвижимости</a></li>--> 177 <li class="footer__item"><a class="footer__link" href="#">Тип недвижимости</a></li>-->
177 </ul> 178 </ul>
178 </div> 179 </div>
179 </div> 180 </div>
180 <div class="footer__col footer__col-contacts"> 181 <div class="footer__col footer__col-contacts">
181 <h3 class="footer__caption js_footer_caption">Контакты</h3> 182 <h3 class="footer__caption js_footer_caption">Контакты</h3>
182 <ul class="footer__list"> 183 <ul class="footer__list">
183 <li class="footer__item"><a class="footer__link" href="#mailto:{{ $items_contact[0]->email }}">{{ $items_contact[0]->email }}</a></li> 184 <li class="footer__item"><a class="footer__link" href="#mailto:{{ $items_contact[0]->email }}">{{ $items_contact[0]->email }}</a></li>
184 <li class="footer__item"><a class="footer__link" href="tel:{{ $items_contact[0]->telephone }}">{{ $items_contact[0]->telephone }}</a></li> 185 <li class="footer__item"><a class="footer__link" href="tel:{{ $items_contact[0]->telephone }}">{{ $items_contact[0]->telephone }}</a></li>
185 </ul> 186 </ul>
186 <div class="footer__social social"> 187 <div class="footer__social social">
187 <ul class="social__list"> 188 <ul class="social__list">
188 <li class="social__item"><a class="social__link" href="#" target="_blank"><img src="{{ asset('images/tg.svg')}}" alt=""></a></li> 189 <li class="social__item"><a class="social__link" href="#" target="_blank"><img src="{{ asset('images/tg.svg')}}" alt=""></a></li>
189 <li class="social__item"><a class="social__link" href="#" target="_blank"> 190 <li class="social__item"><a class="social__link" href="#" target="_blank">
190 <svg width="40" height="40"> 191 <svg width="40" height="40">
191 <use xlink:href="{{ asset('images/sprite.svg#wa') }}"></use> 192 <use xlink:href="{{ asset('images/sprite.svg#wa') }}"></use>
192 </svg></a></li> 193 </svg></a></li>
193 </ul> 194 </ul>
194 </div> 195 </div>
195 </div> 196 </div>
196 </div> 197 </div>
197 </div> 198 </div>
198 </div> 199 </div>
199 200
200 <div class="footer-bottom"> 201 <div class="footer-bottom">
201 <div class="container"> 202 <div class="container">
202 <div class="footer-bottom__wrap"> 203 <div class="footer-bottom__wrap">
203 <div class="footer__copy">© 2023 RentTorg</div><a class="footer__plicy" href="{{ route('conf') }}">Политика конфиденциальности</a> 204 <div class="footer__copy">© 2023 RentTorg</div><a class="footer__plicy" href="{{ route('conf') }}">Политика конфиденциальности</a>
204 </div> 205 </div>
205 </div> 206 </div>
206 </div> 207 </div>
207 </footer> 208 </footer>
208 </div> 209 </div>
209 210
210 <!-- Вплывающие окна --> 211 <!-- Вплывающие окна -->
211 <div class="popup popup-feedback" data-popup="feedback"> 212 <div class="popup popup-feedback" data-popup="feedback">
212 <div class="popup__wrap"> 213 <div class="popup__wrap">
213 <button class="popup__close js_popup_close" type="button"> 214 <button class="popup__close js_popup_close" type="button">
214 <svg width="20" height="20"> 215 <svg width="20" height="20">
215 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 216 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
216 </svg> 217 </svg>
217 </button> 218 </button>
218 <form class="popup-feedback__form js_popup_feedback_form" action="{{ route('header_form') }}" method="POST"> 219 <form class="popup-feedback__form js_popup_feedback_form" action="{{ route('header_form') }}" method="POST">
219 @csrf 220 @csrf
220 <div class="popup-feedback__title">Как с вами связаться</div> 221 <div class="popup-feedback__title">Как с вами связаться</div>
221 <div class="popup-feedback__fields"> 222 <div class="popup-feedback__fields">
222 <label class="popup-feedback__field field"> 223 <label class="popup-feedback__field field">
223 <input type="text" placeholder="Имя" name="NameUser"> 224 <input type="text" placeholder="Имя" name="NameUser">
224 </label> 225 </label>
225 <label class="popup-feedback__field field"> 226 <label class="popup-feedback__field field">
226 <input class="js_input_phone" type="text" placeholder="Телефон" name="TelephoneUser"> 227 <input class="js_input_phone" type="text" placeholder="Телефон" name="TelephoneUser">
227 </label> 228 </label>
228 </div> 229 </div>
229 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button> 230 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button>
230 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="{{ route('conf') }}">Политикой конфиденциальности</a>.</p> 231 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="{{ route('conf') }}">Политикой конфиденциальности</a>.</p>
231 </form> 232 </form>
232 </div> 233 </div>
233 </div> 234 </div>
234 <div class="popup popup-feedback" data-popup="viewing"> 235 <div class="popup popup-feedback" data-popup="viewing">
235 <div class="popup__wrap"> 236 <div class="popup__wrap">
236 <button class="popup__close js_popup_close" type="button"> 237 <button class="popup__close js_popup_close" type="button">
237 <svg width="20" height="20"> 238 <svg width="20" height="20">
238 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 239 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
239 </svg> 240 </svg>
240 </button> 241 </button>
241 <form class="popup-feedback__form js_popup_viewing_form" action="{{ route('rec_view_form') }}" method="POST"> 242 <form class="popup-feedback__form js_popup_viewing_form" action="{{ route('rec_view_form') }}" method="POST">
242 @csrf 243 @csrf
243 <div class="popup-feedback__title">Записаться на просмотр</div> 244 <div class="popup-feedback__title">Записаться на просмотр</div>
244 <div class="popup-feedback__fields"> 245 <div class="popup-feedback__fields">
245 <label class="popup-feedback__field field"> 246 <label class="popup-feedback__field field">
246 <input type="text" placeholder="Имя" name="NameUser"> 247 <input type="text" placeholder="Имя" name="NameUser">
247 </label> 248 </label>
248 <label class="popup-feedback__field field"> 249 <label class="popup-feedback__field field">
249 <input class="js_input_phone" type="text" placeholder="Телефон" name="TelephoneUser"> 250 <input class="js_input_phone" type="text" placeholder="Телефон" name="TelephoneUser">
250 </label> 251 </label>
251 </div> 252 </div>
252 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button> 253 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button>
253 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="#">Политикой конфиденциальности</a>.</p> 254 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="#">Политикой конфиденциальности</a>.</p>
254 </form> 255 </form>
255 </div> 256 </div>
256 </div> 257 </div>
257 <div class="popup popup-success" data-popup="success"> 258 <div class="popup popup-success" data-popup="success">
258 <div class="popup__wrap"> 259 <div class="popup__wrap">
259 <button class="popup__close js_popup_close" type="button"> 260 <button class="popup__close js_popup_close" type="button">
260 <svg width="20" height="20"> 261 <svg width="20" height="20">
261 <use xlink:href="{{ asset('images/sprite.svg#popup-close') }}"></use> 262 <use xlink:href="{{ asset('images/sprite.svg#popup-close') }}"></use>
262 </svg> 263 </svg>
263 </button> 264 </button>
264 <div class="popup-success__inner"> 265 <div class="popup-success__inner">
265 <div class="popup-success__logo"> 266 <div class="popup-success__logo">
266 <svg width="48" height="39"> 267 <svg width="48" height="39">
267 <use xlink:href="{{ asset('images/sprite.svg#popup-success-logo')}}"></use> 268 <use xlink:href="{{ asset('images/sprite.svg#popup-success-logo')}}"></use>
268 </svg> 269 </svg>
269 </div> 270 </div>
270 <div class="popup-success__title">Спасибо за заявку</div> 271 <div class="popup-success__title">Спасибо за заявку</div>
271 <p class="popup-success__descr">В ближайшее время с вами свяжется наш специалист для уточнения деталей вашей задачи.</p> 272 <p class="popup-success__descr">В ближайшее время с вами свяжется наш специалист для уточнения деталей вашей задачи.</p>
272 </div> 273 </div>
273 </div> 274 </div>
274 </div> 275 </div>
275 <div class="popup popup-feedback" data-popup="sending"> 276 <div class="popup popup-feedback" data-popup="sending">
276 <div class="popup__wrap"> 277 <div class="popup__wrap">
277 <button class="popup__close js_popup_close" type="button"> 278 <button class="popup__close js_popup_close" type="button">
278 <svg width="20" height="20"> 279 <svg width="20" height="20">
279 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 280 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
280 </svg> 281 </svg>
281 </button> 282 </button>
282 <form class="popup-feedback__form js_popup_sending_form_" action="{{ route('email_form') }}" method="POST"> 283 <form class="popup-feedback__form js_popup_sending_form_" action="{{ route('email_form') }}" method="POST">
283 @csrf 284 @csrf
284 <div class="popup-feedback__title">Отправить на почту</div> 285 <div class="popup-feedback__title">Отправить на почту</div>
285 <div class="popup-feedback__fields"> 286 <div class="popup-feedback__fields">
286 <label class="popup-feedback__field field"> 287 <label class="popup-feedback__field field">
287 <input class="js_input_email" type="text" placeholder="Электронная почта" name="EmailUser"> 288 <input class="js_input_email" type="text" placeholder="Электронная почта" name="EmailUser">
288 </label> 289 </label>
289 </div> 290 </div>
290 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button> 291 <button class="popup-feedback__btn btn btn--main js_form_btn">Отправить</button>
291 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="{{ route('conf') }}">Политикой конфиденциальности</a>.</p> 292 <p class="popup-feedback__confirm">Нажимая на кнопку «Отправить», Вы даете согласие на обработку персональных данных в соответствии с <a href="{{ route('conf') }}">Политикой конфиденциальности</a>.</p>
292 </form> 293 </form>
293 </div> 294 </div>
294 </div> 295 </div>
295 <div class="contact-us js_contact_us"> 296 <div class="contact-us js_contact_us">
296 <div class="contact-us__top"> 297 <div class="contact-us__top">
297 <button class="contact-us__close js_contact_us_close" type="button"> 298 <button class="contact-us__close js_contact_us_close" type="button">
298 <svg width="20" height="20"> 299 <svg width="20" height="20">
299 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 300 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
300 </svg> 301 </svg>
301 </button> 302 </button>
302 <div class="contact-us__title">Свяжитесь с нами</div> 303 <div class="contact-us__title">Свяжитесь с нами</div>
303 </div> 304 </div>
304 <div class="contact-us__body"> 305 <div class="contact-us__body">
305 <div class="contact-us__items"><a class="contact-us-item js_contact_us_close" data-btn="feedback"> 306 <div class="contact-us__items"><a class="contact-us-item js_contact_us_close" data-btn="feedback">
306 <div class="contact-us-item__icon"> 307 <div class="contact-us-item__icon">
307 <svg width="34" height="34"> 308 <svg width="34" height="34">
308 <use xlink:href="{{ asset('images/sprite.svg#contact-us-phone')}}"></use> 309 <use xlink:href="{{ asset('images/sprite.svg#contact-us-phone')}}"></use>
309 </svg> 310 </svg>
310 </div> 311 </div>
311 <div class="contact-us-item__name">Позвонить</div></a> 312 <div class="contact-us-item__name">Позвонить</div></a>
312 313
313 <a class="contact-us-item js_contact_us_close" data-btn="sending"> 314 <a class="contact-us-item js_contact_us_close" data-btn="sending">
314 <div class="contact-us-item__icon"> 315 <div class="contact-us-item__icon">
315 <svg width="44" height="44"> 316 <svg width="44" height="44">
316 <use xlink:href="{{ asset('images/sprite.svg#contact-us-email')}}"></use> 317 <use xlink:href="{{ asset('images/sprite.svg#contact-us-email')}}"></use>
317 </svg> 318 </svg>
318 </div> 319 </div>
319 <div class="contact-us-item__name">Написать</div></a> 320 <div class="contact-us-item__name">Написать</div></a>
320 321
321 <a class="contact-us-item js_contact_us_close" > 322 <a class="contact-us-item js_contact_us_close" >
322 <div class="contact-us-item__icon"> 323 <div class="contact-us-item__icon">
323 <svg width="34" height="34"> 324 <svg width="34" height="34">
324 <use xlink:href="{{ asset('images/sprite.svg#contact-us-chat')}}"></use> 325 <use xlink:href="{{ asset('images/sprite.svg#contact-us-chat')}}"></use>
325 </svg> 326 </svg>
326 </div> 327 </div>
327 <div class="contact-us-item__name">Онлайн-чат</div></a></div> 328 <div class="contact-us-item__name">Онлайн-чат</div></a></div>
328 <div class="contact-us__socials"><a class="contact-us-social js_contact_us_close" href="#" target="_blank"> 329 <div class="contact-us__socials"><a class="contact-us-social js_contact_us_close" href="#" target="_blank">
329 <div class="contact-us-social__icon contact-us-social__icon-tg"><img src="{{ asset('images/contact-us-tg.svg')}}" alt=""></div> 330 <div class="contact-us-social__icon contact-us-social__icon-tg"><img src="{{ asset('images/contact-us-tg.svg')}}" alt=""></div>
330 <div class="contact-us-social__name">Telegram</div></a><a class="contact-us-social js_contact_us_close" href="#" target="_blank"> 331 <div class="contact-us-social__name">Telegram</div></a><a class="contact-us-social js_contact_us_close" href="#" target="_blank">
331 <div class="contact-us-social__icon contact-us-social__icon-wa"> 332 <div class="contact-us-social__icon contact-us-social__icon-wa">
332 <svg width="31" height="31"> 333 <svg width="31" height="31">
333 <use xlink:href="{{ asset('images/sprite.svg#contact-us-wa')}}"></use> 334 <use xlink:href="{{ asset('images/sprite.svg#contact-us-wa')}}"></use>
334 </svg> 335 </svg>
335 </div> 336 </div>
336 <div class="contact-us-social__name">WhatsApp</div></a></div> 337 <div class="contact-us-social__name">WhatsApp</div></a></div>
337 </div> 338 </div>
338 </div> 339 </div>
339 340
340 <!-- Всплывашка этажа и объекта 341 <!-- Всплывашка этажа и объекта
341 <div class="offer-side-popup" data-popup="offer-side-popup"> 342 <div class="offer-side-popup" data-popup="offer-side-popup">
342 <div class="offer-side-popup__wrap"> 343 <div class="offer-side-popup__wrap">
343 <button class="offer-side-popup__close js_popup_close" type="button"> 344 <button class="offer-side-popup__close js_popup_close" type="button">
344 <svg width="20" height="20"> 345 <svg width="20" height="20">
345 <use xlink:href="images/sprite.svg#popup-close"></use> 346 <use xlink:href="images/sprite.svg#popup-close"></use>
346 </svg> 347 </svg>
347 </button> 348 </button>
348 <div class="offer-side-popup__cnt"> 349 <div class="offer-side-popup__cnt">
349 <div class="offer-side-popup__item js_offer_side_popup_item active" data-item="1"><img src="images/offer-side-item-img-1.jpg" alt="План объекта"></div> 350 <div class="offer-side-popup__item js_offer_side_popup_item active" data-item="1"><img src="images/offer-side-item-img-1.jpg" alt="План объекта"></div>
350 <div class="offer-side-popup__item js_offer_side_popup_item" data-item="2"><img src="images/offer-side-item-img-2.jpg" alt="План этажа"></div> 351 <div class="offer-side-popup__item js_offer_side_popup_item" data-item="2"><img src="images/offer-side-item-img-2.jpg" alt="План этажа"></div>
351 </div> 352 </div>
352 <div class="offer-side-popup__tabs"> 353 <div class="offer-side-popup__tabs">
353 <button class="offer-side-popup__tab js_offer_side_popup_tab active" type="button" data-tab="1">План объекта</button> 354 <button class="offer-side-popup__tab js_offer_side_popup_tab active" type="button" data-tab="1">План объекта</button>
354 <button class="offer-side-popup__tab js_offer_side_popup_tab" type="button" data-tab="2">План этажа</button> 355 <button class="offer-side-popup__tab js_offer_side_popup_tab" type="button" data-tab="2">План этажа</button>
355 </div> 356 </div>
356 <button class="offer-side-popup__sizeoff js_popup_close" type="button"> 357 <button class="offer-side-popup__sizeoff js_popup_close" type="button">
357 <svg width="18" height="18"> 358 <svg width="18" height="18">
358 <use xlink:href="images/sprite.svg#popup-sizeoff"></use> 359 <use xlink:href="images/sprite.svg#popup-sizeoff"></use>
359 </svg> 360 </svg>
360 </button> 361 </button>
361 </div> 362 </div>
362 </div> 363 </div>
363 --> 364 -->
364 365
365 <div class="img-viewer js_img_viewer"> 366 <div class="img-viewer js_img_viewer">
366 <div class="img-viewer__wrap"> 367 <div class="img-viewer__wrap">
367 <button class="img-viewer__close js_img_viewer_close" type="button"> 368 <button class="img-viewer__close js_img_viewer_close" type="button">
368 <svg width="20" height="20"> 369 <svg width="20" height="20">
369 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use> 370 <use xlink:href="{{ asset('images/sprite.svg#popup-close')}}"></use>
370 </svg> 371 </svg>
371 </button> 372 </button>
372 <div class="img-viewer__thumbs js_img_viewer_thumbs"> 373 <div class="img-viewer__thumbs js_img_viewer_thumbs">
373 <div class="img-viewer__thumbs-swiper js_img_viewer_thumbs_swiper swiper"> 374 <div class="img-viewer__thumbs-swiper js_img_viewer_thumbs_swiper swiper">
374 <div class="swiper-wrapper"></div> 375 <div class="swiper-wrapper"></div>
375 </div> 376 </div>
376 </div> 377 </div>
377 <div class="img-viewer__slider"> 378 <div class="img-viewer__slider">
378 <div class="img-viewer__slider-swiper js_img_viewer_slider_swiper swiper"> 379 <div class="img-viewer__slider-swiper js_img_viewer_slider_swiper swiper">
379 <div class="swiper-wrapper"></div> 380 <div class="swiper-wrapper"></div>
380 </div> 381 </div>
381 <div class="swiper-button-prev"> 382 <div class="swiper-button-prev">
382 <svg width="10" height="17"> 383 <svg width="10" height="17">
383 <use xlink:href="{{ asset('images/sprite.svg#slider-arrow')}}"></use> 384 <use xlink:href="{{ asset('images/sprite.svg#slider-arrow')}}"></use>
384 </svg> 385 </svg>
385 </div> 386 </div>
386 <div class="swiper-button-next"> 387 <div class="swiper-button-next">
387 <svg width="10" height="17"> 388 <svg width="10" height="17">
388 <use xlink:href="{{ asset('images/sprite.svg#slider-arrow')}}"></use> 389 <use xlink:href="{{ asset('images/sprite.svg#slider-arrow')}}"></use>
389 </svg> 390 </svg>
390 </div> 391 </div>
391 </div> 392 </div>
392 <div class="img-viewer__caption js_img_viewer_caption"></div> 393 <div class="img-viewer__caption js_img_viewer_caption"></div>
393 <button class="img-viewer__sizeoff js_img_viewer_close" type="button"> 394 <button class="img-viewer__sizeoff js_img_viewer_close" type="button">
394 <svg width="18" height="18"> 395 <svg width="18" height="18">
395 <use xlink:href="{{ asset('images/sprite.svg#popup-sizeoff') }}"></use> 396 <use xlink:href="{{ asset('images/sprite.svg#popup-sizeoff') }}"></use>
396 </svg> 397 </svg>
397 </button> 398 </button>
398 </div> 399 </div>
399 </div> 400 </div>
400 <div class="cookies js_cookies"> 401 <div class="cookies js_cookies">
401 <div class="container"> 402 <div class="container">
402 <div class="cookies__wrap"> 403 <div class="cookies__wrap">
403 <div class="cookies__top"> 404 <div class="cookies__top">
404 <div class="cookies__img"><img src="{{ asset('images/cookies.svg') }}" alt="cookies"></div> 405 <div class="cookies__img"><img src="{{ asset('images/cookies.svg') }}" alt="cookies"></div>
405 <div class="cookies__title">Cookies</div> 406 <div class="cookies__title">Cookies</div>
406 </div> 407 </div>
407 <p class="cookies__descr">Мы используем cookie-файлы для наилучшего представления нашего сайта.<br>Продолжая использовать сайт, вы даете согласие с использованием cookie-файлов.</p> 408 <p class="cookies__descr">Мы используем cookie-файлы для наилучшего представления нашего сайта.<br>Продолжая использовать сайт, вы даете согласие с использованием cookie-файлов.</p>
408 <div class="cookies__buttons"> 409 <div class="cookies__buttons">
409 <button class="cookies__btn btn btn--main js_cookies_confirm" type="button">Принять</button><a class="cookies__link" href="{{ route('cookies') }}">Подробнее</a> 410 <button class="cookies__btn btn btn--main js_cookies_confirm" type="button">Принять</button><a class="cookies__link" href="{{ route('cookies') }}">Подробнее</a>
410 </div> 411 </div>
411 </div> 412 </div>
412 </div> 413 </div>
413 </div> 414 </div>
414 <script src="https://api-maps.yandex.ru/2.1/?lang=ru_RU"></script> 415 <script src="https://api-maps.yandex.ru/2.1/?lang=ru_RU"></script>
415 <script src="{{ asset('js/swiper-bundle.min.js') }}"></script> 416 <script src="{{ asset('js/swiper-bundle.min.js') }}"></script>
416 <script src="{{ asset('js/main_main.js') }}"></script> 417 <script src="{{ asset('js/main_main.js') }}"></script>
417 <script type="text/javascript" src="{{ asset('js/jquery.min.js') }}"></script> 418 <script type="text/javascript" src="{{ asset('js/jquery.min.js') }}"></script>
418 <script type="text/javascript" src="{{ asset('js/jquery.cookie.js') }}"></script> 419 <script type="text/javascript" src="{{ asset('js/jquery.cookie.js') }}"></script>
419 @yield('custom_js') 420 @yield('custom_js')
420 @include('js.cookies_favorite') 421 @include('js.cookies_favorite')
421 </body> 422 </body>
422 </html> 423 </html>
423 424
1 <?php 1 <?php
2 2
3 use Illuminate\Support\Facades\Auth; 3 use Illuminate\Support\Facades\Auth;
4 use Illuminate\Support\Facades\Route; 4 use Illuminate\Support\Facades\Route;
5 use App\Http\Controllers\MainController; 5 use App\Http\Controllers\MainController;
6 use App\Http\Controllers\RegisterController; 6 use App\Http\Controllers\RegisterController;
7 use App\Http\Controllers\LoginController; 7 use App\Http\Controllers\LoginController;
8 use App\Http\Controllers\AdminController; 8 use App\Http\Controllers\AdminController;
9 use App\Http\Controllers\Admin\AreaController; 9 use App\Http\Controllers\Admin\AreaController;
10 use App\Http\Controllers\Admin\NewsController; 10 use App\Http\Controllers\Admin\NewsController;
11 use App\Http\Controllers\Admin\CompanyAreaController; 11 use App\Http\Controllers\Admin\CompanyAreaController;
12 use App\Http\Controllers\Admin\FormatAreaController; 12 use App\Http\Controllers\Admin\FormatAreaController;
13 use App\Http\Controllers\Admin\TypeAreaController; 13 use App\Http\Controllers\Admin\TypeAreaController;
14 use App\Http\Controllers\Admin\HousesController; 14 use App\Http\Controllers\Admin\HousesController;
15 use App\Http\Controllers\Admin\MessageAreaController; 15 use App\Http\Controllers\Admin\MessageAreaController;
16 16
17 /* 17 /*
18 |-------------------------------------------------------------------------- 18 |--------------------------------------------------------------------------
19 | Web Routes 19 | Web Routes
20 |-------------------------------------------------------------------------- 20 |--------------------------------------------------------------------------
21 | 21 |
22 | Here is where you can register web routes for your application. These 22 | Here is where you can register web routes for your application. These
23 | routes are loaded by the RouteServiceProvider within a group which 23 | routes are loaded by the RouteServiceProvider within a group which
24 | contains the "web" middleware group. Now create something great! 24 | contains the "web" middleware group. Now create something great!
25 | 25 |
26 */ 26 */
27 27
28 //Главная страница 28 //Главная страница
29 Route::get('/',[MainController::class, 'index'])->name('index'); 29 Route::get('/',[MainController::class, 'index'])->name('index');
30 30
31 //Страница Избранные 31 //Страница Избранные
32 Route::get('favorite',[MainController::class, 'favorite'])->name('favorite'); 32 Route::get('favorite',[MainController::class, 'favorite'])->name('favorite');
33 33
34 //Страница контакты 34 //Страница контакты
35 Route::get('contact',[MainController::class, 'contact'])->name('contact'); 35 Route::get('contact',[MainController::class, 'contact'])->name('contact');
36 36
37 //Страница каталог 37 //Страница каталог
38 Route::get('catalog',[MainController::class, 'catalog'])->name('catalog'); 38 Route::get('catalog',[MainController::class, 'catalog'])->name('catalog');
39 39
40 //Страница новости 40 //Страница новости
41 Route::get('news',[MainController::class, 'news'])->name('news'); 41 Route::get('news',[MainController::class, 'news'])->name('news');
42 42
43 //Страница о компании 43 //Страница о компании
44 Route::get('about',[MainController::class, 'about'])->name('about'); 44 Route::get('about',[MainController::class, 'about'])->name('about');
45 45
46 //Страница объекты на карте 46 //Страница объекты на карте
47 Route::get('maps',[MainController::class, 'mapsobj'])->name('maps'); 47 Route::get('maps',[MainController::class, 'mapsobj'])->name('maps');
48 48
49 // Политика конфедициальности 49 // Политика конфедициальности
50 Route::get('conf', function () { 50 Route::get('conf', function () {
51 return view('conf'); 51 return view('conf');
52 })->name('conf'); 52 })->name('conf');
53 53
54 //Детальная страница предложения недвижимости 54 //Детальная страница предложения недвижимости
55 Route::get('offer/{house:id}', [MainController::class, 'offer'])->name('offer'); 55 Route::get('offer/{house:id}', [MainController::class, 'offer'])->name('offer');
56 56
57 //Детальная страница новостей 57 //Детальная страница новостей
58 Route::get('detail-new/{news:id}', [MainController::class, 'DetailNew'])->name('new'); 58 Route::get('detail-new/{news:id}', [MainController::class, 'DetailNew'])->name('new');
59 59
60 //Страница ЖилойКомплекс 60 //Страница ЖилойКомплекс
61 Route::get('complex/{area:id}', [MainController::class, 'complex'])->name('complex'); 61 Route::get('complex/{area:id}', [MainController::class, 'complex'])->name('complex');
62 62
63 // ajax-фильтры каталога 63 // ajax-фильтры каталога
64 Route::get('catalog_ajax_filter', [MainController::class, 'catalog_ajax_filter'])->name('catalog_ajax_filter'); 64 Route::get('catalog_ajax_filter', [MainController::class, 'catalog_ajax_filter'])->name('catalog_ajax_filter');
65 65
66 //Категория 66 //Категория
67 Route::get('category/{cat}', [MainController::class, 'Category'])->name('category'); 67 Route::get('category/{cat}', [MainController::class, 'Category'])->name('category');
68 68
69 //Категория ajax 69 //Категория ajax
70 Route::get('category_ajax/{cat}', [MainController::class, 'category_ajax'])->name('category_ajax'); 70 Route::get('category_ajax/{cat}', [MainController::class, 'category_ajax'])->name('category_ajax');
71 71
72 //Страница куков 72 //Страница куков
73 Route::get('cookies', function () { 73 Route::get('cookies', function () {
74 return view('cookies'); 74 return view('cookies');
75 })->name('cookies'); 75 })->name('cookies');
76 76
77 //Форма обратной связи в футере 77 //Форма обратной связи в футере
78 Route::post('main_form', [MainController::class, 'main_form'])->name('main_form'); 78 Route::post('main_form', [MainController::class, 'main_form'])->name('main_form');
79 79
80 //Форма обратной связи в хедере 80 //Форма обратной связи в хедере
81 Route::post('header_form', [MainController::class, 'header_form'])->name('header_form'); 81 Route::post('header_form', [MainController::class, 'header_form'])->name('header_form');
82 82
83 //Форма записаться на просмотр в карточке офиса 83 //Форма записаться на просмотр в карточке офиса
84 Route::post('rec_view_form', [MainController::class, 'rec_view_form'])->name('rec_view_form'); 84 Route::post('rec_view_form', [MainController::class, 'rec_view_form'])->name('rec_view_form');
85 85
86 //Форма обратной связи на странице контакты 86 //Форма обратной связи на странице контакты
87 Route::post('page_contact_form', [MainController::class, 'page_contact_form'])->name('page_contact_form'); 87 Route::post('page_contact_form', [MainController::class, 'page_contact_form'])->name('page_contact_form');
88 88
89 //Форма обратной связи предложения по почте 89 //Форма обратной связи предложения по почте
90 Route::post('email_form', [MainController::class, 'email_form'])->name('email_form'); 90 Route::post('email_form', [MainController::class, 'email_form'])->name('email_form');
91 91
92 Route::group([ 92 Route::group([
93 'as' => 'auth.', // имя маршрута, например auth.index 93 'as' => 'auth.', // имя маршрута, например auth.index
94 'prefix' => 'auth', // префикс маршрута, например auth/index 94 'prefix' => 'auth', // префикс маршрута, например auth/index
95 ], function () { 95 ], function () {
96 // Форма регистрации 96 // Форма регистрации
97 Route::get('register', [RegisterController::class, 'register'])->name('register'); 97 Route::get('register', [RegisterController::class, 'register'])->name('register');
98 98
99 // Создание пользователя 99 // Создание пользователя
100 Route::post('register', [RegisterController::class, 'create'])->name('create'); 100 Route::post('register', [RegisterController::class, 'create'])->name('create');
101 //Форма входа 101 //Форма входа
102 Route::get('login', [LoginController::class, 'login'])->name('login'); 102 Route::get('login', [LoginController::class, 'login'])->name('login');
103 103
104 // аутентификация 104 // аутентификация
105 Route::post('login', [LoginController::class, 'autenticate'])->name('auth'); 105 Route::post('login', [LoginController::class, 'autenticate'])->name('auth');
106 106
107 // выход 107 // выход
108 Route::get('logout', [LoginController::class, 'logout'])->name('logout'); 108 Route::get('logout', [LoginController::class, 'logout'])->name('logout');
109 109
110 //Страница неудачной авторизации 110 //Страница неудачной авторизации
111 Route::get('vefiry-message', function () { 111 Route::get('vefiry-message', function () {
112 return view('auth.vefiry-message'); 112 return view('auth.vefiry-message');
113 })->name('vefiry-message'); 113 })->name('vefiry-message');
114 114
115 }); 115 });
116 116
117 /* 117 /*
118 * Личный кабинет пользователя 118 * Личный кабинет пользователя
119 */ 119 */
120 Route::group([ 120 Route::group([
121 'as' => 'user.', // имя маршрута, например user.index 121 'as' => 'user.', // имя маршрута, например user.index
122 'prefix' => 'user', // префикс маршрута, например user/index 122 'prefix' => 'user', // префикс маршрута, например user/index
123 //'namespace' => 'User', // пространство имен контроллеров 123 //'namespace' => 'User', // пространство имен контроллеров
124 'middleware' => ['auth'] // один или несколько посредников 124 'middleware' => ['auth'] // один или несколько посредников
125 ], function () { 125 ], function () {
126 // главная страница 126 // главная страница
127 Route::get('index', [AdminController::class, 'index'])->name('index'); 127 Route::get('index', [AdminController::class, 'index'])->name('index');
128 }); 128 });
129 129
130 /* 130 /*
131 * Панель управления: CRUD-операции над постами, категориями, тегами 131 * Панель управления: CRUD-операции над постами, категориями, тегами
132 */ 132 */
133 Route::group([ 133 Route::group([
134 'as' => 'admin.', // имя маршрута, например admin.index 134 'as' => 'admin.', // имя маршрута, например admin.index
135 'prefix' => 'admin', // префикс маршрута, например admin/index 135 'prefix' => 'admin', // префикс маршрута, например admin/index
136 //'namespace' => 'Admin', // пространство имен контроллеров 136 //'namespace' => 'Admin', // пространство имен контроллеров
137 'middleware' => ['auth'] // один или несколько посредников 137 'middleware' => ['auth'] // один или несколько посредников
138 ], function () { 138 ], function () {
139 /* 139 /*
140 * CRUD-операции над постами Жилых комплексов 140 * CRUD-операции над постами Жилых комплексов
141 */ 141 */
142 Route::resource('area', AreaController::class, []); 142 Route::resource('area', AreaController::class, []);
143 143
144 //дополнительный маршрут для показа картинок объектов недвижимости 144 //дополнительный маршрут для показа картинок объектов недвижимости
145 Route::get('img/area/{area}', [AreaController::class, 'area_category']) 145 Route::get('img/area/{area}', [AreaController::class, 'area_category'])
146 ->name('img.area'); 146 ->name('img.area');
147 147
148 //дополнительный маршрут для добавления картинок объектов недвижимости 148 //дополнительный маршрут для добавления картинок объектов недвижимости
149 Route::post('img/area/{area}', [AreaController::class, 'area_add_img']) 149 Route::post('img/area/{area}', [AreaController::class, 'area_add_img'])
150 ->name('img.add.area'); 150 ->name('img.add.area');
151 151
152 //дополнительный маршрут для удаления картинок объектов недвжимости 152 //дополнительный маршрут для удаления картинок объектов недвжимости
153 Route::get('img/del/{id}/area/{area}', [AreaController::class, 'area_del_img']) 153 Route::get('img/del/{id}/area/{area}', [AreaController::class, 'area_del_img'])
154 ->name('img.del.area'); 154 ->name('img.del.area');
155 155
156 /* 156 /*
157 * CRUD-операции над постами Новости 157 * CRUD-операции над постами Новости
158 */ 158 */
159 Route::resource('news', NewsController::class, []); 159 Route::resource('news', NewsController::class, []);
160 160
161 /* 161 /*
162 * CRUD-операции над настройками Компании 162 * CRUD-операции над настройками Компании
163 */ 163 */
164 Route::resource('company', CompanyAreaController::class, ['except' => ['create', 'store', 'destroy', 'index']]); 164 Route::resource('company', CompanyAreaController::class, ['except' => ['create', 'store', 'destroy', 'index']]);
165 165
166 //форма добавление партнера 166 //форма добавление партнера
167 Route::get('add/partner', [CompanyAreaController::class, 'add_partner'])->name('add.partner'); 167 Route::get('add/partner', [CompanyAreaController::class, 'add_partner'])->name('add.partner');
168 168
169 //Добавление партнера 169 //Добавление партнера
170 Route::post('add/partner', [CompanyAreaController::class, 'add_partner_post'])->name('add.partner.post'); 170 Route::post('add/partner', [CompanyAreaController::class, 'add_partner_post'])->name('add.partner.post');
171 171
172 //удаление партнера 172 //удаление партнера
173 Route::get('delete/partner/{partner}', [CompanyAreaController::class, 'delete_partner'])->name('delete.partner'); 173 Route::get('delete/partner/{partner}', [CompanyAreaController::class, 'delete_partner'])->name('delete.partner');
174 174
175 175
176 /* 176 /*
177 * CRUD-операции над типами недвижимостью 177 * CRUD-операции над типами недвижимостью
178 */ 178 */
179 Route::resource('typearea', TypeAreaController::class, ['except' => ['show']]); 179 Route::resource('typearea', TypeAreaController::class, ['except' => ['show']]);
180 180
181 /* 181 /*
182 * CRUD-операции над форматами недвижимостью 182 * CRUD-операции над форматами недвижимостью
183 */ 183 */
184 Route::resource('formatarea', FormatAreaController::class, ['except' => ['show']]); 184 Route::resource('formatarea', FormatAreaController::class, ['except' => ['show']]);
185 185
186 /* 186 /*
187 * CRUD-операции над сообщениями сайта 187 * CRUD-операции над сообщениями сайта
188 */ 188 */
189 Route::resource('message', MessageAreaController::class, ['except' => ['create', 'store', 'edit', 'update']]); 189 Route::resource('message', MessageAreaController::class, ['except' => ['create', 'store', 'edit', 'update']]);
190 190
191 /* 191 /*
192 * CRUD-операции над офисами 192 * CRUD-операции над офисами
193 */ 193 */
194 Route::resource('houses', HousesController::class, ['except' => ['show']]); 194 Route::resource('houses', HousesController::class, ['except' => ['show']]);
195 195
196 // просмотр дополнительных картинок офиса 196 // просмотр дополнительных картинок офиса
197 Route::get('houses/{house}/images', [HousesController::class, 'view_images'])->name('view.images.houses'); 197 Route::get('houses/{house}/images', [HousesController::class, 'view_images'])->name('view.images.houses');
198 198
199 // форма добавление дополнительной картинки офиса 199 // форма добавление дополнительной картинки офиса
200 Route::get('houses/{house}/add/images', [HousesController::class, 'add_images'])->name('add.images.houses'); 200 Route::get('houses/{house}/add/images', [HousesController::class, 'add_images'])->name('add.images.houses');
201 201
202 // добавление дополнительной картинки офиса 202 // добавление дополнительной картинки офиса
203 Route::post('houses/{house}/add/images', [HousesController::class, 'add_images_store'])->name('add.image.post.houses'); 203 Route::post('houses/{house}/add/images', [HousesController::class, 'add_images_store'])->name('add.image.post.houses');
204 204
205 // удаление дополнительной картинки офиса 205 // удаление дополнительной картинки офиса
206 Route::get('houses/{house}/del/{id}/images', [HousesController::class, 'del_images'])->name('del.images.houses'); 206 Route::get('houses/{house}/del/{id}/images', [HousesController::class, 'del_images'])->name('del.images.houses');
207 207
208 //Форма смены пароля пользователя
209 Route::get('user/password', [AdminController::class, 'form_password'])->name('form_password');
210
211 //Смена пароля пользователя
212 Route::post('user/password', [AdminController::class, 'validate_password'])->name('validate_password');
208 }); 213 });
209 214