- Backend now accepts either url or html content in request body
- Frontend adds HTML file upload option below URL input
- Useful when websites block the crawler (403 errors)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The PendingTaskCount subquery was only checking ClaimedByUserID = 0
but not CompletedOn IS NULL, causing completed-but-unclaimed tasks
to show up in the business selection screen count.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- allocate_business_namespace: Start Major from 0 (was 1)
- allocate_servicepoint_minor: Start Minor from 0 (was 1)
- register_beacon_hardware: Set BeaconMinor if empty instead of rejecting
- lookup: Allow Major=0 in validation (was LTE 0, now LT 0)
- servicepoints/save: Auto-allocate BeaconMinor on insert, include in response
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Allow setting/reading BeaconMinor on service points for beacon sharding
table assignment. Also fixes bug where save.cfm referenced qOut.ServicePointID
instead of qOut.ID.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove Task Categories section from Task Admin page (deprecated)
- Simplify HUD getCategoryColor() to use TaskTypeColor directly
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Simple web page for testing the chat flow as a customer.
Enter BusinessID and start a chat that appears on the HUD.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- When accepting a chat task, automatically opens chat modal
- Chat modal shows message history and allows sending replies
- Auto-polls for new messages every 2 seconds
- End Chat button to complete the chat task
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Display ServicePointName in task detail overlay when available
- Style task details text in the bar's category color
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- createChat: Look up business-specific Chat task type instead of hardcoded ID 2
- listPending: Filter by CompletedOn IS NULL to exclude completed tasks
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>