Linus Rath
63d64bba13
fix: show who a template addresses before inserting it and suggest the account's own categories
2026-10-28 07:34:05 +01:00
Linus Rath
b5e92ba176
Merge branch 'feat/org-features' into feat/org-templates
...
# Conflicts:
# lib/admin/restriction-keys.ts
2026-10-28 07:10:25 +01:00
Linus Rath
82918fc7d7
Merge branch 'feat/org-features' into feat/org-delegates
...
# Conflicts:
# lib/admin/restriction-keys.ts
2026-10-28 06:30:09 +01:00
Linus Rath
49c9ec6a45
fix: start a delegate's Change from what they have and keep what fits no choice as it is
...
Change used to pre-fill the closest choice and then replace everything
of that type, so a folder added after "all", a single non-Inbox folder,
a non-default calendar, free/busy only or manager rights were narrowed
or widened on Save. Now a type gets a choice only when the grants match
it exactly; anything else starts at "Keep as it is", which leaves that
type out of the patch. Mixed levels keep each type's rights.
Also in the Delegates page:
- Change and Remove wait, with Try again, while a type couldn't be read
- an answer from the account before an account switch is dropped
- calendars, contacts and files follow their feature gates
- Remove says it covers what was shared from the user's own account
- typing your own address says "That's you"
- groups named only by the session get the group badge
- on Stalwart 1.0 the read hint says read delegates can flag mail
- the person list is plain buttons, not a listbox without arrow keys
- the rights follow sharingRights
2026-10-28 06:28:02 +01:00
Linus Rath
f0539a33f6
feat: let admins limit every share dialog to read access with sharingRights
2026-10-28 06:27:49 +01:00
Linus Rath
87e41f0403
feat: share team templates in a group mailbox
2026-10-28 06:24:46 +01:00
Linus Rath
47c47b4f08
feat: keep personal templates in the account on Stalwart 1.0
2026-10-28 06:13:47 +01:00
Linus Rath
57065d7ef2
feat: show an organisation template library from the admin
2026-10-28 05:53:50 +01:00
Linus Rath
795faceee7
Merge branch 'feat/org-thirdparty' into feat/org-features
2026-10-28 05:51:22 +01:00
Linus Rath
00ea203f4f
refactor: describe the sending identity and account once for every send check
2026-10-28 05:50:17 +01:00
Linus Rath
687cd89346
Merge branch 'feat/org-external' into feat/org-features
...
# Conflicts:
# lib/outgoing/quick-reply.ts
# lib/outgoing/send-pipeline.ts
2026-10-28 05:46:11 +01:00
Linus Rath
638e7c2670
fix: start the delegate dialog in the search field
2026-10-28 05:42:04 +01:00
Linus Rath
0bd63fca08
fix: name a delegate from the accounts they share with you when the directory won't
2026-10-28 05:38:44 +01:00
Linus Rath
b0eb9fcfe1
fix: say the organisation blocks remote content instead of offering to load it with no third-party traffic #903
2026-10-28 05:38:39 +01:00
Linus Rath
9e809a31db
Merge branch 'feat/org-features' into feat/org-thirdparty
2026-10-28 05:27:58 +01:00
Linus Rath
9f230ca8fc
fix: keep a quick reply as a draft when an automatic sign-out comes while the external recipient question is open
2026-10-28 05:23:25 +01:00
Linus Rath
823da8c810
Merge branch 'feat/org-features' into feat/org-external
...
# Conflicts:
# components/email/email-viewer.tsx
# components/mail/mail-app.tsx
2026-10-28 05:19:21 +01:00
Linus Rath
1a92eba702
test: check that a refused address lookup shows the directory note on its own
2026-10-28 05:18:49 +01:00
Linus Rath
2a90437fbc
test: give the domain list test time under load
2026-10-28 05:15:40 +01:00
Linus Rath
9dab8955dd
feat: confirm before inviting people outside the organisation to a meeting
2026-10-28 05:12:24 +01:00
Linus Rath
0232ae322b
feat: let admins hide delegates or limit them to read access per domain or group
2026-10-28 05:11:26 +01:00
Linus Rath
1202a13720
fix: judge external mail by the message's own account and the sending account in several-account setups
2026-10-28 05:11:24 +01:00
Linus Rath
bcf4f3a7a6
feat: give a delegate access to mail, calendars and contacts in one step
2026-10-28 05:11:23 +01:00
Linus Rath
60167f752f
fix: label mail as External when any sender is outside or has no domain, and show the domain on a tap
2026-10-28 05:09:35 +01:00
Linus Rath
836dcba66e
fix: don't count senders whose images the user allowed as contacts for the external recipient confirm
2026-10-28 05:09:03 +01:00
Linus Rath
2ace501871
Merge branch 'feat/org-features' into feat/org-signatures
2026-10-28 04:51:22 +01:00
Linus Rath
9aa810f20d
refactor: keep the share rights presets in one module for every share dialog
2026-10-28 04:46:45 +01:00
Linus Rath
89f0cd7e92
fix: say that {company} takes the branding of the web address Bulwark is opened on
2026-10-28 04:37:24 +01:00
Linus Rath
daae45e379
fix: ask for the details every sending address needs and preview the signature that is sent
2026-10-28 04:35:26 +01:00
Linus Rath
d128503db5
fix: use the organisation policy of the account a message is sent from
2026-10-28 04:32:39 +01:00
Linus Rath
1a747ac9dd
feat: limit the page's CSP to the configured hosts with no third-party traffic #903
2026-10-28 04:30:41 +01:00
Linus Rath
a9c89ae7a2
fix: fail closed while the third-party switch is unknown or set as a string #903
2026-10-28 04:30:32 +01:00
Linus Rath
031d94635c
refactor: keep the outgoing host descriptions out of the browser bundle and scan every URL form #903
2026-10-28 04:30:23 +01:00
Linus Rath
b756111097
fix: add the disclaimer below plugin footers and before a plugin signs or encrypts the message
2026-10-28 04:25:25 +01:00
Linus Rath
629e96b6bd
fix: stop counting focus in the office editor or a plugin frame as activity
2026-10-28 04:18:24 +01:00
Linus Rath
7bbfe61783
fix: keep keys pressed in the external recipient confirm away from the mail shortcuts
2026-10-28 04:18:11 +01:00
Linus Rath
490818adee
fix: keep signature plugins from changing a locked organisation signature
2026-10-28 04:18:01 +01:00
Linus Rath
73c12d03eb
fix: ask about every external recipient but the identity's own Bcc, trust only the identity's From, and queue a second question
2026-10-28 04:15:12 +01:00
Linus Rath
da5d7baf51
fix: swap the signature in an open composer when the organisation policy or the user's details change
2026-10-28 04:12:15 +01:00
Linus Rath
ecbbe137c4
fix: wait for sends and keep quick replies as drafts before an automatic sign-out
2026-10-28 04:06:05 +01:00
Linus Rath
b945a789f9
fix: match internationalised domains in either form and name the domains an admin typed wrong
2026-10-28 04:05:46 +01:00
Linus Rath
3fbd5a7818
fix: check the signature and disclaimer in each part on its own so neither goes out twice
2026-10-28 04:00:25 +01:00
Linus Rath
1f1319d46e
fix: hand the retired plugin's parts over one switch at a time and tell plugins about each switch
2026-10-28 03:54:47 +01:00
Linus Rath
65e83e4b0d
fix: show the session warning above every overlay and count the server's sign-in time
2026-10-28 03:53:56 +01:00
Linus Rath
f9a04126d4
fix: keep a quick reply's text when the user goes back instead of sending
2026-10-28 03:47:40 +01:00
Linus Rath
bdd3b187dc
fix: name the edit button of each sending address for screen readers
2026-10-28 03:18:30 +01:00
Linus Rath
0154e24ffc
feat: add an admin disclaimer to every sent message
2026-10-28 03:17:03 +01:00
Linus Rath
4821227415
fix: start the session warning's focus on the button that keeps users signed in
2026-10-28 03:06:28 +01:00
Linus Rath
92c9110f3c
feat: show the third-party traffic switch and what stays reachable in Organisation > Security #903
2026-10-28 02:24:13 +01:00
Linus Rath
65e3d0d2d4
feat: let admins set an organisation signature with user details per domain or group #908
...
Admins write an HTML and a plain-text signature with placeholders on
Organisation > Signatures, per scope. Users fill in the details it asks
for once, under Settings > Account. Without a lock it is the default for
addresses without a signature of their own; locked or hidden, it
replaces every signature.
- `lib/org-signature.ts` fills the templates: values escaped, lines whose
placeholders are all empty dropped
- the composer applies it right before the plugin signature, so new mail,
replies, forwards, re-opened drafts, plain text and identity swaps all
take it the way they take an identity signature; quick reply too
- a send finaliser puts a locked signature back once when it was deleted
- the identity editor shows the filled-in signature read-only with "Set
by your organisation" when locked, and no editor when hidden
- `signatureDetails` is a synced setting
2026-10-28 02:23:55 +01:00