<?php
$isEdit = ($mode ?? 'create') === 'edit';
$action = $isEdit ? 'fournisseurs_update' : 'fournisseurs_store';

function fournisseur_value(array $fournisseur, string $key, string $default = ''): string {
    return htmlspecialchars((string)($fournisseur[$key] ?? $default));
}

function fournisseur_error(array $errors, string $key): string {
    return isset($errors[$key]) ? '<div class="invalid-feedback d-block">' . htmlspecialchars($errors[$key]) . '</div>' : '';
}

function fournisseur_is_invalid(array $errors, string $key): string {
    return isset($errors[$key]) ? ' is-invalid' : '';
}
?>

<div class="d-flex justify-content-between align-items-center mb-4">
    <div>
        <h1 class="darlink-title mb-1"><?= $isEdit ? 'Modifier le fournisseur' : 'Nouveau fournisseur' ?></h1>
        <p class="text-muted mb-0">Fiche fournisseur — base du cycle achats de Darlink ERP.</p>
    </div>
    <a href="index.php?page=fournisseurs" class="btn btn-darlink-outline-secondary">← Retour à la liste</a>
</div>

<form method="post" action="index.php?page=<?= $action ?>" class="darlink-card p-4" novalidate>
    <?php if ($isEdit): ?>
        <input type="hidden" name="id" value="<?= (int)($fournisseur['id'] ?? 0) ?>">
    <?php endif; ?>

    <div class="darlink-form-header mb-4">
        <div>
            <div class="text-muted small">Code fournisseur généré automatiquement</div>
            <div class="h4 mb-0"><?= fournisseur_value($fournisseur, 'code_fournisseur') ?></div>
        </div>
        <span class="badge-darlink badge-darlink-light">Phoenix P2.6.2a</span>
    </div>

    <ul class="nav nav-tabs mb-4" role="tablist">
        <li class="nav-item" role="presentation"><button class="nav-link active" data-bs-toggle="tab" data-bs-target="#infos" type="button" role="tab">Informations</button></li>
        <li class="nav-item" role="presentation"><button class="nav-link" data-bs-toggle="tab" data-bs-target="#adresse" type="button" role="tab">Adresse</button></li>
        <li class="nav-item" role="presentation"><button class="nav-link" data-bs-toggle="tab" data-bs-target="#legales" type="button" role="tab">Informations légales</button></li>
        <li class="nav-item" role="presentation"><button class="nav-link" data-bs-toggle="tab" data-bs-target="#statut" type="button" role="tab">Statut</button></li>
    </ul>

    <div class="tab-content">
        <div class="tab-pane fade show active" id="infos" role="tabpanel">
            <div class="darlink-section-title">Informations générales</div>
            <div class="row g-3 mb-4">
                <div class="col-md-3">
                    <label class="form-label">Code fournisseur *</label>
                    <input name="code_fournisseur" class="form-control form-darlink<?= fournisseur_is_invalid($errors, 'code_fournisseur') ?>" value="<?= fournisseur_value($fournisseur, 'code_fournisseur') ?>" readonly>
                    <?= fournisseur_error($errors, 'code_fournisseur') ?>
                </div>
                <div class="col-md-5">
                    <label class="form-label">Raison sociale *</label>
                    <input name="raison_sociale" class="form-control form-darlink<?= fournisseur_is_invalid($errors, 'raison_sociale') ?>" value="<?= fournisseur_value($fournisseur, 'raison_sociale') ?>" autofocus required placeholder="Ex. Fournisseur Atlas">
                    <?= fournisseur_error($errors, 'raison_sociale') ?>
                </div>
                <div class="col-md-4">
                    <label class="form-label">Enseigne / nom commercial</label>
                    <input name="nom_commercial" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'nom_commercial') ?>">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Contact</label>
                    <input name="contact" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'contact') ?>" placeholder="Responsable commercial">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Fonction</label>
                    <input name="fonction" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'fonction') ?>">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Téléphone</label>
                    <input name="telephone" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'telephone') ?>" placeholder="05...">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Mobile / WhatsApp</label>
                    <input name="mobile" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'mobile') ?>" placeholder="06...">
                </div>
                <div class="col-md-4">
                    <label class="form-label">E-mail</label>
                    <input name="email" type="email" class="form-control form-darlink<?= fournisseur_is_invalid($errors, 'email') ?>" value="<?= fournisseur_value($fournisseur, 'email') ?>" placeholder="contact@fournisseur.ma">
                    <?= fournisseur_error($errors, 'email') ?>
                </div>
                <div class="col-md-4">
                    <label class="form-label">Site web</label>
                    <input name="site_web" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'site_web') ?>">
                </div>
            </div>
        </div>

        <div class="tab-pane fade" id="adresse" role="tabpanel">
            <div class="darlink-section-title">Adresse</div>
            <div class="row g-3 mb-4">
                <div class="col-md-12">
                    <label class="form-label">Adresse</label>
                    <input name="adresse" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'adresse') ?>">
                </div>
                <div class="col-md-12">
                    <label class="form-label">Complément</label>
                    <input name="complement_adresse" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'complement_adresse') ?>">
                </div>
                <div class="col-md-3">
                    <label class="form-label">Code postal</label>
                    <input name="code_postal" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'code_postal') ?>">
                </div>
                <div class="col-md-5">
                    <label class="form-label">Ville</label>
                    <input name="ville" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'ville') ?>" placeholder="Casablanca, Marrakech, Agadir...">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Pays</label>
                    <input name="pays" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'pays', 'Maroc') ?>">
                </div>
            </div>
        </div>

        <div class="tab-pane fade" id="legales" role="tabpanel">
            <div class="darlink-section-title">Informations légales</div>
            <div class="row g-3 mb-4">
                <div class="col-md-3"><label class="form-label">ICE</label><input name="ice" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'ice') ?>"></div>
                <div class="col-md-3"><label class="form-label">IF</label><input name="identifiant_fiscal" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'identifiant_fiscal') ?>"></div>
                <div class="col-md-3"><label class="form-label">RC</label><input name="registre_commerce" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'registre_commerce') ?>"></div>
                <div class="col-md-3"><label class="form-label">Patente</label><input name="patente" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'patente') ?>"></div>
                <div class="col-md-3"><label class="form-label">SIRET</label><input name="siret" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'siret') ?>"></div>
                <div class="col-md-3"><label class="form-label">TVA intracommunautaire</label><input name="tva_intracom" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'tva_intracom') ?>"></div>
            </div>

            <div class="darlink-section-title">Conditions commerciales</div>
            <div class="row g-3 mb-4">
                <div class="col-md-6"><label class="form-label">Conditions et délai de paiement</label><input name="conditions_reglement" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'conditions_reglement') ?>" placeholder="Comptant, 30 jours, fin de mois..."></div>
                <div class="col-md-3"><label class="form-label">Délai livraison moyen</label><input name="delai_livraison" type="number" min="0" class="form-control form-darlink" value="<?= fournisseur_value($fournisseur, 'delai_livraison') ?>"></div>
                <div class="col-md-3"><label class="form-label">Jours</label><input class="form-control form-darlink" value="jours" disabled></div>
            </div>
        </div>

        <div class="tab-pane fade" id="statut" role="tabpanel">
            <div class="darlink-section-title">Statut et observations</div>
            <div class="row g-3 mb-4">
                <div class="col-md-3">
                    <label class="form-label">Statut</label>
                    <select name="actif" class="form-select form-darlink">
                        <option value="1" <?= (int)($fournisseur['actif'] ?? 1) === 1 ? 'selected' : '' ?>>Actif</option>
                        <option value="0" <?= (int)($fournisseur['actif'] ?? 1) === 0 ? 'selected' : '' ?>>Inactif</option>
                    </select>
                </div>
                <div class="col-md-9">
                    <label class="form-label">Observations</label>
                    <textarea name="observations" class="form-control form-darlink" rows="4" placeholder="Notes internes, horaires, contraintes de livraison..."><?= fournisseur_value($fournisseur, 'observations') ?></textarea>
                </div>
            </div>
        </div>
    </div>

    <div class="d-flex flex-column flex-md-row justify-content-end gap-2 mt-3">
        <a href="index.php?page=fournisseurs" class="btn btn-darlink-outline-secondary">Annuler</a>
        <button type="submit" class="btn darlink-btn-primary">Enregistrer</button>
    </div>
</form>
