WooCommerce Checkout Manager - Version 5.5.9

Version Description

  • Fix: Escaping output functions
Download this release

Release Info

Developer quadlayers
Plugin Icon 128x128 WooCommerce Checkout Manager
Version 5.5.9
Comparing to
See all releases

Code changes from version 5.5.8 to 5.5.9

includes/view/backend/pages/additional.php CHANGED
@@ -1,8 +1,8 @@
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Additional', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Additional fields', 'woocommerce-checkout-manager' ); ?></h2>
4
- <div id="<?php printf( 'wooccm_%s_settings-description', $current_section ); ?>">
5
- <p><?php printf( esc_html__( 'Customize and manage the checkout %s fields.', 'woocommerce-checkout-manager' ), $current_section ); ?></p>
6
  </div>
7
  <?php require_once 'parts/actions.php'; ?>
8
  <?php require_once 'parts/loop.php'; ?>
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Additional', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Additional fields', 'woocommerce-checkout-manager' ); ?></h2>
4
+ <div id="<?php printf( 'wooccm_%s_settings-description', esc_attr( $current_section ) ); ?>">
5
+ <p><?php printf( esc_html__( 'Customize and manage the checkout %s fields.', 'woocommerce-checkout-manager' ), esc_attr( $current_section ) ); ?></p>
6
  </div>
7
  <?php require_once 'parts/actions.php'; ?>
8
  <?php require_once 'parts/loop.php'; ?>
includes/view/backend/pages/billing.php CHANGED
@@ -1,8 +1,8 @@
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Billing', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Billing fields', 'woocommerce-checkout-manager' ); ?></h2>
4
- <div id="<?php printf( 'wooccm_%s_settings-description', $current_section ); ?>">
5
- <p><?php printf( esc_html__( 'Customize and manage the checkout %s fields.', 'woocommerce-checkout-manager' ), $current_section ); ?></p>
6
  </div>
7
  <?php require_once 'parts/actions.php'; ?>
8
  <?php require_once 'parts/loop.php'; ?>
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Billing', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Billing fields', 'woocommerce-checkout-manager' ); ?></h2>
4
+ <div id="<?php printf( 'wooccm_%s_settings-description', esc_attr( $current_section ) ); ?>">
5
+ <p><?php printf( esc_html__( 'Customize and manage the checkout %s fields.', 'woocommerce-checkout-manager' ), esc_attr( $current_section ) ); ?></p>
6
  </div>
7
  <?php require_once 'parts/actions.php'; ?>
8
  <?php require_once 'parts/loop.php'; ?>
includes/view/backend/pages/checkout.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Checkout', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Checkout settings', 'woocommerce-checkout-manager' ); ?></h2>
4
- <div id="<?php printf( 'wooccm_%s_settings-description', $current_section ); ?>">
5
- <p><?php printf( esc_html__( 'Customize and manage the checkout settings.', 'woocommerce-checkout-manager' ), $current_section ); ?></p>
6
  </div>
7
  <?php woocommerce_admin_fields( $settings ); ?>
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Checkout', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Checkout settings', 'woocommerce-checkout-manager' ); ?></h2>
4
+ <div id="<?php printf( 'wooccm_%s_settings-description', esc_attr( $current_section ) ); ?>">
5
+ <p><?php printf( esc_html__( 'Customize and manage the checkout settings.', 'woocommerce-checkout-manager' ), esc_attr( $current_section ) ); ?></p>
6
  </div>
7
  <?php woocommerce_admin_fields( $settings ); ?>
includes/view/backend/pages/email.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Email', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Email settings', 'woocommerce-checkout-manager' ); ?></h2>
4
- <div id="<?php printf( 'wooccm_%s_settings-description', $current_section ); ?>">
5
- <p><?php printf( esc_html__( 'Customize and manage the checkout %s fields.', 'woocommerce-checkout-manager' ), $current_section ); ?></p>
6
  </div>
7
  <?php woocommerce_admin_fields( $settings ); ?>
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Email', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Email settings', 'woocommerce-checkout-manager' ); ?></h2>
4
+ <div id="<?php printf( 'wooccm_%s_settings-description', esc_attr( $current_section ) ); ?>">
5
+ <p><?php printf( esc_html__( 'Customize and manage the checkout %s fields.', 'woocommerce-checkout-manager' ), esc_attr( $current_section ) ); ?></p>
6
  </div>
7
  <?php woocommerce_admin_fields( $settings ); ?>
includes/view/backend/pages/modals/parts/info.php CHANGED
@@ -1,77 +1,77 @@
1
  <span class="settings-save-status">
2
- <span class="spinner"></span>
3
- <span class="saved"><?php esc_html_e( 'Saved.' ); ?></span>
4
  </span>
5
 
6
  <div class="details">
7
- <div class="filename"><strong><?php esc_html_e( 'Field id', 'woocommerce-checkout-manager' ); ?>:</strong> {{data.id}}</div>
8
- <div class="filename"><strong><?php esc_html_e( 'Field key', 'woocommerce-checkout-manager' ); ?>:</strong> #{{data.key}}</div>
9
- <# if (data.parent !=undefined) { #>
10
- <div class="filename"><strong><?php esc_html_e( 'Parent type', 'woocommerce-checkout-manager' ); ?>:</strong> {{data.parent.type}}</div>
11
  <# } #>
12
  </div>
13
 
14
  <div class="panel woocommerce_options_panel">
15
- <div class="settings">
16
  <p class="form-field">
17
- <label><?php esc_html_e( 'Conditional', 'woocommerce-checkout-manager' ); ?></label>
18
- <input <# if (data.conditional) { #>checked="checked"<# } #> type="checkbox" name="conditional" value="1">
19
  <span class="description"><?php esc_html_e( 'Activate conditional field requirement.', 'woocommerce-checkout-manager' ); ?></span>
20
  </p>
21
- </div>
22
- <div class="settings">
23
  <p class="form-field">
24
- <label><?php esc_html_e( 'Parent', 'woocommerce-checkout-manager' ); ?></label>
25
- <select class="media-modal-parent media-modal-render-info wooccm-enhanced-select" name="conditional_parent_key" data-placeholder="<?php esc_attr_e( 'Select parent field&hellip;', 'woocommerce-checkout-manager' ); ?>" data-allow_clear="false">
26
  <option <# if (data.conditional_parent_key=='' ) { #>selected="selected"<# } #> value=""></option>
27
  <?php foreach ( $fields as $field_id => $field ) : ?>
28
  <?php if ( in_array( $field['type'], $conditionals ) ) : ?>
29
  <# if ( data.id !='<?php echo esc_attr( $field['id'] ); ?>' ) { #>
30
- <option <# if ( data.conditional_parent_key=='<?php echo esc_attr( $field['key'] ); ?>' ) { #>selected="selected"<# } #> value="<?php echo esc_attr( $field['key'] ); ?>"><?php printf( '%s', $field['label'] ? esc_html( $field['label'] ) : sprintf( esc_html__( 'Field %s', 'woocommerce-checkout-manager' ), $field_id ) ); ?></option>
31
- <# } #>
32
- <?php endif; ?>
33
  <?php endforeach; ?>
34
- </select>
35
- <span class="description"><?php esc_html_e( 'Select conditional parent field.', 'woocommerce-checkout-manager' ); ?></span>
36
  </p>
37
- </div>
38
- <div class="settings">
39
  <p class="form-field">
40
- <# if( data.parent !=undefined && data.parent.label !='' ) { #>
41
  <label>{{data.parent.label}}</label>
42
  <# } else { #>
43
- <label><?php esc_html_e( 'Value', 'woocommerce-checkout-manager' ); ?></label>
44
- <# } #>
45
  <# if ( data.parent !=undefined && _.contains(<?php echo json_encode( $option ); ?>, data.parent.type) && _.isObject(data.parent.options)) { #>
46
- <select class="wooccm-enhanced-select" name="conditional_parent_value">
47
  <# _.each(data.parent.options, function (option, index) { #>
48
- <option <# if ( option.label==data.conditional_parent_value ) { #>selected="selected"<# } #> value="{{option.label}}">{{option.label}}</option>
49
- <# }); #>
50
- </select>
51
- <# } else if( data.parent !=undefined && data.parent.type=='checkbox' ) { #>
52
  <select class="select short" name="conditional_parent_value">
53
- <option <# if ( 1==data.conditional_parent_value ) { #>selected="selected"<# } #> value="1"><?php esc_html_e( 'Yes' ); ?></option>
54
- <option <# if ( 0==data.conditional_parent_value ) { #>selected="selected"<# } #> value="0"><?php esc_html_e( 'No' ); ?></option>
55
  </select>
56
  <# } else if( data.parent !=undefined && data.parent.type=='country' ) { #>
57
- <select class="wooccm-enhanced-select" name="conditional_parent_value" data-placeholder="<?php esc_attr_e( 'Preserve default country&hellip;', 'woocommerce-checkout-manager' ); ?>" data-allow_clear="true">
58
  <option <# if (data.default=='' ) { #>selected="selected"<# } #> value=""></option>
59
  <?php foreach ( WC()->countries->get_countries() as $id => $name ) : ?>
60
- <option <# if (data.conditional_parent_value=='<?php echo esc_attr( $id ); ?>' ) { #>selected="selected"<# } #> value="<?php echo esc_attr( $id ); ?>"><?php echo esc_html( $name ); ?></option>
61
  <?php endforeach; ?>
62
- </select>
63
- <# } else if( data.parent !=undefined ) { #>
64
  <input type="text" name="conditional_parent_value" placeholder="{{data.parent.default}}" value="{{data.conditional_parent_value}}">
65
  <# } else { #>
66
- <input type="text" name="conditional_parent_value" placeholder="<?php esc_html_e( 'Conditional parent value', 'woocommerce-checkout-manager' ); ?>" value="{{data.conditional_parent_value}}">
67
- <# } #>
68
  <span class="description"><?php esc_html_e( 'Show field if parent has this value.', 'woocommerce-checkout-manager' ); ?></span>
69
  </p>
70
- </div>
71
  </div>
72
 
73
  <div class="actions">
74
- <a target="_blank" class="view-attachment" href="<?php echo wc_get_page_permalink( 'checkout' ); ?>"><?php esc_html_e( 'View checkout page', 'woocommerce-checkout-manager' ); ?></a> |
75
- <a target="_blank" href="<?php echo WOOCCM_PURCHASE_URL; ?>"><?php esc_html_e( 'Get premium version', 'woocommerce-checkout-manager' ); ?></a> |
76
- <a target="_blank" href="<?php echo WOOCCM_DOCUMENTATION_URL; ?>"><?php esc_html_e( 'View documentation', 'woocommerce-checkout-manager' ); ?></a>
77
  </div>
1
  <span class="settings-save-status">
2
+ <span class="spinner"></span>
3
+ <span class="saved"><?php esc_html_e( 'Saved.' ); ?></span>
4
  </span>
5
 
6
  <div class="details">
