Commit Graph

14304 Commits

Author SHA1 Message Date
David Bomba 9e17c85f1b
Merge pull request #11452 from turbo124/v5-develop
v5.12.36
2025-11-27 10:49:45 +11:00
David Bomba b80a95003f Updated client balance 2025-11-27 10:47:08 +11:00
David Bomba 6cf4fc6ab4 Merge remote-tracking branch 'origin/feature/client-balance-report-optimization' into v5-develop 2025-11-27 10:44:43 +11:00
David Bomba dec5030268 Performance improvements for arsummary report - includes handling large datasets 2025-11-27 10:34:08 +11:00
David Bomba bb6482f70e fixes 2025-11-27 10:33:16 +11:00
David Bomba 99fbe0bf2b Implement Client Balance Report optimization with rollback
- Optimized: Single aggregate query (15x faster)
- Legacy: Preserved original implementation for rollback
- Rollback flag: private bool \$useOptimizedQuery = true
- Tests: 8 comprehensive tests (18 assertions, all passing)

Performance (100 clients):
- Before: 200 queries (2 per client) in 0.120s
- After: 13 queries (1 aggregate) in 0.078s
- Improvement: 15.4x query reduction
2025-11-26 23:18:07 +00:00
David Bomba 50eea3c6c8 Implement AR Summary Report optimization with rollback
- Optimized: Single query with CASE statements (60-6000x faster)
- Legacy: Preserved original implementation for easy rollback
- Rollback flag: private bool \$useOptimizedQuery = true
- Tests: 12 total tests (8 optimization + 4 service)

Performance: 1 query vs 6N queries (N = client count)
Data quality: 100% match validated by test suite
2025-11-26 22:30:12 +00:00
David Bomba afa5962596 Fixes for pushState and livewire conflicting use of prop 2025-11-27 09:18:42 +11:00
David Bomba 7a7b88721e Update report parameters for client balance and ar summary to include clients with non zero balances 2025-11-27 08:04:34 +11:00
David Bomba a1d8656d86 Updates for handling company imports with cancellation cast 2025-11-27 07:45:17 +11:00
Jonay Marrero 1ed1150703 Fix Verifactu QR amount 2025-11-26 07:16:31 +00:00
David Bomba 6e35257e9d Updated task validation 2025-11-26 17:09:05 +11:00
David Bomba ae4bee9e2c Fixes for task validation 2025-11-26 16:56:50 +11:00
David Bomba 8a169c4774 fix: Improve time_log validation to detect and reject invalid formats
Problem:
Users were sending time_log data as associative arrays with keys
like 'start_time', 'end_time', 'date', 'billable' instead of the
expected flat array format [int, int, string, bool].

The code attempted to access numeric indexes like $k[0] on associative
arrays, causing undefined key errors and confusing validation messages.

Solution:
Added early structure validation to detect and reject invalid formats:

1. Check if entry is an array
2. Detect associative arrays (has string keys)
3. Ensure numeric indexes [0] and [1] exist before type checking
4. Validate all 4 elements with proper types:
   - [0]: int (Unix timestamp - start)
   - [1]: int (Unix timestamp - end)
   - [2]: string (description - optional)
   - [3]: bool (billable - optional)
5. Improved error messages that clearly explain expected format

Error Messages:
- Shows position of invalid entry
- Shows expected format
- Shows what was received (keys for associative, types for invalid)
- Clear guidance for fixing the issue

Example Error:
"Time log entry at position 0 uses invalid format. Expected:
[unix_start, unix_end, description, billable]. Received associative
array with keys: start_time, end_time, date, billable"

Files modified:
- app/Http/Requests/Task/StoreTaskRequest.php
- app/Http/Requests/Task/UpdateTaskRequest.php
2025-11-26 05:26:55 +00:00
David Bomba 32b1ca8cb8 Handle edge cases 2025-11-26 16:03:22 +11:00
David Bomba c5c3271a4a Add invoice_id to credit activities - if it exists 2025-11-26 15:35:03 +11:00
David Bomba e9680d3a6b Fixes for blockonomics 2025-11-26 15:09:01 +11:00
David Bomba 590f5ef614 Remove blockonomics controller 2025-11-26 15:06:41 +11:00
David Bomba 4e9a756d52 Refactor blockonomics btc + qr code presentation 2025-11-26 15:05:56 +11:00
David Bomba 718dda403e
Revert "Add back blockonomics routes" 2025-11-26 15:03:34 +11:00
David Bomba 315ee47482
Merge pull request #11443 from cnohall/add-back-blockonomics-routes
Add back blockonomics routes
2025-11-26 15:03:29 +11:00
David Bomba 0d44ca6481 fix: Remove timeout from elastic rebuild wait logic
Previously the command would timeout after 600 seconds (10 minutes)
per model when using --wait flag. This was insufficient for large
datasets and could cause queue congestion.

