- setBookingCustomFields: use bookings_update's own custom_fields array (confirmed from the real legacy plugin code) instead of instance_custom_fields_set, which was only ever proven for a different, unrelated plugin - online_checkin_complete is now a configurable per-hotel custom field (online_checkin_complete_custom_field_id setting), not a bogus top-level bookings_update field NewBook would silently ignore - Fix field-name mismatches vs a real live NewBook booking response: booking_arrival/departure/length, guest address (street/city/state/ postcode/country, not a single field), phone/mobile (in contact_details, not top-level), and pickPrimaryGuest now checks primary_client (was checking fields that don't exist in the real API) - Bundle the standalone push extension into backend/extension-src/, add GET /api/extension/download (zips on request via archiver) and a download button on the Settings page - Remove newbook_hotel_id — vestigial from the legacy system's multi-hotel routing model, never actually reached NewBook's API, this stack is single-hotel-per-deployment so there's nothing to route between Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
38 lines
917 B
JSON
38 lines
917 B
JSON
{
|
|
"manifest_version": 3,
|
|
"name": "Send to Check-In Tablet",
|
|
"version": "0.1.0",
|
|
"description": "Pushes the currently open NewBook booking to a check-in tablet — standalone from NewBook Assistant, see project_checkin memory.",
|
|
|
|
"permissions": ["cookies", "storage", "activeTab", "webNavigation"],
|
|
|
|
"host_permissions": [
|
|
"https://appeu.newbook.cloud/*",
|
|
"https://login.newbook.cloud/*"
|
|
],
|
|
|
|
"background": {
|
|
"service_worker": "background.js"
|
|
},
|
|
|
|
"content_scripts": [
|
|
{
|
|
"matches": ["https://appeu.newbook.cloud/bookings_lists_checkin*"],
|
|
"js": ["content-script.js"],
|
|
"run_at": "document_idle"
|
|
}
|
|
],
|
|
|
|
"action": {
|
|
"default_popup": "popup/popup.html",
|
|
"default_title": "Send to Check-In Tablet"
|
|
},
|
|
|
|
"options_page": "options/options.html",
|
|
|
|
"icons": {
|
|
"16": "icons/icon16.png",
|
|
"48": "icons/icon48.png",
|
|
"128": "icons/icon128.png"
|
|
}
|
|
}
|