7
+ <div class="filename"><strong><?php esc_html_e( 'Field id', 'woocommerce-checkout-manager' ); ?>:</strong> {{data.id}}</div>
8
+ <div class="filename"><strong><?php esc_html_e( 'Field key', 'woocommerce-checkout-manager' ); ?>:</strong> #{{data.key}}</div>
9
+ <# if (data.parent !=undefined) { #>
10
+ <div class="filename"><strong><?php esc_html_e( 'Parent type', 'woocommerce-checkout-manager' ); ?>:</strong> {{data.parent.type}}</div>
11
  <# } #>
12
  </div>
13
 
14
  <div class="panel woocommerce_options_panel">
15
+ <div class="settings">
16
  <p class="form-field">
17
+ <label><?php esc_html_e( 'Conditional', 'woocommerce-checkout-manager' ); ?></label>
18
+ <input <# if (data.conditional) { #>checked="checked"<# } #> type="checkbox" name="conditional" value="1">
19
  <span class="description"><?php esc_html_e( 'Activate conditional field requirement.', 'woocommerce-checkout-manager' ); ?></span>
20
  </p>
21
+ </div>
22
+ <div class="settings">
23
  <p class="form-field">
24
+ <label><?php esc_html_e( 'Parent', 'woocommerce-checkout-manager' ); ?></label>
25
+ <select class="media-modal-parent media-modal-render-info wooccm-enhanced-select" name="conditional_parent_key" data-placeholder="<?php esc_attr_e( 'Select parent field&hellip;', 'woocommerce-checkout-manager' ); ?>" data-allow_clear="false">
26
  <option <# if (data.conditional_parent_key=='' ) { #>selected="selected"<# } #> value=""></option>
27
  <?php foreach ( $fields as $field_id => $field ) : ?>
28
  <?php if ( in_array( $field['type'], $conditionals ) ) : ?>
29
  <# if ( data.id !='<?php echo esc_attr( $field['id'] ); ?>' ) { #>
30
+ <option <# if ( data.conditional_parent_key=='<?php echo esc_attr( $field['key'] ); ?>' ) { #>selected="selected"<# } #> value="<?php echo esc_attr( $field['key'] ); ?>"><?php printf( '%s', esc_html( $field['label'] ) ? esc_html( $field['label'] ) : sprintf( esc_html__( 'Field %s', 'woocommerce-checkout-manager' ), esc_html( $field_id ) ) ); ?></option>
31
+ <# } #>
32
+ <?php endif; ?>
33
  <?php endforeach; ?>
34
+ </select>
35
+ <span class="description"><?php esc_html_e( 'Select conditional parent field.', 'woocommerce-checkout-manager' ); ?></span>
36
  </p>
37
+ </div>
38
+ <div class="settings">
39
  <p class="form-field">
40
+ <# if( data.parent !=undefined && data.parent.label !='' ) { #>
41
  <label>{{data.parent.label}}</label>
42
  <# } else { #>
43
+ <label><?php esc_html_e( 'Value', 'woocommerce-checkout-manager' ); ?></label>
44
+ <# } #>
45
  <# if ( data.parent !=undefined && _.contains(<?php echo json_encode( $option ); ?>, data.parent.type) && _.isObject(data.parent.options)) { #>
46
+ <select class="wooccm-enhanced-select" name="conditional_parent_value">
47
  <# _.each(data.parent.options, function (option, index) { #>
48
+ <option <# if ( option.label==data.conditional_parent_value ) { #>selected="selected"<# } #> value="{{option.label}}">{{option.label}}</option>
49
+ <# }); #>
50
+ </select>
51
+ <# } else if( data.parent !=undefined && data.parent.type=='checkbox' ) { #>
52
  <select class="select short" name="conditional_parent_value">
53
+ <option <# if ( 1==data.conditional_parent_value ) { #>selected="selected"<# } #> value="1"><?php esc_html_e( 'Yes' ); ?></option>
54
+ <option <# if ( 0==data.conditional_parent_value ) { #>selected="selected"<# } #> value="0"><?php esc_html_e( 'No' ); ?></option>
55
  </select>
56
  <# } else if( data.parent !=undefined && data.parent.type=='country' ) { #>
57
+ <select class="wooccm-enhanced-select" name="conditional_parent_value" data-placeholder="<?php esc_attr_e( 'Preserve default country&hellip;', 'woocommerce-checkout-manager' ); ?>" data-allow_clear="true">
58
  <option <# if (data.default=='' ) { #>selected="selected"<# } #> value=""></option>
59
  <?php foreach ( WC()->countries->get_countries() as $id => $name ) : ?>
60
+ <option <# if (data.conditional_parent_value=='<?php echo esc_attr( $id ); ?>' ) { #>selected="selected"<# } #> value="<?php echo esc_attr( $id ); ?>"><?php echo esc_html( $name ); ?></option>
61
  <?php endforeach; ?>
62
+ </select>
63
+ <# } else if( data.parent !=undefined ) { #>
64
  <input type="text" name="conditional_parent_value" placeholder="{{data.parent.default}}" value="{{data.conditional_parent_value}}">
65
  <# } else { #>
66
+ <input type="text" name="conditional_parent_value" placeholder="<?php esc_html_e( 'Conditional parent value', 'woocommerce-checkout-manager' ); ?>" value="{{data.conditional_parent_value}}">
67
+ <# } #>
68
  <span class="description"><?php esc_html_e( 'Show field if parent has this value.', 'woocommerce-checkout-manager' ); ?></span>
69
  </p>
70
+ </div>
71
  </div>
72
 
73
  <div class="actions">
74
+ <a target="_blank" class="view-attachment" href="<?php echo esc_url( wc_get_page_permalink( 'checkout' ) ); ?>"><?php esc_html_e( 'View checkout page', 'woocommerce-checkout-manager' ); ?></a> |
75
+ <a target="_blank" href="<?php echo esc_url( WOOCCM_PURCHASE_URL ); ?>"><?php esc_html_e( 'Get premium version', 'woocommerce-checkout-manager' ); ?></a> |
76
+ <a target="_blank" href="<?php echo esc_url( WOOCCM_DOCUMENTATION_URL ); ?>"><?php esc_html_e( 'View documentation', 'woocommerce-checkout-manager' ); ?></a>
77
  </div>
includes/view/backend/pages/modals/parts/panel-datepicker.php CHANGED
@@ -1,64 +1,64 @@
1
  <# if (data.type=='date' ) { #>
2
- <div class="panel woocommerce_options_panel <# if (data.panel != 'datepicker') { #>hidden<# } #>">
3
- <div class="options_group wooccm-premium">
4
- <p class="form-field">
5
- <label><?php esc_html_e( 'Enhance', 'woocommerce-checkout-manager' ); ?></label>
6
- <input <# if ( data.select2 ) { #>checked="checked"<# } #> class="media-modal-render-panels" type="checkbox" name="select2" value="1">
7
- <span class="description hidden"><?php esc_html_e( 'Enhance date behaviour with datepicker.', 'woocommerce-checkout-manager' ); ?></span>
8
- <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
9
- </p>
10
- </div>
11
- <div class="options_group wooccm-premium">
12
- <p class="form-field">
13
- <label><?php esc_html_e( 'Date format', 'woocommerce-checkout-manager' ); ?></label>
14
- <input <# if ( !data.select2 ) { #>disabled="disabled"<# } #> class="short" type="text" placeholder="dd-mm-yy" name="date_format" value="{{data.date_format}}">
15
- <span class="description"><a target="_blank" href="https://quadlayers.com/documentation/woocommerce-checkout-manager/fields/datepicker/?utm_source=wooccm_admin">Documentation on date and time formatting</a>.</span>
16
- <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
17
- </p>
18
- </div>
19
- <div class="options_group wooccm-premium">
20
- <p class="form-field">
21
- <label><?php esc_html_e( 'Date limit', 'woocommerce-checkout-manager' ); ?></label>
22
- <select <# if ( !data.select2 ) { #>disabled="disabled"<# } #> class="media-modal-render-panels select short" name="date_limit">
23
- <option <# if ( data.date_limit=='variable' ) { #>selected="selected"<# } #> value="variable"><?php esc_html_e( 'Since current date', 'woocommerce-checkout-manager' ); ?></option>
24
- <option <# if ( data.date_limit=='fixed' ) { #>selected="selected"<# } #> value="fixed"><?php esc_html_e( 'Between fixed dates', 'woocommerce-checkout-manager' ); ?></option>
25
- </select>
26
- <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
27
- </p>
28
- </div>
29
- <div class="options_group wooccm-premium">
30
- <p class="form-field">
31
- <label><?php esc_html_e( 'Days disable', 'woocommerce-checkout-manager' ); ?></label>
32
- <select <# if ( !data.select2 ) { #>disabled="disabled"<# } #> class="wooccm-enhanced-select" name="date_limit_days[]" data-placeholder="<?php esc_attr_e( 'Disable week days', 'woocommerce-checkout-manager' ); ?>" data-allow_clear="true" multiple="multiple">
33
- <?php for ( $day_index = 0; $day_index <= 6; $day_index++ ) : ?>
34
- <option <# if ( _.contains(data.date_limit_days, '<?php echo esc_attr( $day_index ); ?>' ) ) { #>selected="selected"<# } #> value="<?php echo esc_attr( $day_index ); ?>"><?php echo $wp_locale->get_weekday( $day_index ); ?></option>
35
- <?php endfor; ?>
36
- </select>
37
- <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
38
- </p>
39
- </div>
40
- <# if ( data.date_limit=='variable' ) { #>
41
- <div class="options_group wooccm-premium wooccm-enhanced-between-days">
42
- <p class="form-field dimensions_field">
43
- <label><?php esc_html_e( 'Between days', 'woocommerce-checkout-manager' ); ?></label>
44
- <span class="wrap">
45
- <input <# if ( !data.select2 ) { #>disabled="disabled"<# } #> style="width:48.1%" type="number" placeholder="-3" min="-365" max="365" class="short " name="date_limit_variable_min" value="{{data.date_limit_variable_min}}" required>
46
- <input <# if ( !data.select2 ) { #>disabled="disabled"<# } #> style="width:48.1%;margin: 0;" type="number" placeholder="3" min="-365" max="365" class="short" name="date_limit_variable_max" value="{{data.date_limit_variable_max}}" required>
47
- </span>
48
- <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
49
- </p>
50
- </div>
51
- <# } else { #>
52
- <div class="options_group wooccm-premium wooccm-enhanced-between-dates">
53
- <p class="form-field dimensions_field">
54
- <label><?php esc_html_e( 'Between dates', 'woocommerce-checkout-manager' ); ?></label>
55
- <span class="wrap">
56
- <input <# if ( !data.select2 ) { #>disabled="disabled"<# } #> style="width:48.1%" type="text" class="short " name="date_limit_fixed_min" value="{{data.date_limit_fixed_min}}" placeholder="<?php esc_html_e( 'From… YYYY-MM-DD', 'woocommerce-checkout-manager' ); ?>" maxlength="10" pattern="[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|1[0-9]|2[0-9]|3[01])">
57
- <input <# if ( !data.select2 ) { #>disabled="disabled"<# } #> style="width:48.1%;margin: 0;" type="text" class="short" name="date_limit_fixed_max" value="{{data.date_limit_fixed_max}}" placeholder="<?php esc_html_e( 'From… YYYY-MM-DD', 'woocommerce-checkout-manager' ); ?>" maxlength="10" pattern="[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|1[0-9]|2[0-9]|3[01])">
58
- </span>
59
  <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
