HEX
Server: LiteSpeed
System: Linux php-prod-3.spaceapp.ru 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC 2025 x86_64
User: sarli3128 (1010)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /home/marketing.cfbon.ru/public_html/resources/views/promotions/edit.blade.php
@extends('layouts.main')

@section('return_btn_url') @include('layouts.return-btn', ['routeName' => 'promotions.index']) @endsection

@section('title', 'Редактировать акцию: ' . $promotion->name)

@section('content')
    <div class="container mt-3 ms-2">
        <form action="{{ route('promotions.update', $promotion->id) }}" method="post" enctype="multipart/form-data">
            @csrf
            @method('PATCH')
            <div class="row d-flex">
                <div class="col-md-6">
                    <div class="mb-3">
                        <select class="form-select @error('promotion_type') is-invalid @enderror" name="promotion_type" id="promotionTypeSelect">
                            @foreach($promotionType as $value => $label)
                                <option value="{{ $value }}" {{ old('promotion_type', $promotion->promotion_type) == $value ? 'selected' : '' }}>
                                    {{ $label }}
                                </option>
                            @endforeach
                        </select>
                        @error('promotion_type')<div class="invalid-feedback">{{ $message }}</div>@enderror
                    </div>
                    <div class="mb-3">
                        <input type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name', $promotion->name) }}" placeholder="Название акции">
                        @error('name')<div class="invalid-feedback">{{ $message }}</div>@enderror
                    </div>
                    <div class="mb-3">
                        <textarea type="text" id="titleInput" class="form-control @error('title') is-invalid @enderror" name="title" placeholder="Заголовок или подзаголовок">{{ old('title', $promotion->title) }}</textarea>
                        @error('title')<div class="invalid-feedback">{{ $message }}</div>@enderror
                    </div>
                    <div class="mb-3">
                        <textarea id="descriptionInput" class="form-control @error('description') is-invalid @enderror" name="description" rows="5" placeholder="Текст акции">{{ old('description', $promotion->description) }}</textarea>
                        @error('description')<div class="invalid-feedback">{{ $message }}</div>@enderror
                    </div>
                    <div class="mb-3 position-relative" style="max-width: 300px;">
                        <label for="img" class="form-label">Картинка акции</label>
                        <input accept="image/*" type="file" class="form-control @error('img') is-invalid @enderror" name="img" id="imgUpload" data-saved-image="{{ $promotion->img_url }}">
                        <button type="button" id="clearBtn" class="btn btn-outline-secondary" style="position: absolute; right: -45px; top: 50%; transform: translateY(-10%); z-index: 5;">
                            <span class="bi bi-x-lg"></span>
                        @error('img')<div class="invalid-feedback">{{ $message }}</div>@enderror
                    </div>
                    <div class="mb-3 mt-2 switch-wrapper">
                        <label class="switch-label">
                            <input type="checkbox" name="is_active"
                                   {{ old('is_active', $promotion->is_active ? 'on' : '') == 'on' ? 'checked' : '' }}
                                   class="switch-checkbox @error('is_active') is-invalid @enderror">
                            <span class="switch-slider"></span>
                            <span class="switch-text">Активна</span>
                        </label>

                        @error('is_active')<div class="invalid-feedback">{{ $message }}</div>@enderror
                    </div>

                    <button type="submit" class="btn btn-danger w-25">Изменить</button>
                </div>

                <div class="col-md-6" id="sitePreviewContainer" style="display: none;">
                    <div class="stock">
                        <div class="stock__wrapper">
                            <div class="stock__top">
                                <p class="stock__title">{!! $promotion->title !!}</p>
                                <p class="stock__text">{!! $promotion->description !!}</p>
                            </div>
                            <img src="{{ $promotion->img_url }}" alt="Изображение не выбранно" />
                        </div>
                    </div>
                </div>
                <div class="col-md-6" id="mobilePreviewContainer" style="display: none;">
                    <div class="border rounded p-3 bg-light">
                        <div id="preview" class="text-center mt-3">
                            <img src="{{ $promotion->img_url ?? '' }}" alt="Изображение не выбранно" style="max-height: 300px;" id="mobileImagePreview">
                        </div>
                    </div>
                </div>

            </div>
        </form>
    </div>
@endsection
@section('scripts')
    @parent
    <script>
        const siteTypeValue = '{{ \App\Enums\PromotionType::SITE->value }}';
        const mobileTypeValue = '{{ \App\Enums\PromotionType::MOBILE->value }}';
        const mobilePlugImg = '{{ asset('/adminLTE/images/no-image-text.png') }}';
        const sitePlugImg = '{{ asset('/adminLTE/images/site-promotion-plug.svg') }}';
    </script>
    <script src="{{ asset('adminLTE/dist/js/promotion.js') }}"></script>
@endsection