HEX
Server: Apache/2.4.58 (Ubuntu)
System: Linux ip-172-26-0-120 6.17.0-1009-aws #9~24.04.2-Ubuntu SMP Fri Mar 6 23:50:29 UTC 2026 x86_64
User: ubuntu (1000)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: /var/www/html/spion/resources/views/admin/user/edit-website.blade.php
@extends('adminlte::page')

@section('title', 'Website Management')

@section('content_header')
    <h1>Edit Website</h1>
@stop

@section('content')
    <div class="card card-dark">
        <div class="card-header">
            <h3 class="card-title">Edit Website Details</h3>
        </div>
        <div class="card-body">
            <form id="updateWebsiteForm">
                @csrf
                <input type="hidden" name="website_id" id="website_id" value="{{ $userWebsite->id }}">

                <div class="form-group row">
                    <div class="col-md-6">
                        <x-adminlte-input label="First Name" name="first_name" id="first_name"
                            value="{{ $userWebsite->first_name }}" required />
                    </div>
                    <div class="col-md-6">
                        <x-adminlte-input label="Last Name" name="last_name" id="last_name"
                            value="{{ $userWebsite->last_name }}" required />
                    </div>
                </div>

                <div class="form-group row">
                    <div class="col-md-6">
                        <x-adminlte-input label="Email" name="email" id="email" value="{{ $userWebsite->email }}"
                            required />
                    </div>
                    <div class="col-md-6">
                        <x-adminlte-input label="Business Name" name="business_name" id="business_name"
                            value="{{ $userWebsite->business_name }}" required />
                    </div>
                </div>

                <div class="form-group row">
                    <div class="col-md-6">
                        <x-adminlte-input label="Business Email" name="business_email" id="business_email"
                            value="{{ $userWebsite->business_email }}" required />
                    </div>
                    <div class="col-md-6">
                        <x-adminlte-input label="Business Phone" name="business_phone" id="business_phone"
                            value="{{ $userWebsite->business_phone }}" required />
                    </div>
                </div>

                <div class="form-group row">
                    <div class="col-md-6">
                        <x-adminlte-input label="Business Address 1" name="business_address_1" id="business_address_1"
                            value="{{ $userWebsite->business_address_1 }}" required />
                    </div>
                    <div class="col-md-6">
                        <x-adminlte-input label="Business Address 2" name="business_address_2" id="business_address_2"
                            value="{{ $userWebsite->business_address_2 }}" />
                    </div>
                </div>

                <div class="form-group row">
                    <div class="col-md-6">
                        <x-adminlte-select label="Country" name="country" id="country">
                            <option selected disabled>Select Country</option>
                            @foreach ($countries as $country)
                                <option value="{{ $country->id }}" {{ $userWebsite->country == $country->id ? 'selected' : '' }}>
                                    {{ $country->name }}
                                </option>
                            @endforeach
                        </x-adminlte-select>
                    </div>
                    <div class="col-md-6">
                        <x-adminlte-select label="State" name="state" id="state">
                            <option selected disabled>Select State</option>
                            @foreach ($states as $state)
                            <option value="{{ $state->id }}" {{ $userWebsite->state == $state->id ? 'selected' : '' }}>
                                {{ $state->name }}
                            </option>
                            @endforeach
                        </x-adminlte-select>
                        {{-- <x-adminlte-input label="State" name="state" id="state" value="{{ $userWebsite->state }}" /> --}}
                    </div>
                </div>
                <div class="form-group row">
                    <div class="col-md-6">
                        <x-adminlte-select label="City" name="city" id="city">
                            <option selected disabled>Select City</option>
                            @foreach ($cities as $city)
                            <option value="{{ $city->id }}" {{ $userWebsite->city == $city->id ? 'selected' : '' }}>
                                {{ $city->name }}
                            </option>
                            @endforeach
                        </x-adminlte-select>
                        {{-- <x-adminlte-input label="City" name="city" id="city" value="{{ $userWebsite->city }}" /> --}}
                    </div>
                    <div class="col-md-6">
                        <x-adminlte-input label="Street" name="street" id="street"
                            value="{{ $userWebsite->street }}" />
                    </div>
                </div>
                <div class="form-group row">
                    <div class="col-md-6">
                        <x-adminlte-input label="Zip Code" name="zip_code" id="zip_code"
                            value="{{ $userWebsite->zip_code }}" />
                    </div>
                    <div class="col-md-6">
                        <x-adminlte-input label="Domain Name" name="domain_name" id="domain_name"
                            value="{{ $userWebsite->domain_name }}" />
                    </div>
                </div>
                @php
                    // Ensure the variable is always an array
                    $socialUrls = is_string($userWebsite->social_urls)
                        ? json_decode($userWebsite->social_urls, true)
                        : (is_array($userWebsite->social_urls)
                            ? $userWebsite->social_urls
                            : []);
                @endphp
                <div class="form-group row">
                    <div class="col-md-6">
                        <x-adminlte-input label="Subdomain Preference" name="subdomain_preference" id="subdomain_preference"
                            value="{{ $userWebsite->subdomain_preference }}" />
                    </div>
                    <div class="col-md-6">
                        <label for="social_urls">Social URLs</label>
                        @foreach ($socialUrls as $url)
                            <input type="text" class="form-control mb-2" name="social_urls[]"
                                value="{{ $url }}" placeholder="Enter Social URL">
                        @endforeach
                    </div>
                </div>
                <div class="form-group row">
                    {{-- Handling Multiple Pages --}}
                    @php
                        $pages = is_string($userWebsite->pages)
                            ? json_decode($userWebsite->pages, true)
                            : (is_array($userWebsite->pages)
                                ? $userWebsite->pages
                                : []);
                    @endphp
                    <div class="col-md-6">
                        <label for="pages">Pages</label>
                        @foreach ($pages as $page)
                            <input type="text" class="form-control mb-2" name="pages[]" value="{{ $page }}"
                                placeholder="Enter Page Name">
                        @endforeach
                    </div>
                    <div class="col-md-6">
                        <x-adminlte-input label="Logo URL" name="logo" id="logo" type="file"
                            value="" />
                        <img src="{{ asset('storage/' . $userWebsite->logo) }}" width="35" height="35"
                            alt="logo" />
                    </div>
                </div>
                {{-- Handling Multiple Services --}}
                @php
                    $serviceNames = is_string($userWebsite->services_name)
                        ? json_decode($userWebsite->services_name, true)
                        : (is_array($userWebsite->services_name)
                            ? $userWebsite->services_name
                            : []);
                    $serviceDescriptions = is_string($userWebsite->services_description)
                        ? json_decode($userWebsite->services_description, true)
                        : (is_array($userWebsite->services_description)
                            ? $userWebsite->services_description
                            : []);
                @endphp
                <div class="form-group row">
                    {{-- Handling Multiple Media URLs --}}
                    @php
                        $mediaUrls = is_string($userWebsite->media)
                            ? json_decode($userWebsite->media, true)
                            : (is_array($userWebsite->media)
                                ? $userWebsite->media
                                : []);
                    @endphp
                    <div class="col-md-6">
                        <label for="media">Media URLs</label>
                        @foreach ($mediaUrls as $media)
                            <input type="file" class="form-control mb-2" name="media[]" value=""
                                placeholder="Enter Media URL" multiple>
                            <img src="{{ asset('storage/' . $media) }}" width="35" height="35" alt="media" />
                        @endforeach
                    </div>
                    <div class="col-md-6">
                        <label for="services_name">Services Name</label>
                        @foreach ($serviceNames as $service)
                            <input type="text" class="form-control mb-2" name="services_name[]"
                                value="{{ $service }}" placeholder="Enter Service Name">
                        @endforeach
                    </div>
                </div>
                <div class="form-group row">
                    <div class="col-md-6">
                        <label for="services_description">Services Description</label>
                        @foreach ($serviceDescriptions as $desc)
                            <textarea class="form-control mb-2" rows="3" name="services_description[]"
                                placeholder="Enter Service Description">{{ $desc }}</textarea>
                        @endforeach
                    </div>
                    <div class="col-md-6">
                        <x-adminlte-textarea label="Business Paragraph" rows="3" name="business_paragraph"
                            id="business_paragraph">{{ $userWebsite->business_paragraph }}</x-adminlte-textarea>
                    </div>
                </div>

                <div class="form-group row">
                    <div class="col-md-6">
                        <x-adminlte-input label="Primary Color" name="primary_color" id="primary_color"
                            value="{{ $userWebsite->primary_color }}" />
                    </div>
                    <div class="col-md-6">
                        <x-adminlte-input label="Secondary Color" name="secondary_color" id="secondary_color"
                            value="{{ $userWebsite->secondary_color }}" />
                    </div>
                </div>
                <div class="form-group row">
                    <div class="col-md-6">
                        <x-adminlte-input label="Highlight Color" name="highlight_color" id="highlight_color"
                            value="{{ $userWebsite->highlight_color }}" />
                    </div>
                    <div class="col-md-6">
                        <label for="status">Status</label>
                        <select class="form-control" name="status" id="status">
                            @foreach ([1 => 'Draft', 2 => 'Submitted', 3 => 'Unpublished', 4 => 'Published'] as $key => $value)
                                <option value="{{ $key }}" {{ $userWebsite->status == $key ? 'selected' : '' }}>
                                    {{ $value }}</option>
                            @endforeach
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <x-adminlte-textarea label="Instructions" name="instructions"
                        id="instructions">{{ $userWebsite->instructions }}</x-adminlte-textarea>
                </div>
                <div class="form-group row">
                    <div class="col-md-12 text-center">
                        <a href="{{ route('admin.users.website.index') }}" class="btn button-primary">Back</a>
                        <button type="submit" class="btn button-primary">Update</button>
                    </div>
                </div>

            </form>
        </div>
    </div>