60
- </p>
61
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
  <# } #>
63
- </div>
64
- <# } #>
1
  <# if (data.type=='date' ) { #>
2
+ <div class="panel woocommerce_options_panel <# if (data.panel != 'datepicker') { #>hidden<# } #>">
3
+ <div class="options_group wooccm-premium">
4
+ <p class="form-field">
5
+ <label><?php esc_html_e( 'Enhance', 'woocommerce-checkout-manager' ); ?></label>
6
+ <input <# if ( data.select2 ) { #>checked="checked"<# } #> class="media-modal-render-panels" type="checkbox" name="select2" value="1">
7
+ <span class="description hidden"><?php esc_html_e( 'Enhance date behaviour with datepicker.', 'woocommerce-checkout-manager' ); ?></span>
8
+ <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
9
+ </p>
10
+ </div>
11
+ <div class="options_group wooccm-premium">
12
+ <p class="form-field">
13
+ <label><?php esc_html_e( 'Date format', 'woocommerce-checkout-manager' ); ?></label>
14
+ <input <# if ( !data.select2 ) { #>disabled="disabled"<# } #> class="short" type="text" placeholder="dd-mm-yy" name="date_format" value="{{data.date_format}}">
15
+ <span class="description"><a target="_blank" href="https://quadlayers.com/documentation/woocommerce-checkout-manager/fields/datepicker/?utm_source=wooccm_admin">Documentation on date and time formatting</a>.</span>
16
+ <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
17
+ </p>
18
+ </div>
19
+ <div class="options_group wooccm-premium">
20
+ <p class="form-field">
21
+ <label><?php esc_html_e( 'Date limit', 'woocommerce-checkout-manager' ); ?></label>
22
+ <select <# if ( !data.select2 ) { #>disabled="disabled"<# } #> class="media-modal-render-panels select short" name="date_limit">
23
+ <option <# if ( data.date_limit=='variable' ) { #>selected="selected"<# } #> value="variable"><?php esc_html_e( 'Since current date', 'woocommerce-checkout-manager' ); ?></option>
24
+ <option <# if ( data.date_limit=='fixed' ) { #>selected="selected"<# } #> value="fixed"><?php esc_html_e( 'Between fixed dates', 'woocommerce-checkout-manager' ); ?></option>
25
+ </select>
26
+ <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
27
+ </p>
28
+ </div>
29
+ <div class="options_group wooccm-premium">
30
+ <p class="form-field">
31
+ <label><?php esc_html_e( 'Days disable', 'woocommerce-checkout-manager' ); ?></label>
32
+ <select <# if ( !data.select2 ) { #>disabled="disabled"<# } #> class="wooccm-enhanced-select" name="date_limit_days[]" data-placeholder="<?php esc_attr_e( 'Disable week days', 'woocommerce-checkout-manager' ); ?>" data-allow_clear="true" multiple="multiple">
33
+ <?php for ( $day_index = 0; $day_index <= 6; $day_index++ ) : ?>
34
+ <option <# if ( _.contains(data.date_limit_days, '<?php echo esc_attr( $day_index ); ?>' ) ) { #>selected="selected"<# } #> value="<?php echo esc_attr( $day_index ); ?>"><?php echo esc_html( $wp_locale->get_weekday( $day_index ) ); ?></option>
35
+ <?php endfor; ?>
36
+ </select>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
38
+ </p>
39
  </div>
40
+ <# if ( data.date_limit=='variable' ) { #>
41
+ <div class="options_group wooccm-premium wooccm-enhanced-between-days">
42
+ <p class="form-field dimensions_field">
43
+ <label><?php esc_html_e( 'Between days', 'woocommerce-checkout-manager' ); ?></label>
44
+ <span class="wrap">
45
+ <input <# if ( !data.select2 ) { #>disabled="disabled"<# } #> style="width:48.1%" type="number" placeholder="-3" min="-365" max="365" class="short " name="date_limit_variable_min" value="{{data.date_limit_variable_min}}" required>
46
+ <input <# if ( !data.select2 ) { #>disabled="disabled"<# } #> style="width:48.1%;margin: 0;" type="number" placeholder="3" min="-365" max="365" class="short" name="date_limit_variable_max" value="{{data.date_limit_variable_max}}" required>
47
+ </span>
48
+ <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
49
+ </p>
50
+ </div>
51
+ <# } else { #>
52
+ <div class="options_group wooccm-premium wooccm-enhanced-between-dates">
53
+ <p class="form-field dimensions_field">
54
+ <label><?php esc_html_e( 'Between dates', 'woocommerce-checkout-manager' ); ?></label>
55
+ <span class="wrap">
56
+ <input <# if ( !data.select2 ) { #>disabled="disabled"<# } #> style="width:48.1%" type="text" class="short " name="date_limit_fixed_min" value="{{data.date_limit_fixed_min}}" placeholder="<?php esc_html_e( 'From… YYYY-MM-DD', 'woocommerce-checkout-manager' ); ?>" maxlength="10" pattern="[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|1[0-9]|2[0-9]|3[01])">
57
+ <input <# if ( !data.select2 ) { #>disabled="disabled"<# } #> style="width:48.1%;margin: 0;" type="text" class="short" name="date_limit_fixed_max" value="{{data.date_limit_fixed_max}}" placeholder="<?php esc_html_e( 'From… YYYY-MM-DD', 'woocommerce-checkout-manager' ); ?>" maxlength="10" pattern="[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|1[0-9]|2[0-9]|3[01])">
58
+ </span>
59
+ <span class="description premium">(<?php esc_html_e( 'This is a premium feature', 'woocommerce-checkout-manager' ); ?>)</span>
60
+ </p>
61
+ </div>
62
  <# } #>
63
+ </div>
64
+ <# } #>
includes/view/backend/pages/order.php CHANGED
@@ -1,8 +1,7 @@
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Order', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Order settings', 'woocommerce-checkout-manager' ); ?></h2>
4
- <div id="<?php printf( 'wooccm_%s_settings-description', $current_section ); ?>">
5
- <p><?php printf( esc_html__( 'Customize and manage the order settings.', 'woocommerce-checkout-manager' ), $current_section ); ?></p>
6
  </div>
7
-
8
  <?php woocommerce_admin_fields( $settings ); ?>
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Order', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Order settings', 'woocommerce-checkout-manager' ); ?></h2>
4
+ <div id="<?php printf( 'wooccm_%s_settings-description', esc_attr( $current_section ) ); ?>">
5
+ <p><?php printf( esc_html__( 'Customize and manage the order settings.', 'woocommerce-checkout-manager' ), esc_attr( $current_section ) ); ?></p>
6
  </div>
 
7
  <?php woocommerce_admin_fields( $settings ); ?>
includes/view/backend/pages/parts/actions.php CHANGED
@@ -1,12 +1,12 @@
1
- <div id="<?php printf( 'wooccm_%s_settings-actions', $current_section ); ?>" class="tablenav top" style="margin-bottom:15px">
2
- <div class="alignleft actions bulkactions">
3
- <a href="javascript:;" id="<?php printf( 'wooccm_%s_settings_add', $current_section ); ?>" class="button button-primary"><?php esc_html_e( '+ Add New Field', 'woocommerce-checkout-manager' ); ?></a>
4
- <!--<a href="javascript:;" id="<?php printf( 'wooccm_%s_settings_import', $current_section ); ?>" class="button button-secondary"><?php esc_html_e( 'Import', 'woocommerce-checkout-manager' ); ?></a>-->
5
- <a href="javascript:;" id="<?php printf( 'wooccm_%s_settings_reset', $current_section ); ?>" class="button button-secondary"><?php esc_html_e( 'Reset', 'woocommerce-checkout-manager' ); ?></a>
6
- </div>
7
- <?php if ( 'additional' == $current_section ) : ?>
8
- <div class="alignright actions">
9
- <?php woocommerce_admin_fields( $settings ); ?>
10
  </div>
11
- <?php endif; ?>
 
 
 
 
12
  </div>
1
+ <div id="<?php printf( 'wooccm_%s_settings-actions', esc_attr( $current_section ) ); ?>" class="tablenav top" style="margin-bottom:15px">
2
+ <div class="alignleft actions bulkactions">
3
+ <a href="javascript:;" id="<?php printf( 'wooccm_%s_settings_add', esc_attr( $current_section ) ); ?>" class="button button-primary"><?php esc_html_e( '+ Add New Field', 'woocommerce-checkout-manager' ); ?></a>
4
+ <!--<a href="javascript:;" id="<?php printf( 'wooccm_%s_settings_import', esc_attr( $current_section ) ); ?>" class="button button-secondary"><?php esc_html_e( 'Import', 'woocommerce-checkout-manager' ); ?></a>-->
5
+ <a href="javascript:;" id="<?php printf( 'wooccm_%s_settings_reset', esc_attr( $current_section ) ); ?>" class="button button-secondary"><?php esc_html_e( 'Reset', 'woocommerce-checkout-manager' ); ?></a>
 
 
 
 
6
  </div>
7
+ <?php if ( 'additional' == esc_attr( $current_section ) ) : ?>
8
+ <div class="alignright actions">
9
+ <?php woocommerce_admin_fields( $settings ); ?>
10
+ </div>
11
+ <?php endif; ?>
12
  </div>
includes/view/backend/pages/parts/header.php CHANGED
@@ -1,55 +1,49 @@
1
  <div class="wrap about-wrap full-width-layout">
2
-
3
- <h1><?php esc_html_e( 'Suggestions', 'woocommerce-checkout-manager' ); ?></h1>
4
-
5
- <p class="about-text"><?php printf( esc_html__( 'Thanks for using our product! We recommend these extensions that will add new features to stand out your business and improve your sales.', 'woocommerce-checkout-manager' ), WOOCCM_PLUGIN_NAME ); ?></p>
6
-
7
- <p class="about-text">
8
- <?php printf( '<a href="%s" target="_blank">%s</a>', WOOCCM_PURCHASE_URL, esc_html__( 'Purchase', 'woocommerce-checkout-manager' ) ); ?></a> |
9
- <?php printf( '<a href="%s" target="_blank">%s</a>', WOOCCM_DOCUMENTATION_URL, esc_html__( 'Documentation', 'woocommerce-checkout-manager' ) ); ?></a>
10
- </p>
11
-
12
- <?php
13
  printf(
14
  '<a href="%s" target="_blank"><div style="
15
- background: #006bff url(%s) no-repeat;
16
- background-position: top center;
17
- background-size: 130px 130px;
18
- color: #fff;
19
- font-size: 14px;
20
- text-align: center;
21
- font-weight: 600;
22
- margin: 5px 0 0;
23
- padding-top: 120px;
24
- height: 40px;
25
- display: inline-block;
26
- width: 140px;
27
- " class="wp-badge">%s</div></a>',
28
  'https://quadlayers.com/?utm_source=wooccm_admin',
29
- plugins_url( '/assets/backend/img/quadlayers.jpg', WOOCCM_PLUGIN_FILE ),
30
  esc_html__( 'QuadLayers', 'woocommerce-checkout-manager' )
31
  );
