Add pricing system with tiers, seasons, and calculator (v0.2.0)
All checks were successful
Create Release Package / build-release (push) Successful in 1m19s

- Create PricingTier enum for short/mid/long-term pricing
- Add Season class for seasonal pricing with date ranges
- Implement Calculator for price calculations with breakdown
- Add pricing meta box to Room post type
- Create Seasons admin page for managing seasonal pricing
- Add Pricing settings tab with tier thresholds
- Support weekend surcharges and configurable weekend days
- Add price column to room list admin

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-31 14:10:30 +01:00
parent f24a347bb1
commit dabfe1e826
12 changed files with 1911 additions and 25 deletions

View File

@@ -5,6 +5,50 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [0.2.0] - 2026-01-31
### Added
- Pricing System with three tiers:
- Short-term (nightly) pricing for stays up to 6 nights
- Mid-term (weekly) pricing for stays 7-27 nights
- Long-term (monthly) pricing for stays 28+ nights
- PricingTier enum class with automatic tier detection
- Season class for seasonal pricing management
- Date range support (MM-DD format)
- Year-spanning seasons (e.g., winter holidays Dec-Jan)
- Price modifier (multiplier) per season
- Priority system for overlapping seasons
- Active/inactive status toggle
- Calculator class for price calculations
- Automatic tier detection based on stay duration
- Seasonal price adjustments
- Weekend surcharge support
- Price breakdown for detailed invoicing
- Currency formatting with symbol/suffix support
- Pricing meta box on Room edit screen
- Base prices for each tier (nightly, weekly, monthly)
- Weekend surcharge field
- Link to pricing settings
- Pricing Settings tab in plugin settings
- Configurable tier thresholds
- Weekend days selection
- Quick view of configured seasons
- Seasons admin page (WP BnB > Seasons)
- List view with all seasons
- Add/Edit season form
- Delete confirmation
- Create default seasons option
- Price column in room list admin
- Admin CSS for pricing UI
- Admin JavaScript for pricing interactions
### Changed
- Room post type now includes pricing fields
- Plugin settings page has new Pricing tab
- Enhanced asset localization with pricing i18n strings
## [0.1.0] - 2026-01-31
### Added
@@ -80,5 +124,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Input sanitization and output escaping
- Server secret masking in license settings
[0.2.0]: https://src.bundespruefstelle.ch/magdev/wp-bnb/releases/tag/v0.2.0
[0.1.0]: https://src.bundespruefstelle.ch/magdev/wp-bnb/releases/tag/v0.1.0
[0.0.1]: https://src.bundespruefstelle.ch/magdev/wp-bnb/releases/tag/v0.0.1