Commit Graph

14 Commits

Author SHA1 Message Date
00998e9320 feat(pct): bouton Prevenance PCT + preview avant envoi + CC responsables/referents
- Service mail_service.py: send_html_mail via SMTP standard (host/port/user/pass/from/use_tls
  depuis Settings > SMTP). Gere SSL_465 et STARTTLS_587. Mode dry_run pour preview.
- Settings: nouvelle section 'smtp' avec smtp_host/port/user/pass/from/use_tls/pct_recipient
  (a configurer pour O365 SMTP submission)
- Router planning_import.py:
  * _build_pct_email(): construit subject + HTML pro/colore (header bleu degrade SANEF,
    cards avec border-left bleu/orange, tableau serveurs, footer)
  * Subject: 'Intervention sur <app>' si app uniforme, sinon liste des serveurs
  * Plage horaire = 20 min × N serveurs (formattee Hh MM)
  * 'Moyen d'exploitation prevu : Rollback en cas de probleme' ajoute en bas
  * _fetch_pct_cc_emails(): query distinct contacts depuis responsable_domaine_contact_id
    + referent_technique_contact_id + server_additional_referents
  * Endpoint POST /patching/import/pct-prevenance/preview retourne {subject, html, to, cc,
    smtp_configured, row_count} sans envoyer
  * Endpoint POST /patching/import/pct-prevenance/send envoie reellement, audit log,
    update pct_mail_sent_at sur les rows
- Template patching_import.html:
  * Bouton 'Prevenance PCT' (violet) a cote des autres actions
  * Modal preview avec iframe sandboxe pour le rendu HTML mail
  * Affiche destinataires, CC, objet, count serveurs
  * Warning rouge si SMTP non configure (envoi desactive, preview seulement)
  * 2 boutons: Annuler / Envoyer (avec confirmation)
2026-05-07 21:44:02 +02:00
fde554ad4f style(patching/import): boutons d'action vraiment visibles (border + glow + uppercase)
Avant: btn-sm fade text-xs avec bg-color/20 — ressemblaient a des liens.

Apres: classe .btn-action avec
- padding 6px 14px (plus genereux)
- text-transform uppercase + letter-spacing
- font-weight 700
- border 1px currentColor + box-shadow glow
- hover: translateY(-1px) + glow renforce
- Variantes coloris: btn-add (vert), btn-rep (bleu), btn-cancel (gris), btn-pre (orange)
- Icones renommes pour clarte (✕ Annuler, ▶ Pre-patching)

Pas de modif fonctionnelle, juste visuel.
2026-05-07 19:56:33 +02:00
040448696b feat(patching/import): boutons d'action toujours cliquables + alerte si aucune selection
Avant: les boutons (+ Ajouter, Reporter, Annuler, Pré-patching) etaient grises (disabled)
quand aucune row n'etait selectionnee, et le clic ne provoquait rien -> confusion.

Apres:
- Boutons toujours cliquables (HTML disabled retire)
- Atténuation visuelle (opacity-50) quand selection vide pour feedback
- Au clic sans selection: alerte 'Veuillez selectionner au moins un serveur.'
- Btn Pre-patching: si selection mais aucun eligible, alerte indiquant
  d'utiliser '+ Ajouter au patching' d'abord
2026-05-07 19:51:32 +02:00
2b57ca3247 fix(patching/import): comparaison filtres case-insensitive (production == Production)
- applyFilters: comparaisons en lowercase pour intervenant et env
- rebuildSelectOptions: dedup case-insensitive (Map<lowercase, canonical>)
  garde la 1re forme rencontree comme label affiche
2026-05-07 19:41:22 +02:00
a5f3a25198 feat(patching/import): actions Reporter/Ajouter au patching + log + colonne Etat (etape A) + placeholder /patching/iexec affichant excludes effectifs (etape B a venir) 2026-05-04 14:57:49 +02:00
6eb7619efc feat(patching/import): affichage date au format FR dd/mm/yyyy (tri reste sur start_iso ISO) 2026-05-04 14:12:42 +02:00
1ef9ecf85f feat(patching/import): lien Asset s ouvre dans un nouvel onglet 2026-05-04 14:09:27 +02:00
6891736395 feat(patching/import): retire colonnes Impacts et BDD de l affichage, lien Asset pointe vers /servers?search= 2026-05-04 14:09:11 +02:00
f70f5c3704 feat(patching/import): retire colonnes Coupure/Pb disque/Lien serveur/Mode op de l affichage, link sur Asset, raccourci OS version (RedHat 8, Win 2022, ...) 2026-05-04 14:05:16 +02:00
630297f98e feat(patching/import): stockage date/heure typés (DATE+TIME) + jour_text fallback texte libre + tri colonne Date par date+heure combinés 2026-05-04 13:57:24 +02:00
8b6057aef2 feat(patching/import): filtre intervenant en dropdown, retire filtre asset texte, ajoute tri asc/desc/none au clic sur entete Asset 2026-05-04 13:17:23 +02:00
488b5a980b feat(patching/import): ajout colonnes Resp Domaine DTS, Referent technique, Mode operatoire, Impacts, BDD - support nouveau format S07+ + Date au lieu de Jour 2026-05-04 13:12:09 +02:00
13a5625710 feat(patching/import): filtres client-side asset/intervenant/env sur tableau semaine 2026-05-04 13:04:05 +02:00
557015325b feat(patching): import planning xlsx (etape 1) - tables patch_planning_imports + rows, page upload + selecteur semaine + tableau 2026-05-04 12:57:35 +02:00