32
  ?>
33
-
34
  </div>
35
-
36
  <?php
37
  if ( isset( $GLOBALS['submenu'][ WOOCCM_PREFIX ] ) ) {
38
  if ( is_array( $GLOBALS['submenu'][ WOOCCM_PREFIX ] ) ) {
39
  ?>
40
  <div class="wrap about-wrap full-width-layout qlwrap">
41
- <h2 class="nav-tab-wrapper">
42
  <?php
43
  foreach ( $GLOBALS['submenu'][ WOOCCM_PREFIX ] as $tab ) {
44
  if ( strpos( $tab[2], '.php' ) !== false ) {
45
  continue;
46
  }
47
  ?>
48
- <a href="<?php echo admin_url( 'admin.php?page=' . esc_attr( $tab[2] ) ); ?>" class="nav-tab<?php echo ( isset( $_GET['page'] ) && $_GET['page'] == $tab[2] ) ? ' nav-tab-active' : ''; ?>"><?php echo $tab[0]; ?></a>
49
  <?php
50
  }
51
  ?>
52
- </h2>
53
  </div>
54
  <?php
55
  }
1
  <div class="wrap about-wrap full-width-layout">
2
+ <h1><?php esc_html_e( 'Suggestions', 'woocommerce-checkout-manager' ); ?></h1>
3
+ <p class="about-text"><?php printf( esc_html__( 'Thanks for using our product! We recommend these extensions that will add new features to stand out your business and improve your sales.', 'woocommerce-checkout-manager' ), esc_html( WOOCCM_PLUGIN_NAME ) ); ?></p>
4
+ <p class="about-text">
5
+ <?php printf( '<a href="%s" target="_blank">%s</a>', esc_url( WOOCCM_PURCHASE_URL ), esc_html__( 'Purchase', 'woocommerce-checkout-manager' ) ); ?></a> |
6
+ <?php printf( '<a href="%s" target="_blank">%s</a>', esc_url( WOOCCM_DOCUMENTATION_URL ), esc_html__( 'Documentation', 'woocommerce-checkout-manager' ) ); ?></a>
7
+ </p>
8
+ <?php
 
 
 
 
9
  printf(
10
  '<a href="%s" target="_blank"><div style="
11
+ background: #006bff url(%s) no-repeat;
12
+ background-position: top center;
13
+ background-size: 130px 130px;
14
+ color: #fff;
15
+ font-size: 14px;
16
+ text-align: center;
17
+ font-weight: 600;
18
+ margin: 5px 0 0;
19
+ padding-top: 120px;
20
+ height: 40px;
21
+ display: inline-block;
22
+ width: 140px;
23
+ " class="wp-badge">%s</div></a>',
24
  'https://quadlayers.com/?utm_source=wooccm_admin',
25
+ plugins_url( '/assets/backend/img/quadlayers.jpg', WOOCCM_PLUGIN_FILE ), // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
26
  esc_html__( 'QuadLayers', 'woocommerce-checkout-manager' )
27
  );
28
  ?>
 
29
  </div>
 
30
  <?php
31
  if ( isset( $GLOBALS['submenu'][ WOOCCM_PREFIX ] ) ) {
32
  if ( is_array( $GLOBALS['submenu'][ WOOCCM_PREFIX ] ) ) {
33
  ?>
34
  <div class="wrap about-wrap full-width-layout qlwrap">
35
+ <h2 class="nav-tab-wrapper">
36
  <?php
37
  foreach ( $GLOBALS['submenu'][ WOOCCM_PREFIX ] as $tab ) {
38
  if ( strpos( $tab[2], '.php' ) !== false ) {
39
  continue;
40
  }
41
  ?>
42
+ <a href="<?php echo esc_url( admin_url( 'admin.php?page=' . esc_attr( $tab[2] ) ) ); ?>" class="nav-tab<?php echo esc_attr( isset( $_GET['page'] ) && $_GET['page'] == $tab[2] ) ? ' nav-tab-active' : ''; ?>"><?php echo esc_html( $tab[0] ); ?></a>
43
  <?php
44
  }
45
  ?>
46
+ </h2>
47
  </div>
48
  <?php
49
  }
includes/view/backend/pages/parts/loop.php CHANGED
@@ -1,134 +1,134 @@
1
  <table class="form-table">
2
- <tbody>
3
- <tr valign="top">
4
- <td class="<?php printf( 'wooccm_%s_wrapper', $current_section ); ?> wc_payment_gateways_wrapper" colspan="2">
5
- <table id="<?php printf( 'wooccm_%s_fields', $current_section ); ?>" class="wc_gateways widefat" cellspacing="0" aria-describedby="<?php printf( 'wooccm_%s_settings-description', $current_section ); ?>">
6
- <thead>
7
- <tr>
8
- <th class="sort" style="width:1%"></th>
9
- <th class="required" style="width:1%"><?php esc_html_e( 'Required', 'woocommerce-checkout-manager' ); ?></th>
10
- <th class="position" style="width:1%;min-width: 100px;"><?php esc_html_e( 'Position', 'woocommerce-checkout-manager' ); ?></th>
11
- <th class="clear"><?php esc_html_e( 'Clear', 'woocommerce-checkout-manager' ); ?><span class="woocommerce-help-tip" style="position:absolute;top:50%;margin-top:-0.5em;" data-tip="<?php esc_html_e( 'Disallow floating elements on the left and right side of this field.', 'woocommerce-checkout-manager' ); ?>"></span></th>
12
- <th class="type" style="width:1%"><?php esc_html_e( 'Type', 'woocommerce-checkout-manager' ); ?></th>
13
- <th class="label" style="width:1%;min-width: 100px;"><?php esc_html_e( 'Label', 'woocommerce-checkout-manager' ); ?></th>
14
- <th class="placeholder"><?php esc_html_e( 'Placeholder', 'woocommerce-checkout-manager' ); ?></th>
15
- <!--<th class="listable"><?php esc_html_e( 'Listable', 'woocommerce-checkout-manager' ); ?></th>
16
- <th class="sortable"><?php esc_html_e( 'Sortable', 'woocommerce-checkout-manager' ); ?></th>
17
- <th class="filterable"><?php esc_html_e( 'Filterable', 'woocommerce-checkout-manager' ); ?></th>-->
18
- <th class="parent" style="width:1%"><?php esc_html_e( 'Parent', 'woocommerce-checkout-manager' ); ?></th>
19
- <th class="id" style="width:1%;"><?php esc_html_e( 'ID', 'woocommerce-checkout-manager' ); ?></th>
20
- <th class="status" style="width:1%"><?php esc_html_e( 'Disabled', 'woocommerce-checkout-manager' ); ?></th>
21
- <th class="edit" style="width:1%"></th>
22
- <th class="delete" style="width:1%"></th>
23
- </tr>
24
- </thead>
25
- <tbody class="ui-sortable">
26
- <?php if ( count( $fields ) ) : ?>
27
- <?php foreach ( $fields as $id => $field ) : ?>
28
- <tr data-field_id="<?php echo esc_attr( $field['id'] ); ?>" data-field_order="<?php echo esc_attr( $field['order'] ); ?>">
29
- <td class="sort ui-sortable-handle">
30
- <div class="wc-item-reorder-nav">
31
- <button type="button" class="wc-move-up wc-move-disabled" tabindex="-1" aria-hidden="true" aria-label="<?php echo esc_attr( sprintf( esc_html__( 'Move the "%s" payment method up', 'woocommerce-checkout-manager' ), $field['label'] ) ); ?>"><?php esc_html_e( 'Move up', 'woocommerce-checkout-manager' ); ?></button>
32
- <button type="button" class="wc-move-down" tabindex="0" aria-hidden="false" aria-label="<?php echo esc_attr( sprintf( esc_html__( 'Move the "%s" payment method down', 'woocommerce-checkout-manager' ), $field['label'] ) ); ?>"><?php esc_html_e( 'Move down', 'woocommerce-checkout-manager' ); ?></button>
33
- <input type="hidden" name="field_order[]" value="<?php echo esc_attr( $id ); ?>">
34
- </div>
35
- </td>
36
- <td class="required">
37
- <a data-field_attr="required" class="wooccm-field-toggle-attribute" href="#">
38
- <?php
39
- if ( $field['required'] === true ) {
40
- echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--enabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently enabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'Yes', 'woocommerce-checkout-manager' ) . '</span>';
41
- } else {
42
- echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--disabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently disabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'No', 'woocommerce-checkout-manager' ) . '</span>';
43
- }
44
- ?>
45
- </a>
46
- </td>
47
- <td class="position">
48
- <select data-field_attr="position" class="wooccm-field-change-attribute" style="width: auto; border-radius: 3px; height: 28px; line-height: 28px;" name="position">
49
- <option <?php selected( $field['position'], 'form-row-wide' ); ?> value="form-row-wide"><?php esc_html_e( 'Wide', 'woocommerce-checkout-manager' ); ?></option>
50
- <option <?php selected( $field['position'], 'form-row-first' ); ?> value="form-row-first"><?php esc_html_e( 'Left', 'woocommerce-checkout-manager' ); ?></option>
51
- <option <?php selected( $field['position'], 'form-row-last' ); ?> value="form-row-last"><?php esc_html_e( 'Right', 'woocommerce-checkout-manager' ); ?></option>
52
- </select>
53
- </td>
54
- <td class="clear">
55
- <a data-field_attr="clear" class="wooccm-field-toggle-attribute" href="#">
56
- <?php
57
- if ( $field['clear'] === true ) {
58
- echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--enabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently enabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'Yes', 'woocommerce-checkout-manager' ) . '</span>';
59
- } else {
60
- echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--disabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently disabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'No', 'woocommerce-checkout-manager' ) . '</span>';
61
- }
62
- ?>
63
- </a>
64
- </td>
65
- <td class="type">
66
- <?php echo esc_html( $field['type'] ); ?>
67
- </td>
68
- <td class="label">
69
- <?php echo esc_html( $field['label'] ); ?>
70
- </td>
71
- <td class="placeholder">
72
- <?php echo esc_html( $field['placeholder'] ); ?>
73
- </td>
74
- <td class="parent">
75
- <?php echo esc_attr( $field['conditional_parent_key'] ); ?>
76
- </td>
77
- <td class="id">
78
- <?php echo esc_html( $field['key'] ); ?>
79
- </td>
80
- <!--<td class="listable">
81
- <?php
82
- if ( $field['listable'] === true ) {
83
- ?>
84
- <span class="status-enabled"><?php esc_html_e( 'Yes' ); ?></span>
85
- <?php } else { ?>
86
- <span class="status-disabled"><?php esc_html_e( 'Yes' ); ?></span>
87
- <?php } ?>
88
- </td>
89
- <td class="sortable">
90
- <?php
91
- if ( $field['sortable'] === true ) {
92
- ?>
93
- <span class="status-enabled"><?php esc_html_e( 'Yes' ); ?></span>
94
- <?php } else { ?>
95
- <span class="status-disabled"><?php esc_html_e( 'Yes' ); ?></span>
96
- <?php } ?>
97
- </td>
98
- <td class="filterable">
99
- <?php
100
- if ( $field['filterable'] === true ) {
101
- ?>
102
- <span class="status-enabled"><?php esc_html_e( 'Yes' ); ?></span>
103
- <?php } else { ?>
104
- <span class="status-disabled"><?php esc_html_e( 'Yes' ); ?></span>
105
- <?php } ?>
106
- </td>-->
107
- <td class="status">
108
- <a data-field_attr="disabled" class="wooccm-field-toggle-attribute" href="#">
109
- <?php
110
- if ( $field['disabled'] === true ) {
111
- echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--enabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently enabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'Yes', 'woocommerce-checkout-manager' ) . '</span>';
112
- } else {
113
- echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--disabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently disabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'No', 'woocommerce-checkout-manager' ) . '</span>';
114
- }
115
- ?>
116
- </a>
117
- </td>
118
- <td class="edit">
119
- <a class="<?php printf( 'wooccm_%s_settings_edit', $current_section ); ?> button" aria-label="<?php esc_html_e( 'Edit checkout field', 'woocommerce-checkout-manager' ); ?>" href="javascript:;"><?php esc_html_e( 'Edit' ); ?></a>
120
- </td>
121
- <td class="delete">
122
- <?php if ( is_array( $defaults ) && ! in_array( $field['key'], array_column( $defaults, 'key' ) ) ) : ?>
123
- <a class="<?php printf( 'wooccm_%s_settings_delete', $current_section ); ?>" aria-label="<?php esc_html_e( 'Edit checkout field', 'woocommerce-checkout-manager' ); ?>" href="javascript:;"><?php esc_html_e( 'Delete' ); ?></a>
124
- <?php endif; ?>
125
- </td>
126
  </tr>
