Commit Graph

7297 Commits

Author SHA1 Message Date
johnnyq
69484a8a2e Replace Tom Select with ITFlow's own select picker: native select stays the source of truth, search, checklists for multi selects, add-your-own for tag fields, phone sheet, and client/agent/contact avatars, tag and category colours, priority dots and asset icons in the options 2026-10-13 12:41:29 -04:00
johnnyq
cc9f34e01a No gap between filter and client listing 2026-10-13 11:59:55 -04:00
johnnyq
a85987dcd1 Add Dark header to ticket dashboard card 2026-10-13 11:54:43 -04:00
johnnyq
81062aea0e Client overview redesign with technical and financial sections; client header on all client pages gets initials, industry, tags, open tickets and balance due, and an expandable panel matching the overview 2026-10-10 15:51:07 -04:00
johnnyq
2b2a6c8c42 Clients list: tags under industry with add-tag pill, whole client cell opens the client, gray header and select column 2026-10-10 14:43:35 -04:00
johnnyq
362a6dcfd2 Client side nav: coloured initials and client name under an All clients link, aligned with the menu, click to switch clients 2026-10-10 13:49:47 -04:00
johnnyq
4728797432 Rebuild clients list: compact rows, filter chips, ticket and balance columns, batched lookups 2026-10-10 13:11:40 -04:00
johnnyq
ae28b9fc34 Rework ticket detail page: Details panel with click-to-change properties and status menu, plain-language reply types with who-sees-it line, slimmer header with billing in the menu, clearer modal titles and labels; fix billable wiped on edit by non-sales agents, email reply offered with no mail provider, timer JS error on resolved tickets, unshown due date 2026-10-10 12:50:59 -04:00
johnnyq
3e36185198 Rebuild dashboard: needs-attention rail, your day (tickets, schedule, time, team workload), finance with cash flow forecast, receivables aging and top clients 2026-10-09 16:55:07 -04:00
johnnyq
5aba00c7fc Notifications: mobile polish
- Anchor the bell badge to the icon so it no longer covers the bell on phones
- 44px read/unread button on touch screens
- Full-width Unread/All toggle on phones
2026-10-09 15:59:06 -04:00
johnnyq
bab3d73c86 Rebuild notifications: bell panel and full page
- Bell opens a dropdown panel instead of a modal: Unread/All tabs, grouped
  by day, type icons, relative times, click-through marks read, per-row
  read/unread, mark all as read
- Unread badge refreshes every minute while the tab is visible
- Notifications page rebuilt on the same backend: search, type filter,
  date range, read/unread toggles, proper empty states
- Hide notifications for clients/modules the user cannot access
- Normalise relative notification links so they work from /admin pages
- Remove the old notifications modal and dismiss handlers
2026-10-09 15:52:40 -04:00
johnnyq
f7e5655e05 Rebuild global search as a live search palette
- Press / or Ctrl+K (or click the top bar box) for results as you type,
  grouped by type, with keyboard navigation and recent clients when empty
- Ticket/invoice/quote numbers jump to the top; Enter opens immediately
- Phone, IP (any interface) and MAC matching; app pages offered by name
- Full results page rebuilt on the same search: totals, links into each
  list page, ticket conversation and document text matches
- Passwords no longer rendered into the results page; reveal/copy go
  through the audited endpoint
- Fix stray }); breaking inline scripts on asset and contact pages
2026-10-08 17:40:46 -04:00
johnnyq
9bfd26d57b Add titles to icon-only buttons
- title on 294 icon-only buttons, named for what each one does
- aria-label on the 7 show-password buttons (title becomes the popover
  header) and the portal mobile nav toggle
- Fix dead add-category button on products filter, credential bulk tag
  button now preselects Credential, drop duplicate inner-icon titles
2026-10-08 17:12:21 -04:00
johnnyq
08ab655b2d Replace Guest footer with global footer as gust footer no longer exists 2026-10-08 16:56:20 -04:00
johnnyq
49106e2a80 UI fixes: confirm irreversible actions, keep reply drafts guarded, re-enable CSP on portal recurring invoices
- Add confirm-link to 14 one-click delete/disable links (asset, contact,
  files, templates, logo, MFA, calendar event, disable user, cancel schedule)
- confirm_modal.js treats btn-danger / btn-outline-danger as destructive
- Replace per-editor window.onbeforeunload with one guard over all editors
- New js/autosubmit.js replaces inline onchange in the portal; CSP back on
  recurring_invoices.php
- Fix blank user name in disable_user audit log
2026-10-08 16:47:12 -04:00
johnnyq
cd7ebc0a5f Security: enforce per-user client restrictions on client, financial and bulk handlers and per-client reports
Agents restricted from a client could still edit, archive, restore or delete it, run bulk actions on it (edits, tags, archive, email, tickets) and add credits. Every selected client is now checked before anything is written.

Expense, trip and recurring expense edits now check the client the record already belongs to, not just the submitted one. Recurring expense delete, revenue edit/delete and task approval handlers gained the same check.

