File: /mnt/data/dreamsrent-wp-demo/wp-content/themes/dreamsrent/inc/options-init.php
<?php
/**
* ReduxFramework Sample Config File
* For full documentation, please visit: http://docs.reduxframework.com/
*/
if ( ! class_exists( 'Redux' ) ) {
return;
}
// This is your option name where all the Redux data is stored.
$opt_name = "dreamsrent_theme_options";
// This line is only for altering the demo. Can be easily removed.
/*
*
* --> Used within different fields. Simply examples. Search for ACTUAL DECLARATION for field examples
*
*/
$sampleHTML = '';
if ( file_exists( dirname( __FILE__ ) . '/info-html.html' ) ) {
Redux_Functions::initWpFilesystem();
global $wp_filesystem;
$sampleHTML = $wp_filesystem->get_contents( dirname( __FILE__ ) . '/info-html.html' );
}
// Background Patterns Reader
$sample_patterns_path = ReduxFramework::$_dir . '../sample/patterns/';
$sample_patterns_url = ReduxFramework::$_url . '../sample/patterns/';
$sample_patterns = array();
if ( is_dir( $sample_patterns_path ) ) {
if ( $sample_patterns_dir = opendir( $sample_patterns_path ) ) {
$sample_patterns = array();
while ( ( $sample_patterns_file = readdir( $sample_patterns_dir ) ) !== false ) {
if ( stristr( $sample_patterns_file, '.png' ) !== false || stristr( $sample_patterns_file, '.jpg' ) !== false ) {
$name = explode( '.', $sample_patterns_file );
$name = str_replace( '.' . end( $name ), '', $sample_patterns_file );
$sample_patterns[] = array(
'alt' => $name,
'img' => $sample_patterns_url . $sample_patterns_file
);
}
}
}
}
$theme = wp_get_theme();
$args = array(
'opt_name' => $opt_name,
'display_name' => $theme->get( 'Name' ),
'display_version' => $theme->get( 'Version' ),
'menu_type' => 'submenu',
'allow_sub_menu' => true,
'menu_title' => __( 'Theme Options','dreamsrent' ),
'page_title' => __( 'Theme Options','dreamsrent' ),
'google_api_key' => '',
'google_update_weekly' => false,
'async_typography' => false,
'admin_bar' => true,
'admin_bar_icon' => 'dashicons-portfolio',
'admin_bar_priority' => 50,
'global_variable' => '',
'dev_mode' => false,
'update_notice' => true,
'customizer' => true,
'page_priority' => null,
'page_parent' => 'themes.php',
'page_permissions' => 'manage_options',
'menu_icon' => '',
'last_tab' => '',
'page_icon' => 'icon-themes',
'page_slug' => 'dreamsrent',
'save_defaults' => true,
'default_show' => false,
'default_mark' => '',
'show_import_export' => true,
'transient_time' => 60 * MINUTE_IN_SECONDS,
'output' => true,
'output_tag' => true,
'database' => '',
'use_cdn' => true,
'hints' => array(
'icon' => 'el el-question-sign',
'icon_position' => 'right',
'icon_color' => 'lightgray',
'icon_size' => 'normal',
'tip_style' => array(
'color' => 'red',
'shadow' => true,
'rounded' => false,
'style' => '',
),
'tip_position' => array(
'my' => 'top left',
'at' => 'bottom right',
),
'tip_effect' => array(
'show' => array(
'effect' => 'slide',
'duration' => '500',
'event' => 'mouseover',
),
'hide' => array(
'effect' => 'slide',
'duration' => '500',
'event' => 'click mouseleave',
),
),
)
);
$args['share_icons'][] = array(
'url' => 'https://www.youtube.com/',
'title' => 'View videos on YouTube',
'icon' => 'el el-youtube'
);
$args['share_icons'][] = array(
'url' => 'https://www.facebook.com/',
'title' => 'Like us on Facebook',
'icon' => 'el el-facebook'
);
Redux::setArgs( $opt_name, $args );
$tabs = array(
array(
'id' => 'redux-help-tab-1',
'title' => __( 'Theme Information 1','dreamsrent'),
'content' => __( '<p>This is the tab content, HTML is allowed.</p>' ,'dreamsrent')
),
array(
'id' => 'redux-help-tab-2',
'title' => __( 'Theme Information 2' ,'dreamsrent'),
'content' => __( '<p>This is the tab content, HTML is allowed.</p>','dreamsrent' )
)
);
Redux::set_help_tab( $opt_name, $tabs );
$content = __( '<p>This is the sidebar content, HTML is allowed.</p>' ,'dreamsrent');
Redux::set_help_sidebar( $opt_name, $content );
Redux::setSection( $opt_name, array(
'title' => __( 'General','dreamsrent' ),
'id' => 'general',
'desc' => __( 'All Website General settings will be changeable from here','dreamsrent' ),
'icon' => 'el el-bell',
'fields' => array(
array(
'id' => 'hour_format',
'type' => 'radio',
'title' => __( '12/24 Hour Format' ,'dreamsrent'),
'options' => array(
'24' => __( '24 Hour', 'dreamsrent' ),
'12' => __( '12 Hour', 'dreamsrent' ),
),
'default' => '24',
),
array(
'id' => 'starting_from',
'type' => 'text',
'title' => esc_html__('Starting From','dreamsrent' ),
'default' => 'Starting From',
),
array(
'id' => 'starting_from_price',
'type' => 'switch',
'title' => __('Starting Price', 'dreamsrent'),
'subtitle' => __('This will enable a special average price display.', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'id' => 'starting_avg_price',
'type' => 'switch',
'title' => __('Special Average Price', 'dreamsrent'),
'subtitle' => __('This will enable a special average price display in cart checkout calculations.', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'id' => 'diff_pickup_drop_locations',
'type' => 'switch',
'title' => __('Different Pickup and Drop-off Locations', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'id' => 'diff_pickup_drop_locations_price',
'type' => 'text',
'title' => esc_html__('Different Pickup and Drop-off Locations Price','dreamsrent' ),
'default' => '60',
'required' => array('diff_pickup_drop_locations', '=', true), // Condition applied here
),
),
) );
/*** Vendor Settings ***/
Redux::setSection($opt_name, array(
'title' => __('Vendor Settings', 'dreamsrent'),
'id' => 'vendor_settings',
'icon' => 'el el-user',
'fields' => array(
array(
'id' => 'vendors_module',
'type' => 'section',
'title' => __('Vendors Module', 'dreamsrent'),
'indent' => true,
),
array(
'id' => 'enable_vendor',
'type' => 'switch',
'title' => __('Enable Vendors Module', 'dreamsrent'),
'subtitle' => __('This will enable a vendors module.', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'id' => 'vendor_packages_section',
'type' => 'section',
'title' => __('Vendor Packages', 'dreamsrent'),
'indent' => true,
'required' => array('enable_vendor', '=', true),
),
array(
'id' => 'enable_vendor_packages',
'type' => 'switch',
'title' => __('Enable Vendor Packages', 'dreamsrent'),
'subtitle' => __('Require vendors to buy a DreamsRent Package to add cars and unlock features.', 'dreamsrent'),
'default' => false,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
'required' => array('enable_vendor', '=', true),
),
array(
'id' => 'vendor_packages_page',
'type' => 'select',
'title' => __('Packages Page', 'dreamsrent'),
'subtitle' => __('Page where package products are listed/shop page. ', 'dreamsrent'),
'data' => 'pages',
'required' => array('enable_vendor_packages', '=', true),
),
array(
'id' => 'av_plan_management',
'type' => 'select',
'title' => __('Plan Management Page', 'dreamsrent'),
'subtitle' => __('Select the page that shows current plan, usage and upgrade options. content: [dreamsrent_plan_management]', 'dreamsrent'),
'data' => 'pages',
'required' => array('enable_vendor_packages', '=', true),
),
// Run expiry check now
array(
'id' => 'run_expiry_check_now',
'type' => 'raw',
'title' => __('Run Expiry Check Now', 'dreamsrent'),
'subtitle' => __('Click to immediately draft cars for vendors with expired plans.', 'dreamsrent'),
'content' => (function(){
$nonce = wp_create_nonce('dr_run_expiry_check');
$running = esc_js(__('Running...', 'dreamsrent'));
$done = esc_js(__('Done. Drafted cars:', 'dreamsrent'));
$failed = esc_js(__('Failed', 'dreamsrent'));
$nonce_js = esc_js($nonce);
$html = '<button type="button" class="button button-primary" id="dr-run-expiry-check">'. esc_html__('Run Check', 'dreamsrent') .'</button>';
$html .= '<span id="dr-expiry-check-result" style="margin-left:8px;"></span>';
$js = '<script>jQuery(function($){$(document).on("click","#dr-run-expiry-check",function(e){e.preventDefault();var $b=$(this),$r=$("#dr-expiry-check-result");$b.prop("disabled",true);$r.text("%1$s");$.post(ajaxurl,{action:"dr_run_expiry_check",_wpnonce:"%2$s"},function(resp){if(resp&&resp.success){$r.text("%3$s " + resp.data.affected);}else{$r.text("%4$s");}}).fail(function(){$r.text("%5$s");}).always(function(){$b.prop("disabled",false);});});});</script>';
$html .= sprintf($js, $running, $nonce_js, $done, $failed, $failed);
return $html;
})(),
'required' => array('enable_vendor_packages', '=', true),
),
array(
'id' => 'vendor_commission_section',
'type' => 'section',
'title' => __('Commission Settings', 'dreamsrent'),
'indent' => true,
),
array(
'id' => 'vendor_commission_enabled',
'type' => 'switch',
'title' => __('Enable Commission System', 'dreamsrent'),
'default' => true,
),
array(
'id' => 'vendor_commission_rate',
'type' => 'slider',
'title' => __('Default Commission Rate (%)', 'dreamsrent'),
'subtitle' => __('Default commission percentage for vendors', 'dreamsrent'),
'default' => 20,
'min' => 0,
'step' => 0.5,
'max' => 100,
'display_value' => 'label',
'required' => array('vendor_commission_enabled', '=', true),
),
array(
'id' => 'vendor_payout_schedule',
'type' => 'select',
'title' => __('Payout Schedule', 'dreamsrent'),
'subtitle' => __('How often payouts are processed', 'dreamsrent'),
'options' => array(
'manual' => __('Manual', 'dreamsrent'),
),
'default' => 'manual',
'required' => array('vendor_commission_enabled', '=', true),
),
)
));
Redux::setSection( $opt_name, array(
'title' => __( 'Booking Setting','dreamsrent' ),
'id' => 'booking_setting',
'desc' => __( 'All Website Booking settings will be changeable from here','dreamsrent' ),
'icon' => 'el el-bell',
'fields' => array(
array(
'id' => 'booking_options',
'type' => 'switch',
'title' => __('Enable/Disable bookings', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'id' => 'enquiry_options',
'type' => 'switch',
'title' => __('Enable/Disable enquiry', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
),
) );
Redux::setSection( $opt_name, array(
'title' => __( 'Header','dreamsrent' ),
'id' => 'header',
'desc' => __( 'All Website Header settings will be changeable from here','dreamsrent' ),
'icon' => 'el el-home',
'fields' => array(
array(
'id' => 'frontend_logo',
'type' => 'media',
'url' => true,
'title' => __( 'Logo' ,'dreamsrent'),
'compiler' => 'true',
'default' => array( 'url' => trailingslashit(get_template_directory_uri()) . 'assets/images/logo.svg' ),
),
array(
'id' => 'small_logo',
'type' => 'media',
'url' => true,
'title' => __( 'Mobile Logo','dreamsrent' ),
'compiler' => 'true',
'default' => array( 'url' => trailingslashit(get_template_directory_uri()) . 'assets/images/logo-small.png' ),
),
array(
'id' => 'breadcrumb_image',
'type' => 'media',
'url' => true,
'title' => __( 'Breadcrumb Image','dreamsrent' ),
'compiler' => 'true',
'default' => array( 'url' => trailingslashit(get_template_directory_uri()) . 'assets/images/breadcrumb.png' ),
),
array(
'id' => 'header_login_link',
'type' => 'select',
'title' => __('Select Login Page','dreamsrent' ),
'data' => 'pages'
),
array(
'id' => 'header_register_link',
'type' => 'select',
'title' => __('Select Register Page','dreamsrent' ),
'data' => 'pages'
),
array(
'id' => 'header_vendor_register_link',
'type' => 'select',
'title' => __('Select Vendors Register Page','dreamsrent' ),
'data' => 'pages'
),
array(
'id' => 'header_forget_link',
'type' => 'select',
'title' => __('Select Forget Password Page' ,'dreamsrent'),
'data' => 'pages'
),
)
) );
Redux::setSection($opt_name, array(
'title' => __('Cancellation & Refund', 'dreamsrent'),
'id' => 'cancellation_settings',
'desc' => __('Configure settings related to cancellations here.', 'dreamsrent'),
'icon' => 'el el-ban-circle',
'fields' => array(
array(
'id' => 'cancellation_switch',
'type' => 'switch',
'title' => __('Cancellation Option', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'id' => 'cancellation_pages',
'type' => 'select',
'title' => __('Select Cancellation policy pages' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'cancellation_details',
'type' => 'repeater',
'title' => __('Cancellation Details', 'dreamsrent'),
'subtitle' => __('Add cancellation details here.', 'dreamsrent'),
'fields' => array(
array(
'id' => 'cancellation_title',
'type' => 'text',
'title' => __('Title', 'dreamsrent'),
'default' => '',
),
array(
'id' => 'cancellation_hour',
'type' => 'text',
'title' => __('Hour', 'dreamsrent'),
'default' => '',
),
array(
'id' => 'cancellation_percentage',
'type' => 'text',
'title' => __('Deduction Percentage', 'dreamsrent'),
'default' => '',
),
),
'default' => array(
array(
'cancellation_title' => '',
'cancellation_hour' => '',
'cancellation_percentage' => '',
),
),
),
),
));
Redux::setSection( $opt_name, array(
'title' => __( 'Typography ', 'dreamsrent' ),
'id' => 'typography',
'desc' => __( 'All website general typography settings will be changeable from here', 'dreamsrent' ),
'icon' => 'el el-bell',
'fields' => array(
array(
'id' => 'body_typography',
'type' => 'typography',
'title' => __( 'Body Typography', 'dreamsrent' ),
'subtitle' => __( 'Select the typography for body text', 'dreamsrent' ),
'google' => true,
'output' => array( 'body' ),
'default' => array(
'color' => '',
'font-size' => '',
'font-family' => '',
'font-weight' => '',
),
'line-height' => false, // Disable line-height option
'text-align' => false, // Disable text-align option
),
array(
'id' => 'h1_typography',
'type' => 'typography',
'title' => __( 'H1 Typography', 'dreamsrent' ),
'subtitle' => __( 'Select the typography for H1 headings', 'dreamsrent' ),
'google' => true,
'output' => array( 'h1' ),
'default' => array(
'color' => '',
'font-size' => '',
'font-family' => '',
'font-weight' => '',
),
'line-height' => false, // Disable line-height option
'text-align' => false, // Disable text-align option
),
array(
'id' => 'h2_typography',
'type' => 'typography',
'title' => __( 'H2 Typography', 'dreamsrent' ),
'subtitle' => __( 'Select the typography for H2 headings', 'dreamsrent' ),
'google' => true,
'output' => array( 'h2' ),
'default' => array(
'color' => '',
'font-size' => '',
'font-family' => '',
'font-weight' => '',
),
'line-height' => false, // Disable line-height option
'text-align' => false, // Disable text-align option
),
array(
'id' => 'h3_typography',
'type' => 'typography',
'title' => __( 'H3 Typography', 'dreamsrent' ),
'subtitle' => __( 'Select the typography for H3 headings', 'dreamsrent' ),
'google' => true,
'output' => array( 'h3' ),
'default' => array(
'color' => '',
'font-size' => '',
'font-family' => '',
'font-weight' => '',
),
'line-height' => false, // Disable line-height option
'text-align' => false, // Disable text-align option
),
array(
'id' => 'h4_typography',
'type' => 'typography',
'title' => __( 'H4 Typography', 'dreamsrent' ),
'subtitle' => __( 'Select the typography for H4 headings', 'dreamsrent' ),
'google' => true,
'output' => array( 'h4' ),
'default' => array(
'color' => '',
'font-size' => '',
'font-family' => '',
'font-weight' => '',
),
'line-height' => false, // Disable line-height option
'text-align' => false, // Disable text-align option
),
array(
'id' => 'h5_typography',
'type' => 'typography',
'title' => __( 'H5 Typography', 'dreamsrent' ),
'subtitle' => __( 'Select the typography for H5 headings', 'dreamsrent' ),
'google' => true,
'output' => array( 'h5' ),
'default' => array(
'color' => '',
'font-size' => '',
'font-family' => '',
'font-weight' => '',
),
'line-height' => false, // Disable line-height option
'text-align' => false, // Disable text-align option
),
array(
'id' => 'h6_typography',
'type' => 'typography',
'title' => __( 'H6 Typography', 'dreamsrent' ),
'subtitle' => __( 'Select the typography for H6 headings', 'dreamsrent' ),
'google' => true,
'output' => array( 'h6' ),
'default' => array(
'color' => '',
'font-size' => '',
'font-family' => '',
'font-weight' => '',
),
'line-height' => false, // Disable line-height option
'text-align' => false, // Disable text-align option
),
),
) );
Redux::setSection( $opt_name, array(
'title' => __( 'Styling', 'dreamsrent' ),
'id' => 'custom_styles',
'customizer_width' => '500px',
'icon' => 'el el-css',
'fields' => array(
array(
'id' => 'primary_color',
'type' => 'color',
'title' => esc_html__('Primary Color', 'dreamsrent'),
'default' => "#FFA633",
'subtitle' => esc_html__('Set primary color.', 'dreamsrent'),
),
// array(
// 'id' => 'secondary_color',
// 'type' => 'color',
// 'title' => esc_html__('Secondary Color', 'dreamsrent'),
// 'default' => "#201F1D",
// 'subtitle' => esc_html__('Set secondary color.', 'dreamsrent'),
// ),
array(
'id' => 'bcrumb_color',
'type' => 'color',
'title' => esc_html__('Breadcrumb Background', 'dreamsrent'),
'default' => "#201F1D",
'subtitle' => esc_html__('Breadcrumb Background color.', 'dreamsrent'),
),
array(
'id' => 'a_color',
'type' => 'color',
'title' => esc_html__('Link Color', 'dreamsrent'),
'default' => "#127384",
'subtitle' => esc_html__('Set links color.', 'dreamsrent'),
),
array(
'id' => 'a_color_hover',
'type' => 'color',
'title' => esc_html__('Link Hover Color', 'dreamsrent'),
'default' => "#000000",
'subtitle' => esc_html__('Set links hover color.', 'dreamsrent'),
),
// array(
// 'id' => 'secondary_color_hover',
// 'type' => 'color',
// 'title' => esc_html__('Secondary Color hover', 'dreamsrent'),
// 'default' => "#127384",
// 'subtitle' => esc_html__('Set secondary color hover.', 'dreamsrent'),
// ),
array(
'id' => 'btn_primary_back',
'type' => 'color',
'title' => esc_html__('Button Primary Background', 'dreamsrent'),
'default' => "#127384",
'subtitle' => esc_html__('Set button primary Background.', 'dreamsrent'),
),
array(
'id' => 'btn_primary_color',
'type' => 'color',
'title' => esc_html__('Button Primary Color', 'dreamsrent'),
'default' => "#ffffff",
'subtitle' => esc_html__('Set button primary color.', 'dreamsrent'),
),
array(
'id' => 'btn_primary_hover',
'type' => 'color',
'title' => esc_html__('Button Primary Hover Background', 'dreamsrent'),
'default' => "#141432",
'subtitle' => esc_html__('Set button primary hover background.', 'dreamsrent'),
),
array(
'id' => 'btn_secondary_back',
'type' => 'color',
'title' => esc_html__('Button Secondary Background', 'dreamsrent'),
'default' => "#201F1D",
'subtitle' => esc_html__('Set button secondary Background.', 'dreamsrent'),
),
array(
'id' => 'btn_secondary_color',
'type' => 'color',
'title' => esc_html__('Button Secondary Color', 'dreamsrent'),
'default' => "#ffffff",
'subtitle' => esc_html__('Set button primary color.', 'dreamsrent'),
),
array(
'id' => 'btn_secondary_hover',
'type' => 'color',
'title' => esc_html__('Button Secondary Hover Background', 'dreamsrent'),
'default' => "#127384",
'subtitle' => esc_html__('Set button primary hover background.', 'dreamsrent'),
),
array(
'id' => 'footer_back',
'type' => 'color',
'title' => esc_html__('Footer Background', 'dreamsrent'),
'default' => "#201f1d",
'subtitle' => esc_html__('background color.', 'dreamsrent'),
),
array(
'id' => 'footer_bottom_back',
'type' => 'color',
'title' => esc_html__('Footer Bottom Background', 'dreamsrent'),
'default' => "#201f1d",
'subtitle' => esc_html__('background color.', 'dreamsrent'),
),
array(
'id' => 'custom_styles_end',
'type' => 'section',
'indent' => false,
)
),
) );
Redux::setSection( $opt_name, array(
'title' => __( 'Footer' ,'dreamsrent'),
'id' => 'footers',
'customizer_width' => '500px',
'icon' => 'el el-edit',
'fields' => array(
array(
'id' => 'footer_image_back',
'type' => 'media',
'url' => true,
'title' => __( 'Footer Background Image','dreamsrent' ),
'compiler' => 'true',
'default' => array( 'url' => trailingslashit(get_template_directory_uri()) . 'assets/images/breadcrumb.png' ),
),
array(
'id' => 'footer-about-section-end',
'title' => 'Footer Column 1',
'type' => 'section',
'indent' => true,
),
array(
'id' => 'footer_aboutus_heading',
'type' => 'text',
'title' => esc_html__('About Company Label','dreamsrent' ),
'default' => 'About Company',
),
// array(
// 'id' => 'footer_logo',
// 'type' => 'media',
// 'url' => true,
// 'title' => __( 'Footer Logo' ,'dreamsrent'),
// 'compiler' => 'true',
// 'default' => array( 'url' => trailingslashit(get_template_directory_uri()) . 'assets/images/logo.svg' ),
// ),
// array(
// 'id' => 'footer_aboutus_content',
// 'type' => 'textarea',
// 'title' => esc_html__('About Company','dreamsrent' ),
// 'default' => 'About Company',
// ),
array(
'id' => 'footer_aboutus',
'type' => 'select',
'title' => __('Select About Company Pages' ,'dreamsrent'),
'multi' => false,
'sortable' => true,
'data' => 'pages'
),
array(
'id' => 'footer-service-section-end',
'title' => 'Footer Column 2',
'type' => 'section',
'indent' => true,
),
array(
'id' => 'footer_services_locations_heading',
'type' => 'text',
'title' => esc_html__('Vehicle Type Label','dreamsrent' ),
'default' => 'Vehicle Type',
),
array(
'id' => 'footer_services_locations',
'type' => 'select',
'title' => __('Select Vehicle Type','dreamsrent' ),
'multi' => true,
'sortable' => true,
'data' => 'pages'
),
array(
'id' => 'footer-links-section-end',
'title' => 'Footer Column 3',
'type' => 'section',
'indent' => true,
),
array(
'id' => 'footer_links_heading',
'type' => 'text',
'title' => esc_html__('Quick Links Label','dreamsrent' ),
'default' => 'Quick Links',
),
array(
'id' => 'footer_page_links',
'type' => 'select',
'title' => __('Other links pages','dreamsrent' ),
'multi' => true,
'sortable' => true,
'data' => 'pages',
),
array(
'id' => 'footer-con-section-end',
'title' => 'Footer Column 4',
'type' => 'section',
'indent' => true,
),
array(
'id' => 'footer_contact_name',
'type' => 'text',
'title' => esc_html__('Contact Label' ,'dreamsrent'),
'default' => 'Contact Info',
),
array(
'id' => 'footer_contact',
'type' => 'text',
'title' => esc_html__('Contact Number','dreamsrent' ),
'default' => '(+1) 88888 88888',
),
array(
'id' => 'footer_email',
'type' => 'text',
'title' => esc_html__('Email ID','dreamsrent' ),
'default' => '[email protected]',
),
array(
'id' => 'footer_newsletter',
'type' => 'text',
'title' => esc_html__('Newsletter Shortcode','dreamsrent' ),
'default' => '[]',
),
array(
'id' => 'footer_facebook_link',
'type' => 'text',
'title' => esc_html__('Facebook','dreamsrent' ),
'default' => '',
'placeholder' => '#',
),
array(
'id' => 'footer_twitter_link',
'type' => 'text',
'title' => esc_html__('Twitter','dreamsrent' ),
'default' => '',
'placeholder' => '#',
),
array(
'id' => 'footer_linkedin_link',
'type' => 'text',
'title' => esc_html__('LinkedIn','dreamsrent' ),
'default' => '',
'placeholder' => '#',
),
array(
'id' => 'footer_behance_link',
'type' => 'text',
'title' => esc_html__('Behance','dreamsrent' ),
'default' => '',
'placeholder' => '#',
),
array(
'id' => 'footer_instagram_link',
'type' => 'text',
'title' => esc_html__('Instagram','dreamsrent' ),
'default' => '',
'placeholder' => '#',
),
array(
'id' => 'footer-social-section-end',
'type' => 'section',
'indent' => false,
),
array(
'id' => 'footer_copyright_text',
'type' => 'textarea',
'title' => esc_html__('Footer Copyright Text','dreamsrent' ),
'default' => '© 2024 Dreams Rent. All Rights Reserved.',
'args' => array(
'wpautop' => false,
'media_buttons' => false,
'textarea_rows' => 5,
'teeny' => false,
'quicktags' => false,
)
),
),
) );
Redux::setSection( $opt_name, array(
'title' => __( 'Pages','dreamsrent' ),
'id' => 'pages',
'desc' => __( 'All Website page settings will be changeable from here','dreamsrent' ),
'icon' => 'el el-lines',
'fields' => array(
//Home Search page
array(
'id' => 'home_search_page',
'type' => 'select',
'title' => __('Select Home Search Page','dreamsrent' ),
'subtitle' => __( 'Main home search page' ,'dreamsrent'),
'data' => 'pages'
),
//dashboard page
array(
'id' => 'dashboard_page',
'type' => 'select',
'title' => __('Select Dashboard Page','dreamsrent' ),
'subtitle' => __( 'Main Dashboard page for user, content: [dreamsrent_dashboard]' ,'dreamsrent'),
'data' => 'pages'
),
//Bookings page
array(
'id' => 'bookings_page',
'type' => 'select',
'title' => __('Select Bookings Page','dreamsrent' ),
'subtitle' => __( 'Select bookings page for user, content: [dreamsrent_bookings]' ,'dreamsrent'),
'data' => 'pages'
),
//Reviews page
array(
'id' => 'reviews_page',
'type' => 'select',
'title' => __('Select Reviews Page' ,'dreamsrent'),
'subtitle' => __( 'Select reviews page for user, content: [dreamsrent_reviews]','dreamsrent' ),
'data' => 'pages'
),
//Wishlist page
array(
'id' => 'wishlist_page',
'type' => 'select',
'title' => __('Select Wishlist Page' ,'dreamsrent'),
'subtitle' => __( 'Select wishlist page for user, content: [dreamsrent_wishlist]' ,'dreamsrent'),
'data' => 'pages'
),
//Chat page
array(
'id' => 'chat_page',
'type' => 'select',
'title' => __('Select Chat Page' ,'dreamsrent'),
'subtitle' => __( 'Select Chat page for user, content: [dreamsrent_chat]','dreamsrent' ),
'data' => 'pages'
),
//Payments page
array(
'id' => 'payments_page',
'type' => 'select',
'title' => __('Select Payments Page' ,'dreamsrent'),
'subtitle' => __( 'Select Payment page for user, content: [dreamsrent_payment]','dreamsrent' ),
'data' => 'pages'
),
//Payments page
array(
'id' => 'notifications_page',
'type' => 'select',
'title' => __('Select Notifications Page' ,'dreamsrent'),
'subtitle' => __( 'Select notifications page for user, content: [dreamsrent_notifications]','dreamsrent' ),
'data' => 'pages'
),
//Profile page
array(
'id' => 'profile_page',
'type' => 'select',
'title' => __('Select Profile Page' ,'dreamsrent'),
'subtitle' => __( 'Select Profile page for user, content: [dreamsrent_profile]' ,'dreamsrent'),
'data' => 'pages'
),
)
) );
Redux::setSection( $opt_name, array(
'title' => __( 'Admin Pages','dreamsrent' ),
'id' => 'av_pages',
'desc' => __( 'All Website page settings will be changeable from here','dreamsrent' ),
'icon' => 'el el-lines',
'fields' => array(
//Home Search page
array(
'id' => 'av_register_page',
'type' => 'select',
'title' => __('Select Register Page','dreamsrent' ),
'subtitle' => __( 'Select Register Page' ,'dreamsrent'),
'data' => 'pages'
),
//dashboard page
array(
'id' => 'av_setting',
'type' => 'select',
'title' => __('Select Setting Page','dreamsrent' ),
'subtitle' => __( 'Setting page for admin, content: [dreamsrent_profile_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
//dashboard page
array(
'id' => 'av_reservation',
'type' => 'select',
'title' => __('Select Reservation Page','dreamsrent' ),
'subtitle' => __( 'Reservation page for admin, content: [dreamsrent_reservations_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_add_reservation',
'type' => 'select',
'title' => __('Select Add Reservation Page','dreamsrent' ),
'subtitle' => __( 'Add Reservation page for admin, content: [dreamsrent_add_reservations_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_edit_reservation',
'type' => 'select',
'title' => __('Select Edit Reservation Page','dreamsrent' ),
'subtitle' => __( 'Edit Reservation page for admin, content: [dreamsrent_edit_reservations_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_all_bookings',
'type' => 'select',
'title' => __('Select All Bookings Page','dreamsrent' ),
'subtitle' => __( 'All Bookings page for admin, content: [dreamsrent_all_bookings_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_calendar',
'type' => 'select',
'title' => __('Select Calendar Page','dreamsrent' ),
'subtitle' => __( 'Calendar page for admin, content: [dreamsrent_calendar_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_customers',
'type' => 'select',
'title' => __('Select Customers Page','dreamsrent' ),
'subtitle' => __( 'Customers page for admin, content: [dreamsrent_customers_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_drivers',
'type' => 'select',
'title' => __('Select Drivers Page','dreamsrent' ),
'subtitle' => __( 'Drivers page for admin, content: [dreamsrent_drivers_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_locations',
'type' => 'select',
'title' => __('Select Locations Page','dreamsrent' ),
'subtitle' => __( 'Locations page for admin, content: [dreamsrent_locations_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_all_cars',
'type' => 'select',
'title' => __('Select Cars Page','dreamsrent' ),
'subtitle' => __( 'Cars page for admin, content: [dreamsrent_cars_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_add_car',
'type' => 'select',
'title' => __('Select Add Cars Page','dreamsrent' ),
'subtitle' => __( 'Add Cars page for admin, content: [dreamsrent_addcars_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_edit_car',
'type' => 'select',
'title' => __('Select Edit Cars Page','dreamsrent' ),
'subtitle' => __( 'Edit Cars page for admin, content: [dreamsrent_editcars_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_maintenance',
'type' => 'select',
'title' => __('Select Maintenance Page','dreamsrent' ),
'subtitle' => __( 'Maintenance page for admin, content: [dreamsrent_maintenance_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_reviews',
'type' => 'select',
'title' => __('Select Reviews Page','dreamsrent' ),
'subtitle' => __( 'Reviews page for admin, content: [dreamsrent_reviews_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_earnings',
'type' => 'select',
'title' => __('Select Earnings Page','dreamsrent' ),
'subtitle' => __( 'Earnings page for admin, content: [dreamsrent_earnings_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_payouts',
'type' => 'select',
'title' => __('Select Payouts Page','dreamsrent' ),
'subtitle' => __( 'Payouts page for admin, content: [dreamsrent_payouts_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_enquires',
'type' => 'select',
'title' => __('Select Enquires Page','dreamsrent' ),
'subtitle' => __( 'Enquires page for admin, content: [dreamsrent_enquires_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_invoices',
'type' => 'select',
'title' => __('Select Invoices Page','dreamsrent' ),
'subtitle' => __( 'Invoices page for admin, content: [dreamsrent_reviews_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_payments',
'type' => 'select',
'title' => __('Select Payments Page','dreamsrent' ),
'subtitle' => __( 'Payments page for admin, content: [dreamsrent_reviews_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
array(
'id' => 'av_chat',
'type' => 'select',
'title' => __('Select Chat Page','dreamsrent' ),
'subtitle' => __( 'Chat page for admin, content: [dreamsrent_reviews_vendor]' ,'dreamsrent'),
'data' => 'pages'
),
)
) );
Redux::setSection( $opt_name, array(
'title' => __( 'GDPR Policy','dreamsrent' ),
'id' => 'gdpr',
'desc' => __( 'All GDPR settings will be changeable from here','dreamsrent' ),
'icon' => 'el el-th-large',
'fields' => array(
array(
'id' => 'gdpr_switch',
'type' => 'switch',
'title' => __('GDPR Option', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'id' => 'gdpr_text',
'type' => 'editor',
'title' => __( 'GDPR Policy Content' ,'dreamsrent'),
'args' => array(
'wpautop' => true,
'media_buttons' => true,
'textarea_rows' => 10,
'teeny' => false,
'quicktags' => true,
),
),
array(
'id' => 'gdpr_pagelink',
'type' => 'select',
'title' => __('Select Privacy Policy Page','dreamsrent' ),
'data' => 'pages'
),
array(
'id' => 'gdpr_accept_buttontext',
'type' => 'text',
'title' => esc_html__('Enter Accept button text','dreamsrent' ),
'default' => 'Accept',
),
array(
'id' => 'gdpr_cancel_buttontext',
'type' => 'text',
'title' => esc_html__('Enter Cancel button text','dreamsrent' ),
'default' => 'Cancel',
),
),
) );
// OTP Verification Process
Redux::setSection( $opt_name, array(
'title' => __( 'Verification', 'dreamsrent' ),
'icon' => 'fa fa-shield-halved',
'fields' => array(
array(
'id' => 'otp_switch',
'type' => 'switch',
'title' => __('Email OTP Option Vendor', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'id' => 'otp_switch_customer',
'type' => 'switch',
'title' => __('Email OTP Option Customer', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'id' => 'provider_verify',
'type' => 'switch',
'title' => __('Enable Provider Verify by Admin', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'id' => 'customer_verify',
'type' => 'switch',
'title' => __('Enable Customer Verify by Admin', 'dreamsrent'),
'default' => true,
'on' => __('On', 'dreamsrent'),
'off' => __('Off', 'dreamsrent'),
),
array(
'title' => __('From name in email', 'dreamsrent'),
'subtitle' => __('The name from who the email is received, by default it is your site name.', 'dreamsrent'),
'id' => 'otp_emails_name',
'default' => get_bloginfo( 'name' ),
'type' => 'text',
),
array(
'title' => __('From email ', 'dreamsrent'),
'subtitle' => __('This will act as the "from" and "reply-to" address. This emails should match your domain address', 'dreamsrent'),
'id' => 'otp_emails_from_email',
'default' => get_bloginfo( 'admin_email' ),
'type' => 'text',
),
array(
'title' => __('Subject email ', 'dreamsrent'),
'subtitle' => __('This will act as the Subject of the email.', 'dreamsrent'),
'id' => 'otp_subject_from_email',
'default' => 'Your Confirmation Code',
'type' => 'text',
),
array(
'id' => 'otp_email_logo',
'title' => __( 'Logo for emails' , 'dreamsrent' ),
'subtitle' => __( 'Set here logo for emails, if nothing is set emails will be using default site logo', 'dreamsrent' ),
'type' => 'media',
'default' => '',
'placeholder' => ''
),
array(
'title' => __('<span style="font-size: 20px;">Email OTP Verification</span>', 'dreamsrent'),
'type' => 'info',
'id' => 'otp_available_tags',
'desc' => __('Available tags are: ', 'dreamsrent').'<strong>{otp}, {user_email}, {otp_email_logo}</strong>',
),
array(
'title' => __('Message email', 'dreamsrent'),
'subtitle' => __('This will act as the email content.', 'dreamsrent'),
'id' => 'otp_content_from_email',
'default' => trim(preg_replace('/\t+/', '', "<p>{otp_email_logo}</p>
<p>Hi {user_email},</p>
<p>Enter the code below and verify the user email</p>
<p>{otp}</p>
<p>Use the above code to proceed with confirmation in the app or online.</p>")),
'type' => 'editor',
),
),));
/*** Emails ***/
Redux::setSection( $opt_name, array(
'title' => __( 'Emails', 'dreamsrent' ),
'icon' => 'fa fa-envelope',
'fields' => array(
array(
'title' => __('From name in email', 'dreamsrent'),
'subtitle' => __('The name from who the email is received, by default it is your site name.', 'dreamsrent'),
'id' => 'emails_name',
'default' => get_bloginfo( 'name' ),
'type' => 'text',
),
array(
'title' => __('From email ', 'dreamsrent'),
'subtitle' => __('This will act as the "from" and "reply-to" address. This emails should match your domain address', 'dreamsrent'),
'id' => 'emails_from_email',
'default' => get_bloginfo( 'admin_email' ),
'type' => 'text',
),
array(
'id' => 'email_logo',
'title' => __( 'Logo for emails' , 'dreamsrent' ),
'subtitle' => __( 'Set here logo for emails, if nothing is set emails will be using default site logo', 'dreamsrent' ),
'type' => 'media',
'default' => '',
'placeholder' => ''
),
array(
'title' => __('<span style="font-size: 20px;">Registration/Welcome email for new users</span>', 'dreamsrent'),
'type' => 'info',
'id' => 'header_welcome',
'desc' => __('Available tags are: ', 'dreamsrent').'<strong>{user_mail}, {user_name}, {site_name}, {login}</strong>',
),
// array(
// 'title' => __('Disable Welcome email to user (enabled by default)', 'dreamsrent'),
// 'subtitle' => __('Check this checkbox to disable sending emails to new users', 'dreamsrent'),
// 'id' => 'welcome_email_disable',
// 'type' => 'checkbox',
// ),
array(
'title' => __('Enable Welcome email to user', 'dreamsrent'),
'subtitle' => __('Check this checkbox to enable sending forgot password emails', 'dreamsrent'),
'id' => 'welcome_email_enabled',
'type' => 'checkbox',
),
array(
'title' => __('Welcome Email Subject', 'dreamsrent'),
'default' => __('Welcome to {site_name}', 'dreamsrent'),
'id' => 'listing_welcome_email_subject',
'type' => 'text',
),
array(
'title' => __('Welcome Email Content', 'dreamsrent'),
'default' => trim(preg_replace('/\t+/', '', "Hi {user_name},<br>
Welcome to our website.<br>
<ul>
<li>Username: {user_name}</li>
<li>Login: {login}</li>
</ul>
<br>
Thank you.
<br>")),
'id' => 'listing_welcome_email_content',
'type' => 'editor',
),
/*----------------*/
array(
'title' => __('<span style="font-size: 20px;">Forgot Password Notification Email</span>', 'dreamsrent'),
'type' => 'info',
'id' => 'forgot_password',
'desc' => __('Available tags are: ', 'dreamsrent').'<strong>{user_name}, {reset_link}</strong>',
),
array(
'title' => __('Enable Forgot Password Notification Email', 'dreamsrent'),
'subtitle' => __('Check this checkbox to enable sending forgot password emails', 'dreamsrent'),
'id' => 'forgot_password_email_enabled',
'type' => 'checkbox',
),
array(
'title' => __('Forgot Password Notification Email Subject', 'dreamsrent'),
'default' => __('Password Reset Request', 'dreamsrent'),
'id' => 'forgot_password_email_subject',
'type' => 'text',
),
array(
'title' => __('Forgot Password Notification Email Content', 'dreamsrent'),
'default' => trim(preg_replace('/\t+/', '', "<p>Hi {user_name},</p>
<p>We received a request to reset your password. If you requested this change, please click the link below to reset your password:</p>
<div class='button'>
<a href='{reset_link}'>Reset Password</a><br>
</div>
<p>If you did not request a password reset, please ignore this email.</p>
<p>Thank you.</p>
")),
'id' => 'forgot_password_email_content',
'type' => 'editor',
),
// Account approval/rejection emails
array(
'title' => __('<span style="font-size: 20px;">Account Approval / Rejection Emails</span>', 'dreamsrent'),
'desc' => __('Available tags are: ', 'dreamsrent').'<strong>{user_name}, {user_mail}, {site_name}, {email_logo}, {status}</strong>',
'type' => 'info',
'id' => 'approval_rejection_emails'
),
array(
'title' => __('Enable Approval Email', 'dreamsrent'),
'subtitle' => __('Check this to send an email when an account is approved', 'dreamsrent'),
'id' => 'approval_email_enabled',
'type' => 'checkbox',
),
array(
'title' => __('Approval Email Subject', 'dreamsrent'),
'default' => __('Your account has been approved', 'dreamsrent'),
'id' => 'approval_email_subject',
'type' => 'text',
),
array(
'title' => __('Approval Email Content', 'dreamsrent'),
'default' => trim(preg_replace('/\t+/', '', "
<div style='font-family: Arial, sans-serif; color: #333; line-height: 1.6;'>
{email_logo}
<p>Hi {user_name},</p>
<p>Your account on {site_name} has been approved. You can now log in.</p>
</div>
")),
'id' => 'approval_email_content',
'type' => 'editor',
),
array(
'title' => __('Enable Rejection Email', 'dreamsrent'),
'subtitle' => __('Check this to send an email when an account is rejected', 'dreamsrent'),
'id' => 'rejection_email_enabled',
'type' => 'checkbox',
),
array(
'title' => __('Rejection Email Subject', 'dreamsrent'),
'default' => __('Your account has been rejected', 'dreamsrent'),
'id' => 'rejection_email_subject',
'type' => 'text',
),
array(
'title' => __('Rejection Email Content', 'dreamsrent'),
'default' => trim(preg_replace('/\t+/', '', "
<div style='font-family: Arial, sans-serif; color: #333; line-height: 1.6;'>
{email_logo}
<p>Hi {user_name},</p>
<p>Your account on {site_name} has been rejected.</p>
</div>
")),
'id' => 'rejection_email_content',
'type' => 'editor',
),
// Cancellation Emails
array(
'title' => __('<span style="font-size: 20px;">Cancellation Email Settings</span>', 'dreamsrent'),
'desc' => __('Available tags are: ', 'dreamsrent').'<strong>{user_name}, {booking_id}, {booking_date}, {car_name}, {site_name}</strong>',
'type' => 'info',
'id' => 'cancellation_emails'
),
// Cancellation email for admin
array(
'title' => __('Enable cancellation email settings for admin', 'dreamsrent'),
'subtitle' => __('Check this checkbox to enable admin cancellation booking email for users', 'dreamsrent'),
'id' => 'cancellation_email_enabledisable_for_admin',
'type' => 'checkbox',
),
array(
'title' => __('Cancellation Email Subject for admin', 'dreamsrent'),
'default' => __('{site_name} - Booking Cancelled Notice', 'dreamsrent'),
'id' => 'cancellation_email_subject_for_admin',
'type' => 'text',
),
array(
'title' => __('Cancellation Email Content for Admin', 'dreamsrent'),
'default' => trim(preg_replace('/\t+/', '', "
<div style='font-family: Arial, sans-serif; color: #333; line-height: 1.6; background-color: #f9f9f9; padding: 20px; border: 1px solid #ddd; border-radius: 8px;'>
<div style='background-color: #FFA633; padding: 20px; border-radius: 8px 8px 0 0; color: #fff; text-align: center;'>
<h2 style='font-size: 22px; margin: 0;'>User Booking Cancellation Notice</h2>
</div>
<div style='padding: 20px; background-color: #fff; border-radius: 0 0 8px 8px;'>
<p style='font-size: 16px; color: #333;'>
Hello <strong>{user_name}</strong>,
</p>
<p style='font-size: 14px; color: #666;'>
Please be informed that the following booking has been canceled by the user.
</p>
<p style='font-size: 14px; color: #333;'>
<strong>Booking Details:</strong>
</p>
<table style='width: 100%; font-size: 14px; color: #333; border-collapse: collapse;'>
<tr>
<td style='padding: 8px; border: 1px solid #ddd; background-color: #f5f5f5;'>Booking ID:</td>
<td style='padding: 8px; border: 1px solid #ddd;'>{booking_id}</td>
</tr>
<tr>
<td style='padding: 8px; border: 1px solid #ddd; background-color: #f5f5f5;'>Booking Date:</td>
<td style='padding: 8px; border: 1px solid #ddd;'>{booking_date}</td>
</tr>
<tr>
<td style='padding: 8px; border: 1px solid #ddd; background-color: #f5f5f5;'>Car Model:</td>
<td style='padding: 8px; border: 1px solid #ddd;'>{car_name}</td>
</tr>
</table>
<p style='font-size: 14px; color: #666; margin-top: 20px;'>
If you need further information, please contact the user directly or reach out to the support team at
<a href='mailto:[email protected]' style='color: #004080; text-decoration: none; font-weight: bold;'>[email protected]</a> or call <strong>(123) 456-7890</strong>.
</p>
<p style='font-size: 14px; color: #333;'>
Thank you for your attention.
</p>
<p style='font-size: 16px; color: #333;'>
Best regards,<br>
<strong>Dreamsrent Team</strong>
</p>
{email_logo}
</div>
</div>
")),
'id' => 'booking_cancellation_email_content',
'type' => 'editor',
'args' => array(
'textarea_rows' => 15,
'tinymce' => array(
'height' => 350,
),
),
),
// Cancellation email for users
array(
'title' => __('Enable cancellation email settings for users', 'dreamsrent'),
'subtitle' => __('Check this checkbox to enable user cancellation booking email', 'dreamsrent'),
'id' => 'cancellation_email_enabledisable_for_user',
'type' => 'checkbox',
),
array(
'title' => __('Cancellation Email Subject for user', 'dreamsrent'),
'default' => __('{site_name} - Booking Cancelled by User Notice', 'dreamsrent'),
'id' => 'cancellation_email_subject_for_user',
'type' => 'text',
),
array(
'title' => __('Cancellation Email Content for Users', 'dreamsrent'),
'default' => trim(preg_replace('/\t+/', '', "
<div style='font-family: Arial, sans-serif; color: #333; line-height: 1.6; background-color: #f9f9f9; padding: 20px; border: 1px solid #ddd; border-radius: 8px;'>
<div style='background-color: #FFA633; padding: 20px; border-radius: 8px 8px 0 0; color: #fff; text-align: center;'>
<h2 style='font-size: 22px; margin: 0;'>Your Booking Cancellation</h2>
</div>
<div style='padding: 20px; background-color: #fff; border-radius: 0 0 8px 8px;'>
<p style='font-size: 16px; color: #333;'>
Hi <strong>{user_name}</strong>,
</p>
<p style='font-size: 14px; color: #666;'>
We have received your request to cancel your booking. We understand plans change and apologize for any inconvenience.
</p>
<p style='font-size: 14px; color: #333;'>
<strong>Booking Details:</strong>
</p>
<table style='width: 100%; font-size: 14px; color: #333; border-collapse: collapse;'>
<tr>
<td style='padding: 8px; border: 1px solid #ddd; background-color: #f5f5f5;'>Booking ID:</td>
<td style='padding: 8px; border: 1px solid #ddd;'>{booking_id}</td>
</tr>
<tr>
<td style='padding: 8px; border: 1px solid #ddd; background-color: #f5f5f5;'>Booking Date:</td>
<td style='padding: 8px; border: 1px solid #ddd;'>{booking_date}</td>
</tr>
<tr>
<td style='padding: 8px; border: 1px solid #ddd; background-color: #f5f5f5;'>Car Model:</td>
<td style='padding: 8px; border: 1px solid #ddd;'>{car_name}</td>
</tr>
</table>
<p style='font-size: 14px; color: #666; margin-top: 20px;'>
If you have any questions or need further assistance, please feel free to reach out to us at
<a href='mailto:[email protected]' style='color: #004080; text-decoration: none; font-weight: bold;'>[email protected]</a> or call us at <strong>(123) 456-7890</strong>.
</p>
<p style='font-size: 14px; color: #333;'>
We appreciate your understanding and hope to serve you in the future.
</p>
<p style='font-size: 16px; color: #333;'>
Best regards,<br>
<strong>Dreamsrent Team</strong>
</p>
{email_logo}
</div>
</div>
")),
'id' => 'booking_cancellation_email_content_foruser',
'type' => 'editor',
'args' => array(
'textarea_rows' => 15,
'tinymce' => array(
'height' => 350,
),
),
),
// Refund email for user
array(
'title' => __('<span style="font-size: 20px;">Refund Email Settings</span>', 'dreamsrent'),
'desc' => __('Available tags are: ', 'dreamsrent').'<strong>{user_name}, {booking_id}, {booking_date}, {car_name}, {refund_amount}, {site_name}</strong>',
'type' => 'info',
'id' => 'refund_emails'
),
array(
'title' => __('Enable Refund email settings for user', 'dreamsrent'),
'subtitle' => __('Check this checkbox to enable refund email for users', 'dreamsrent'),
'id' => 'refund_email_enabledisable',
'type' => 'checkbox',
),
array(
'title' => __('Refund Email Subject for Users', 'dreamsrent'),
'default' => __('{site_name} - Refund Notice', 'dreamsrent'),
'id' => 'refund_email_subject',
'type' => 'text',
),
array(
'title' => __('Refund Email Content for Users', 'dreamsrent'),
'default' => trim(preg_replace('/\t+/', '', "
<div style='font-family: Arial, sans-serif; color: #333; line-height: 1.6; background-color: #f9f9f9; padding: 20px; border: 1px solid #ddd; border-radius: 8px;'>
<div style='background-color: #FFA633; padding: 20px; border-radius: 8px 8px 0 0; color: #fff; text-align: center;'>
<h2 style='font-size: 22px; margin: 0;'>Refund Amount Notice</h2>
</div>
<div style='padding: 20px; background-color: #fff; border-radius: 0 0 8px 8px;'>
<p style='font-size: 16px; color: #333;'>
Hello <strong>{user_name}</strong>,
</p>
<p style='font-size: 14px; color: #666;'>
We would like to inform you that a refund has been processed for your recent booking.
</p>
<p style='font-size: 14px; color: #333;'>
<strong>Refund Details:</strong>
</p>
<table style='width: 100%; font-size: 14px; color: #333; border-collapse: collapse;'>
<tr>
<td style='padding: 8px; border: 1px solid #ddd; background-color: #f5f5f5;'>Booking ID:</td>
<td style='padding: 8px; border: 1px solid #ddd;'>{booking_id}</td>
</tr>
<tr>
<td style='padding: 8px; border: 1px solid #ddd; background-color: #f5f5f5;'>Booked Date:</td>
<td style='padding: 8px; border: 1px solid #ddd;'>{booking_date}</td>
</tr>
<tr>
<td style='padding: 8px; border: 1px solid #ddd; background-color: #f5f5f5;'>Refund Amount:</td>
<td style='padding: 8px; border: 1px solid #ddd;'>{refund_amount}</td>
</tr>
<tr>
<td style='padding: 8px; border: 1px solid #ddd; background-color: #f5f5f5;'>Car Model:</td>
<td style='padding: 8px; border: 1px solid #ddd;'>{car_name}</td>
</tr>
</table>
<p style='font-size: 14px; color: #666; margin-top: 20px;'>
If you have any questions or require further assistance, please feel free to contact us at
<a href='mailto:[email protected]' style='color: #004080; text-decoration: none; font-weight: bold;'>[email protected]</a> or call <strong>(123) 456-7890</strong>.
</p>
<p style='font-size: 14px; color: #333;'>
Thank you for choosing Dreamsrent.
</p>
<p style='font-size: 16px; color: #333;'>
Best regards,<br>
<strong>Dreamsrent Team</strong>
</p>
{email_logo}
</div>
</div>
")),
'id' => 'booking_refund_email_content',
'type' => 'editor',
'args' => array(
'textarea_rows' => 15,
'tinymce' => array(
'height' => 350,
),
),
),
/*----------------*/
array(
'title' => __('<span style="font-size: 20px;">New Order Notification Email</span>', 'dreamsrent'),
'type' => 'info',
'id' => 'new_order_notification',
'desc' => __('Available tags are: ', 'dreamsrent').'<strong>{customer_name}, {product_details}</strong>',
),
array(
'title' => __('Enable New Order Notification Email', 'dreamsrent'),
'subtitle' => __('Check this checkbox to enable sending new order emails', 'dreamsrent'),
'id' => 'new_order_email_enabled',
'type' => 'checkbox',
),
array(
'title' => __('New Order Notification Email Subject', 'dreamsrent'),
'default' => __('Your Order Confirmation', 'dreamsrent'),
'id' => 'new_order_email_subject',
'type' => 'text',
),
array(
'title' => __('New Order Notification Email Content', 'dreamsrent'),
'default' => trim(preg_replace('/\t+/', '', "<p>Hi {customer_name},</p>
<p>Thank you for your order! We are excited to fulfill it. Here are the details of your order:</p>
{product_details}
<p>You can view your order and track its status by logging into your account.</p>
<p>If you have any questions, feel free to contact us.</p>
<p>Thank you for shopping with us!</p>")),
'id' => 'new_order_email_content',
'type' => 'editor',
),
/*----------------*/
array(
'title' => __('<span style="font-size: 20px;">Completed Order Notification Email</span>', 'dreamsrent'),
'type' => 'info',
'id' => 'completed_order_notification',
'desc' => __('Available tags are: ', 'dreamsrent').'<strong>{customer_name}, {product_details}</strong>',
),
array(
'title' => __('Enable Completed Order Notification Email', 'dreamsrent'),
'subtitle' => __('Check this checkbox to enable sending completed order emails', 'dreamsrent'),
'id' => 'completed_order_email_enabled',
'type' => 'checkbox',
),
array(
'title' => __('Completed Order Notification Email Subject', 'dreamsrent'),
'default' => __('Your Order is Complete!', 'dreamsrent'),
'id' => 'completed_order_email_subject',
'type' => 'text',
),
array(
'title' => __('Completed Order Notification Email Content', 'dreamsrent'),
'default' => trim(preg_replace('/\t+/', '', "<p>Hi {customer_name},</p>
<p>Thank you for your order! We are excited to fulfill it. Here are the details of your order:</p>
{product_details}
<p>You can view your order and track its status by logging into your account.</p>
<p>If you have any questions, feel free to contact us.</p>
<p>Thank you for shopping with us!</p>")),
'id' => 'completed_order_email_content',
'type' => 'editor',
),
/*----------------*/
array(
'title' => __('<span style="font-size: 20px;">Processing Order Notification Email</span>', 'dreamsrent'),
'type' => 'info',
'id' => 'processing_order_notification',
'desc' => __('Available tags are: ', 'dreamsrent').'<strong>{customer_name}, {product_details}</strong>',
),
array(
'title' => __('Enable Processing Order Notification Email', 'dreamsrent'),
'subtitle' => __('Check this checkbox to enable sending processing order emails', 'dreamsrent'),
'id' => 'processing_order_email_enabled',
'type' => 'checkbox',
),
array(
'title' => __('Processing Order Notification Email Subject', 'dreamsrent'),
'default' => __('Your Order is Being Processed!', 'dreamsrent'),
'id' => 'processing_order_email_subject',
'type' => 'text',
),
array(
'title' => __('Processing Order Notification Email Content', 'dreamsrent'),
'default' => trim(preg_replace('/\t+/', '', "<p>Hi {customer_name},</p>
<p>Thank you for your order! We’re processing it and will notify you once it’s on its way. Here are the details of your order:</p>
{product_details}
<p>You can view your order and track its status by logging into your account.</p>
<p>If you have any questions, feel free to contact us.</p>
<p>Thank you for choosing us!</p>")),
'id' => 'processing_order_email_content',
'type' => 'editor',
),
/*----------------*/
),));
if ( file_exists( dirname( __FILE__ ) . '/../README.md' ) ) {
$section = array(
'icon' => 'el el-list-alt',
'title' => __( 'Documentation' ,'dreamsrent'),
'fields' => array(
array(
'id' => '17',
'type' => 'raw',
'markdown' => true,
'content_path' => dirname( __FILE__ ) . '/../README.md',
),
),
);
Redux::setSection( $opt_name, $section );
}
if ( ! function_exists( 'compiler_action' ) ) {
function compiler_action( $options, $css, $changed_values ) {
echo '<h1>The compiler hook has run!</h1>';
echo "<pre>";
print_r( $changed_values );
echo "</pre>";
}
}
if ( ! function_exists( 'redux_validate_callback_function' ) ) {
function redux_validate_callback_function( $field, $value, $existing_value ) {
$error = false;
$warning = false;
//do your validation
if ( $value == 1 ) {
$error = true;
$value = $existing_value;
} elseif ( $value == 2 ) {
$warning = true;
$value = $existing_value;
}
$return['value'] = $value;
if ( $error == true ) {
$field['msg'] = 'your custom error message';
$return['error'] = $field;
}
if ( $warning == true ) {
$field['msg'] = 'your custom warning message';
$return['warning'] = $field;
}
return $return;
}
}
if ( ! function_exists( 'redux_my_custom_field' ) ) {
function redux_my_custom_field( $field, $value ) {
print_r( $field );
echo '<br/>';
print_r( $value );
}
}
if ( ! function_exists( 'dynamic_section' ) ) {
function dynamic_section( $sections ) {
$sections[] = array(
'title' => __( 'Section via hook' ,'dreamsrent'),
'desc' => __( '<p class="description">This is a section created by adding a filter to the sections array. Can be used by child themes to add/remove sections from the options.</p>','dreamsrent' ),
'icon' => 'el el-paper-clip',
'fields' => array()
);
return $sections;
}
}
if ( ! function_exists( 'change_arguments' ) ) {
function change_arguments( $args ) {
return $args;
}
}
if ( ! function_exists( 'change_defaults' ) ) {
function change_defaults( $defaults ) {
$defaults['str_replace'] = 'Testing filter hook!';
return $defaults;
}
}