<% layout('layouts/main') %>
<% const planLabel = { trial: 'Essai', starter: 'Starter', business: 'Business', premium: 'Premium' }; %>
<% const subStatusLabel = { trialing: 'Essai', active: 'Actif', past_due: 'Paiement en retard', canceled: 'Annulé', manual_review: 'À vérifier' }; %>

<section class="saas-admin-page">
  <div class="saas-admin-layout">
    <aside class="saas-admin-rail">
      <div class="rail-brand"><span>SA</span><strong>Admin SaaS</strong></div>
      <nav>
        <a href="/saas-admin">Clients SaaS</a>
        <a href="/tarifs">Tarifs publics</a>
        <a href="<%= publicUrl %>" target="_blank" rel="noopener">Site public</a>
      </nav>
    </aside>

    <main class="saas-admin-main">
      <div class="saas-admin-head">
        <div>
          <p class="eyebrow">Compte client SaaS</p>
          <h1><%= company.name %></h1>
          <p><%= company.slug %> · <%= company.email || 'Email non renseigné' %> · <%= ui.label(company.status) %></p>
        </div>
        <div class="actions">
          <a class="button secondary" href="<%= publicUrl %>" target="_blank" rel="noopener">Voir le site</a>
          <a class="button secondary" href="/saas-admin">Retour</a>
        </div>
      </div>

      <section class="saas-admin-stats">
        <article><span>Clients finaux</span><strong><%= stats.clients.total || 0 %></strong><small><%= stats.admins.total || 0 %> admin(s)</small></article>
        <article><span>Équipe</span><strong><%= stats.employees.total || 0 %></strong><small>Employés entreprise</small></article>
        <article><span>Demandes</span><strong><%= stats.requests.total || 0 %></strong><small>Opportunités reçues</small></article>
        <article><span>Factures</span><strong><%= ui.money(stats.invoices.amount || 0) %></strong><small><%= stats.invoices.total || 0 %> facture(s)</small></article>
        <article><span>Impayés</span><strong><%= ui.money(stats.unpaid.amount || 0) %></strong><small><%= stats.unpaid.total || 0 %> ouvert(s)</small></article>
      </section>

      <section class="premium-grid two">
        <form method="post" class="panel form-grid">
          <input type="hidden" name="_csrf" value="<%= csrfToken %>">
          <div class="module-head">
            <span class="module-index">01</span>
            <div><h2>Entreprise</h2><p>Identité, statut et informations support côté plateforme.</p></div>
          </div>
          <div class="form-grid two">
            <label>Nom commercial<input name="name" value="<%= company.name || '' %>" required></label>
            <label>Raison sociale<input name="legal_name" value="<%= company.legal_name || '' %>"></label>
          </div>
          <div class="form-grid two">
            <label>Email<input type="email" name="email" value="<%= company.email || '' %>"></label>
            <label>Téléphone<input name="phone" value="<%= company.phone || '' %>"></label>
          </div>
          <div class="form-grid two">
            <label>Statut entreprise<select name="status">
              <% ['active','suspended','archived'].forEach((status) => { %><option value="<%= status %>" <%= company.status === status ? 'selected' : '' %>><%= ui.label(status) %></option><% }) %>
            </select></label>
            <label>Priorité support<select name="support_priority">
              <% ['normale','haute','vip'].forEach((priority) => { %><option value="<%= priority %>" <%= accountSettings.support_priority === priority ? 'selected' : '' %>><%= priority %></option><% }) %>
            </select></label>
          </div>
          <label>Responsable compte<input name="account_manager" value="<%= accountSettings.account_manager || '' %>" placeholder="Nom du chargé de compte"></label>

          <div class="module-head">
            <span class="module-index">02</span>
            <div><h2>Abonnement</h2><p>Plan SaaS, sièges, statut de paiement et références Stripe.</p></div>
          </div>
          <div class="subscription-state">
            <strong><%= planLabel[subscription.plan_code] || subscription.plan_code %></strong>
            <span class="badge"><%= subStatusLabel[subscription.status] || subscription.status %></span>
            <small><%= ui.money(subscription.monthly_price || 0) %> / mois · <%= subscription.seats || 0 %> siège(s)</small>
          </div>
          <div class="form-grid two">
            <label>Plan<select name="plan_code">
              <% ['trial','starter','business','premium'].forEach((plan) => { %><option value="<%= plan %>" <%= subscription.plan_code === plan ? 'selected' : '' %>><%= planLabel[plan] %></option><% }) %>
            </select></label>
            <label>Statut abonnement<select name="subscription_status">
              <% ['trialing','active','past_due','manual_review','canceled'].forEach((status) => { %><option value="<%= status %>" <%= subscription.status === status ? 'selected' : '' %>><%= subStatusLabel[status] || status %></option><% }) %>
            </select></label>
          </div>
          <div class="form-grid two">
            <label>Sièges<input name="seats" inputmode="numeric" value="<%= subscription.seats || 3 %>"></label>
            <label>Prix mensuel CHF<input name="monthly_price" inputmode="decimal" value="<%= subscription.monthly_price || 0 %>"></label>
          </div>
          <div class="form-grid two">
            <label>Stripe customer<input name="stripe_customer_id" value="<%= subscription.stripe_customer_id || '' %>" placeholder="cus_..."></label>
            <label>Stripe subscription<input name="stripe_subscription_id" value="<%= subscription.stripe_subscription_id || '' %>" placeholder="sub_..."></label>
          </div>
          <label>Fin période<input type="datetime-local" name="current_period_end" value="<%= subscription.current_period_end ? String(subscription.current_period_end).slice(0,16).replace(' ', 'T') : '' %>"></label>
          <label>Notes SaaS internes<textarea name="saas_admin_notes"><%= accountSettings.saas_admin_notes || '' %></textarea></label>
          <button>Enregistrer le compte SaaS</button>
        </form>

        <div class="panel saas-company-side">
          <div class="module-head">
            <span class="module-index">03</span>
            <div><h2>Domaines</h2><p>Suivi DNS et URLs reliées à l’entreprise.</p></div>
          </div>
          <div class="domain-mini-list">
            <% domains.forEach((domain) => { %>
              <a href="https://<%= domain.hostname %>" target="_blank" rel="noopener">
                <strong><%= domain.hostname %></strong>
                <span><%= domain.type %> · <%= ui.label(domain.status) %></span>
              </a>
            <% }) %>
            <% if (!domains.length) { %><p class="muted">Aucun domaine configuré.</p><% } %>
          </div>

          <div class="module-head">
            <span class="module-index">04</span>
            <div><h2>Utilisateurs</h2><p>Lecture rapide des comptes de l’entreprise.</p></div>
          </div>
          <div class="tenant-user-list">
            <% users.forEach((user) => { %>
              <article>
                <div><strong><%= user.first_name %> <%= user.last_name %></strong><span><%= user.email %></span></div>
                <span class="badge"><%= ui.label(user.role) %></span>
              </article>
            <% }) %>
          </div>
        </div>
      </section>

      <section class="panel">
        <div class="module-head">
          <span class="module-index">05</span>
          <div><h2>Activité récente</h2><p>Journal côté plateforme pour détecter les comptes bloqués, les actions commerciales et les besoins support.</p></div>
        </div>
        <div class="audit-list">
          <% activity.forEach((event) => { %>
            <div>
              <strong><%= ui.label(event.action) %></strong>
              <span><%= event.email || 'Système' %> · <%= ui.date(event.created_at, true) %></span>
            </div>
          <% }) %>
          <% if (!activity.length) { %><p class="muted">Aucune activité récente.</p><% } %>
        </div>
      </section>
    </main>
  </div>
</section>
