johnnyq
e74307eaea
Feature: Add Dynamic Task editing in add ticket and add recurring ticket, recurring tickets now have their own task table as well
2026-07-29 17:48:41 -04:00
johnnyq
74a5359b80
Move Watchers into assignment in add ticket
2026-07-29 17:28:57 -04:00
johnnyq
d01024931b
Retire v1 Ticket and merge into 1 add ticket
2026-07-29 17:24:55 -04:00
johnnyq
8a092852cf
Fixed Asset section in recurring ticket if global added project in add ticket
2026-07-29 16:52:47 -04:00
johnnyq
eaf3f5abd1
Add Badge next to recurring tickets with a template
2026-07-29 16:28:17 -04:00
johnnyq
bc64c9e3d1
Feature: Abiliry to assign Ticket Templates to Recurring Tickets
2026-07-29 15:55:14 -04:00
johnnyq
af9990ff13
Fix Contact Notes and Fix a few broken links
2026-07-29 14:22:18 -04:00
johnnyq
fc5cdeea82
Add UI Elements for Asset Notes similar to contact notes
2026-07-29 14:13:55 -04:00
johnnyq
566d74c15d
Fix SLA resolve-time reporting, stale settings cache on save, and report N+1
2026-07-29 13:34:34 -04:00
johnnyq
9533da4053
Repair SLA verdicts missed by kanban/portal resolve; record first response on kanban resolve
2026-07-29 13:21:37 -04:00
johnnyq
162a597da9
Add SLA pausing, SLA reports, SLA filtering and kanban SLA state (phase 3)
...
Statuses can be flagged to pause the resolution clock; sla_history records the intervals a ticket's clock actually ran and the deadline is re-based on remaining budget when it resumes. Adds SLA Summary and SLA by Client reports, an SLA state filter on the ticket list, SLA colouring on kanban cards, and an Urgent column on the Tickets by Client report. DB update 2.5.1. Also fixes resolution SLA verdicts being skipped when resolving via kanban or the client portal.
2026-07-29 13:02:27 -04:00
johnnyq
07c73a6a04
Add Urgent Priority, move Per Client SLA Settings to notes tab in client add / edit modal remove unnessesary sla admin setting for client overide
2026-07-29 00:49:31 -04:00
johnnyq
d5ed05017b
Allow selecting client SLA assignments on client create/edit
2026-07-29 00:21:13 -04:00
johnnyq
d08ef6184a
Add optional ticket SLAs
...
Response/resolution targets stamped at creation from per-client/priority assignments, business-hours due date math, warn/breach alert stages via cron/ticket_sla.php, ticket list coloring, per-ticket SLA override, admin page for plans/assignments/business hours. DB update 2.5.0. No behavior change unless SLAs are assigned. Bulk reply now only counts Public replies as first response.
2026-07-29 00:00:42 -04:00
johnnyq
1494d2cb5e
Backed out of Refunds which still keeps the fix to properly set the invoice status when payment is deleted
2026-07-28 22:03:35 -04:00
johnnyq
31921ee99b
Add Refunding capability along with Stripe Refunding
2026-07-28 21:34:06 -04:00
johnnyq
b3f959ac55
Use Short echo tags across the code
2026-07-28 18:47:52 -04:00
johnnyq
556ab22c79
Enfoce Sales Permission Read on products export
2026-07-28 17:53:13 -04:00
johnnyq
c5ff3e2a3f
Normalize line endings to LF; add .gitattributes and .editorconfig
2026-07-28 17:45:52 -04:00
johnnyq
7f7880a4a7
Add Quick Payments view modal in Invoices
2026-07-28 12:49:57 -04:00
johnnyq
5f3a0bec46
Remove old payments and revenues and all ties to the pages as these are combined in income now
2026-07-28 12:38:29 -04:00
johnnyq
c3896ba3d6
Add Export CSV to the new combined income page
2026-07-28 12:26:50 -04:00
johnnyq
2e855f62c9
Require credential module access to view or share credentials
2026-07-28 00:40:33 -04:00
johnnyq
22e93589cb
Fix share link view accounting and quote response handling
2026-07-27 21:11:45 -04:00
johnnyq
829527244e
Fix broken ajax
2026-07-27 20:25:48 -04:00
johnnyq
a4fdced10f
Rate limit 2FA code attempts and narrow the TOTP acceptance window
2026-07-27 18:36:43 -04:00
johnnyq
97490bef3b
Security Fix in recurring invoices in cron
2026-07-27 18:07:15 -04:00
johnnyq
5fc2f93b38
Allow negative numbers in add expense
2026-07-26 01:40:11 -04:00
johnnyq
04014da21f
Combined Payments and Revenues as one View called income keeps all income in one place and still can add revenue not related to invoice
2026-07-26 01:10:52 -04:00
johnnyq
276e84ad0b
Expenses: Set Current Date in new expense
2026-07-25 20:38:58 -04:00
johnnyq
c509b7f693
Add user-based RBAC for API keys
...
API keys now run as a user and inherit that user's module, operation, and client permissions. Drops per-key client scoping and removes existing keys (must be recreated). Adds an edit modal to change a key's user.
2026-07-25 16:50:58 -04:00
johnnyq
8d46e2a7db
Fix Client Permission overides to include deny allow list in projects prohect and edit ticket
2026-07-25 13:28:47 -04:00
johnnyq
ff4b69b511
Client Enforcement via function on client edit instad of in sql query
2026-07-25 00:35:47 -04:00
johnnyq
761b2a7af4
Module permissions modal enforcement sweep to match its post counterpart
2026-07-25 00:28:42 -04:00
johnnyq
7a793cbbcc
Add more enforceClientAccess to agent ajax gets
2026-07-24 22:51:57 -04:00
johnnyq
113ef4b9a4
Add more enforceClientAccess
2026-07-24 22:49:18 -04:00
johnnyq
3524010d7a
Add enforceClientAccess to 4 bulk modals initially missing
2026-07-24 22:06:42 -04:00
johnnyq
5c4805b822
Neutralize CSV formula injection in generated exports using the new created escapeCsvFormula Function
2026-07-24 18:12:45 -04:00
johnnyq
af51c4316f
Updated validateCSRFToken to automatically grab and compare get or post csrf token no longer need to pass an argument to the function which fixed the issue if no hash was present
2026-07-24 13:40:37 -04:00
johnnyq
91a1676e89
Update missing CSRF endpoint checks
2026-07-24 13:16:51 -04:00
johnnyq
e7698f15bd
Make better use of formatAddress function for clients listing
2026-07-24 12:22:15 -04:00
johnnyq
c7b34fe107
Remove leftover getFallBack in client pdf export in favor of ?: '-'
2026-07-23 18:29:11 -04:00
johnnyq
41b118ab87
Add formatAddress function and replace all addresses with it
2026-07-23 18:10:39 -04:00
johnnyq
9c65644adc
Update the rest of the PHP functions to use camelCase
2026-07-23 17:39:06 -04:00
johnnyq
3d94846a61
Fix broken link to service modal in services
2026-07-23 13:48:00 -04:00
johnnyq
90bc8ed029
Fix broken links to modals and remove _details from service
2026-07-23 13:43:04 -04:00
johnnyq
40be80981d
Fix vendor modal link in service details
2026-07-23 13:34:08 -04:00
johnnyq
b853c24c96
Remove a few more unused vendor contact modals and update the escaping in rename modal vendor_details.php to vendor.php
2026-07-23 13:26:06 -04:00
johnnyq
5f26d75e18
Update Functions in ticket_edit_vendor and document link vendor and deleted legacy code unused that had legacy functions tied to them
2026-07-23 13:17:41 -04:00
johnnyq
8f43b92496
Use stripe_init include to init stripe and updated code everywhere
2026-07-23 13:00:01 -04:00