Changeset 3479070
- Timestamp:
- 03/10/2026 12:45:27 PM (3 weeks ago)
- Location:
- domilocus
- Files:
-
- 4 edited
-
tags/1.0.17/readme.txt (modified) (2 diffs)
-
trunk/includes/admin/booking-form.php (modified) (1 diff)
-
trunk/includes/class-domilocus-install.php (modified) (4 diffs)
-
trunk/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
domilocus/tags/1.0.17/readme.txt
r3478998 r3479070 5 5 Tested up to: 6.9 6 6 Requires PHP: 8.0 7 Stable tag: 1.0.1 67 Stable tag: 1.0.17 8 8 License: GPLv2 or later 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 181 181 == Changelog == 182 182 183 = 1.0.17 = 184 * Fixed: iCal sync no longer creates duplicate bookings for records imported before v1.0.16 (orphan-adopt: existing records with NULL ical_uid and matching apartment/check-in are updated instead of re-inserted). 185 * Added: `platform_booking_code` column to store the OTA reservation code (e.g. VRBO ID-XXXXXXX, Airbnb HMXXXXXXX) parsed from the iCal DESCRIPTION field. 186 * Fixed: admin booking form preserves `source`, `ical_uid`, `external_platform`, and `platform_booking_code` on save — iCal-imported bookings remain correctly identified after admin edits. 187 * Fixed: dynamic format array in `save_booking()` prevents silent field loss when `ical_uid` or `platform_booking_code` are conditionally included. 188 * Fixed: feature gate definitions corrected — `statistics_basic` now requires Starter (not Professional), `dynamic_pricing` requires Professional (not Premium), `white_label` requires Premium (not Enterprise). 189 * Added: `domilocus_admin_menu_icon` and `domilocus_admin_menu_title` filter hooks to allow Premium White Label add-on to replace the admin sidebar icon and title. 190 183 191 = 1.0.16 = 184 192 * Fixed: iCal import now stores the event UID and uses upsert deduplication — editing a booking from admin no longer causes a duplicate on the next sync. -
domilocus/trunk/includes/admin/booking-form.php
r3478998 r3479070 406 406 ); 407 407 $platform_label = isset($platform_labels[$ext_platform]) ? $platform_labels[$ext_platform] : esc_html($ext_platform); 408 echo esc_html( 409 $platform_label 410 ? sprintf( __('Codice prenotazione %s', 'domilocus'), $platform_label ) 411 : __('Codice prenotazione piattaforma', 'domilocus') 412 ); 408 if ( $platform_label ) { 409 // translators: %s: platform name (e.g. Airbnb, VRBO) 410 $booking_code_label = sprintf( __( 'Codice prenotazione %s', 'domilocus' ), $platform_label ); 411 } else { 412 $booking_code_label = __( 'Codice prenotazione piattaforma', 'domilocus' ); 413 } 414 echo esc_html( $booking_code_label ); 413 415 ?> 414 416 </span> -
domilocus/trunk/includes/class-domilocus-install.php
r3478998 r3479070 160 160 // the iCal importer). We intentionally do NOT filter on customer_email because the 161 161 // admin may have added an email address to the booking after import. 162 // phpcs: ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery, PluginCheck.Security.DirectDB.UnescapedDBParameter162 // phpcs:disable WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery, PluginCheck.Security.DirectDB.UnescapedDBParameter 163 163 $wpdb->query( 164 164 "UPDATE {$bookings_table} … … 167 167 AND (booking_notes = 'Imported via iCal' OR booking_notes LIKE 'Imported via iCal%')" 168 168 ); 169 // phpcs:enable WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery, PluginCheck.Security.DirectDB.UnescapedDBParameter 169 170 170 171 // Data-repair: set external_platform for iCal-imported bookings that have none, … … 178 179 ); 179 180 foreach ($platform_map as $slug => $url_like) { 180 // phpcs:disable WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery, PluginCheck.Security.DirectDB.UnescapedDBParameter 181 // phpcs:disable WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery, PluginCheck.Security.DirectDB.UnescapedDBParameter, WordPress.DB.PreparedSQLPlaceholders.LikeWildcardsInQuery 181 182 $wpdb->query( 182 183 $wpdb->prepare( … … 194 195 ) 195 196 ); 196 // phpcs:enable WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery, PluginCheck.Security.DirectDB.UnescapedDBParameter 197 // phpcs:enable WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery, PluginCheck.Security.DirectDB.UnescapedDBParameter, WordPress.DB.PreparedSQLPlaceholders.LikeWildcardsInQuery 197 198 } 198 199 } -
domilocus/trunk/readme.txt
r3478472 r3479070 5 5 Tested up to: 6.9 6 6 Requires PHP: 8.0 7 Stable tag: 1.0.1 67 Stable tag: 1.0.17 8 8 License: GPLv2 or later 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 181 181 == Changelog == 182 182 183 = 1.0.17 = 184 * Fixed: iCal sync no longer creates duplicate bookings for records imported before v1.0.16 (orphan-adopt: existing records with NULL ical_uid and matching apartment/check-in are updated instead of re-inserted). 185 * Added: `platform_booking_code` column to store the OTA reservation code (e.g. VRBO ID-XXXXXXX, Airbnb HMXXXXXXX) parsed from the iCal DESCRIPTION field. 186 * Fixed: admin booking form preserves `source`, `ical_uid`, `external_platform`, and `platform_booking_code` on save — iCal-imported bookings remain correctly identified after admin edits. 187 * Fixed: dynamic format array in `save_booking()` prevents silent field loss when `ical_uid` or `platform_booking_code` are conditionally included. 188 * Fixed: feature gate definitions corrected — `statistics_basic` now requires Starter (not Professional), `dynamic_pricing` requires Professional (not Premium), `white_label` requires Premium (not Enterprise). 189 * Added: `domilocus_admin_menu_icon` and `domilocus_admin_menu_title` filter hooks to allow Premium White Label add-on to replace the admin sidebar icon and title. 190 183 191 = 1.0.16 = 184 192 * Fixed: iCal import now stores the event UID and uses upsert deduplication — editing a booking from admin no longer causes a duplicate on the next sync.
Note: See TracChangeset
for help on using the changeset viewer.