Files
Hotel Raxa Dev 5b1e2453c7 Hotel Raxa - Advanced Booking System Implementation
🏨 Hotel Booking Enhancements:
- Implemented Eagle Booking Advanced Pricing add-on
- Added Booking.com-style rate management system
- Created professional calendar interface for pricing
- Integrated deals and discounts functionality

💰 Advanced Pricing Features:
- Dynamic pricing models (per room, per person, per adult)
- Base rates, adult rates, and child rates management
- Length of stay discounts and early bird deals
- Mobile rates and secret deals implementation
- Seasonal promotions and flash sales

📅 Availability Management:
- Real-time availability tracking
- Stop sell and restriction controls
- Closed to arrival/departure functionality
- Minimum/maximum stay requirements
- Automatic sold-out management

💳 Payment Integration:
- Maintained Redsys payment gateway integration
- Seamless integration with existing Eagle Booking
- No modifications to core Eagle Booking plugin

🛠️ Technical Implementation:
- Custom database tables for advanced pricing
- WordPress hooks and filters integration
- AJAX-powered admin interface
- Data migration from existing Eagle Booking
- Professional calendar view for revenue management

📊 Admin Interface:
- Booking.com-style management dashboard
- Visual rate and availability calendar
- Bulk operations for date ranges
- Statistics and analytics dashboard
- Modal dialogs for quick editing

🔧 Code Quality:
- WordPress coding standards compliance
- Secure database operations with prepared statements
- Proper input validation and sanitization
- Error handling and logging
- Responsive admin interface

🤖 Generated with Claude Code (https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-11 07:43:22 +02:00

123 lines
2.0 KiB
PHP

<?php
namespace Elementor\Modules\System_Info\Reporters;
use Elementor\Utils;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Elementor user report.
*
* Elementor system report handler class responsible for generating a report for
* the user.
*
* @since 1.0.0
*/
class User extends Base {
public function is_enabled() {
return (bool) wp_get_current_user()->ID;
}
/**
* Get user reporter title.
*
* Retrieve user reporter title.
*
* @since 1.0.0
* @access public
*
* @return string Reporter title.
*/
public function get_title() {
return 'User';
}
/**
* Get user report fields.
*
* Retrieve the required fields for the user report.
*
* @since 1.0.0
* @access public
*
* @return array Required report fields with field ID and field label.
*/
public function get_fields() {
return [
'role' => 'Role',
'locale' => 'WP Profile lang',
'agent' => 'User Agent',
];
}
/**
* Get user role.
*
* Retrieve the user role.
*
* @since 1.0.0
* @access public
*
* @return array {
* Report data.
*
* @type string $value The user role.
* }
*/
public function get_role() {
$role = null;
$current_user = wp_get_current_user();
if ( ! empty( $current_user->roles ) ) {
$role = $current_user->roles[0];
}
return [
'value' => $role,
];
}
/**
* Get user profile language.
*
* Retrieve the user profile language.
*
* @since 1.0.0
* @access public
*
* @return array {
* Report data.
*
* @type string $value User profile language.
* }
*/
public function get_locale() {
return [
'value' => get_bloginfo( 'language' ),
];
}
/**
* Get user agent.
*
* Retrieve user agent.
*
* @since 1.0.0
* @access public
*
* @return array {
* Report data.
*
* @type string $value HTTP user agent.
* }
*/
public function get_agent() {
return [
'value' => esc_html( Utils::get_super_global_value( $_SERVER, 'HTTP_USER_AGENT' ) ),
];
}
}