Files
HotelRaxa/wp-content/themes/himara/core/admin/install-plugins.php
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

107 lines
6.3 KiB
PHP

<?php
/* --------------------------------------------------------------------------
* Register the required plugins for this theme.
* @since 1.0.0
---------------------------------------------------------------------------*/
// Include the TGM_Plugin_Activation class.
require_once dirname(__FILE__) . '/inc/class-tgm-plugin-activation.php';
add_action('tgmpa_register', 'himara_required_plugins');
function himara_required_plugins()
{
/**
* Array of plugin arrays. Required keys are name and slug.
* If the source is NOT from the .org repo, then source is also required.
*/
$plugins = array(
array(
'name' => esc_html__('Eagle Core', 'himara') ,
'slug' => 'eagle-core',
'source' => 'https://api.eagle-themes.com/download/himara/h13anjo16/eagle-core.zip',
'required' => true,
'version' => '1.0.2',
) ,
array(
'name' => esc_html__('Eagle Booking', 'himara') ,
'slug' => 'eagle-booking',
'source' => 'https://api.eagle-themes.com/download/himara/h13anjo16/eagle-booking.zip',
'required' => true,
'version' => '1.3.4',
) ,
array(
'name' => esc_html__('Revolution Slider', 'himara') ,
'slug' => 'revslider',
'source' => 'https://api.eagle-themes.com/download/himara/h13anjo16/revslider.zip',
'required' => true,
'version' => '6.6.20',
) ,
array(
'name' => esc_html__('Envato Market', 'himara') ,
'slug' => 'envato-market',
'source' => 'https://api.eagle-themes.com/download/himara/h13anjo16/envato-market.zip',
'required' => true,
'version' => '2.0.11',
) ,
array(
'name' => esc_html__('Elementor', 'himara') ,
'slug' => 'elementor',
'required' => true,
) ,
array(
'name' => esc_html__('Contact Form 7', 'himara') ,
'slug' => 'contact-form-7',
'required' => true,
) ,
);
// Change this to your theme text domain, used for internationalising strings
$theme_text_domain = 'himara';
/**
* Array of configuration settings. Amend each line as needed.
* If you want the default strings to be available under your own theme domain,
* leave the strings uncommented.
* Some of the strings are added into a sprintf, so see the comments at the
* end of each line for what each argument will be.
*/
$config = array(
'domain' => $theme_text_domain, // Text domain - likely want to be the same as your theme.
'default_path' => '', // Default absolute path to pre-packaged plugins
'menu' => 'tgmpa-install-plugins', // Menu slug
'has_notices' => true, // Show admin notices or not
'is_automatic' => false, // Automatically activate plugins after installation or not
'message' => '', // Message to output right before the plugins table
'strings' => array(
'page_title' => esc_html__('Install Required Plugins', 'himara') ,
'menu_title' => esc_html__('Install Plugins', 'himara') ,
'installing' => esc_html__('Installing Plugin: %s', 'himara') , // %1$s = plugin name
'oops' => esc_html__('Something went wrong with the plugin API.', 'himara') ,
'notice_can_install_required' => _n_noop('This theme requires the following plugin: %1$s.', 'This theme requires the following plugins: %1$s.', 'himara') , // %1$s = plugin name(s)
'notice_can_install_recommended' => _n_noop('This theme recommends the following plugin: %1$s.', 'This theme recommends the following plugins: %1$s.', 'himara') , // %1$s = plugin name(s)
'notice_cannot_install' => _n_noop('Sorry, but you do not have the correct permissions to install the %s plugin. Contact the administrator of this site for help on getting the plugin installed.', 'Sorry, but you do not have the correct permissions to install the %s plugins. Contact the administrator of this site for help on getting the plugins installed.', 'himara') , // %1$s = plugin name(s)
'notice_can_activate_required' => _n_noop('The following required plugin is currently inactive: %1$s.', 'The following required plugins are currently inactive: %1$s.', 'himara') , // %1$s = plugin name(s)
'notice_can_activate_recommended' => _n_noop('The following recommended plugin is currently inactive: %1$s.', 'The following recommended plugins are currently inactive: %1$s.', 'himara') , // %1$s = plugin name(s)
'notice_cannot_activate' => _n_noop('Sorry, but you do not have the correct permissions to activate the %s plugin. Contact the administrator of this site for help on getting the plugin activated.', 'Sorry, but you do not have the correct permissions to activate the %s plugins. Contact the administrator of this site for help on getting the plugins activated.', 'himara') , // %1$s = plugin name(s)
'notice_ask_to_update' => _n_noop('The following plugin needs to be updated to its latest version to ensure maximum compatibility with this theme: %1$s.', 'The following plugins need to be updated to their latest version to ensure maximum compatibility with this theme: %1$s.', 'himara') , // %1$s = plugin name(s)
'notice_cannot_update' => _n_noop('Sorry, but you do not have the correct permissions to update the %s plugin. Contact the administrator of this site for help on getting the plugin updated.', 'Sorry, but you do not have the correct permissions to update the %s plugins. Contact the administrator of this site for help on getting the plugins updated.', 'himara') , // %1$s = plugin name(s)
'install_link' => _n_noop('Begin installing plugin', 'Begin installing plugins', 'himara') ,
'activate_link' => _n_noop('Activate installed plugin', 'Activate installed plugins', 'himara') ,
'return' => __('Return to Required Plugins Installer', 'himara') ,
'plugin_activated' => __('Plugin activated successfully.', 'himara') ,
'complete' => __('All plugins installed and activated successfully. %s', 'himara') , // %1$s = dashboard link
'nag_type' => 'updated'
// Determines admin notice type - can only be 'updated' or 'error'
)
);
tgmpa($plugins, $config);
}