127
- <?php endforeach; ?>
128
- <?php endif; ?>
129
- </tbody>
130
- </table>
131
- </td>
132
- </tr>
133
- </tbody>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134
  </table>
1
  <table class="form-table">
2
+ <tbody>
3
+ <tr valign="top">
4
+ <td class="<?php printf( 'wooccm_%s_wrapper', esc_attr( $current_section ) ); ?> wc_payment_gateways_wrapper" colspan="2">
5
+ <table id="<?php printf( 'wooccm_%s_fields', esc_attr( $current_section ) ); ?>" class="wc_gateways widefat" cellspacing="0" aria-describedby="<?php printf( 'wooccm_%s_settings-description', esc_attr( $current_section ) ); ?>">
6
+ <thead>
7
+ <tr>
8
+ <th class="sort" style="width:1%"></th>
9
+ <th class="required" style="width:1%"><?php esc_html_e( 'Required', 'woocommerce-checkout-manager' ); ?></th>
10
+ <th class="position" style="width:1%;min-width: 100px;"><?php esc_html_e( 'Position', 'woocommerce-checkout-manager' ); ?></th>
11
+ <th class="clear"><?php esc_html_e( 'Clear', 'woocommerce-checkout-manager' ); ?><span class="woocommerce-help-tip" style="position:absolute;top:50%;margin-top:-0.5em;" data-tip="<?php esc_html_e( 'Disallow floating elements on the left and right side of this field.', 'woocommerce-checkout-manager' ); ?>"></span></th>
12
+ <th class="type" style="width:1%"><?php esc_html_e( 'Type', 'woocommerce-checkout-manager' ); ?></th>
13
+ <th class="label" style="width:1%;min-width: 100px;"><?php esc_html_e( 'Label', 'woocommerce-checkout-manager' ); ?></th>
14
+ <th class="placeholder"><?php esc_html_e( 'Placeholder', 'woocommerce-checkout-manager' ); ?></th>
15
+ <!--<th class="listable"><?php esc_html_e( 'Listable', 'woocommerce-checkout-manager' ); ?></th>
16
+ <th class="sortable"><?php esc_html_e( 'Sortable', 'woocommerce-checkout-manager' ); ?></th>
17
+ <th class="filterable"><?php esc_html_e( 'Filterable', 'woocommerce-checkout-manager' ); ?></th>-->
18
+ <th class="parent" style="width:1%"><?php esc_html_e( 'Parent', 'woocommerce-checkout-manager' ); ?></th>
19
+ <th class="id" style="width:1%;"><?php esc_html_e( 'ID', 'woocommerce-checkout-manager' ); ?></th>
20
+ <th class="status" style="width:1%"><?php esc_html_e( 'Disabled', 'woocommerce-checkout-manager' ); ?></th>
21
+ <th class="edit" style="width:1%"></th>
22
+ <th class="delete" style="width:1%"></th>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
23
  </tr>
24
+ </thead>
25
+ <tbody class="ui-sortable">
26
+ <?php if ( count( $fields ) ) : ?>
27
+ <?php foreach ( $fields as $id => $field ) : ?>
28
+ <tr data-field_id="<?php echo esc_attr( $field['id'] ); ?>" data-field_order="<?php echo esc_attr( $field['order'] ); ?>">
29
+ <td class="sort ui-sortable-handle">
30
+ <div class="wc-item-reorder-nav">
31
+ <button type="button" class="wc-move-up wc-move-disabled" tabindex="-1" aria-hidden="true" aria-label="<?php echo esc_attr( sprintf( esc_html__( 'Move the "%s" payment method up', 'woocommerce-checkout-manager' ), $field['label'] ) ); ?>"><?php esc_html_e( 'Move up', 'woocommerce-checkout-manager' ); ?></button>
32
+ <button type="button" class="wc-move-down" tabindex="0" aria-hidden="false" aria-label="<?php echo esc_attr( sprintf( esc_html__( 'Move the "%s" payment method down', 'woocommerce-checkout-manager' ), $field['label'] ) ); ?>"><?php esc_html_e( 'Move down', 'woocommerce-checkout-manager' ); ?></button>
33
+ <input type="hidden" name="field_order[]" value="<?php echo esc_attr( $id ); ?>">
34
+ </div>
35
+ </td>
36
+ <td class="required">
37
+ <a data-field_attr="required" class="wooccm-field-toggle-attribute" href="#">
38
+ <?php
39
+ if ( $field['required'] === true ) {
40
+ echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--enabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently enabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'Yes', 'woocommerce-checkout-manager' ) . '</span>';
41
+ } else {
42
+ echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--disabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently disabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'No', 'woocommerce-checkout-manager' ) . '</span>';
43
+ }
44
+ ?>
45
+ </a>
46
+ </td>
47
+ <td class="position">
48
+ <select data-field_attr="position" class="wooccm-field-change-attribute" style="width: auto; border-radius: 3px; height: 28px; line-height: 28px;" name="position">
49
+ <option <?php selected( $field['position'], 'form-row-wide' ); ?> value="form-row-wide"><?php esc_html_e( 'Wide', 'woocommerce-checkout-manager' ); ?></option>
50
+ <option <?php selected( $field['position'], 'form-row-first' ); ?> value="form-row-first"><?php esc_html_e( 'Left', 'woocommerce-checkout-manager' ); ?></option>
51
+ <option <?php selected( $field['position'], 'form-row-last' ); ?> value="form-row-last"><?php esc_html_e( 'Right', 'woocommerce-checkout-manager' ); ?></option>
52
+ </select>
53
+ </td>
54
+ <td class="clear">
55
+ <a data-field_attr="clear" class="wooccm-field-toggle-attribute" href="#">
56
+ <?php
57
+ if ( $field['clear'] === true ) {
58
+ echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--enabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently enabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'Yes', 'woocommerce-checkout-manager' ) . '</span>';
59
+ } else {
60
+ echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--disabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently disabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'No', 'woocommerce-checkout-manager' ) . '</span>';
61
+ }
62
+ ?>
63
+ </a>
64
+ </td>
65
+ <td class="type">
66
+ <?php echo esc_html( $field['type'] ); ?>
67
+ </td>
68
+ <td class="label">
69
+ <?php echo esc_html( $field['label'] ); ?>
70
+ </td>
71
+ <td class="placeholder">
72
+ <?php echo esc_html( $field['placeholder'] ); ?>
73
+ </td>
74
+ <td class="parent">
75
+ <?php echo esc_attr( $field['conditional_parent_key'] ); ?>
76
+ </td>
77
+ <td class="id">
78
+ <?php echo esc_html( $field['key'] ); ?>
79
+ </td>
80
+ <!--<td class="listable">
81
+ <?php
82
+ if ( $field['listable'] === true ) {
83
+ ?>
84
+ <span class="status-enabled"><?php esc_html_e( 'Yes' ); ?></span>
85
+ <?php } else { ?>
86
+ <span class="status-disabled"><?php esc_html_e( 'Yes' ); ?></span>
87
+ <?php } ?>
88
+ </td>
89
+ <td class="sortable">
90
+ <?php
91
+ if ( $field['sortable'] === true ) {
92
+ ?>
93
+ <span class="status-enabled"><?php esc_html_e( 'Yes' ); ?></span>
94
+ <?php } else { ?>
95
+ <span class="status-disabled"><?php esc_html_e( 'Yes' ); ?></span>
96
+ <?php } ?>
97
+ </td>
98
+ <td class="filterable">
99
+ <?php
100
+ if ( $field['filterable'] === true ) {
101
+ ?>
102
+ <span class="status-enabled"><?php esc_html_e( 'Yes' ); ?></span>
103
+ <?php } else { ?>
104
+ <span class="status-disabled"><?php esc_html_e( 'Yes' ); ?></span>
105
+ <?php } ?>
106
+ </td>-->
107
+ <td class="status">
108
+ <a data-field_attr="disabled" class="wooccm-field-toggle-attribute" href="#">
109
+ <?php
110
+ if ( $field['disabled'] === true ) {
111
+ echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--enabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently enabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'Yes', 'woocommerce-checkout-manager' ) . '</span>';
112
+ } else {
113
+ echo '<span class="woocommerce-input-toggle woocommerce-input-toggle--disabled" aria-label="' . esc_attr( sprintf( esc_html__( 'The "%s" field currently disabled', 'woocommerce-checkout-manager' ), $field['label'] ) ) . '">' . esc_attr__( 'No', 'woocommerce-checkout-manager' ) . '</span>';
114
+ }
115
+ ?>
116
+ </a>
117
+ </td>
118
+ <td class="edit">
119
+ <a class="<?php printf( 'wooccm_%s_settings_edit', esc_attr( $current_section ) ); ?> button" aria-label="<?php esc_html_e( 'Edit checkout field', 'woocommerce-checkout-manager' ); ?>" href="javascript:;"><?php esc_html_e( 'Edit' ); ?></a>
120
+ </td>
121
+ <td class="delete">
122
+ <?php if ( is_array( $defaults ) && ! in_array( $field['key'], array_column( $defaults, 'key' ) ) ) : ?>
123
+ <a class="<?php printf( 'wooccm_%s_settings_delete', esc_attr( $current_section ) ); ?>" aria-label="<?php esc_html_e( 'Edit checkout field', 'woocommerce-checkout-manager' ); ?>" href="javascript:;"><?php esc_html_e( 'Delete' ); ?></a>
124
+ <?php endif; ?>
125
+ </td>
126
+ </tr>
127
+ <?php endforeach; ?>
128
+ <?php endif; ?>
129
+ </tbody>
130
+ </table>
131
+ </td>
132
+ </tr>
133
+ </tbody>
134
  </table>
