patchcenter/app
Admin MPCZ 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
..
data Comparaison même semaine 2026 vs 2025: barres, écart pts, objectif, données incomplètes 2026-04-06 23:47:01 +02:00
models PatchCenter v2.0 — Initial commit 2026-04-04 03:00:12 +02:00
routers feat(pct): bouton Prevenance PCT + preview avant envoi + CC responsables/referents 2026-05-07 21:44:02 +02:00
scripts Qualys agents: bouton Rafraichir + cron 6h 2026-04-11 21:56:59 +02:00
services feat(pct): bouton Prevenance PCT + preview avant envoi + CC responsables/referents 2026-05-07 21:44:02 +02:00
static BOC SAP corrigé, stop/start order, patch waves, DMZ zone, préférences patching 2026-04-05 03:52:46 +02:00
templates feat(pct): bouton Prevenance PCT + preview avant envoi + CC responsables/referents 2026-05-07 21:44:02 +02:00
__init__.py PatchCenter v2.0 — Initial commit 2026-04-04 03:00:12 +02:00
auth.py PatchCenter v2.0 — Initial commit 2026-04-04 03:00:12 +02:00
config.py Service iTop REST: synchro bidirectionnelle serveurs + contacts 2026-04-10 23:11:32 +02:00
database.py Mode Demo/Reel au login + base patchcenter_demo 2026-04-10 19:39:35 +02:00
dependencies.py Users/Contacts: workflow profils + LDAP + sync iTop + etat aligne 2026-04-12 18:50:43 +02:00
main.py feat(snapshots): page de gestion snapshots VM (listing + filtre auteur/age + suppression) 2026-05-07 20:13:29 +02:00