Per-client reports and the dashboard payment/ticket lists now hide clients the agent is denied. Company-wide totals are unchanged.
2026-10-08 16:17:46 -04:00
johnnyq
5acb1802bb Security: scope set_recurring_payment to the client's own invoice and payment method 2026-10-08 16:02:21 -04:00
johnnyq
2c8fb8753c Fix Copy Paste Buttons in certain areas 2026-10-06 22:21:22 -04:00
johnnyq
ab2361b294 Update changelog 2026-10-01 15:13:36 -04:00
johnnyq
c3018b7584 Restore the ability to manually typc a value in select boxes with data-tags=true including add ticket watcher 2026-10-01 15:11:58 -04:00
johnnyq
01eceacdca Bump ITFlow version and update changelog 2026-10-01 13:38:59 -04:00
johnnyq
376afab252 Bump Datatables from 3.0.1 to 3.1.2 2026-09-29 18:31:59 -04:00
johnnyq
10def12653 Bump Fullcalendar from 7.0.2 to 7.1.0 2026-09-29 18:26:59 -04:00
johnnyq
db033eca77 Bump stripe-php from 21.0.0 to 21.3.2 2026-09-29 18:19:21 -04:00
johnnyq
391d9c32ff Bump TinyMCE from 8.8.2 to 8.9.2 2026-09-29 18:06:15 -04:00
johnnyq
1666305a1c UI: User Avatar pills for Assigned tickets, updated Icons for Ticket Mine and Unusassigned tickets 2026-09-29 18:02:05 -04:00
johnnyq
b15ef69bf4 Fix pretty content js helper in modals, fixes the issue with images going out of the boundry of the modal window 2026-09-29 17:22:53 -04:00
johnnyq
5f62218818 Fix TinyMCE Modal Focus, fixed Link Editing and extra ... action button, plus fix tinymce disappears once modal is closed then reopened 2026-09-29 17:07:02 -04:00
Wrongecho
c4843095b2 Potential fix for Stripe charges being off by a cent 2026-09-22 16:01:46 +00:00
Wrongecho
8d51f1a64a Bug: Fix not being able to unarchive software 2026-09-22 09:18:51 +00:00
Wrongecho
5013da98d6 API - Add software archive and unarchive endpoints 2026-09-22 09:04:08 +00:00
Wrongecho
e76feaa5b9 API - Do not show archived software/licenses 2026-09-22 08:42:48 +00:00
wrongecho
1ac44f02bd Bugfix: Assets not storing credentials when username not given 2026-09-16 14:13:30 +01:00
Johnny
0e7a76aeb3 Merge pull request #1302 from itflow-org/feat-recurring-invoice-auto-send-toggle
Add ability for recurring invoices to be generated as draft to allow review and amendment prior to sending
2026-09-14 11:13:24 -04:00
Wrongecho
c3429ecc8a Add ability for recurring invoices to be generated as draft to allow review and amendment prior to sending 2026-09-14 13:28:41 +00:00
Wrongecho
a41e738a9b Add ability for recurring invoices to be generated as draft to allow review and amendment prior to sending 2026-09-14 13:22:59 +00:00
Wrongecho
9685ff0435 API - Add network create, update and archive endpoints 2026-09-14 10:19:04 +00:00
Wrongecho
0cc3ac513d Show when network we're looking at is archived 2026-09-14 10:18:16 +00:00
Wrongecho
cb262139ae Invoicing - bug: fix not being able to add tickets to invoice; feature: add ability to remove tickets from invoice 2026-09-11 11:56:40 +00:00
Wrongecho
f558414346 API - Domains add update endpoint 2026-09-10 15:52:53 +00:00
Wrongecho
a43a01f0f9 API - Add domains create, update, archive and unarchive 2026-09-10 15:16:36 +00:00
Wrongecho
e5d1fe2362 Fix copying text in the dynamic modals (api, credenials) 2026-09-10 14:43:28 +00:00
Wrongecho
dd2ee5c93f API - Add Vendor create, update, archive endpoints 2026-09-10 14:19:00 +00:00
Wrongecho
4bd503d8cb API - Only show non-archived vendors 2026-09-10 14:04:53 +00:00
Wrongecho
cc909b67ae API - Documents read should only show unarchived docs 2026-09-08 10:50:53 +00:00
Wrongecho
7a3b1547db Merge branch 'develop' of https://github.com/itflow-org/itflow into develop 2026-09-08 10:05:40 +00:00
Wrongecho
f4936d640c API - Add document archive and unarchive 2026-09-08 10:04:50 +00:00
wrongecho
38cb850f60 Flag as do not modify 2026-09-08 00:05:53 +01:00
wrongecho
d0dfc6aba8 Flag as do not modify 2026-09-08 00:04:48 +01:00
Wrongecho
d416406746 Scale sidebar business name to fit (@BoredManCodes) 2026-09-07 15:41:22 +00:00