includes/view/backend/pages/parts/tabs.php CHANGED
@@ -1,5 +1,5 @@
1
  <ul class="subsubsub">
2
- <?php do_action( 'wooccm_sections_header' ); ?>
3
- <li><a target="_blank" href="<?php echo WOOCCM_DOCUMENTATION_URL; ?>"><?php echo esc_html__( 'Documentation', 'woocommerce-checkout-manager' ); ?></a></li>
4
  </ul>
5
  <br class="clear" />
1
  <ul class="subsubsub">
2
+ <?php do_action( 'wooccm_sections_header' ); ?>
3
+ <li><a target="_blank" href="<?php echo esc_url( WOOCCM_DOCUMENTATION_URL ); ?>"><?php echo esc_html__( 'Documentation', 'woocommerce-checkout-manager' ); ?></a></li>
4
  </ul>
5
  <br class="clear" />
includes/view/backend/pages/premium.php CHANGED
@@ -1,64 +1,64 @@
1
  <?php require_once 'parts/header.php'; ?>
2
  <div class="wrap about-wrap full-width-layout">
3
- <div class="has-2-columns is-wider-left" style="max-width: 100%">
4
- <div class="column">
5
- <div class="welcome-header">
6
- <h1><?php esc_html_e( 'Premium', 'woocommerce-checkout-manager' ); ?></h1>
7
- <div class="about-description">
8
- <?php printf( esc_html__( '%s allows you to customize, add, edit and delete fields displayed on the checkout page. With the premium version you can also create conditional fields and include custom fees based on the checkout fields.', 'woocommerce-checkout-manager' ), WOOCCM_PLUGIN_NAME ); ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
  </div>
10
- <br />
11
- <a class="button button-primary" target="_blank" href="<?php echo esc_url( WOOCCM_PURCHASE_URL ); ?>"><?php esc_html_e( 'Purchase Now', 'woocommerce-checkout-manager' ); ?></a>
12
- <a class="button button-secondary" target="_blank" href="<?php echo esc_url( WOOCCM_SUPPORT_URL ); ?>"><?php esc_html_e( 'Get Support', 'woocommerce-checkout-manager' ); ?></a>
13
- </div>
14
- <hr />
15
- <div class="feature-section" style="padding: 10px 0;">
16
- <h3><?php esc_html_e( 'Add checkout fees', 'woocommerce-checkout-manager' ); ?></h3>
17
- <p>
18
- <?php printf( esc_html__( '%s allows you to include fees to each custom or core field. Fees can be fixed or percentage amounts based on checkout total.', 'woocommerce-checkout-manager' ), WOOCCM_PLUGIN_NAME ); ?>
19
- </p>
20
- </div>
21
- <div class="feature-section" style="padding: 10px 0;">
22
- <h3><?php esc_html_e( 'Remove account fields', 'woocommerce-checkout-manager' ); ?></h3>
23
- <p>
24
- <?php esc_html_e( 'By default all fields attached to the billing or shipping sections are included in the edit address area of the user account page. With the premium version, you can hide the fields on the checkout or my account page.', 'woocommerce-checkout-manager' ); ?>
25
- </p>
26
- </div>
27
- <div class="feature-section" style="padding: 10px 0;">
28
- <h3><?php esc_html_e( 'Enhance select fields', 'woocommerce-checkout-manager' ); ?></h3>
29
- <p>
30
- <?php esc_html_e( 'The enhance options allow you to improve the behavior of the select and multiselect fields with the select2 jquery plugin.', 'woocommerce-checkout-manager' ); ?>
31
- </p>
32
- </div>
33
- </div>
34
- <div class="column">
35
- <img src="<?php echo plugins_url( '/assets/backend/img/fees.png', WOOCCM_PLUGIN_FILE ); ?>">
36
- </div>
37
- </div>
38
- <hr />
39
- <div class="has-2-columns" style="max-width: 100%">
40
- <div class="column">
41
- <img style="margin-top: -30px" src="<?php echo plugins_url( '/assets/backend/img/admin.png', WOOCCM_PLUGIN_FILE ); ?>">
42
  </div>
43
- <div class="column">
44
- <div class="feature-section" style="padding: 10px 0;">
45
- <h3><?php esc_html_e( 'Display on admin list orders', 'woocommerce-checkout-manager' ); ?></h3>
46
- <p>
47
- <?php esc_html_e( 'This option allows you to display the fields in the WooCommerce order list.', 'woocommerce-checkout-manager' ); ?>
48
- </p>
49
- </div>
50
- <div class="feature-section" style="padding: 10px 0;">
51
- <h3><?php esc_html_e( 'Allow sorting on admin list orders', 'woocommerce-checkout-manager' ); ?></h3>
52
- <p>
53
- <?php esc_html_e( 'This option allows you to sort the WooCommerce orders list based on the field values.', 'woocommerce-checkout-manager' ); ?>
54
- </p>
55
- </div>
56
- <div class="feature-section" style="padding: 10px 0;">
57
- <h3><?php esc_html_e( 'Allow filtering on admin list orders', 'woocommerce-checkout-manager' ); ?></h3>
58
- <p>
59
- <?php esc_html_e( 'This option allows you to add a search field to filter the options based on the selected values.', 'woocommerce-checkout-manager' ); ?>
60
- </p>
61
- </div>
 
 
 
 
 
 
62
  </div>
63
- </div>
64
  </div>
1
  <?php require_once 'parts/header.php'; ?>
2
  <div class="wrap about-wrap full-width-layout">
3
+ <div class="has-2-columns is-wider-left" style="max-width: 100%">
4
+ <div class="column">
5
+ <div class="welcome-header">
6
+ <h1><?php esc_html_e( 'Premium', 'woocommerce-checkout-manager' ); ?></h1>
7
+ <div class="about-description">
8
+ <?php printf( esc_html__( '%s allows you to customize, add, edit and delete fields displayed on the checkout page. With the premium version you can also create conditional fields and include custom fees based on the checkout fields.', 'woocommerce-checkout-manager' ), esc_html( WOOCCM_PLUGIN_NAME ) ); ?>
9
+ </div>
10
+ <br />
11
+ <a class="button button-primary" target="_blank" href="<?php echo esc_url( WOOCCM_PURCHASE_URL ); ?>"><?php esc_html_e( 'Purchase Now', 'woocommerce-checkout-manager' ); ?></a>
12
+ <a class="button button-secondary" target="_blank" href="<?php echo esc_url( WOOCCM_SUPPORT_URL ); ?>"><?php esc_html_e( 'Get Support', 'woocommerce-checkout-manager' ); ?></a>
13
+ </div>
14
+ <hr />
15
+ <div class="feature-section" style="padding: 10px 0;">
16
+ <h3><?php esc_html_e( 'Add checkout fees', 'woocommerce-checkout-manager' ); ?></h3>
17
+ <p>
18
+ <?php printf( esc_html__( '%s allows you to include fees to each custom or core field. Fees can be fixed or percentage amounts based on checkout total.', 'woocommerce-checkout-manager' ), esc_html( WOOCCM_PLUGIN_NAME ) ); ?>
19
+ </p>
20
+ </div>
21
+ <div class="feature-section" style="padding: 10px 0;">
22
+ <h3><?php esc_html_e( 'Remove account fields', 'woocommerce-checkout-manager' ); ?></h3>
23
+ <p>
24
+ <?php esc_html_e( 'By default all fields attached to the billing or shipping sections are included in the edit address area of the user account page. With the premium version, you can hide the fields on the checkout or my account page.', 'woocommerce-checkout-manager' ); ?>
25
+ </p>
26
+ </div>
27
+ <div class="feature-section" style="padding: 10px 0;">
28
+ <h3><?php esc_html_e( 'Enhance select fields', 'woocommerce-checkout-manager' ); ?></h3>
29
+ <p>
30
+ <?php esc_html_e( 'The enhance options allow you to improve the behavior of the select and multiselect fields with the select2 jquery plugin.', 'woocommerce-checkout-manager' ); ?>
31
+ </p>
32
+ </div>
33
+ </div>
34
+ <div class="column">
35
+ <img src="<?php echo esc_url( plugins_url( '/assets/backend/img/fees.png', WOOCCM_PLUGIN_FILE ) ); ?>">
36
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  </div>
38
+ <hr />
39
+ <div class="has-2-columns" style="max-width: 100%">
40
+ <div class="column">
41
+ <img style="margin-top: -30px" src="<?php echo esc_url( plugins_url( '/assets/backend/img/admin.png', WOOCCM_PLUGIN_FILE ) ); ?>">
42
+ </div>
43
+ <div class="column">
44
+ <div class="feature-section" style="padding: 10px 0;">
45
+ <h3><?php esc_html_e( 'Display on admin list orders', 'woocommerce-checkout-manager' ); ?></h3>
46
+ <p>
47
+ <?php esc_html_e( 'This option allows you to display the fields in the WooCommerce order list.', 'woocommerce-checkout-manager' ); ?>
48
+ </p>
49
+ </div>
50
+ <div class="feature-section" style="padding: 10px 0;">
51
+ <h3><?php esc_html_e( 'Allow sorting on admin list orders', 'woocommerce-checkout-manager' ); ?></h3>
52
+ <p>
53
+ <?php esc_html_e( 'This option allows you to sort the WooCommerce orders list based on the field values.', 'woocommerce-checkout-manager' ); ?>
54
+ </p>
55
+ </div>
56
+ <div class="feature-section" style="padding: 10px 0;">
57
+ <h3><?php esc_html_e( 'Allow filtering on admin list orders', 'woocommerce-checkout-manager' ); ?></h3>
58
+ <p>
59
+ <?php esc_html_e( 'This option allows you to add a search field to filter the options based on the selected values.', 'woocommerce-checkout-manager' ); ?>
60
+ </p>
61
+ </div>
62
+ </div>
63
  </div>
 
