diff --git a/CHANGELOG.md b/CHANGELOG.md index d620d780b..2f3c4cb14 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1411,6 +1411,15 @@ If you are coming from 26.08 or earlier, the database update still has to be run - Clients: a client with a contract couldn't be deleted, because the database refused it. - Contract templates: the after-hours rate of a new template was never saved, rates were cut to whole amounts, and net terms written as "Net 30", as the field suggested, were saved as 0. - Contract templates: Edit showed the rates empty, so saving a template set them to 0. +- API: a key acting as an agent limited to certain clients could archive or restore another client's contacts, credentials, documents, domains, locations and networks, archive or restore the client itself, and resolve or close its tickets, by naming that client in the call - only creating, editing and deleting checked the client named. Archiving a contact that way also archived its portal login. +- API: an asset, contact, network or document made or edited through the API could be given another client's contact, location, vendor, network or folder, which then showed on this client's record. +- Assets: linking a contact to an asset from the contact's page took another client's contact, whose name and details then showed on the asset to anyone who could open it. +- Agents limited to certain clients could see the names of other clients' records: in the file name of the asset import template, the filter line of an export, and the messages after moving files to a folder, unlinking a credential, contact or asset, removing an asset from a ticket, and moving tickets into a project or interfaces onto a network in bulk. +- Quotes: Accept and Decline on the page a client opens from a quote email were plain links, so a mail scanner or link preview that opens every link could answer the quote. They are now buttons. +- Exports: exporting with filters that match nothing left a blank page. It now says nothing matches and stays on the list. +- Assets: unlinking a contact from an asset with a page opened earlier took off whichever contact the asset had been given since. +- Archiving, restoring or deleting an asset, contact, note, invoice, quote, payment or recurring invoice, or saving one, that someone else had just deleted showed an error page or warnings and wrote history for a record that was gone. It now says the record no longer exists. +- Settings: the ticket prefix's letters-and-hyphens check didn't run in the browser - its pattern is refused by current browsers. ITFlow still checked it on saving. ### Developer Updates @@ -2016,6 +2025,10 @@ If you are coming from 26.08 or earlier, the database update still has to be run - Tags' look: `.itflow-tag` draws `--itflow-tag-color` as a `color-mix()` wash and edge with the icon in it and the name in `--bs-body-color` (`--itflow-tag-ink`, 75% or 55% under `[data-bs-theme="dark"]`, is how much of the color the icon keeps), with neutral fallbacks before each `color-mix()`; `--itflow-tag-text` is no longer used by pills. `.itflow-search-tag-icon` and the new `.itflow-select-badge.is-soft` follow it. New `tagOptionLook($color, $icon)` in `functions/tags.php` (`selectOptionColor()` plus `data-soft="1"`) for a tag's `