Repository navigation
v1.6.4
Upgrading
- New tables
escalated_business_schedulesandescalated_holidays, and a nullablebusiness_schedule_idcolumn onescalated_sla_policiesandescalated_departments, added by the normal schema upgrade. - Nothing changes until a business schedule exists. With none, SLA policies limited to business hours keep the fixed hours of the
escalated_business_hours_start,escalated_business_hours_endandescalated_business_daysfilters. - Once a schedule is marked Default, every policy limited to business hours counts on it (or on a more specific one) instead of on those filters. Business-hours deadlines then follow the schedule's time zone rather than the site clock.
- The Settings screen shows a stored inbound mailbox password as
********. Saving the form with that mask (or the olderabc*****form) keeps the stored password; any other value replaces it, and an empty field clears it, as before. - On the Webhooks screen, leaving the secret blank keeps the stored secret and ticking Remove secret (
clear_secret) removes it, as before.clear_secretis now read as a boolean, so0orfalseno longer removes the secret. GET /escalated/v1/admin/api-tokensreturnstoken_maskedas********for every token. It used to carry the first 8 characters of the stored value.
Added
- Business hours and holidays, like escalated-laravel. Escalated > Business Hours (wp-admin,
escalated_sla_manageto change,escalated_sla_viewto look) lists schedules and edits each one: name, time zone, default switch, opening and closing time per weekday, and holidays (one-off or every year).- SLA deadlines for a policy limited to business hours are counted on the policy's own schedule, else the ticket department's, else the default schedule. The SLA policy and department screens gain a Business schedule picker.
Escalated\Services\BusinessHoursCalculatorcounts real elapsed time in the schedule's time zone, so daylight-saving days are handled; it supports overnight hours (closing before opening) and24:00, and skips holidays. It gives the same deadlines as the other Escalated backends.- Deleting a schedule removes its holidays, and policies and departments that used it fall back to the default schedule.
Security
- Stored secrets are no longer sent to the browser. The Settings screen put the inbound mailbox (IMAP) password into the page as the field's value; it now gets a full mask. The API tokens screen showed the last 8 and
GET /admin/api-tokensthe first 8 characters of each stored token, which for a token issued before tokens were hashed (and not used since) is part of the token itself; both now show a fixed mask. Aclear_secretoffalseremoved a webhook's signing secret. A new guard test covers the Webhooks list, edit and delivery-log screens, the Settings screen, the API tokens screen and REST list and create, and the two-factor status, confirm and recovery-code endpoints. Only the one-time plaintext token on creation and the 2FA setup response hand out a secret, by design.
What's Changed
- Business hours and holidays for SLA deadlines by @mpge in #106
- Keep stored secrets out of admin screens and REST responses by @mpge in #107
- chore(release): v1.6.4 by @mpge in #108
Full Changelog: v1.6.3...v1.6.4