64
  </div>
includes/view/backend/pages/shipping.php CHANGED
@@ -1,8 +1,8 @@
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Shipping', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Shipping fields', 'woocommerce-checkout-manager' ); ?></h2>
4
- <div id="<?php printf( 'wooccm_%s_settings-description', $current_section ); ?>">
5
- <p><?php printf( esc_html__( 'Customize and manage the checkout %s fields.', 'woocommerce-checkout-manager' ), $current_section ); ?></p>
6
  </div>
7
  <?php require_once 'parts/actions.php'; ?>
8
  <?php require_once 'parts/loop.php'; ?>
1
  <?php require_once 'parts/tabs.php'; ?>
2
  <h1 class="screen-reader-text"><?php esc_html_e( 'Shipping', 'woocommerce-checkout-manager' ); ?></h1>
3
  <h2><?php esc_html_e( 'Shipping fields', 'woocommerce-checkout-manager' ); ?></h2>
4
+ <div id="<?php printf( 'wooccm_%s_settings-description', esc_attr( $current_section ) ); ?>">
5
+ <p><?php printf( esc_html__( 'Customize and manage the checkout %s fields.', 'woocommerce-checkout-manager' ), esc_attr( $current_section ) ); ?></p>
6
  </div>
7
  <?php require_once 'parts/actions.php'; ?>
8
  <?php require_once 'parts/loop.php'; ?>
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://quadlayers.com/
4
  Tags: woocommerce, woocommerce checkout, field manager, checkout editor, checkout field, shipping field, billing field, order field, additional field
5
  Requires at least: 3.4
6
  Tested up to: 6.0
7
- Stable tag: 5.5.8
8
  WC requires at least: 3.1.0
9
  WC tested up to: 6.5
10
  License: GPLv3
@@ -107,9 +107,11 @@ Your Order data can be reviewed in each order within the default WooCommerce Ord
107
 
108
  == Changelog ==
109
 
 
 
 
110
  = 5.5.8 =
111
  * Fix: Escaping output functions
112
- * Fix: Input number min and max
113
 
114
  = 5.5.7 =
115
  * Fix: WooCommerce upload files checkout
4
  Tags: woocommerce, woocommerce checkout, field manager, checkout editor, checkout field, shipping field, billing field, order field, additional field
5
  Requires at least: 3.4
6
  Tested up to: 6.0
7
+ Stable tag: 5.5.9
8
  WC requires at least: 3.1.0
9
  WC tested up to: 6.5
10
  License: GPLv3
107
 
108
  == Changelog ==
109
 
110
+ = 5.5.9 =
111
+ * Fix: Escaping output functions
112
+
113
  = 5.5.8 =
114
  * Fix: Escaping output functions
 
115
 
116
  = 5.5.7 =
117
  * Fix: WooCommerce upload files checkout
templates/order/order-custom-fields.php CHANGED
@@ -1,27 +1,32 @@
1
- <h2 class="woocommerce-order-details__title"><?php echo ($title = get_option('wooccm_order_custom_fields_title', false)) ? esc_html($title) : esc_html__('Order extra', 'woocommerce-checkout-manager'); ?></h2>
 
 
 
 
 
 
 
 
2
  <table class="woocommerce-table shop_table order_details">
3
- <tbody>
4
- <?php
5
- if (count($checkout = WC()->checkout->get_checkout_fields())) :
6
- foreach ($checkout as $field_type => $fields) :
7
- if (isset(WOOCCM()->$field_type)) :
8
- $defaults = array_column(WOOCCM()->$field_type->get_defaults(), 'key');
9
- foreach ($fields as $key => $field) : ?>
10
- <?php if (!in_array($key, $defaults) && empty($field['hide_order'])) : ?>
11
- <?php if ($value = get_post_meta($order_id, sprintf('_%s', $key), true)) : ?>
12
- <tr id="tr-<?php echo esc_attr($key); ?>">
13
- <th>
14
- <?php echo esc_html($field['label']); ?>
15
- </th>
16
- <td>
17
- <?php echo esc_html($value); ?>
18
- </td>
19
- </tr>
20
- <?php endif; ?>
21
- <?php endif; ?>
22
- <?php endforeach; ?>
23
- <?php endif; ?>
24
- <?php endforeach; ?>
25
- <?php endif; ?>
26
- </tbody>
27
- </table>
1
+ <?php
2
+
3
+ $title = get_option( 'wooccm_order_custom_fields_title', esc_html__( 'Order extra', 'woocommerce-checkout-manager' ) );
4
+
5
+ ?>
6
+
7
+ <h2 class="woocommerce-order-details__title">
8
+ <?php esc_html_e( $title ); ?>
9
+ </h2>
10
  <table class="woocommerce-table shop_table order_details">
11
+ <tbody>
12
+ <?php
13
+ if ( count( $checkout = WC()->checkout->get_checkout_fields() ) ) :
14
+ foreach ( $checkout as $field_type => $fields ) :
15
+ if ( isset( WOOCCM()->$field_type ) ) :
16
+ $defaults = array_column( WOOCCM()->$field_type->get_defaults(), 'key' );
17
+ foreach ( $fields as $key => $field ) :
18
+ ?>
19
+ <?php if ( ! in_array( $key, $defaults ) && empty( $field['hide_order'] ) ) : ?>
20
+ <?php if ( $value = get_post_meta( $order_id, sprintf( '_%s', $key ), true ) ) : ?>
21
+ <tr id="tr-<?php echo esc_attr( $key ); ?>">
22
+ <th><?php echo esc_html( $field['label'] ); ?></th>
23
+ <td><?php echo esc_html( $value ); ?></td>
24
+ </tr>
25
+ <?php endif; ?>
26
+ <?php endif; ?>
27
+ <?php endforeach; ?>
28
+ <?php endif; ?>
29
+ <?php endforeach; ?>
30
+ <?php endif; ?>
31
+ </tbody>
32
+ </table>
 
 
 
templates/order/order-upload-files.php CHANGED
@@ -1,61 +1,68 @@
 
 
 
 
 
 
1
  <div class="wooccm_order_attachments_wrapper">
2
  <h2 class="woocommerce-order-details__title">
3
- <?php echo ($title = get_option('wooccm_order_upload_files_title', false)) ? esc_html($title) : esc_html__('Uploaded files', 'woocommerce-checkout-manager'); ?>
4
  </h2>
5
  <table class="woocommerce_order_items shop_table">
6
  <thead>
7
  <tr>
8
- <th><?php esc_html_e('File', 'woocommerce-checkout-manager'); ?></th>
9
- <th><?php esc_html_e('Filename', 'woocommerce-checkout-manager'); ?></th>
10
- <th><?php esc_html_e('Dimensions', 'woocommerce-checkout-manager'); ?></th>
11
- <th><?php esc_html_e('Extension', ' woocommerce-checkout-manager'); ?></th>
12
- <th class="column-actions"><?php esc_html_e('Actions', 'woocommerce-checkout-manager'); ?></th>
13
  </tr>
14
  </thead>
15
  <tbody class="product_images">
16
  <?php
17
- if (!empty($attachments)) :
18
- foreach ($attachments as $attachment_id) :
19
- $image_attributes = wp_get_attachment_url($attachment_id);
20
- $is_image = wp_attachment_is_image($attachment_id);
21
- $filename = basename($image_attributes);
22
- $wp_filetype = wp_check_filetype($filename);
23
- ?>
24
  <tr class="image">
25
- <td><?php echo wp_get_attachment_link($attachment_id, '', false, false, wp_get_attachment_image($attachment_id, array(75, 75), false)); ?></td>
26
- <td><?php echo wp_get_attachment_link($attachment_id, '', false, false, preg_replace('/\.[^.]+$/', '', $filename)); ?></td>
27
  <td>
28
  <?php
29
- if ($is_image) {
30
- $sizes = wp_get_attachment_image_src($attachment_id);
 
31
 
32
- echo $sizes[1] . 'x' . $sizes[2];
33
  }
34
  ?>
35
  </td>
36
  <td>
37
- <?php echo strtoupper($wp_filetype['ext']); ?>
38
  </td>
39
  <td class="column-actions">
40
- <a class="button wooccm_delete_attachment" data-attachment_id="<?php echo esc_attr($attachment_id); ?>" data-tip="<?php esc_html_e('Delete', 'woocommerce-checkout-manager'); ?>"><?php esc_html_e('Delete', 'woocommerce-checkout-manager'); ?></a>
41
  </td>
42
  </tr>
43
  <?php endforeach; ?>
44
  <?php else : ?>
45
  <tr>
46
- <td colspan="6" style="text-align:left;"><?php esc_html_e('No files have been uploaded to this order.', 'woocommerce-checkout-manager'); ?></td>
47
  </tr>
48
  <?php endif; ?>
49
  </tbody>
50
  </table>
51
- <input type="hidden" id="delete_attachments_ids" name="delete_attachments_ids" value="<?php echo esc_attr(implode(',', $attachments)); ?>" />
52
- <input type="hidden" id="all_attachments_ids" name="all_attachments_ids" value="<?php echo esc_attr(implode(',', $attachments)); ?>" />
53
  <p class="order-upload">
54
  <a style="float: left; margin: 0 10px 0 0;" class="button alt fileinput-button">
55
- <span><?php esc_html_e('Upload Files', 'woocommerce-checkout-manager'); ?></span>
56
- <input data-order_id="<?php echo esc_attr($order->get_id()); ?>" type="file" name="wooccm_order_attachment_upload" id="wooccm_order_attachment_upload" multiple />
57
  </a>
58
- <input type="button" id="wooccm_order_attachment_update" class="button button-secondary" value="<?php esc_html_e('Save Changes', 'woocommerce-checkout-manager'); ?>" disabled="disabled">
59
  <span class="wooccm_upload_results"></span>
60
  </p>
61
- </div>
1
+ <?php
2
+
3
+ $title = get_option( 'wooccm_order_upload_files_title', esc_html__( 'Uploaded files', 'woocommerce-checkout-manager' ) );
4
+
5
+ ?>
6
+
7
  <div class="wooccm_order_attachments_wrapper">
8
  <h2 class="woocommerce-order-details__title">
9
+ <?php esc_html_e( $title ); ?>
10
  </h2>
11
  <table class="woocommerce_order_items shop_table">
12
  <thead>
13
  <tr>
14
+ <th><?php esc_html_e( 'File', 'woocommerce-checkout-manager' ); ?></th>
15
+ <th><?php esc_html_e( 'Filename', 'woocommerce-checkout-manager' ); ?></th>
16
+ <th><?php esc_html_e( 'Dimensions', 'woocommerce-checkout-manager' ); ?></th>
17
+ <th><?php esc_html_e( 'Extension', ' woocommerce-checkout-manager' ); ?></th>
18
+ <th class="column-actions"><?php esc_html_e( 'Actions', 'woocommerce-checkout-manager' ); ?></th>
19
  </tr>