@stop

@section('js')
    <script>
        $(document).ready(function() {
            $("#updateWebsiteForm").on("submit", function(e) {
                e.preventDefault();

                let formData = $(this).serialize();
                let websiteId = $("#website_id").val();

                $.ajax({
                    url: "{{ route('admin.users.website.update', '') }}/" + websiteId,
                    type: "POST",
                    data: formData,
                    success: function(response) {
                        if (response.success) {
                            alert(response.message);
                            window.location.href = "{{ route('admin.users.website.index') }}";
                        } else {
                            alert(response.message);
                        }
                    },
                    error: function(xhr) {
                        alert("An error occurred while updating.");
                    }
                });
            });
        });
        $(document).ready(function() {
            $('#country').change(function() {
                let countryId = $(this).val();
                console.log(countryId);
                
                $('#state').html('<option selected disabled>Loading...</option>');
                $('#city').html('<option selected disabled>Select City</option>');

                $.ajax({
                    url: '{{ route('admin.get.states') }}',
                    type: 'GET',
                    data: { country_id: countryId },
                    success: function(data) {
                        let stateOptions = '<option selected disabled>Select State</option>';
                        data.forEach(state => {
                            stateOptions += `<option value="${state.id}">${state.name}</option>`;
                        });
                        $('#state').html(stateOptions);
                    }
                });
            });

            $('#state').change(function() {
                let stateId = $(this).val();
                $('#city').html('<option selected disabled>Loading...</option>');

                $.ajax({
                    url: '{{ route('admin.get.cities') }}',
                    type: 'GET',
                    data: { state_id: stateId },
                    success: function(data) {
                        let cityOptions = '<option selected disabled>Select City</option>';
                        data.forEach(city => {
                            cityOptions += `<option value="${city.id}">${city.name}</option>`;
                        });
                        $('#city').html(cityOptions);
                    }
                });
            });
        });

    </script>
@stop