<?php
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Storage;
?>

<!-- Page Styles -->
@section('page-style')
@vite(['resources/assets/vendor/scss/pages/page-profile.scss'])
@endsection


<!-- Vendor Styles -->
@section('vendor-style')
@vite([
'resources/assets/vendor/libs/select2/select2.scss',
'resources/assets/vendor/libs/animate-css/animate.scss',
'resources/assets/vendor/libs/sweetalert2/sweetalert2.scss',
'resources/assets/vendor/libs/flatpickr/flatpickr.scss'
])
@endsection

<!-- Vendor Scripts -->
@section('vendor-script')
@vite(['resources/assets/vendor/libs/select2/select2.js' ,/*'resources/assets/vendor/libs/cleave-zen/cleave-zen.js',*/ 'resources/assets/vendor/libs/sweetalert2/sweetalert2.js', 'resources/assets/vendor/libs/flatpickr/flatpickr.js'])
@endsection



<div class="row">
  <div class="col-md-12">
    {{-- <div class="nav-align-top">
      <ul class="nav nav-pills flex-column flex-md-row mb-6 gap-md-0 gap-2">
        <li class="nav-item">
          <a class="nav-link active" href="javascript:void(0);"><i class="icon-base bx bx-user icon-sm me-1_5"></i>
            Account</a>
          </li>
          <li class="nav-item"> <a class="nav-link" href="{{ url('pages/account-settings-security') }}">
            <i class="icon-base bx bx-lock-alt icon-sm me-1_5"></i> Security</a>
          </li>
          <li class="nav-item"> <a class="nav-link" href="{{ url('pages/account-settings-billing') }}">
            <i class="icon-base bx bx-detail icon-sm me-1_5"></i> Billing & Plans</a>
          </li>
          <li class="nav-item"> <a class="nav-link" href="{{ url('pages/account-settings-notifications') }}">
            <i class="icon-base bx bx-bell icon-sm me-1_5"></i> Notifications</a>
          </li>
          <li class="nav-item"> <a class="nav-link" href="{{ url('pages/account-settings-connections') }}">
            <i class="icon-base bx bx-link-alt icon-sm me-1_5"></i> Connections</a>
          </li>
        </ul>
      </div> --}}

      @if ($errors->any())
      <div class="alert alert-danger">
        <ul>
          @foreach ($errors->all() as $error)
          <li>{{ $error }}</li>
          @endforeach
        </ul>
      </div>
      @endif


      <div class="card mb-6">
        <div class="card-body pt-4">
          <form id="formAccountSettings" method="POST" action="{{ route('user.updateProfile', ['user_id' => $user->id]) }}">
            @csrf
            <div class="row g-6">
              <div class="col-12">
                <h5 class="mb-0">Informazioni generali</h5>
              </div>

              <div class="col-md-4">
                <div class="d-flex align-items-start align-items-sm-center gap-6 pb-4">
                  <img src="{{ $user->getUrlFoto() }}" alt="user-avatar" class="d-block w-px-100 h-px-100 rounded" id="uploadedAvatar" />
                  <input type="hidden" name="path_foto" value="{{ $user->path_foto }}" />
                  <div class="button-wrapper">
                    <label for="upload_foto_profilo" class="btn btn-primary me-3 mb-4" tabindex="0">
                      <span class="d-none d-sm-block">Carica foto profilo</span>
                      <i class="icon-base bx bx-upload d-block d-sm-none"></i>
                      <input type="file" id="upload_foto_profilo" class="account-file-input" hidden accept="image/png, image/jpeg" onchange="foto_profilo_selezionata()" />
                    </label>
                    {{-- <button type="button" class="btn btn-label-secondary account-image-reset mb-4">
                      <i class="icon-base bx bx-reset d-block d-sm-none"></i>
                      <span class="d-none d-sm-block">Reset</span>
                    </button> --}}

                    {{-- <div>Allowed JPG, GIF or PNG. Max size of 800K</div> --}}
                  </div>
                </div>
              </div>

              <div class="col-md-8">
                <div class="row g-6">
                  <div class="col-md-6 form-control-validation">
                    <label for="firstName" class="form-label">Nome<span class="text-danger">*</span></label>
                    <input class="form-control" type="text" id="nome" name="nome" value="{{ old('nome', $user->nome) }}" autofocus />
                  </div>
                  <div class="col-md-6 form-control-validation">
                    <label for="lastName" class="form-label">Cognome<span class="text-danger">*</span></label>
                    <input class="form-control" type="text" name="cognome" id="cognome" value="{{ old('cognome', $user->cognome) }}" />
                  </div>
                  <div class="col-md-6">
                    <label for="email" class="form-label">E-mail<span class="text-danger">*</span></label>
                    <input class="form-control" type="text" id="email" name="email" value="{{ old('email', $user->email) }}" />
                  </div>
                  <div class="col-md-6">
                    <label for="telefono" class="form-label">Telefono<span class="text-danger">*</span></label>
                    <input class="form-control" type="text" id="telefono" name="telefono" value="{{ old('telefono', $user->telefono) }}" />
                  </div>
                  <div class="col-md-6">
                    <label for="sesso" class="form-label">Sesso</label>
                    <select class="form-control" id="sesso" name="sesso">
                      <option value="M" {{ $user->sesso == 'M' ? 'selected' : '' }}>Maschio</option>
                      <option value="F" {{ $user->sesso == 'F' ? 'selected' : '' }}>Femmina</option>
                    </select>
                  </div>
                  <div class="col-md-6">
                    <label for="cod_fiscale" class="form-label">Codice fiscale</label>
                    <input class="form-control" type="text" id="cod_fiscale" name="cod_fiscale" value="{{ old('cod_fiscale', $user->cod_fiscale) }}" />
                  </div>
                </div>
              </div>
            </div>

            <div class="row g-6 mt-4">
              <div class="col-12">
                <h5 class="mb-0">Luogo e data di nascita</h5>
              </div>
              <div class="col-md-4">
                <label for="data_nascita" class="form-label">Data di nascita<span class="text-danger">*</span></label><br>
                <input class="form-control" type="text" id="data_nascita" name="data_nascita" value="{{ old('data_nascita', $user->data_nascita) }}" placeholder="DD/MM/YYYY"/>
              </div>
              <div class="col-md-4">
                <label for="nazione_nascita_id" class="form-label">Nazione di nascita<span class="text-danger">*</span></label>
                <select class="form-control" id="nazione_nascita_id" name="nazione_nascita_id">
                  @if($user->nazione_nascita_id)
                  <option value="{{ $user->nazione_nascita_id }}" selected>{{ $user->nazioneNascita->nome }}</option>
                  @endif
                </select>
              </div>
              <div class="col-md-4 comuneNascita" style="display: {{ $user->nazioneNascita!=null&&$user->nazioneNascita->comuni->count() > 0 ? 'block' : 'none' }}">
                <label for="comune_nascita_id" class="form-label">Comune di nascita<span class="text-danger">*</span></label>
                <select class="form-control" id="comune_nascita_id" name="comune_nascita_id">
                  @if($user->comune_nascita_id)
                  <option value="{{ $user->comune_nascita_id }}" selected>{{ $user->comuneNascita->nome }}</option>
                  @endif
                </select>
              </div>
            </div>

            <div class="row g-6 mt-4">
              <div class="col-12">
                <h5 class="mb-0">Residenza</h5>
              </div>
              <div class="col-md-4">
                <label for="indirizzo" class="form-label">Indirizzo<span class="text-danger">*</span></label>
                <input class="form-control" type="text" id="indirizzo" name="indirizzo" value="{{ old('indirizzo', $user->indirizzo) }}" />
              </div>
              <div class="col-md-4">
                <label for="cap" class="form-label">CAP</label>
                <input class="form-control" type="text" id="cap" name="cap" value="{{ old('cap', $user->cap) }}" />
              </div>
              <div class="col-md-4">
                <label for="comune_residenza_id" class="form-label">Comune<span class="text-danger">*</span></label>
                <select class="form-control" id="comune_residenza_id" name="comune_residenza_id">
                  @if($user->comune_residenza_id)
                  <option value="{{ $user->comune_residenza_id }}" selected>{{ $user->comuneResidenza->nome }}</option>
                  @endif
                </select>
              </div>
            </div>

            <div class="row g-6 mt-4">
              <div class="col-12">
                <h5 class="mb-0">Dati sanitari</h5>
              </div>
              <div class="col-md-4">
                <label for="patologie" class="form-label">Patologie</label>
                <textarea class="form-control" id="patologie" name="patologie" rows="3">{{ old('patologie', $user->patologie) }}</textarea>
              </div>
              <div class="col-md-4">
                <label for="allergie" class="form-label">Allergie</label>
                <textarea class="form-control" id="allergie" name="allergie" rows="3">{{ old('allergie', $user->allergie) }}</textarea>
              </div>
              <div class="col-md-4">
                <label for="note" class="form-label">Note generali</label>
                <textarea class="form-control" id="note" name="note" rows="3">{{ old('note', $user->note) }}</textarea>
              </div>
              <div class="col-md-6">
                <label for="note_alimentari" class="form-label">Note alimentari</label>
                <textarea class="form-control" id="note_alimentari" name="note_alimentari" rows="3">{{ old('note_alimentari', $user->note_alimentari) }}</textarea>
              </div>
              <div class="col-md-6">
                <label for="note_alimentari" class="form-label">Allergie</label>
                <div class="row mb-3">
                  @foreach(\App\Models\Allergia::orderBy('label', 'asc')->get() as $allergia)
                  <div class="col-6">
                    <input type="checkbox" name="elencoAllergie[]" value="{{ $allergia->id }}" {{ $user->elencoAllergie->contains($allergia->id) ? 'checked' : '' }}> {{ $allergia->label }}
                  </div>
                  @endforeach
                </div>
              </div>

            </div>

            <div class="row g-6 mt-4">
              <div class="col-12">
                <hr>
                <h5 class="mb-0">Disabilità (per utenti minorenni)</h5>
              </div>
              <div class="col-md-12">
                <label for="disabilita_certificata" class="form-label">Il minore ha una disabilità certificata?</label><br>
                <div class="btn-group" role="group">
                  <input type="radio" class="btn-check" name="disabilita_certificata" value='0' id="disabilita_certificata_no" {{!$user->disabilita_certificata?'checked':''}}>
                  <label class="btn btn-outline-danger px-1" for="disabilita_certificata_no" >NO</label>
                  <input type="radio" class="btn-check" name="disabilita_certificata" value='1' id="disabilita_certificata_si" {{$user->disabilita_certificata?'checked':''}}>
                  <label class="btn btn-outline-success px-1" for="disabilita_certificata_si" >SI</label>
                </div>
              </div>
            </div>

            <div class="row g-6">
              <div class="col-md disabilita">
                <label for="disabilita_servizio_neuro_infantile" class="form-label">Il minore è seguito dal Servizio di Neuropsichiatria Infantile?</label><br>
                <div class="btn-group" role="group">
                  <input type="radio" class="btn-check" name="disabilita_servizio_neuro_infantile" value='0' id="disabilita_servizio_neuro_infantile_no" {{!$user->disabilita_servizio_neuro_infantile?'checked':''}}>
                  <label class="btn btn-outline-danger px-1" for="disabilita_servizio_neuro_infantile_no" >NO</label>
                  <input type="radio" class="btn-check" name="disabilita_servizio_neuro_infantile" value='1' id="disabilita_servizio_neuro_infantile_si" {{$user->disabilita_servizio_neuro_infantile?'checked':''}}>
                  <label class="btn btn-outline-success px-1" for="disabilita_servizio_neuro_infantile_si" >SI</label>
                </div>
              </div>
              <div class="col-md disabilita disabilitaAltroServizio">
                <label for="disabilita_altro_servizio" class="form-label">Il minore è seguito da altro servizio (specificare):</label>
                <input class="form-control" type="text" id="disabilita_altro_servizio" name="disabilita_altro_servizio" value="{{ old('disabilita_altro_servizio', $user->disabilita_altro_servizio) }}" />
              </div>
              <div class="col-md disabilita">
                <label for="disabilita_diagnosi" class="form-label">Diagnosi</label>
                <input class="form-control" type="text" id="disabilita_diagnosi" name="disabilita_diagnosi" value="{{ old('disabilita_diagnosi', $user->disabilita_diagnosi) }}" />
              </div>
            </div>

            <div class="row g-6">
              <div class="col-md disabilita">
                <label for="disabilita_scuola" class="form-label">Per la frequenza scolastica dell’anno appena concluso presso la Scuola e classe</label>
                <input class="form-control" type="text" id="disabilita_scuola" name="disabilita_scuola" value="{{ old('disabilita_scuola', $user->disabilita_scuola) }}" />
              </div>
              <div class="col-md disabilita">
                <label for="disabilita_servizio_ass_scolastica" class="form-label">Il minore ha usufruito del servizio di Assistenza Educativa scolastica</label><br>
                <div class="btn-group" role="group">
                  <input type="radio" class="btn-check" name="disabilita_servizio_ass_scolastica" value='0' id="disabilita_servizio_ass_scolastica_no" {{!$user->disabilita_servizio_ass_scolastica?'checked':''}}>
                  <label class="btn btn-outline-danger px-1" for="disabilita_servizio_ass_scolastica_no" >NO</label>
                  <input type="radio" class="btn-check" name="disabilita_servizio_ass_scolastica" value='1' id="disabilita_servizio_ass_scolastica_si" {{$user->disabilita_servizio_ass_scolastica?'checked':''}}>
                  <label class="btn btn-outline-success px-1" for="disabilita_servizio_ass_scolastica_si" >SI</label>
                </div>
              </div>
              <div class="col-md disabilita assistenzaEducativa">
                <label for="disabilita_ore_settimanali" class="form-label">Ore settimanali</label>
                <input class="form-control" type="number" id="disabilita_ore_settimanali" name="disabilita_ore_settimanali" value="{{ old('disabilita_ore_settimanali', $user->disabilita_ore_settimanali) }}" />
              </div>
              <div class="col-md disabilita assistenzaEducativa">
                <label for="comune_disabilita_id" class="form-label">Comune disabilità</label>
                <select class="form-control" id="comune_disabilita_id" name="comune_disabilita_id">
                  @if($user->comune_disabilita_id)
                  <option value="{{ $user->comune_disabilita_id }}" selected>{{ $user->comuneDisabilita->nome }}</option>
                  @endif
                </select>
              </div>
              <div class="col-md disabilita">
                <label for="disabilita_insegnante_sostegno" class="form-label">Disabilità seguita da un insegnante sostegno?</label><br>
                <div class="btn-group" role="group">
                  <input type="radio" class="btn-check" name="disabilita_insegnante_sostegno" value='0' id="disabilita_insegnante_sostegno_no" {{!$user->disabilita_insegnante_sostegno?'checked':''}}>
                  <label class="btn btn-outline-danger px-1" for="disabilita_insegnante_sostegno_no" >NO</label>
                  <input type="radio" class="btn-check" name="disabilita_insegnante_sostegno" value='1' id="disabilita_insegnante_sostegno_si" {{$user->disabilita_insegnante_sostegno?'checked':''}}>
                  <label class="btn btn-outline-success px-1" for="disabilita_insegnante_sostegno_si" >SI</label>
                </div>
              </div>
            </div>
            <div class="row g-6">

              <div class="col-md disabilita">
                <label for="disabilita_note" class="form-label">Note</label>
                <input class="form-control" type="text" id="disabilita_note" name="disabilita_note" value="{{ old('disabilita_note', $user->disabilita_note) }}" />
              </div>

            </div>

            <div class="row g-6 mt-12">
              <div class="col-md-12 mt-6">
                <button type="submit" class="btn btn-primary me-3">Salva</button>
                <button type="reset" class="btn btn-label-secondary">Annulla</button>
              </div>
            </div>
          </form>
        </div>
        <!-- /Account -->
      </div>

    </div>
  </div>

  @section('page-script')

  <script type="module">
    $(document).ready(function(){
      $.ajaxSetup({
        headers: {
          'X-CSRF-TOKEN': '{{csrf_token()}}'
        }
      });

      $("[name='data_nascita']").flatpickr({
        //monthSelectorType: 'static',
        //static: true,
        dateFormat: 'd/m/Y'
      });

      $('[name="nazione_nascita_id"]').select2({
        placeholder: "Seleziona nazione",
        ajax: {
          method: 'GET',
          url: "{{ route('nazione.list') }}",
          dataType: 'json',
          data: function(params) {
            return {
              term: params.term || '',
              page: params.page || 1
            }
          },
        }
      });

      $('[name="comune_nascita_id"]').select2({
        placeholder: "Seleziona comune",
        ajax: {
          method: 'GET',
          url: "{{ route('comune.list') }}",
          dataType: 'json',
          data: function(params) {
            return {
              term: params.term || '',
              page: params.page || 1,
              nazione_id: $('[name="nazione_nascita_id"]').val()
            }
          },
        }
      });

      $('[name="comune_residenza_id"]').select2({
        placeholder: "Seleziona comune",
        ajax: {
          method: 'GET',
          url: "{{ route('comune.list') }}",
          dataType: 'json',
          data: function(params) {
            return {
              term: params.term || '',
              page: params.page || 1
            }
          },
        }
      });

      $('[name="comune_disabilita_id"]').select2({
        placeholder: "Seleziona comune",
        ajax: {
          method: 'GET',
          url: "{{ route('comune.list') }}",
          dataType: 'json',
          data: function(params) {
            return {
              term: params.term || '',
              page: params.page || 1
            }
          },
        }
      });

      $('#nazione_nascita_id').on('select2:select', function (e) {
        var data = e.params.data;
        console.log(data);
        if(data['hasComuni'] == true){
          $('.comuneNascita').show();
        }else{
          $('.comuneNascita').hide();
        }
      });

      $('[name="disabilita_certificata"]').on('change', function (e) {
        if($(this).val() == '1'){
          $('.disabilita').show();
          $('[name="disabilita_servizio_neuro_infantile"]:checked').trigger('change');
          $('[name="disabilita_servizio_ass_scolastica"]:checked').trigger('change');
        }else{
          $('.disabilita').hide();
        }
      });
      $('[name="disabilita_certificata"]:checked').trigger('change');

      $('[name="disabilita_servizio_neuro_infantile"]').on('change', function (e) {
        if($(this).val() == '0' && $('[name="disabilita_certificata"]:checked').val() == '1'){
          $('.disabilitaAltroServizio').show();
        }else{
          $('.disabilitaAltroServizio').hide();
        }
      });
      $('[name="disabilita_servizio_neuro_infantile"]:checked').trigger('change');

      $('[name="disabilita_servizio_ass_scolastica"]').on('change', function (e) {
        if($(this).val() == '1' && $('[name="disabilita_certificata"]:checked').val() == '1'){
          $('.assistenzaEducativa').show();
        }else{
          $('.assistenzaEducativa').hide();
        }
      });
      $('[name="disabilita_servizio_ass_scolastica"]:checked').trigger('change');
    });
  </script>

  <script>
    function cropImage(filename){
      $("#extraLargeModal .modal-content").load("{{ route('user.showCropImage') }}?filename="+filename);
      $("#extraLargeModal").modal('show');
    }

    function foto_profilo_selezionata(){
      var file_data = $('#upload_foto_profilo').prop('files')[0];
      var form_data = new FormData();
      form_data.append('file', file_data);

      $.ajax({
        url: "{{ route('user.upload_foto_profilo') }}",
        dataType: 'json',  // what to expect back from the PHP script, if anything
        cache: false,
        contentType: false,
        processData: false,
        data: form_data,
        type: 'post',
        success: function(response){
          $("#uploadedAvatar").attr("src", response['url']);
          cropImage(response['filename']);
        }
      });
    }

  </script>
  @endsection