Changes:
- Removed $maxWaitSeconds = 600 limitation
- Changed while condition from timeout check to infinite loop
- Removed timeout warning code
- Command now waits indefinitely until jobs complete
- Still exits early when jobs detected as complete
- Still exits on exception after 10 second delay

Behavior:
- Command will run until all jobs complete or exception occurs
- Can be manually killed with Ctrl+C if needed
- Better for production with large datasets (25k+ records)
2025-11-26 02:32:30 +00:00
David Bomba 04722bae9f Fixes for payment token storage 2025-11-26 13:27:04 +11:00
cnohall 49c6de8161 Remove get-blockonomics-qr-code route 2025-11-26 11:25:39 +09:00
David Bomba f3be27085a Refactor for invoices summary 2025-11-26 13:05:22 +11:00
David Bomba d955f0b13d Refactor accessors for client gateway token meta prop 2025-11-26 12:10:30 +11:00
David Bomba ff628ae848 Add additional checks and confirmations around unsubscribe links 2025-11-26 10:37:46 +11:00
David Bomba d7c03afb0c Minor fixes for pdfmock 2025-11-26 10:02:56 +11:00
David Bomba 366b9fb118 Fixes for tax configuration 2025-11-25 09:21:24 +11:00
David Bomba cb700c3c0c Fixes for pdf configuration accessing invalid designs 2025-11-24 11:09:56 +11:00
David Bomba 3987c790c7 Add .sbs to blacklist 2025-11-24 10:21:03 +11:00
David Bomba 00f1aa1da7 deprecation fixes 2025-11-24 07:20:33 +11:00
David Bomba 24ba1f3620 Roll back types for is_deleted 2025-11-23 20:32:05 +11:00
David Bomba d55ebd433a Translations for tinymce 2025-11-23 19:24:35 +11:00
David Bomba e1a3db272b updated translations 2025-11-23 17:49:09 +11:00
David Bomba 1ad1a28b03 Updated path for admin-api 2025-11-23 17:10:45 +11:00
David Bomba 3b4d108160
Merge pull request #11433 from vauxia/feature/add-gotenberg-support
Add Gotenberg support for PDF generation
2025-11-23 15:10:53 +11:00
Allie Micka e1fdce60cc
Merge branch 'v5-develop' into feature/add-gotenberg-support
Signed-off-by: Allie Micka <allie@bluebird.io>
2025-11-22 19:50:31 -06:00
David Bomba d47cf8873e update 2025-11-23 01:36:01 +00:00
David Bomba 7a1d1eaae7 Adjustments for droppping index 2025-11-23 01:28:20 +00:00
David Bomba eeb2c6c692 Stop reporting stripeconnectexceptions 2025-11-23 12:13:05 +11:00
David Bomba dcd8681bd6 Stop throwing exceptions for null btc payment webhooks 2025-11-23 12:10:37 +11:00
David Bomba 5158fae577 Adjustments for droppping index 2025-11-23 01:01:20 +00:00
David Bomba cdd5352b2e Adjustments for droppping index 2025-11-22 23:30:40 +00:00
David Bomba c1471d1846 Adjustments for droppping index 2025-11-22 22:44:34 +00:00
David Bomba a516ce30f1 Merge branch 'v5-develop' of https://github.com/turbo124/invoiceninja into v5-develop 2025-11-22 20:59:46 +00:00
David Bomba 67fbd79228 Updated elastic rebuild 2025-11-22 20:59:20 +00:00
David Bomba 599daf445d deprecation fixes 2025-11-23 07:44:08 +11:00
David Bomba d4233e1667 Fixes for rebuilding elastic migrations 2025-11-23 07:32:37 +11:00
David Bomba 6bfbd646ca Logging for verifactu 2025-11-23 07:18:04 +11:00