@include('layouts.commons.errors')
@include('layouts.commons.success')

<form method="POST"
    action="{{ route("projets.update_statuts", $projet->id ?? '') }}">
    @csrf
    {{ method_field('PUT') }}

    @if(sizeof($projet->statuts) > 0)

        <div class="row">
            <div class="col-12">
                <table id="tableStatus" class="table table-bordered">
                    <thead>
                        <tr>
                            <th>Responsable</th>
                            <th>Fonction</th>
                            <th>Date modification</th>
                            <th>Message</th>
                            <th>Statut</th>
                        </tr>
                    </thead>
                    <tbody>
                        @foreach($projet->statuts as $s)
                            <tr>
                                <td>{{ $s['user_prenom'] }}
                                    {{ $s['user_nom'] }}
                                </td>
                                <td>{{ App\Models\User::get_nom_role_static($s['fonction'], true) }}</td>
                                {{-- <td>{{ $s['updated_at'] }}</td> --}}
                                <td>{{ $s['updated_at'] ? Carbon\Carbon::createFromFormat('Y-m-d H:i:s', $s['updated_at'])->format('d/m/Y') : null}}</td>
                                <td>{{ $s['message'] }}</td>
                                <td>
                                    <img alt="Statut : {{ $s['nom'] }}" class=""
                                        src="{{ URL::to('img/statuts/') }}/{{ $s['icon'] }}" />
                                </td>
                            </tr>
                        @endforeach
                    </tbody>
                </table>
            </div>
        </div>

    @else
        <div class="pt-2">
            <h4>Pas de données disponible.</h4>
        </div>
    @endif

    <div class="row">
        <div class="col-12">
            <div class="form-group text-right">
                @canany(["suspendre_acheteur",
                        "abandonner_acheteur",
                        "soumettre_acheteur",
                        "valider_responsable_achat",
                        "rejeter_responsable_achat",
                        "rejeter_chef_projet",
                        "valider_chef_projet",
                        "cloturer_chef_projet",
                        "avis_projet_controleur_gestion",
                        "rejeter_directeur_achat",
                        "valider_directeur_achatavis_projet_controleur_gestion"])
                    @if($editable)
                        <button type="button" class="btn btn-outline-info" data-toggle="modal"
                            data-target="#modalStatutProjet">
                            Modifier le statut
                        </button>
                    @endif
                @endcanany
            </div>
        </div>
    </div>

    <!-- Modal -->
    <div class="modal fade" id="modalStatutProjet" tabindex="-1" aria-labelledby="modalStatutProjetLabel"
        aria-hidden="true">
        <div class="modal-dialog modal-lg">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title">Avis sur le projet</h5>
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                        <span aria-hidden="true">&times;</span>
                    </button>
                </div>
                <div class="modal-body">
                    <div class="form-group">
                        <label for="message">Commentaire</label>
                        <textarea class="form-control" name="message" rows="3" maxlength="255"></textarea>
                    </div>
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-outline-warning mr-auto" data-dismiss="modal">Annuler</button>
                    @if($editable)
                        {{-- TODO : vérifier que le statut courant de la fiche n'est pas déjà un des 3 ci-dessous --}}
                        @can("suspendre_acheteur")
                        <button type="submit" class="btn btn-outline-warning" name="statut_id"
                            value="{{ PROJET_STATUT::SUSPENDUE }}">Suspendre</button>
                        @endcan
                        @can("abandonner_acheteur")
                            <button type="submit" class="btn btn-outline-danger" name="statut_id"
                                value="{{ PROJET_STATUT::ABANDONNEE }}">Abandonner</button>
                        @endcan
                        @can("soumettre_acheteur")
                            <button type="submit" class="btn btn-outline-success" name="statut_id"
                                value="{{ PROJET_STATUT::SOUMISE }}">Soumettre</button>
                        @endcan

                        {{-- TOOD : vérifier que le statut courant de la fiche n'est pas déjà un des 2 ci-dessous --}}
                        @if ($projet['statut'] !== PROJET_STATUT::REJETEE_RESPONSABLE_ACHAT)
                            @can("valider_responsable_achat")
                                <button type="submit" class="btn btn-outline-success" name="statut_id"
                                    value="{{ PROJET_STATUT::VALIDEE_RESPONSABLE_ACHAT }}">Valider</button>
                            @endcan
                            @can("rejeter_responsable_achat")
                                <button type="submit" class="btn btn-outline-danger" name="statut_id"
                                    value="{{ PROJET_STATUT::REJETEE_RESPONSABLE_ACHAT }}">Rejeter</button>
                            @endcan
                        @else
                            <div class="alert alert-info text-left">
                                <i class="fa fa-info-circle"></i>
                                L'action a été rejetée par le chef de projet achat. L'acheteur doit modifier sa demande.
                            </div>
                        @endif

                        {{-- TOOD : vérifier que le statut courant de la fiche n'est pas déjà un des 3 ci-dessous --}}
                        @can("rejeter_chef_projet")
                            <button type="submit" class="btn btn-outline-danger" name="statut_id"
                                value="{{ PROJET_STATUT::REJETEE_CHEF_PROJET }}">Rejeter</button>
                        @endcan
                        @can("valider_chef_projet")
                            <button type="submit" class="btn btn-outline-primary" name="statut_id"
                                value="{{ PROJET_STATUT::VALIDEE_CHEF_PROJET }}">Valider</button>
                        @endcan
                        @can("cloturer_chef_projet")
                            <button type="submit" class="btn btn-outline-success" name="statut_id"
                                value="{{ PROJET_STATUT::CLOTUREE }}">Clôturer</button>
                        @endcan

                        {{-- TOOD : vérifier que le statut courant de la fiche n'est pas déjà un des 2 ci-dessous --}}
                        @can("avis_projet_controleur_gestion")
                            <button type="submit" class="btn btn-outline-danger" name="statut_id"
                                value="{{ PROJET_STATUT::AVIS_DEFAVORABLE_CONTROLEUR }}">Défavorable</button>
                            <button type="submit" class="btn btn-outline-success" name="statut_id"
                                value="{{ PROJET_STATUT::AVIS_FAVORABLE_CONTROLEUR }}">Favorable</button>
                        @endcan

                        {{-- TOOD : vérifier que le statut courant de la fiche n'est pas déjà un des 2 ci-dessous --}}
                        @can("rejeter_directeur_achat")
                            <button type="submit" class="btn btn-outline-danger" name="statut_id"
                                value="{{ PROJET_STATUT::REJETEE_RESPONSABLE_ACHAT }}">Rejeter</button>
                        @endcan
                        @can("valider_directeur_achat")
                            <button type="submit" class="btn btn-outline-success" name="statut_id"
                                value="{{ PROJET_STATUT::VALIDEE_RESPONSABLE_ACHAT }}">Valider</button>
                        @endcan
                    @endif
                </div>
            </div>
        </div>
    </div>
</form>
