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
113ef4b9a4
Add more enforceClientAccess
2026-07-24 22:49:18 -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
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
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
johnnyq
8ee780566e
Cleanup Expense Code in post blocks and remove single use function since stripe payments get reconciled during nightly cron
2026-07-22 17:06:10 -04:00
johnnyq
66b38b7f19
Get Expense from Stripe instead of Static Entry
2026-07-22 16:07:39 -04:00
johnnyq
97ab1df762
Feature: Add Transactions, reorg Main side nav
2026-07-21 13:21:23 -04:00
johnnyq
d173357b51
Add Bulk and Single Refresh certificate Actions
2026-07-20 19:14:38 -04:00
johnnyq
e134c89c3a
Add Bulk and Single Refresh Domain Actions
2026-07-20 18:54:01 -04:00
johnnyq
41d029937a
More Client Scoping fixes
2026-07-16 14:29:23 -04:00
johnnyq
1251944dcc
More Client Enforcement in modals across the app
2026-07-16 13:33:17 -04:00
johnnyq
2c09ce097c
More Client Enforcement in modals across the app
2026-07-16 13:10:02 -04:00
johnnyq
7c9bd77603
Remove unused credential view model, add enforceClient Check on export client pdf
2026-07-15 21:09:11 -04:00
johnnyq
38a042d435
Remove _details and use singular filename for certain objects
2026-07-15 00:12:27 -04:00
johnnyq
bcb244c245
Update skipped function renames in anything named vendor
2026-07-14 19:09:32 -04:00
johnnyq
2181e92e44
Removed valueOrDash Function was able to replace with ?: '-'
2026-07-14 18:13:34 -04:00
johnnyq
746e919aff
Replace Function getFallBack with valueOrDash()
2026-07-14 18:00:12 -04:00
johnnyq
21a23e79b0
Replace Function getSSL() with getSslCertificate()
2026-07-14 17:54:31 -04:00
johnnyq
52b5063066
Replace Function getDomainRecords() with getDnsRecords()
2026-07-14 17:53:16 -04:00
johnnyq
8f824a1868
Replace Function shortenClient() with shortenClientName()
2026-07-14 17:46:25 -04:00
johnnyq
9d540f4bfe
Replace Function customAction() with triggerCustomAction()
2026-07-14 17:43:55 -04:00
johnnyq
b8873039a4
Rename Functions: flash_alert, sanitizeFilename and display_folder_options using camelCase instead to match other custom php functions
2026-07-14 17:41:41 -04:00
johnnyq
f1836c70cd
Replace Function logAction() with logAudit()
2026-07-14 17:35:23 -04:00
johnnyq
31cc3f3ac3
Replace Function strtoAZaz09() with toAlphanumeric()
2026-07-14 17:30:13 -04:00
johnnyq
b57ddc0e5c
Replace Function sanitizeInput() with just escapeSql() and update all instances throughout
2026-07-14 17:17:50 -04:00
johnnyq
7bc47a58fe
Replace Function nullable_htmlentities() with just escapeHtml() and update all instances throughout
2026-07-14 17:10:45 -04:00
johnnyq
8da3a107fb
Rename plugins to libs and update all file references
2026-07-10 13:24:20 -04:00
johnnyq
317fe91359
Add Missing clientEnforcement in various modals, already handled on POST also add client selection in edit trip and enforce client permissions on trips
2026-07-09 16:07:54 -04:00
johnnyq
68f705b135
Set EnforceClientAccess Perms throughout expenses, modals and post along with listing
2026-07-09 14:51:51 -04:00
johnnyq
c01645c4e2
Expense: On create enforce client Access only if Client is selected
2026-07-08 18:13:14 -04:00
johnnyq
a819dff19a
Mail: Update mail configuration check to use smtp_provider instead of smtp_host as host is blank upon using oath2
2026-06-24 12:47:41 -04:00
johnnyq
9b77bbdd0b
declare intval
2026-05-22 11:26:20 -04:00
wrongecho
7211426292
Invoices - Secure date/frequency input handling
2026-05-20 13:32:21 +01:00
johnnyq
90de4e4fe3
Client: Fix Client Abbreviation being converted to an int on edit
2026-04-17 12:15:56 -04:00
johnnyq
efaeac3c14
Networks: Added Import Networks
2026-04-11 14:06:31 -04:00
johnnyq
065e674a68
Quotes: Fix Quote Copy missing client
2026-04-04 17:38:12 -04:00
johnnyq
52eb0b9c21
Files: Allow .swb file extensions for MikroTik Backups
2026-03-31 17:19:27 -04:00
wrongecho
793b14885b
Remove unnecessary blank line in account.php
2026-03-30 10:28:45 +01:00
johnnyq
bb3e311fb7
Racks: Fix Device Removal
2026-03-27 17:02:13 -04:00
johnnyq
0e75106e1a
Client POST: Added comment regarding MySQLi Prepared statement usage within Client add/edit POST
2026-03-23 13:30:03 -04:00
johnnyq
22d33847c3
Fix edit client
2026-03-22 19:53:35 -04:00
johnnyq
c8dd7f2970
Network: Fix Assignable IPs field not posting
2026-03-10 20:35:37 -04:00
johnnyq
b133f63736
Ticket: Fix Task Approval
2026-03-10 13:54:54 -04:00
johnnyq
b394f484d3
Fix Vars add empty value placeholder for Ticket Frequency
2026-03-09 15:29:22 -04:00
johnnyq
ada336ceea
Update var names
2026-03-09 15:16:29 -04:00