File "index.php"
Full Path: /home/londdqdw/public_html/06/wp-content/plugins/nd-sports-booking/inc/admin/7-import-export/index.php
File size: 11.65 KB
MIME-type: text/x-php
Charset: utf-8
<?php
add_action('admin_menu','nd_spt_add_settings_menu_import_export');
function nd_spt_add_settings_menu_import_export(){
add_submenu_page( 'nd-sports-booking-settings','Import Export', __('Import Export','nd-sports-booking'), 'manage_options', 'nd-sports-booking-settings-import-export', 'nd_spt_settings_menu_import_export' );
}
function nd_spt_settings_menu_import_export() {
$nd_spt_import_settings_params = array(
'nd_spt_ajaxurl_import_settings' => admin_url('admin-ajax.php'),
'nd_spt_ajaxnonce_import_settings' => wp_create_nonce('nd_spt_import_settings_nonce'),
);
wp_enqueue_script( 'nd_spt_import_sett', esc_url( plugins_url( 'js/nd_spt_import_settings.js', __FILE__ ) ), array( 'jquery' ) );
wp_localize_script( 'nd_spt_import_sett', 'nd_spt_my_vars_import_settings', $nd_spt_import_settings_params );
?>
<div class="nd_spt_section nd_spt_padding_right_20 nd_spt_padding_left_2 nd_spt_box_sizing_border_box nd_spt_margin_top_25 ">
<div style="background-color:<?php echo esc_attr(nd_spt_get_profile_bg_color(0)); ?>; border-bottom:3px solid <?php echo esc_attr(nd_spt_get_profile_bg_color(2)); ?>;" class="nd_spt_section nd_spt_padding_20 nd_spt_box_sizing_border_box">
<h2 class="nd_spt_color_ffffff nd_spt_display_inline_block"><?php _e('ND Sports Booking','nd-sports-booking'); ?></h2><span class="nd_spt_margin_left_10 nd_spt_color_a0a5aa"><?php echo esc_html(nd_spt_get_plugin_version()); ?></span>
</div>
<div class="nd_spt_section nd_spt_box_shadow_0_1_1_000_04 nd_spt_background_color_ffffff nd_spt_border_1_solid_e5e5e5 nd_spt_border_top_width_0 nd_spt_border_left_width_0 nd_spt_overflow_hidden nd_spt_position_relative">
<!--START menu-->
<div style="background-color:<?php echo esc_attr(nd_spt_get_profile_bg_color(1)); ?>;" class="nd_spt_width_20_percentage nd_spt_float_left nd_spt_box_sizing_border_box nd_spt_min_height_3000 nd_spt_position_absolute">
<ul class="nd_spt_navigation">
<li><a class="" href="<?php echo esc_url(admin_url('admin.php?page=nd-sports-booking-settings')); ?>"><?php _e('Plugin Settings','nd-sports-booking'); ?></a></li>
<li><a class="" href="<?php echo esc_url(admin_url('admin.php?page=nd-sports-booking-add-timing')); ?>"><?php _e('Timing','nd-sports-booking'); ?></a></li>
<li><a class="" href="<?php echo esc_url(admin_url('admin.php?page=nd-sports-booking-add-exception')); ?>"><?php _e('Exceptions','nd-sports-booking'); ?></a></li>
<li><a class="" href="<?php echo esc_url(admin_url('admin.php?page=nd-sports-booking-reservation-settings')); ?>"><?php _e('Booking Settings','nd-sports-booking'); ?></a></li>
<li class="nd_spt_admin_menu_stripe"><a class="" href="<?php echo esc_url(admin_url('admin.php?page=nd-sports-booking-stripe')); ?>"><?php _e('Stripe','nd-sports-booking'); ?></a></li>
<li class="nd_spt_admin_menu_paypal"><a class="" href="<?php echo esc_url(admin_url('admin.php?page=nd-sports-booking-paypal')); ?>"><?php _e('Paypal','nd-sports-booking'); ?></a></li>
<li><a style="background-color:<?php echo esc_attr(nd_spt_get_profile_bg_color(2)); ?>;"class="" href="#"><?php _e('Import Export','nd-sports-booking'); ?></a></li>
<li><a target="_blank" class="" href="http://documentations.nicdark.com/"><?php _e('Documentation','nd-sports-booking'); ?></a></li>
<?php
if ( get_option('nicdark_theme_author') != 1 ){ ?>
<li><a style="background-color:<?php echo esc_attr(nd_spt_get_profile_bg_color(2)); ?>;" class="" href="<?php echo esc_url(admin_url('admin.php?page=nd-sports-booking-settings-premium-addons')); ?>" ><?php _e('Premium Addons','nd-sports-booking'); ?></a></li>
<?php }
?>
</ul>
</div>
<!--END menu-->
<!--START content-->
<div class="nd_spt_width_80_percentage nd_spt_margin_left_20_percentage nd_spt_float_left nd_spt_box_sizing_border_box nd_spt_padding_20">
<!--START-->
<div class="nd_spt_section">
<div class="nd_spt_width_40_percentage nd_spt_padding_20 nd_spt_box_sizing_border_box nd_spt_float_left">
<h2 class="nd_spt_section nd_spt_margin_0"><?php _e('Import/Export','nd-sports-booking'); ?></h2>
<p class="nd_spt_color_666666 nd_spt_section nd_spt_margin_0 nd_spt_margin_top_10"><?php _e('Export or Import your theme options.','nd-sports-booking'); ?></p>
</div>
</div>
<!--END-->
<div class="nd_spt_section nd_spt_height_1 nd_spt_background_color_E7E7E7 nd_spt_margin_top_10 nd_spt_margin_bottom_10"></div>
<?php
$nd_spt_all_options = wp_load_alloptions();
$nd_spt_my_options = array();
$nd_spt_name_write = '';
foreach ( $nd_spt_all_options as $nd_spt_name => $nd_spt_value ) {
if ( stristr( $nd_spt_name, 'nd_spt_' ) ) {
if ( stristr( $nd_spt_name, 'nd_spt_exception_' ) OR stristr( $nd_spt_name, 'nd_spt_timing_' ) ) {
}else{
$nd_spt_my_options[ $nd_spt_name ] = $nd_spt_value;
$nd_spt_name_write .= $nd_spt_name.'[nd_spt_option_value]'.$nd_spt_value.'[nd_spt_end_option]';
}
}
}
$nd_spt_name_write_new_1 = str_replace(" ", "%20", $nd_spt_name_write);
$nd_spt_name_write_new = str_replace("#", "[SHARP]", $nd_spt_name_write_new_1);
?>
<!--START-->
<div class="nd_spt_section">
<div class="nd_spt_width_40_percentage nd_spt_padding_20 nd_spt_box_sizing_border_box nd_spt_float_left">
<h2 class="nd_spt_section nd_spt_margin_0"><?php _e('Export Settings','nd-sports-booking'); ?></h2>
<p class="nd_spt_color_666666 nd_spt_section nd_spt_margin_0 nd_spt_margin_top_10"><?php _e('Export plugin and customizer options.','nd-sports-booking'); ?></p>
</div>
<div class="nd_spt_width_60_percentage nd_spt_padding_20 nd_spt_box_sizing_border_box nd_spt_float_left">
<div class="nd_spt_section nd_spt_padding_left_20 nd_spt_padding_right_20 nd_spt_box_sizing_border_box">
<a class="button button-primary" href="data:application/octet-stream;charset=utf-8,<?php echo esc_attr($nd_spt_name_write_new); ?>" download="nd-sports-booking-export.txt"><?php _e('Export','nd-sports-booking'); ?></a>
</div>
</div>
</div>
<!--END-->
<div class="nd_spt_section nd_spt_height_1 nd_spt_background_color_E7E7E7 nd_spt_margin_top_10 nd_spt_margin_bottom_10"></div>
<!--START-->
<div class="nd_spt_section">
<div class="nd_spt_width_40_percentage nd_spt_padding_20 nd_spt_box_sizing_border_box nd_spt_float_left">
<h2 class="nd_spt_section nd_spt_margin_0"><?php _e('Import Settings','nd-sports-booking'); ?></h2>
<p class="nd_spt_color_666666 nd_spt_section nd_spt_margin_0 nd_spt_margin_top_10"><?php _e('Paste in the textarea the text of your export file','nd-sports-booking'); ?></p>
</div>
<div class="nd_spt_width_60_percentage nd_spt_padding_20 nd_spt_box_sizing_border_box nd_spt_float_left">
<div class="nd_spt_section nd_spt_padding_left_20 nd_spt_padding_right_20 nd_spt_box_sizing_border_box">
<textarea id="nd_spt_import_settings" class="nd_spt_margin_bottom_20 nd_spt_width_100_percentage" name="nd_spt_import_settings" rows="10"><?php echo esc_textarea( get_option('nd_spt_textarea') ); ?></textarea>
<a onclick="nd_spt_import_settings()" class="button button-primary"><?php _e('Import','nd-sports-booking'); ?></a>
<div class="nd_spt_margin_top_20 nd_spt_section" id="nd_spt_import_settings_result_container"></div>
</div>
</div>
</div>
<!--END-->
</div>
<!--END content-->
</div>
</div>
<?php }
/*END 1*/
//START nd_spt_import_settings_php_function for AJAX
function nd_spt_import_settings_php_function() {
check_ajax_referer( 'nd_spt_import_settings_nonce', 'nd_spt_import_settings_security' );
//recover datas
$nd_spt_value_import_settings = sanitize_text_field($_GET['nd_spt_value_import_settings']);
$nd_spt_import_settings_result .= '';
//START import and update options only if is superadmin
if ( current_user_can('manage_options') ) {
if ( $nd_spt_value_import_settings != '' ) {
$nd_spt_array_options = explode("[nd_spt_end_option]", $nd_spt_value_import_settings);
foreach ($nd_spt_array_options as $nd_spt_array_option) {
$nd_spt_array_single_option = explode("[nd_spt_option_value]", $nd_spt_array_option);
$nd_spt_option = $nd_spt_array_single_option[0];
$nd_spt_new_value = $nd_spt_array_single_option[1];
$nd_spt_new_value = str_replace("[SHARP]","#",$nd_spt_new_value);
if ( $nd_spt_new_value != '' ){
//START update option only it contains the plugin suffix
if ( strpos($nd_spt_option, 'nd_spt_') !== false ) {
$nd_spt_update_result = update_option($nd_spt_option,$nd_spt_new_value);
if ( $nd_spt_update_result == 1 ) {
$nd_spt_import_settings_result .= '
<div class="notice updated is-dismissible nd_spt_margin_0_important">
<p>'.__('Updated option','nd-sports-booking').' "'.$nd_spt_option.'" '.__('with','nd-sports-booking').' '.$nd_spt_new_value.'.</p>
</div>
';
}else{
$nd_spt_import_settings_result .= '
<div class="notice updated is-dismissible nd_spt_margin_0_important">
<p>'.__('Updated option','nd-sports-booking').' "'.$nd_spt_option.'" '.__('with the same value','nd-sports-booking').'.</p>
</div>
';
}
}else{
$nd_spt_import_settings_result .= '
<div class="notice notice-error is-dismissible nd_spt_margin_0">
<p>'.__('You do not have permission to change this option','nd-sports-booking').'</p>
</div>
';
}
//END update option only it contains the plugin suffix
}else{
if ( $nd_spt_option != '' ){
$nd_spt_import_settings_result .= '
<div class="notice notice-warning is-dismissible nd_spt_margin_0">
<p>'.__('No value founded for','nd-sports-booking').' "'.$nd_spt_option.'" '.__('option.','nd-sports-booking').'</p>
</div>
';
}
}
}
}else{
$nd_spt_import_settings_result .= '
<div class="notice notice-error is-dismissible nd_spt_margin_0">
<p>'.__('Empty textarea, please paste your export options.','nd-sports-booking').'</p>
</div>
';
}
}else{
$nd_spt_import_settings_result .= '
<div class="notice notice-error is-dismissible nd_spt_margin_0">
<p>'.__('You do not have the privileges to do this.','nd-sports-booking').'</p>
</div>
';
}
//START import and update options only if is superadmin
$nd_spt_allowed_html = [
'div' => [
'id' => [],
'class' => [],
'style' => [],
],
'p' => [
'id' => [],
'class' => [],
'style' => [],
],
];
echo wp_kses( $nd_spt_import_settings_result, $nd_spt_allowed_html );
die();
}
add_action( 'wp_ajax_nd_spt_import_settings_php_function', 'nd_spt_import_settings_php_function' );
//END