-- ─────────────────────────────────────────────────────────────────────────────
--  pc-live  |  Ordner je Postfach, Zustellungen zusammenhalten
--
--  Bisher gehoerten Ordner der Person (identifier). Geteilte Postfaecher werden
--  aber von mehreren bedient – dort muss die Ordnerstruktur dieselbe sein,
--  sonst sortiert jeder in seine eigenen Faecher.
--
--    address = NULL  → persoenliche Ordner dieser Person (wie bisher)
--    address gesetzt → Ordner des Postfachs, fuer alle gleich
--
--  Eine Mail an ein geteiltes Postfach wird je Empfaenger einmal gespeichert
--  (siehe DB.SendMailExtended). Damit das Einsortieren fuer alle gilt, bekommen
--  alle Kopien einer Zustellung dieselbe delivery_id: wird eine Kopie in einen
--  Ordner geschoben, wandern die anderen mit.
--
--  Gelesen/geloescht bleibt bewusst persoenlich – das ist keine Eigenschaft der
--  Nachricht, sondern der Person.
--
--  Wiederholbar ausfuehrbar.
-- ─────────────────────────────────────────────────────────────────────────────

ALTER TABLE `pc_live_mail_folders`
    ADD COLUMN IF NOT EXISTS `address` VARCHAR(200) NULL DEFAULT NULL
        COMMENT 'Postfach, zu dem der Ordner gehoert. NULL = persoenlich';

ALTER TABLE `pc_live_mail_folders`
    ADD INDEX IF NOT EXISTS `idx_address` (`address`);

ALTER TABLE `pc_live_mail`
    ADD COLUMN IF NOT EXISTS `delivery_id` CHAR(36) NULL DEFAULT NULL
        COMMENT 'Alle Kopien einer Zustellung teilen sich diesen Wert';

ALTER TABLE `pc_live_mail`
    ADD INDEX IF NOT EXISTS `idx_delivery` (`delivery_id`);
