-
711cd01cd3
Add CRM features: Outstanding Pickups, Customer Notes, Clone Job, Preferred Powders
dev
spouliot
2026-06-09 19:59:32 -04:00
-
7cbae31916
Fix invoice ProjectName not pre-filling on edit; add to Details view
master
v2026.06.09
spouliot
2026-06-09 08:58:09 -04:00
-
9367e358d9
Add Project Name field to invoice create and edit forms
spouliot
2026-06-09 08:50:02 -04:00
-
9f1460c9c0
Make Low Stock stat card clickable to filter inventory by low stock items
spouliot
2026-06-08 16:48:04 -04:00
-
94e536178c
Add optional Project Name field to quotes, jobs, and printed documents
spouliot
2026-06-08 14:48:28 -04:00
-
456d054229
Fix prospect quote conversion losing the job; add reply-to in email footer
spouliot
2026-06-08 10:35:48 -04:00
-
f38a1e3273
Add Reply-To diagnostic logging to GetEmailFromAsync
spouliot
2026-06-04 11:08:45 -04:00
-
03b425a12f
Update blast rate tests to match nozzle-primary formula
spouliot
2026-06-03 16:21:39 -04:00
-
8453449833
Recalibrate blast rate formula from industry reference tables
spouliot
2026-06-03 16:12:45 -04:00
-
ad986561c9
Fix AI quote blast rate: single formula path, correct client preview
spouliot
2026-06-03 15:57:46 -04:00
-
0d5553f3b2
Fix dark mode hover colors in coat/powder dropdown menus
spouliot
2026-06-03 15:12:24 -04:00
-
87bbf158a4
Fix material usage logging: remaining weight mode, edit modal, and consolidate duplicate logic
spouliot
2026-06-03 14:31:02 -04:00
-
f453a95f28
Add hover tooltips on job list rows showing description and PO number
spouliot
2026-06-02 18:53:52 -04:00
-
d9e98a55d2
Fix customer email inputs to allow comma-separated addresses
spouliot
2026-06-02 12:16:30 -04:00
-
99deca3b62
Default imported formula templates to active regardless of export state
spouliot
2026-06-02 11:14:48 -04:00
-
23e64829bb
Fix formula export/import: embed fields as real JSON array, not escaped string
spouliot
2026-06-02 11:06:38 -04:00
-
cd4c233b60
Fix formula export casing: use camelCase to match import property lookups
spouliot
2026-06-02 10:52:58 -04:00
-
6c07216c64
Fix custom formula item pricing: multiply by quantity, not divide
spouliot
2026-06-02 10:27:11 -04:00
-
b23bea6db0
Add formula template export/import and unsaved-changes guard
spouliot
2026-06-02 09:24:02 -04:00
-
cf07356147
Fix all NU1605 errors: suppress via Directory.Build.props instead of per-package pins
spouliot
2026-06-01 23:41:56 -04:00
-
39b103a482
Fix NU1605 package downgrade: pin System.Runtime.InteropServices 4.3.0
spouliot
2026-06-01 23:27:26 -04:00
-
4aae2df5b5
Merge dev into master
spouliot
2026-06-01 23:16:10 -04:00
-
-
3416c242f1
Update help docs and AI knowledge base for item wizard changes
spouliot
2026-06-01 23:05:47 -04:00
-
7e31846777
Fix flat-rate coat wizard UX, — literal, select caret overlap, and walkthrough modal sizing
spouliot
2026-06-01 23:01:33 -04:00
-
ed35362c7a
Add Formula Library ratings, Job Profitability report, and Quote Revision History improvements
spouliot
2026-06-01 09:02:07 -04:00
-
81119035c7
Restructure formula template modal for correct mobile flow
spouliot
2026-05-27 23:00:39 -04:00
-
0deef574c3
Fix formula pages mobile responsiveness; fix missing mobile tabs
spouliot
2026-05-27 22:48:33 -04:00
-
efc4e9dadf
Fix NCalc case sensitivity and add formula validation
spouliot
2026-05-27 22:09:43 -04:00
-
ca7e905832
Add Community Formula Library feature
spouliot
2026-05-27 21:54:51 -04:00
-
32d09b38f1
Fix invisible formula/AI badges: move custom bg-* colors to site.css
spouliot
2026-05-27 18:25:36 -04:00
-
3cee1307fc
Fix customer import: normalize blank email to null, not empty string
spouliot
2026-05-27 13:21:56 -04:00
-
be89327c01
Fix customer import dedup: use composite keys, not exclusive tiers
spouliot
2026-05-27 13:02:10 -04:00
-
8f955851e5
Improve customer import duplicate detection to 3-tier strategy
spouliot
2026-05-27 12:48:40 -04:00
-
972123c7a2
Fix incoming powder inventory: defer creation to approval, deduplicate, fix category
spouliot
2026-05-27 10:12:24 -04:00
-
9dd36238bb
Add timeclock break/lunch tracking, manual entries, and attendance period picker
spouliot
2026-05-27 09:30:39 -04:00
-
8ae61b6c78
Add missing AddTimeclockSettings migration
spouliot
2026-05-27 00:20:53 -04:00
-
97745f9a65
Add Timeclock settings tab in Company Settings with multi-kiosk support
spouliot
2026-05-27 00:12:46 -04:00
-
e124fd5c8b
Fix duplicate @section Scripts crash on Edit User page
spouliot
2026-05-26 20:28:08 -04:00
-
6c2fe6e1c4
Add Employee Timeclock feature with kiosk, attendance report, and payroll CSV export
spouliot
2026-05-26 19:53:13 -04:00
-
f625be01a3
Fix Facility Overhead not appearing on Quote Details view
spouliot
2026-05-26 13:11:52 -04:00
-
e6c4cfb38b
Fix all FK constraint violations when purging soft-deleted Jobs
spouliot
2026-05-26 13:04:13 -04:00
-
5b5247624c
Fix data purge FK violation on Appointments and apply pending migration
spouliot
2026-05-26 08:54:48 -04:00
-
91a176ce5c
Add Description field to job CSV import template
spouliot
2026-05-25 23:41:58 -04:00
-
a7ad0e1de8
Add Custom Powder Order line item and fix CSV import FinalPrice crash
spouliot
2026-05-25 23:37:46 -04:00
-
e4a256a6c4
Fix subscription expiry logic and HTML entities in page titles
spouliot
2026-05-25 09:43:41 -04:00
-
e476b4744d
Fix subscription expiry logic and HTML entities in page titles
spouliot
2026-05-25 09:43:41 -04:00
-
04d16109ae
Simplify location display on inventory QR label
spouliot
2026-05-24 18:08:59 -04:00
-
f0f3717681
Fix three bugs: vendor duplicate check, page size dropdown, label location
spouliot
2026-05-24 17:58:23 -04:00
-
e23b006139
Add color family filter to inventory index
spouliot
2026-05-24 17:25:14 -04:00
-
0f35946973
Fix dark mode: main settings nav tab buttons showing white UA background
spouliot
2026-05-24 14:31:33 -04:00
-
19e1ce858f
Simplify location display on inventory QR label
spouliot
2026-05-24 18:08:59 -04:00
-
026e646295
Fix three bugs: vendor duplicate check, page size dropdown, label location
spouliot
2026-05-24 17:58:23 -04:00
-
b7fcefa765
Add color family filter to inventory index
spouliot
2026-05-24 17:25:14 -04:00
-
1722cd4124
Fix dark mode: main settings nav tab buttons showing white UA background
spouliot
2026-05-24 14:31:33 -04:00
-
c3742e1585
Fix NCalc type error when evaluating AI-generated formulas
spouliot
2026-05-24 14:27:42 -04:00
-
1a6f855c05
Merge feature/custom-formula-templates into dev
spouliot
2026-05-24 11:42:22 -04:00
-
-
d28e639d1b
Add formula template walkthrough and UX improvements
spouliot
2026-05-24 11:40:54 -04:00
-
10f668fd73
Merge dev into master for prod deploy
v2026.05.24
spouliot
2026-05-24 10:46:23 -04:00
-
-
19b7a9a473
Fix equipment creation blocked by maintenance interval validation
spouliot
2026-05-24 10:38:05 -04:00
-
4650ba3d4d
Fix custom formula wizard bugs and add field name validation
spouliot
2026-05-24 10:28:41 -04:00
-
1eba50cf0f
Add Custom Formula Item Templates with AI generation and wizard integration
spouliot
2026-05-23 15:09:22 -04:00
-
-
e443457139
Update help docs and AI assistant for QR modal and vendor supply categories
spouliot
2026-05-23 10:48:00 -04:00
-
edf56c1164
Fix iframe blocking: SAMEORIGIN + frame-ancestors 'self'
spouliot
2026-05-23 10:02:23 -04:00
-
b9cd693421
Fix QR label modal: allow self in frame-src CSP, fix Bootstrap API call
spouliot
2026-05-23 09:59:14 -04:00
-
d77b3778ac
Add vendor supply categories with inventory auto-filter
spouliot
2026-05-23 09:52:34 -04:00
-
a7bf97a2df
Add Print QR Label action to inventory list (desktop + mobile)
spouliot
2026-05-23 09:35:13 -04:00
-
05935b110a
Open QR Label in modal instead of a new browser tab
spouliot
2026-05-23 09:32:57 -04:00
-
64a9c1531b
Fix — HTML entity rendering across 60 views
spouliot
2026-05-23 09:27:45 -04:00
-
f018653c18
Add rework pricing type (Fixed vs Per-Item) and inline rework flow on Job Details
spouliot
2026-05-23 09:27:34 -04:00
-
b7ab85ff92
Merge dev into master: QR scan URL fixes and http scheme failsafe
v2026.05.22b
spouliot
2026-05-22 17:41:01 -04:00
-
-
15b070398b
Change URL scheme fallback from https to http
spouliot
2026-05-22 17:40:14 -04:00
-
14f220347b
Add scheme failsafe to all inventory URL link buttons
spouliot
2026-05-22 17:38:09 -04:00
-
baec0b33f7
Fix QR scan stripping scheme from product URL
spouliot
2026-05-22 17:26:56 -04:00
-
ce7b00b68c
Merge dev into master: inventory bin filter, print bin, mobile login fixes, QR scan fix
v2026.05.22
spouliot
2026-05-22 15:22:38 -04:00
-
-
dfb1d34af3
Add inventory bin filter, print bin, mobile login fixes, and QR scan fix
spouliot
2026-05-22 15:19:11 -04:00
-
c5c1244177
Merge dev into master
v2026.05.21
spouliot
2026-05-21 08:35:29 -04:00
-
-
8c86eba4f2
Untrack .claude/settings.local.json (covered by .gitignore)
spouliot
2026-05-21 08:34:19 -04:00
-
d4dddfa727
Track AGENTS.md; ignore Claude Code settings and build logs
spouliot
2026-05-21 08:33:25 -04:00
-
1bb07162cd
Inline item editing on Job Details with live pricing and costing updates
spouliot
2026-05-20 23:56:36 -04:00
-
ec925f9e08
Temp: add console.debug to updateTotals for diagnosis
spouliot
2026-05-20 23:09:14 -04:00
-
600196f679
Add ws://localhost:* to dev CSP connect-src for browser refresh
spouliot
2026-05-20 23:03:08 -04:00
-
eb13283e76
Fix inline edit not updating pricing breakdown on Job Details
spouliot
2026-05-20 22:58:26 -04:00
-
30c644a8ec
Fix service worker TypeError on localhost; inline edit config timing
spouliot
2026-05-20 22:48:31 -04:00
-
0e480adbf6
Fix inline item editing never activating on details pages
spouliot
2026-05-20 22:37:27 -04:00
-
eaab0af51f
Fix facility overhead missing from invoices on quote-based jobs
spouliot
2026-05-20 22:18:52 -04:00
-
51a5268bc2
Fix Log Material dropdown invisible in dark mode
spouliot
2026-05-20 21:40:44 -04:00
-
a0bdd2b5b4
Sweep all .cshtml files for encoding corruption; add pre-commit guard
spouliot
2026-05-20 21:37:10 -04:00
-
21b39161a3
Fix encoding corruption in Bills and Expenses views
spouliot
2026-05-20 17:06:31 -04:00
-
b241daf15e
Add packing slip PDF to invoice details page
spouliot
2026-05-20 16:52:46 -04:00
-
25140554ad
Merge hotfixes: Stripe receipt_email, surcharge fix, void deposit/credit, cache headers
spouliot
2026-05-20 14:19:10 -04:00
-
-
46cadea367
Add Cache-Control: no-store for authenticated pages; fix payment onclick encoding
spouliot
2026-05-20 14:11:03 -04:00
-
cfe937c0c3
Convert non-deposit payments to customer credits on invoice void
spouliot
2026-05-20 13:42:54 -04:00
-
3ad6b0d08f
Fix voided invoice leaving deposits locked as applied
spouliot
2026-05-20 13:27:10 -04:00
-
fdac0240d1
Fix Stripe receipt_email + online payment surcharge and hardening
spouliot
2026-05-20 14:17:57 -04:00
-
-
81dc34bab4
Add Cache-Control: no-store for authenticated pages; fix payment onclick encoding
v2026.05.20
spouliot
2026-05-20 14:11:03 -04:00
-
b9e9449c8b
Convert non-deposit payments to customer credits on invoice void
spouliot
2026-05-20 13:42:54 -04:00
-
fd38785942
Fix voided invoice leaving deposits locked as applied
spouliot
2026-05-20 13:27:10 -04:00
-
33277de727
Payment hardening: InvariantCulture on JS literals, remove dead CustomerEmail
spouliot
2026-05-20 13:20:47 -04:00
-
4ac62551f4
Fix online payment surcharge — input and validation based on total
spouliot
2026-05-20 13:16:50 -04:00
-
7fa385aeb8
Inline item editing on details pages; fix Stripe receipt_email
spouliot
2026-05-20 11:49:04 -04:00