20
  </thead>
21
  <tbody class="product_images">
22
  <?php
23
+ if ( ! empty( $attachments ) ) :
24
+ foreach ( $attachments as $attachment_id ) :
25
+ $image_attributes = wp_get_attachment_url( $attachment_id );
26
+ $is_image = wp_attachment_is_image( $attachment_id );
27
+ $filename = basename( $image_attributes );
28
+ $wp_filetype = wp_check_filetype( $filename );
29
+ ?>
30
  <tr class="image">
31
+ <td><?php echo wp_get_attachment_link( $attachment_id, '', false, false, wp_get_attachment_image( $attachment_id, array( 75, 75 ), false ) ); ?></td>
32
+ <td><?php echo wp_get_attachment_link( $attachment_id, '', false, false, preg_replace( '/\.[^.]+$/', '', $filename ) ); ?></td>
33
  <td>
34
  <?php
35
+ if ( $is_image ) {
36
+
37
+ $sizes = wp_get_attachment_image_src( $attachment_id );
38
 
39
+ echo esc_html( $sizes[1] . 'x' . $sizes[2] );
40
  }
41
  ?>
42
  </td>
43
  <td>
44
+ <?php echo esc_html( strtoupper( $wp_filetype['ext'] ) ); ?>
45
  </td>
46
  <td class="column-actions">
47
+ <a class="button wooccm_delete_attachment" data-attachment_id="<?php echo esc_attr( $attachment_id ); ?>" data-tip="<?php esc_html_e( 'Delete', 'woocommerce-checkout-manager' ); ?>"><?php esc_html_e( 'Delete', 'woocommerce-checkout-manager' ); ?></a>
48
  </td>
49
  </tr>
50
  <?php endforeach; ?>
51
  <?php else : ?>
52
  <tr>
53
+ <td colspan="6" style="text-align:left;"><?php esc_html_e( 'No files have been uploaded to this order.', 'woocommerce-checkout-manager' ); ?></td>
54
  </tr>
55
  <?php endif; ?>
56
  </tbody>
57
  </table>
58
+ <input type="hidden" id="delete_attachments_ids" name="delete_attachments_ids" value="<?php echo esc_attr( implode( ',', $attachments ) ); ?>" />
59
+ <input type="hidden" id="all_attachments_ids" name="all_attachments_ids" value="<?php echo esc_attr( implode( ',', $attachments ) ); ?>" />
60
  <p class="order-upload">
61
  <a style="float: left; margin: 0 10px 0 0;" class="button alt fileinput-button">
62
+ <span><?php esc_html_e( 'Upload Files', 'woocommerce-checkout-manager' ); ?></span>
63
+ <input data-order_id="<?php echo esc_attr( $order->get_id() ); ?>" type="file" name="wooccm_order_attachment_upload" id="wooccm_order_attachment_upload" multiple />
64
  </a>
65
+ <input type="button" id="wooccm_order_attachment_update" class="button button-secondary" value="<?php esc_html_e( 'Save Changes', 'woocommerce-checkout-manager' ); ?>" disabled="disabled">
66
  <span class="wooccm_upload_results"></span>
67
  </p>
68
+ </div>
woocommerce-checkout-manager.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: Checkout Fields Manager for WooCommerce
5
  * Plugin URI: https://quadlayers.com/portfolio/woocommerce-checkout-manager/
6
  * Description: Manages WooCommerce Checkout, the advanced way.
7
- * Version: 5.5.8
8
  * Author: QuadLayers
9
  * Author URI: https://quadlayers.com
10
  * License: GPLv3
@@ -12,61 +12,59 @@
12
  * WC requires at least: 3.1.0
13
  * WC tested up to: 6.5
14
  */
15
- if (!defined('ABSPATH')) {
16
- die('-1');
17
  }
18
 
19
- if (!defined('WOOCCM_PLUGIN_NAME')) {
20
- define('WOOCCM_PLUGIN_NAME', 'Checkout Fields Manager for WooCommerce');
21
  }
22
- if (!defined('WOOCCM_PLUGIN_VERSION')) {
23
- define('WOOCCM_PLUGIN_VERSION', '5.5.8');
24
  }
25
- if (!defined('WOOCCM_PLUGIN_FILE')) {
26
- define('WOOCCM_PLUGIN_FILE', __FILE__);
27
  }
28
- if (!defined('WOOCCM_PLUGIN_DIR')) {
29
- define('WOOCCM_PLUGIN_DIR', __DIR__ . DIRECTORY_SEPARATOR);
30
  }
31
- if (!defined('WOOCCM_PREFIX')) {
32
- define('WOOCCM_PREFIX', 'wooccm');
33
  }
34
- if (!defined('WOOCCM_WORDPRESS_URL')) {
35
- define('WOOCCM_WORDPRESS_URL', 'https://wordpress.org/plugins/woocommerce-checkout-manager/');
36
  }
37
- if (!defined('WOOCCM_REVIEW_URL')) {
38
- define('WOOCCM_REVIEW_URL', 'https://wordpress.org/support/plugin/woocommerce-checkout-manager/reviews/?filter=5#new-post');
39
  }
40
- if (!defined('WOOCCM_DOCUMENTATION_URL')) {
41
- define('WOOCCM_DOCUMENTATION_URL', 'https://quadlayers.com/documentation/woocommerce-checkout-manager/?utm_source=wooccm_admin');
42
  }
43
- if (!defined('WOOCCM_DEMO_URL')) {
44
- define('WOOCCM_DEMO_URL', 'https://quadlayers.com/portfolio/woocommerce-checkout-manager/?utm_source=wooccm_admin');
45
  }
46
- if (!defined('WOOCCM_PURCHASE_URL')) {
47
- define('WOOCCM_PURCHASE_URL', WOOCCM_DEMO_URL);
48
  }
49
- if (!defined('WOOCCM_SUPPORT_URL')) {
50
- define('WOOCCM_SUPPORT_URL', 'https://quadlayers.com/account/support/?utm_source=wooccm_admin');
51
  }
52
- if (!defined('WOOCCM_GROUP_URL')) {
53
- define('WOOCCM_GROUP_URL', 'https://www.facebook.com/groups/quadlayers');
54
  }
55
- if (!defined('WOOCCM_DEVELOPER')) {
56
- define('WOOCCM_DEVELOPER', false);
57
  }
58
 
59
- if (!class_exists('WOOCCM', false)) {
60
  include_once WOOCCM_PLUGIN_DIR . 'includes/class-wooccm.php';
61
  }
62
 
63
- if (!class_exists('QL_Widget')) {
64
  include_once WOOCCM_PLUGIN_DIR . 'includes/quadlayers/widget.php';
65
  }
66
 
67
- function WOOCCM()
68
- {
69
- // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionNameInvalid
70
  return WOOCCM::instance();
71
  }
72
 
4
  * Plugin Name: Checkout Fields Manager for WooCommerce
5
  * Plugin URI: https://quadlayers.com/portfolio/woocommerce-checkout-manager/
6
  * Description: Manages WooCommerce Checkout, the advanced way.
7
+ * Version: 5.5.9
8
  * Author: QuadLayers
9
  * Author URI: https://quadlayers.com
10
  * License: GPLv3
12
  * WC requires at least: 3.1.0
13
  * WC tested up to: 6.5
14
  */
15
+ if ( ! defined( 'ABSPATH' ) ) {
16
+ die( '-1' );
17
  }
18
 
19
+ if ( ! defined( 'WOOCCM_PLUGIN_NAME' ) ) {
20
+ define( 'WOOCCM_PLUGIN_NAME', 'Checkout Fields Manager for WooCommerce' );
21
  }
22
+ if ( ! defined( 'WOOCCM_PLUGIN_VERSION' ) ) {
23
+ define( 'WOOCCM_PLUGIN_VERSION', '5.5.9' );
24
  }
25
+ if ( ! defined( 'WOOCCM_PLUGIN_FILE' ) ) {
26
+ define( 'WOOCCM_PLUGIN_FILE', __FILE__ );
27
  }
28
+ if ( ! defined( 'WOOCCM_PLUGIN_DIR' ) ) {
29
+ define( 'WOOCCM_PLUGIN_DIR', __DIR__ . DIRECTORY_SEPARATOR );
30
  }
31
+ if ( ! defined( 'WOOCCM_PREFIX' ) ) {
32
+ define( 'WOOCCM_PREFIX', 'wooccm' );
33
  }
34
+ if ( ! defined( 'WOOCCM_WORDPRESS_URL' ) ) {
35
+ define( 'WOOCCM_WORDPRESS_URL', 'https://wordpress.org/plugins/woocommerce-checkout-manager/' );
36
  }
37
+ if ( ! defined( 'WOOCCM_REVIEW_URL' ) ) {
38
+ define( 'WOOCCM_REVIEW_URL', 'https://wordpress.org/support/plugin/woocommerce-checkout-manager/reviews/?filter=5#new-post' );
39
  }
40
+ if ( ! defined( 'WOOCCM_DOCUMENTATION_URL' ) ) {
41
+ define( 'WOOCCM_DOCUMENTATION_URL', 'https://quadlayers.com/documentation/woocommerce-checkout-manager/?utm_source=wooccm_admin' );
42
  }
43
+ if ( ! defined( 'WOOCCM_DEMO_URL' ) ) {
44
+ define( 'WOOCCM_DEMO_URL', 'https://quadlayers.com/portfolio/woocommerce-checkout-manager/?utm_source=wooccm_admin' );
45
  }
46
+ if ( ! defined( 'WOOCCM_PURCHASE_URL' ) ) {
47
+ define( 'WOOCCM_PURCHASE_URL', WOOCCM_DEMO_URL );
48
  }
49
+ if ( ! defined( 'WOOCCM_SUPPORT_URL' ) ) {
50
+ define( 'WOOCCM_SUPPORT_URL', 'https://quadlayers.com/account/support/?utm_source=wooccm_admin' );
51
  }
52
+ if ( ! defined( 'WOOCCM_GROUP_URL' ) ) {
53
+ define( 'WOOCCM_GROUP_URL', 'https://www.facebook.com/groups/quadlayers' );
54
  }
55
+ if ( ! defined( 'WOOCCM_DEVELOPER' ) ) {
56
+ define( 'WOOCCM_DEVELOPER', false );
57
  }
58
 
59
+ if ( ! class_exists( 'WOOCCM', false ) ) {
60
  include_once WOOCCM_PLUGIN_DIR . 'includes/class-wooccm.php';
61
  }
62
 
63
+ if ( ! class_exists( 'QL_Widget' ) ) {
64
  include_once WOOCCM_PLUGIN_DIR . 'includes/quadlayers/widget.php';
65
  }
66
 
67
+ function WOOCCM() { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionNameInvalid
 
 
68
  return WOOCCM::instance();
69
  }
70