Files
intra.noxus.fi/PLAN.md
Jukka Lampikoski ff2613ff01 SMTP-palvelin aina näkyvissä + CuituNet → Cuitunet
- SMTP-palvelinkenttä näkyy nyt aina mailbox-lomakkeessa,
  myös kun "Käytä samoja tunnuksia" on päällä (vain käyttäjä
  ja salasana piiloutuvat)
- Korjattu CuituNet → Cuitunet kaikkialla (pieni n)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 23:28:31 +02:00

3.4 KiB

Sähköpostiallekirjoitus per käyttäjä per postilaatikko

Tallennusrakenne

Allekirjoitukset tallennetaan users.json:iin käyttäjäkohtaisesti, avaimena postilaatikon ID:

{
  "id": "abc123",
  "username": "jukka",
  "nimi": "Jukka",
  "signatures": {
    "mailbox-cuitunet-1": "Jukka Lampikoski\nCuitunet Oy\nasiakaspalvelu@cuitunet.fi",
    "mailbox-storagebox-1": "Jukka\nStorageBOX\nbox@storagebox.fi"
  }
}

Muutokset

1. index.html — Allekirjoitusten hallinta käyttäjälomakkeessa

Lisätään user-modal lomakkeeseen uusi osio "Sähköpostiallekirjoitukset":

  • Jokaiselle postilaatikkolle (kaikkien käyttäjän yritysten) oma textarea
  • Näyttää postilaatikon nimen + yrityksen nimen labelin
  • Esim: "Cuitunet — Cuitunet-asiakaspalvelu"

2. script.js — openUserForm()

  • Haetaan kaikkien yritysten postilaatikot API:lla (uusi endpoint all_mailboxes tai hyödynnetään olemassaolevia)
  • Generoidaan allekirjoitus-textareat dynaamisesti
  • Täytetään olemassa olevat allekirjoitukset user.signatures objektista

3. script.js — Käyttäjälomakkeen tallennus

  • Kerätään allekirjoitus-textareoiden arvot signatures-objektiin
  • Lähetetään user_update/user_create mukana

4. api.php — user_update/user_create

  • Vastaanotetaan ja tallennetaan signatures-kenttä users.json:iin

5. api.php — Uusi endpoint all_mailboxes

  • Palauttaa kaikki postilaatikot käyttäjän yrityksistä (id, nimi, yrityksen nimi)
  • Tarvitaan allekirjoituslomakkeen generointiin

6. script.js — Vastauslomake (ticket-reply)

  • Kun tiketti avataan, haetaan kirjautuneen käyttäjän allekirjoitus kyseiselle postilaatikkolle
  • Näytetään allekirjoitus vastaus-textarean alla esikatseluna (readonly, harmaa teksti)
  • Allekirjoitusta EI laiteta itse tekstikenttään (käyttäjä ei vahingossa muokkaa sitä)

7. api.php — ticket_reply endpoint

  • Haetaan käyttäjän allekirjoitus: users.json → kyseinen user → signatures[mailbox_id]
  • Liitetään allekirjoitus viestin perään ennen lähettämistä: $body . "\n\n-- \n" . $signature
  • Tallennetaan myös messages-tauluun allekirjoituksen kanssa (jotta näkyy viestiketjussa)
  • Muistiinpanoon (ticket_note) EI liitetä allekirjoitusta

Käyttöliittymä

Käyttäjälomakkeessa:

Sähköpostiallekirjoitukset
─────────────────────────
Cuitunet — Cuitunet-asiakaspalvelu
┌──────────────────────────────────┐
│ Jukka Lampikoski                 │
│ Cuitunet Oy                      │
│ asiakaspalvelu@cuitunet.fi       │
└──────────────────────────────────┘

StorageBOX — Tuki
┌──────────────────────────────────┐
│ Jukka                            │
│ StorageBOX                       │
│ box@storagebox.fi                │
└──────────────────────────────────┘

Tikettinäkymässä vastauslomakkeen alla:

[Kirjoita vastaus...                    ]
                          --
                          Jukka Lampikoski
                          Cuitunet Oy
                          asiakaspalvelu@cuitunet.fi

                     [Lähetä vastaus]