PK\*includes/exporter.phpnuW+A

'' ) ); ?>

PK\33JJ$includes/admin/cartflows-general.phpnuW+A

'wcf_disallow_indexing', 'name' => '_cartflows_common[disallow_indexing]', 'title' => __( 'Disallow search engines from indexing flows', 'cartflows' ), 'value' => $settings['disallow_indexing'], ) ); if ( wcf()->is_woo_active ) { echo Cartflows_Admin_Fields::flow_checkout_selection_field( array( 'id' => 'wcf_global_checkout', 'name' => '_cartflows_common[global_checkout]', 'title' => __( 'Global Checkout', 'cartflows' ), 'value' => $settings['global_checkout'], ) ); } echo Cartflows_Admin_Fields::select_field( array( 'id' => 'wcf_default_page_builder', 'name' => '_cartflows_common[default_page_builder]', 'title' => __( 'Show Templates designed with', 'cartflows' ), 'description' => __( 'CartFlows offers flow templates that can be imported in one click. These templates are available in few different page builders. Please choose your preferred page builder from the list so you will only see templates that are made using that page builder..', 'cartflows' ), 'value' => $settings['default_page_builder'], 'options' => array( 'elementor' => __( 'Elementor', 'cartflows' ), 'beaver-builder' => __( 'Beaver Builder', 'cartflows' ), 'divi' => __( 'Divi', 'cartflows' ), 'other' => __( 'Other', 'cartflows' ), ), ) ); do_action( 'cartflows_after_settings_fields', $settings ); ?>

'wcf_facebook_pixel_tracking', 'name' => '_cartflows_facebook[facebook_pixel_tracking]', 'title' => __( 'Enable Facebook Pixel Tracking', 'cartflows' ), 'value' => $facebook_settings['facebook_pixel_tracking'], ) ); echo "
"; ?>
'wcf_facebook_pixel_tracking_for_site', 'name' => '_cartflows_facebook[facebook_pixel_tracking_for_site]', 'title' => __( 'Enable for the whole site', 'cartflows' ), 'value' => $facebook_settings['facebook_pixel_tracking_for_site'], ) ); echo Cartflows_Admin_Fields::title_field( array( 'title' => '', 'description' => __( 'If this option is unchecked, it will only apply to CartFlows steps.', 'cartflows' ), ) ); ?>
'wcf_facebook_pixel_id', 'name' => '_cartflows_facebook[facebook_pixel_id]', 'title' => __( 'Enter Facebook pixel ID', 'cartflows' ), 'value' => $facebook_settings['facebook_pixel_id'], ) ); echo Cartflows_Admin_Fields::title_field( array( 'title' => __( 'Enable Events:', 'cartflows' ), ) ); echo Cartflows_Admin_Fields::checkobox_field( array( 'id' => 'wcf_facebook_pixel_initiate_checkout', 'name' => '_cartflows_facebook[facebook_pixel_initiate_checkout]', 'title' => __( 'Initiate Checkout', 'cartflows' ), 'value' => $facebook_settings['facebook_pixel_initiate_checkout'], ) ); echo Cartflows_Admin_Fields::checkobox_field( array( 'id' => 'wcf_facebook_pixel_add_payment_info', 'name' => '_cartflows_facebook[facebook_pixel_add_payment_info]', 'title' => __( 'Add Payment Info', 'cartflows' ), 'value' => $facebook_settings['facebook_pixel_add_payment_info'], ) ); echo Cartflows_Admin_Fields::checkobox_field( array( 'id' => 'wcf_facebook_pixel_purchase_complete', 'name' => '_cartflows_facebook[facebook_pixel_purchase_complete]', 'title' => __( 'Purchase Complete', 'cartflows' ), 'value' => $facebook_settings['facebook_pixel_purchase_complete'], ) ); echo '
'; ?>

'enable_google-analytics-id', 'name' => '_cartflows_google_analytics[enable_google_analytics]', 'title' => __( 'Enable Google Analytics Tracking', 'cartflows' ), 'value' => $google_analytics_settings['enable_google_analytics'], ) ); echo "
"; ?>
'enable_google_analytics_for_site', 'name' => '_cartflows_google_analytics[enable_google_analytics_for_site]', 'title' => __( 'Enable for the whole website', 'cartflows' ), 'value' => $google_analytics_settings['enable_google_analytics_for_site'], ) ); echo Cartflows_Admin_Fields::title_field( array( 'title' => '', 'description' => __( 'If this option is unchecked, it will only apply to CartFlows steps.', 'cartflows' ), ) ); ?>
'google-analytics-id', 'name' => '_cartflows_google_analytics[google_analytics_id]', 'title' => __( 'Google Analytics ID', 'cartflows' ), 'value' => $google_analytics_settings['google_analytics_id'], 'description' => __( 'Log into your google analytics account to find your ID. eg: UA-XXXXXX-X.', 'cartflows' ), ) ); echo Cartflows_Admin_Fields::title_field( array( 'title' => __( 'Enable Events:', 'cartflows' ), ) ); echo Cartflows_Admin_Fields::checkobox_field( array( 'id' => 'enable_begin_checkout', 'name' => '_cartflows_google_analytics[enable_begin_checkout]', 'title' => __( 'Begin Checkout', 'cartflows' ), 'value' => $google_analytics_settings['enable_begin_checkout'], ) ); echo Cartflows_Admin_Fields::checkobox_field( array( 'id' => 'enable_add_to_cart', 'name' => '_cartflows_google_analytics[enable_add_to_cart]', 'title' => __( 'Add To Cart', 'cartflows' ), 'value' => $google_analytics_settings['enable_add_to_cart'], ) ); echo Cartflows_Admin_Fields::checkobox_field( array( 'id' => 'enable_add_payment_info', 'name' => '_cartflows_google_analytics[enable_add_payment_info]', 'title' => __( 'Add Payment Info', 'cartflows' ), 'value' => $google_analytics_settings['enable_add_payment_info'], ) ); echo Cartflows_Admin_Fields::checkobox_field( array( 'id' => 'enable_purchase_event', 'name' => '_cartflows_google_analytics[enable_purchase_event]', 'title' => __( 'Purchase', 'cartflows' ), 'value' => $google_analytics_settings['enable_purchase_event'], ) ); echo Cartflows_Admin_Fields::title_field( array( 'title' => '', 'description' => __( 'Google Analytics not working correctly? Click here to know more. ', 'cartflows' ), ) ); do_action( 'cartflows_google_analytics_admin_fields', $google_analytics_settings ); echo '
'; ?>

'allow_minified_files', 'name' => '_cartflows_debug_data[allow_minified_files]', 'title' => __( 'Load minified CSS & JS Files', 'cartflows' ), 'value' => $debug_data['allow_minified_files'], ) ); ?>

PK\琨Y%%"includes/admin/cartflows-admin.phpnuW+A

PK\g&includes/admin/cartflows-error-log.phpnuW+A

PK\$>3{{(includes/admin/cartflows-general-bck.phpnuW+A array( 'title' => __( 'Selec', 'cartflows' ), 'setting_url' => admin_url( 'admin.php?page=' . CARTFLOWS_SETTINGS . '&action=common-settings' ), ), ); ?>


PK\ includes/importer.phpnuW+A

'' ) ); ?>

PK\܎r *woocommerce/template/global/form-login.phpnuW+A
>

PK\1+woocommerce/template/cart/cart-shipping.phpnuW+Acountries->get_formatted_address( $package['destination'], ', ' ); $has_calculated_shipping = ! empty( $has_calculated_shipping ); $show_shipping_calculator = ! empty( $show_shipping_calculator ); $calculator_text = ''; ?>

' . esc_html( $formatted_destination ) . '' ); $calculator_text = __( 'Change address', 'woocommerce' ); } else { echo esc_html__( 'This is only an estimate. Prices will be updated during checkout.', 'woocommerce' ); } ?>

' . esc_html( $formatted_destination ) . '' ) ) ); $calculator_text = __( 'Enter a different address', 'woocommerce' ); endif; ?> ' . esc_html( $package_details ) . '

'; ?> PK\pv-woocommerce/template/checkout/form-coupon.phpnuW+A
' . __( 'Click here to enter your code', 'woocommerce' ) . '' ), 'notice' ); ?>
PK\]< < )woocommerce/template/checkout/payment.phpnuW+A
cart->needs_payment() ) : ?>
' . esc_html( $order_button_text ) . '' ); // @codingStandardsIgnoreLine ?>
has_status( 'failed' ) ) : ?>

get_payment_method(), $order->get_id() ); ?> get_id() ); ?>

PK\fGG0woocommerce/template/checkout/payment-method.phpnuW+A
  • chosen, true ); ?> data-order_button_text="order_button_text ); ?>" /> has_fields() || $gateway->get_description() ) : ?>
    chosen ) : /* phpcs:ignore Squiz.ControlStructures.ControlSignature.NewlineAfterOpenBrace */ ?>style="display:none;"> payment_fields(); ?>
  • PK\{a /woocommerce/template/checkout/form-shipping.phpnuW+A
    cart->needs_shipping_address() ) : ?>

    get_checkout_fields( 'shipping' ); foreach ( $fields as $key => $field ) { woocommerce_form_field( $key, $field, $checkout->get_value( $key ) ); } ?>
    cart->needs_shipping() || wc_ship_to_billing_address_only() ) : ?>

    get_checkout_fields( 'order' ) as $key => $field ) : ?> get_value( $key ) ); ?>
    PK\/woocommerce/template/checkout/form-checkout.phpnuW+Ais_registration_enabled() && $checkout->is_registration_required() && ! is_user_logged_in() ) { echo esc_html( apply_filters( 'woocommerce_checkout_must_be_logged_in_message', __( 'You must be logged in to checkout.', 'woocommerce' ) ) ); return; } ?>
    get_checkout_fields() ) : ?>

    PK\@:UU.woocommerce/template/checkout/review-order.phpnuW+A cart->get_cart() as $cart_item_key => $cart_item ) { $_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key ); if ( $_product && $_product->exists() && $cart_item['quantity'] > 0 && apply_filters( 'woocommerce_checkout_cart_item_visible', true, $cart_item, $cart_item_key ) ) { ?> cart->get_coupons() as $code => $coupon ) : ?> cart->needs_shipping() && WC()->cart->show_shipping() ) : ?> cart->get_fees() as $fee ) : ?> cart->display_prices_including_tax() ) : ?> cart->get_tax_totals() as $code => $tax ) : ?>
    get_name(), $cart_item, $cart_item_key ) . ' '; ?> ' . sprintf( '× %s', $cart_item['quantity'] ) . '', $cart_item, $cart_item_key ); ?> cart->get_product_subtotal( $_product, $cart_item['quantity'] ), $cart_item, $cart_item_key ); ?>
    name ); ?>
    label ); ?> formatted_amount ); ?>
    countries->tax_or_vat() ); ?>
    PK\ .woocommerce/template/checkout/form-billing.phpnuW+A
    cart->needs_shipping() ) : ?>

    get_checkout_fields( 'billing' ); foreach ( $fields as $key => $field ) { if ( isset( $field['country_field'], $fields[ $field['country_field'] ] ) ) { $field['country'] = $checkout->get_value( $field['country_field'] ); } woocommerce_form_field( $key, $field, $checkout->get_value( $key ) ); } ?>
    is_registration_enabled() ) : ?>
    is_registration_required() ) : ?>

    get_checkout_fields( 'account' ) ) : ?>
    get_checkout_fields( 'account' ) as $key => $field ) : ?> get_value( $key ) ); ?>
    PK\5qq,woocommerce/template/checkout/form-login.phpnuW+A
    ' . __( 'Click here to login', 'woocommerce' ) . '', 'notice' ); ?>
    __( 'If you have shopped with us before, please enter your details below. If you are a new customer, please proceed to the Billing & Shipping section.', 'cartflows' ), 'redirect' => wc_get_page_permalink( 'checkout' ), 'hidden' => true, ) ); PK\IC'woocommerce/template/notices/notice.phpnuW+A
    PK\1U(woocommerce/template/notices/success.phpnuW+A PK\Mx@9&woocommerce/template/notices/error.phpnuW+A PK\I=I=I"admin/meta-assets/js/admin-edit.jsnuW+A(function($){ CartFlowsAdminEdit = { /** * Init */ init: function() { this._bind(); this._set_font_weigths(); }, /** * Binds events */ _bind: function() { $( document ).on('change', '.wcf-field-font-family', CartFlowsAdminEdit._set_font_weight_select_options ); $( document ).on('change', '.wcf-field-font-weight', CartFlowsAdminEdit._set_font_weight_val ); }, _set_font_weight_val: function(event) { event.preventDefault(); $(this).attr( 'data-selected', $(this).val() ); CartFlowsAdminEdit._set_google_url(); }, _set_font_weigths: function() { if ( 'function' !== typeof $('.wcf-field-font-family').select2 ){ return; } $('.wcf-field-font-family').select2(); var google_url = ''; var google_font_families = {}; $('.wcf-field-font-family').each(function(index, el) { var font_family = $(el).val(); var id = $(el).data('for'); var temp = font_family.match("'(.*)'"); if( temp && temp[1] ) { font_family = temp[1]; } var new_font_weights = {}; if( wcf.google_fonts[ font_family ] ) { var variants = wcf.google_fonts[ font_family ][0]; $.each( variants, function(index, weight) { if( ! weight.includes( 'italic' ) ) { new_font_weights[ weight ] = wcf.font_weights[ weight ]; } }); var weight = $( '.wcf-field-font-weight[data-for="'+id+'"]' ); if( weight.length ) { weight.empty(); // remove old options var current_selected = weight.attr('data-selected'); var selected = ""; $.each(new_font_weights, function(key,value) { if( key == current_selected ) { var selected = "selected='selected'"; } weight.append($("").attr("value", key).text(value)); }); } temp_font_family = font_family.replace(' ', '+'); google_font_families[ temp_font_family ] = new_font_weights; } else if( wcf.system_fonts[ font_family ] ) { var variants = wcf.system_fonts[ font_family ]['variants']; $.each( variants, function(index, weight) { if( ! weight.includes( 'italic' ) ) { new_font_weights[ weight ] = wcf.font_weights[ weight ]; } }); var weight = $( '.wcf-field-font-weight[data-for="'+id+'"]' ); if( weight.length ) { var current_selected = weight.attr('data-selected'); weight.empty(); // remove old options var selected = ""; $.each(new_font_weights, function(key,value) { if( key == current_selected ) { var selected = "selected='selected'"; } else { } weight.append($("").attr("value", key).text(value)); }); } } }); CartFlowsAdminEdit._set_google_url(); }, _set_google_url: function() { var google_url = ''; $('.wcf-field-font-family').each(function(index, el) { var font_family = $(el).val(); var id = $(el).data('for'); var temp = font_family.match("'(.*)'"); if( temp && temp[1] ) { font_family = temp[1]; } if( ( 'inherit' != font_family ) && ( 'Helvetica' !== font_family ) && ( 'Verdana' !== font_family ) && ( 'Arial' !== font_family ) && ( 'Times' !== font_family ) && ( 'Georgia' !== font_family ) && ( 'Courier' !== font_family ) ) { font_family = font_family.replace(' ', '+'); var weight = $( '.wcf-field-font-weight[data-for="'+id+'"]' ); var font_weight = weight.val(); if( typeof font_weight == 'undefined' && id == 'wcf-base' ){ font_weight = ''; } var bar = '', colon = ''; if( google_url ) { if( font_weight != ''){ bar = '|'; colon = ':'; } google_url = google_url + bar + font_family + colon + font_weight; } else { google_url = font_family; } } }); $('#wcf-field-google-font-url').val( '//fonts.googleapis.com/css?family=' + google_url ); }, _set_font_weight_select_options: function(event) { event.preventDefault(); CartFlowsAdminEdit._set_font_weigths(); } }; /** * Initialization */ $(function(){ CartFlowsAdminEdit.init(); }); })(jQuery); (function($){ if ( typeof getEnhancedSelectFormatString == "undefined" ) { function getEnhancedSelectFormatString() { var formatString = { noResults: function() { return wc_enhanced_select_params.i18n_no_matches; }, errorLoading: function() { return wc_enhanced_select_params.i18n_ajax_error; }, inputTooShort: function( args ) { var remainingChars = args.minimum - args.input.length; if ( 1 === remainingChars ) { return wc_enhanced_select_params.i18n_input_too_short_1; } return wc_enhanced_select_params.i18n_input_too_short_n.replace( '%qty%', remainingChars ); }, inputTooLong: function( args ) { var overChars = args.input.length - args.maximum; if ( 1 === overChars ) { return wc_enhanced_select_params.i18n_input_too_long_1; } return wc_enhanced_select_params.i18n_input_too_long_n.replace( '%qty%', overChars ); }, maximumSelected: function( args ) { if ( args.maximum === 1 ) { return wc_enhanced_select_params.i18n_selection_too_long_1; } return wc_enhanced_select_params.i18n_selection_too_long_n.replace( '%qty%', args.maximum ); }, loadingMore: function() { return wc_enhanced_select_params.i18n_load_more; }, searching: function() { return wc_enhanced_select_params.i18n_searching; } }; var language = { 'language' : formatString }; return language; } } var wcf_init_color_fields = function() { // Call color picker $('.wcf-color-picker').wpColorPicker(); } var wcf_woo_product_search_init = function() { var $product_search = $('.wcf-product-search:not(.wc-product-search)'); if( $product_search.length > 0 ) { $product_search.addClass('wc-product-search'); $(document.body).trigger('wc-enhanced-select-init'); } } var wcf_woo_coupon_search_init = function() { $( ':input.wc-coupon-search' ).filter( ':not(.enhanced)' ).each( function() { var select2_args = { allowClear: $( this ).data( 'allow_clear' ) ? true : false, placeholder: $( this ).data( 'placeholder' ), minimumInputLength: $( this ).data( 'minimum_input_length' ) ? $( this ).data( 'minimum_input_length' ) : '3', escapeMarkup: function( m ) { return m; }, ajax: { url: wc_enhanced_select_params.ajax_url, dataType: 'json', quietMillis: 250, data: function( params, page ) { return { term: params.term, action: $( this ).data( 'action' ) || 'wcf_json_search_coupons', security: cartflows_admin.wcf_json_search_coupons_nonce }; }, processResults: function( data, page ) { var terms = []; if ( data ) { $.each( data, function( id, text ) { terms.push( { id: id, text: text } ); }); } return { results: terms }; }, cache: true } }; select2_args = $.extend( select2_args, getEnhancedSelectFormatString() ); $( this ).select2( select2_args ).addClass( 'enhanced' ); }); }; var wcf_pages_search_init = function() { $( 'select.wcf-search-pages' ).each( function() { var select2_args = { allowClear: $( this ).data( 'allow_clear' ) ? true : false, placeholder: $( this ).data( 'placeholder' ) ? $( this ).data( 'placeholder' ): '', minimumInputLength: $( this ).data( 'minimum_input_length' ) ? $( this ).data( 'minimum_input_length' ) : '3', escapeMarkup: function( m ) { return m; }, ajax: { url: wc_enhanced_select_params.ajax_url, dataType: 'json', quietMillis: 250, data: function( params, page ) { return { term: params.term, action: $( this ).data( 'action' ) || 'wcf_json_search_pages', security: cartflows_admin.wcf_json_search_pages_nonce }; }, processResults: function( data, page ) { return { results: data }; }, cache: true } }; select2_args = $.extend( select2_args, getEnhancedSelectFormatString() ); $( this ).select2( select2_args ).addClass( 'enhanced' ); }); }; var wcf_add_repeatable_product = function() { $('.wcf-add-repeatable').on('click', function(e) { var $this = $(this), field_name = $this.data('name'), wrap = $this.closest('.wcf-repeatables-wrap'), template = $('#tmpl-wcf-product-repeater').html(), highest = 0, new_key = 0; wrap.find('.wcf-repeatable-row').each(function(er) { var r_row = $(this), key = r_row.data('key'); if ( key > highest ) { highest = key; } }); new_key = highest + 1; template = template.replace( /{{id}}/g, new_key ); $( template ).insertBefore( ".wcf-add-repeatable-row" ); /* Woo Product Search */ wcf_woo_product_search_init(); e.preventDefault(); }); } var wcf_remove_repeatable_product = function() { $(document).on( 'click', '.wcf-repeatable-remove', function(e) { var $this = $(this), deletable_row = $this.closest('.wcf-repeatable-row'), wrap = $this.closest('.wcf-repeatables-wrap'); var all_rows = wrap.find('.wcf-repeatable-row'); if ( all_rows.length === 1 ) { alert("You cannot remove this product."); }else{ deletable_row.remove(); } } ); } /* Simple Quantity */ var wcf_set_variation_mode_option = function() { $('.wcf-variation-mode select').each(function(e) { var $this = $(this), variation_mode = $this.val(), wrap = $this.closest('.wcf-repeatable-row-standard-fields'), quantity_data = wrap.find('.wcf-quantity-data'); if ( 'simple-quantity' === variation_mode ) { quantity_data.show(); }else{ quantity_data.hide(); } }); $(document).on( 'change', '.wcf-variation-mode select', function(e) { var $this = $(this), variation_mode = $this.val(), wrap = $this.closest('.wcf-repeatable-row-standard-fields'), quantity_data = wrap.find('.wcf-quantity-data'); if ( 'simple-quantity' === variation_mode ) { quantity_data.show(); }else{ quantity_data.hide(); } }); } var wcf_add_quantity_data = function() { $(document).on('click', '.wcf-quantity-add-option', function(e) { e.preventDefault(); var $this = $(this), wrap = $this.closest('.wcf-quantity-data'), template = $('#tmpl-wcf-product-simple-quantity').html(), highest = 0, new_key = 0, main_wrap = $this.closest('.wcf-repeatable-row'), main_key = main_wrap.data('key'); wrap.find('.wcf-quantity-repeatable-row').each(function(er) { var r_row = $(this), key = r_row.data('key'); if ( key > highest ) { highest = key; } }); new_key = highest + 1; template = template.replace( /{{id}}/g, main_key ); template = template.replace( /{{data_id}}/g, new_key ); $( template ).insertAfter( wrap.find('.wcf-quantity-repeatable-row').last() ); }); } var wcf_remove_quantity_data = function() { $(document).on( 'click', '.wcf-quanity-remove', function(e) { var $this = $(this), deletable_row = $this.closest('.wcf-quantity-repeatable-row'), wrap = $this.closest('.wcf-quantity-data'); var all_rows = wrap.find('.wcf-quantity-repeatable-row'); if ( all_rows.length === 1 ) { alert("You cannot remove this product."); }else{ deletable_row.remove(); } } ); } /* Custom Fields Hide / Show */ var wcf_custom_fields_events = function() { /* Ready */ wcf_custom_fields(); /* Change Custom Field*/ $('.wcf-column-right .wcf-checkout-custom-fields .wcf-cc-fields .wcf-cc-checkbox-field input:checkbox').on('change', function(e) { wcf_custom_fields(); }); } /* Disable/Enable Custom Field section*/ var wcf_custom_fields = function() { var wrap = $('.wcf-checkout-table'), custom_fields = wrap.find('.wcf-column-right .wcf-checkout-custom-fields .wcf-cc-fields .wcf-cc-checkbox-field .field-wcf-custom-checkout-fields input:checkbox'); var field_names = [ '.wcf-custom-field-box', '.wcf-cb-fields', '.wcf-sb-fields', ]; if ( custom_fields.is(":checked") ) { $.each( field_names, function(i, val) { wrap.find( val ).show(); }) } else { $.each( field_names, function(i, val) { wrap.find( val ).hide(); }); } } /* Advance Style Fields Hide / Show */ var wcf_advance_style_fields_events = function() { /* Ready */ wcf_advance_style_fields(); wcf_thankyou_advance_style_fields(); wcf_thankyou_settings_fields(); /* Change Advance Style Field*/ $('.wcf-column-right .wcf-checkout-style .wcf-cs-fields .wcf-cs-checkbox-field input:checkbox').on('change', function(e) { wcf_advance_style_fields(); }); /* Change Advance Style Field*/ $('.wcf-thankyou-table [name="wcf-tq-advance-options-fields"]').on('change', function(e) { wcf_thankyou_advance_style_fields(); }); $('.wcf-thankyou-table [name="wcf-show-tq-redirect-section"]').on('change', function(e) { wcf_thankyou_settings_fields(); }); } var wcf_thankyou_advance_style_fields = function() { var wrap = $('.wcf-thankyou-table'), checkbox_field = $('.wcf-thankyou-table [name="wcf-tq-advance-options-fields"]'); var field_names = [ '.field-wcf-tq-container-width', '.field-wcf-tq-section-bg-color' ]; if ( checkbox_field.is(":checked") ) { $.each( field_names, function(i, val) { wrap.find( val ).show(); }) } else { $.each( field_names, function(i, val) { wrap.find( val ).hide(); }); } } var wcf_thankyou_settings_fields = function() { var wrap = $('.wcf-thankyou-table'), checkbox_field = $('.wcf-thankyou-table [name="wcf-show-tq-redirect-section"]'); var field_names = [ '.field-wcf-tq-redirect-link' ]; if ( checkbox_field.is(":checked") ) { $.each( field_names, function(i, val) { wrap.find( val ).show(); }) } else { $.each( field_names, function(i, val) { wrap.find( val ).hide(); }); } } /* Disable/Enable Advance Style Field section*/ var wcf_advance_style_fields = function() { var wrap = $('.wcf-checkout-table'), custom_fields = wrap.find('.wcf-column-right .wcf-checkout-style .wcf-cs-fields .wcf-cs-checkbox-field input:checkbox'); var field_names = [ '.wcf-cs-fields-options', '.wcf-cs-button-options', '.wcf-cs-section-options', ]; // console.log(custom_fields); if ( custom_fields.is(":checked") ) { $.each( field_names, function(i, val) { wrap.find( val ).show(); }) } else { $.each( field_names, function(i, val) { wrap.find( val ).hide(); }); } } var wcf_settings_tab = function() { if( $('.wcf-tab.active').length ) { $active_tab = $('.wcf-tab.active'); $active_tab_markup = '.' + $active_tab.data('tab'); if( $( $active_tab_markup ).length ) { $( $active_tab_markup ).siblings().removeClass('active'); $( $active_tab_markup ).addClass('active'); } } $('.wcf-tab').on('click', function(e) { e.preventDefault(); $this = $(this), tab_class = $this.data('tab'); $('#wcf-active-tab').val( tab_class ); $this.siblings().removeClass('wp-ui-text-highlight active'); $this.addClass('wp-ui-text-highlight active'); if( $( '.' + tab_class ).length ) { $( '.' + tab_class ).siblings().removeClass('active'); $( '.' + tab_class ).addClass('active'); } }); } var wcf_input_file_init = function() { var file_frame; window.inputWrapper = ''; $( document.body ).on('click', '.wcf-select-image', function(e) { e.preventDefault(); var button = $(this); window.inputWrapper = $(this).closest('.wcf-field-row'); if ( file_frame ) { file_frame.open(); return; } // Create the media frame. file_frame = wp.media( { multiple: false } ); // When an image is selected, run a callback. file_frame.on( 'select', function() { var attachment = file_frame.state().get( 'selection' ).first().toJSON(); // place first attachment in field window.inputWrapper.find( '#wcf-image-preview' ).show(); window.inputWrapper.find( '#wcf-image-preview' ).children('.saved-image').remove(); window.inputWrapper.find( '#wcf-image-preview' ).append(''); window.inputWrapper.find( '.wcf-image' ).val( attachment.url ); //image obj. var size = Object.keys(attachment).length; if(size > 0){ window.inputWrapper.find( '.wcf-image-obj' ).val( JSON.stringify(attachment) ); } window.inputWrapper.find('.wcf-remove-image').show(); }); // Finally, open the modal file_frame.open(); }); $( '.wcf-remove-image' ).on( 'click', function( e ) { e.preventDefault(); var button = $(this), closeRow = $(this).closest('.wcf-field-row'); closeRow.find( '#wcf-image-preview img' ).hide(); closeRow.find( '.wcf-image-id' ).val(''); closeRow.find( '.wcf-image' ).val(''); closeRow.find('.wcf-image-obj').val(''); button.hide(); }); } $(document).ready(function($) { wcf_settings_tab(); wcf_init_color_fields(); /* Woo Product Search */ wcf_woo_product_search_init(); /* Woo Coupon Search */ wcf_woo_coupon_search_init(); /* Pages Search */ wcf_pages_search_init(); /* Select Image Field */ wcf_input_file_init(); /* Set Variation Mode Data */ wcf_set_variation_mode_option(); /* Repeateble Product */ wcf_add_repeatable_product(); /* Custom Fields Show Hide */ wcf_custom_fields_events(); /* Remove Repeatable Product */ wcf_remove_repeatable_product(); /* Advance Style Fields Show Hide */ wcf_advance_style_fields_events(); /* Quantity Data */ wcf_add_quantity_data(); wcf_remove_quantity_data(); }); })(jQuery); PK\%n$admin/meta-assets/css/admin-edit.cssnuW+A/* Settings Tab */ .wcf-tab { display: inline-block; padding: 10px; background: #eee; margin-right: 7px; cursor: pointer; } .wcf-tab.active { background: #5a5a5a; /*color: white;*/ } .wcf-tab-wrapper { margin: 15px 0; } .wcf-tab-content { display: none; } .wcf-tab-content.active { display: block; } /* Tab Footer */ .wcf-update-step { float: right; } .wcf-back-to-flow-edit .dashicons { vertical-align: sub; font-size: 1rem; } .wcf-column-right-footer { padding: 10px 20px; border-left: 1px #ddd solid; border-top: 1px #ddd solid; background: #fafafa; } /* Settings Tab End */ .wcf-variation-mode { display: none; } td.wcf-field-section-heading { font-size: 16px; font-weight: 700; text-decoration: underline; } .field-wcf-shortcode input { width: 50%; display: inline-block; } .wcf-field-row-heading { width: 30%; } .wcf-field-row-content { width: 70%; } /* Select2 */ .wcf-field-row .wcf-target-product-select2 { width: 50%; height: 28px !important; } .wcf-field-row .wcf-product-search, .wcf-field-row .wcf-coupon-search, .wcf-field-row .wcf-search-pages { width: 100%; height: 28px !important; } body span.select2.select2-container.select2-container--default { width: 350px; max-width: 100% !important; margin-top: 0; } body li.select2-results__option.select2-results__message { background: #ecebeb; margin-bottom: 0; } /* Repeater Product Field */ .wcf-product-repeater-field-row .wcf-field-row-content { width: 100% !important; } .wcf-product-repeater-field-row .wcf-field-row-content { width: 100%; } .wcf-repeatable-row { background: #f9f9f9; border: 1px solid #e5e5e5; margin-bottom: 5px; } .wcf-repeatable-row-header { background: #f1f1f1; border-bottom: 1px solid #e5e5e5; padding: 8px; } .wcf-repeatable-row-standard-fields { padding: 8px; } .wcf-repeatable-row-actions { float: right; } .wcf-repeatable-row-setting-label, .wcf-repeatable-row-setting-field { display: inline-block; } /*.wcf-repeatable-row-setting-label { width: 25%; } .wcf-repeatable-row-setting-field { width: 75%; }*/ .wcf-repeatable-fields { margin-bottom: 10px; } .wcf-add-repeatable-wrap { float: none !important; clear: both; background: #fff !important; padding: 4px 4px 0 0 !important; } .wcf-add-repeatable-wrap button.button-primary { margin: 0 8px 0 0; } .wcf-repeatable-remove { cursor: pointer; } .wcf-quantity-table { border: 1px solid #e5e5e5; border-spacing: 0; width: 100%; text-align: center; border-collapse: collapse; } .wcf-quantity-table tr { border-bottom: 1px solid #e5e5e5; } /* Custom FIeld */ .wcf-cpf-row { background: #f9f9f9; border: 1px solid #e5e5e5; margin-bottom: 5px; } .wcf-cpf-row-header { background: #f1f1f1; border-bottom: 1px solid #e5e5e5; padding: 8px; } .wcf-cpf-fields { padding: 8px; margin-bottom: 0px; } .wcf-cpf-fields.wcf-cpf-options .wcf-cpf-row-setting-label{ vertical-align: top; } .wcf-cpf-row-setting-label { width: 25%; display: inline-block; } .wcf-cpf-row-setting-label i{ color: red; } .wcf-cpf-row-setting-field { width: 75%; display: inline-block; } .wcf-field-row .wcf-cpf-actions a { cursor: pointer; } PK\s) (admin/meta-assets/css/admin-edit-rtl.cssnuW+A/* Settings Tab */ .wcf-tab { display: inline-block; padding: 10px; background: #eee; margin-left: 7px; cursor: pointer; } .wcf-tab.active { background: #5a5a5a; /*color: white;*/ } .wcf-tab-wrapper { margin: 15px 0; } .wcf-tab-content { display: none; } .wcf-tab-content.active { display: block; } /* Tab Footer */ .wcf-update-step { float: left; } .wcf-back-to-flow-edit .dashicons { vertical-align: sub; font-size: 1rem; } .wcf-column-right-footer { padding: 10px 20px; border-right: 1px #ddd solid; border-top: 1px #ddd solid; background: #fafafa; } /* Settings Tab End */ .wcf-variation-mode { display: none; } td.wcf-field-section-heading { font-size: 16px; font-weight: 700; text-decoration: underline; } .field-wcf-shortcode input { width: 50%; display: inline-block; } .wcf-field-row-heading { width: 30%; } .wcf-field-row-content { width: 70%; } /* Select2 */ .wcf-field-row .wcf-target-product-select2 { width: 50%; height: 28px !important; } .wcf-field-row .wcf-product-search, .wcf-field-row .wcf-coupon-search, .wcf-field-row .wcf-search-pages { width: 100%; height: 28px !important; } body span.select2.select2-container.select2-container--default { width: 350px; max-width: 100% !important; margin-top: 0; } body li.select2-results__option.select2-results__message { background: #ecebeb; margin-bottom: 0; } /* Repeater Product Field */ .wcf-product-repeater-field-row .wcf-field-row-content { width: 100% !important; } .wcf-product-repeater-field-row .wcf-field-row-content { width: 100%; } .wcf-repeatable-row { background: #f9f9f9; border: 1px solid #e5e5e5; margin-bottom: 5px; } .wcf-repeatable-row-header { background: #f1f1f1; border-bottom: 1px solid #e5e5e5; padding: 8px; } .wcf-repeatable-row-standard-fields { padding: 8px; } .wcf-repeatable-row-actions { float: left; } .wcf-repeatable-row-setting-label, .wcf-repeatable-row-setting-field { display: inline-block; } /*.wcf-repeatable-row-setting-label { width: 25%; } .wcf-repeatable-row-setting-field { width: 75%; }*/ .wcf-repeatable-fields { margin-bottom: 10px; } .wcf-add-repeatable-wrap { float: none !important; clear: both; background: #fff !important; padding: 4px 0 0 4px !important; } .wcf-add-repeatable-wrap button.button-primary { margin: 0 0 0 8px; } .wcf-repeatable-remove { cursor: pointer; } .wcf-quantity-table { border: 1px solid #e5e5e5; border-spacing: 0; width: 100%; text-align: center; border-collapse: collapse; } .wcf-quantity-table tr { border-bottom: 1px solid #e5e5e5; } /* Custom FIeld */ .wcf-cpf-row { background: #f9f9f9; border: 1px solid #e5e5e5; margin-bottom: 5px; } .wcf-cpf-row-header { background: #f1f1f1; border-bottom: 1px solid #e5e5e5; padding: 8px; } .wcf-cpf-fields { padding: 8px; margin-bottom: 0px; } .wcf-cpf-fields.wcf-cpf-options .wcf-cpf-row-setting-label{ vertical-align: top; } .wcf-cpf-row-setting-label { width: 25%; display: inline-block; } .wcf-cpf-row-setting-label i{ color: red; } .wcf-cpf-row-setting-field { width: 75%; display: inline-block; } .wcf-field-row .wcf-cpf-actions a { cursor: pointer; } PK\o6='pp*admin/assets/fonts/cartflows-logo-icon.eotnuW+ApLPO&cartflows-logo-iconRegularVersion 1.0&cartflows-logo-icon 0OS/2*`cmapV҇TgasppglyftxPheadm)6hhea$hmtx $loca(8 maxp eD nameН=dpost| 3 @@@ 8  797979JVb+"&546;5#";267>767>76=265#546;267>7#""32654&3"32654&{ 4$%33%  /)(; /! '     ' !. Ig ,(H)G%33%$44%44%$44I*%33%$4F,,1+('AA'(+XhIB =$4$%44%$44$%44%$4ϭO_< ثVثV cZ 9  &  &m & D & 44cartflows-logo-iconcartflows-logo-iconVersion 1.0Version 1.0cartflows-logo-iconcartflows-logo-iconcartflows-logo-iconcartflows-logo-iconRegularRegularcartflows-logo-iconcartflows-logo-iconFont generated by IcoMoon.Font generated by IcoMoon.PK\c@@@*admin/assets/fonts/cartflows-logo-icon.svgnuW+A Generated by IcoMoon PK\[ 6=+admin/assets/fonts/cartflows-logo-icon.woffnuW+AwOFF OS/2``*cmaphTTV҇gaspglyfPPthead66m)hheaL$$hmtxp loca (maxp enameН=post 3 @@@ 8  797979JVb+"&546;5#";267>767>76=265#546;267>7#""32654&3"32654&{ 4$%33%  /)(; /! '     ' !. Ig ,(H)G%33%$44%44%$44I*%33%$4F,,1+('AA'(+XhIB =$4$%44%$44$%44%$4ϭO_< ثVثV cZ 9  &  &m & D & 44cartflows-logo-iconcartflows-logo-iconVersion 1.0Version 1.0cartflows-logo-iconcartflows-logo-iconcartflows-logo-iconcartflows-logo-iconRegularRegularcartflows-logo-iconcartflows-logo-iconFont generated by IcoMoon.Font generated by IcoMoon.PK\cH*admin/assets/fonts/cartflows-logo-icon.ttfnuW+A 0OS/2*`cmapV҇TgasppglyftxPheadm)6hhea$hmtx $loca(8 maxp eD nameН=dpost| 3 @@@ 8  797979JVb+"&546;5#";267>767>76=265#546;267>7#""32654&3"32654&{ 4$%33%  /)(; /! '     ' !. Ig ,(H)G%33%$44%44%$44I*%33%$4F,,1+('AA'(+XhIB =$4$%44%$44$%44%$4ϭO_< ثVثV cZ 9  &  &m & D & 44cartflows-logo-iconcartflows-logo-iconVersion 1.0Version 1.0cartflows-logo-iconcartflows-logo-iconcartflows-logo-iconcartflows-logo-iconRegularRegularcartflows-logo-iconcartflows-logo-iconFont generated by IcoMoon.Font generated by IcoMoon.PK\=N^^%admin/assets/css/global-admin-rtl.cssnuW+A/* * ************************************************ * Plugin Name: Cartflows * Plugin URL: https://cartflows.com/ * Description: CartFlows for WooCommerce. * Author: Brainstorm Force * Author URI: https://www.brainstormforce.com/ * Version: 1.0 * ************************************************ */ /** * ********************* * Cartflows Font Icon * ********************* */ @font-face { font-family: 'cartflows-logo-icon'; src: url('../fonts/cartflows-logo-icon.eot?kxnn1n'); src: url('../fonts/cartflows-logo-icon.eot?kxnn1n#iefix') format('embedded-opentype'), url('../fonts/cartflows-logo-icon.ttf?kxnn1n') format('truetype'), url('../fonts/cartflows-logo-icon.woff?kxnn1n') format('woff'), url('../fonts/cartflows-logo-icon.svg?kxnn1n#cartflows-logo-icon') format('svg'); font-weight: normal; font-style: normal; } .wcf-cartflows-logo-img [class^="cartflows-icon"], .wcf-cartflows-logo-img [class*=" cartflows-icon"], /* For Pro Compatibility */ [class^="cartflows-logo-icon"], [class*=" cartflows-logo-icon"]{ /* use !important to prevent issues with browser extensions that change fonts */ font-family: 'cartflows-logo-icon' !important; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .wcf-cartflows-logo-img .cartflows-icon:before, /* For Pro Compatibility */ .cartflows-logo-icon:before { content: "\e900"; color: #f16334; } /** * * Step Meta - All Page Css */ .post-type-cartflows_step #delete-action { display: none; } /* * ************************ * Post page Name & Button * ************************ */ .post-type-cartflows_flow .wrap{ margin: 25px 2px 0 20px; } .wcf-notice-back-edit-flow .dashicons { vertical-align: text-bottom; } .post-type-cartflows_flow .wcf-notice-back-edit-flow{ margin-top: 30px; } .post-type-cartflows_flow .wcf-notice-back-edit-flow .button-primary{ height: 30px; } .wcf-notice-back-edit-flow .dashicons-arrow-left-alt{ vertical-align: text-bottom; } /* * ************************ * Add Flow Popup Window * 1. Overlay * 2. Popup Box Alignment * 3. Buttons & Textbox * 4. wcf-choose-type-box * ************************ */ .wcf-overlay , .wcf-overlay-newstep { display: none; position: fixed; width: 100%; height: 100%; background: rgba(0,0,0,0.6); top: 0; right: 0; } .wcf-popup .wcf-popup-header{ padding: 12px 20px; overflow: hidden; } .wcf-popup .wcf-popup-header label{ color: #fff; font-weight: 600; float: right; } .wcf-popup, .wcf-popup-newstep { display: none; width: 600px; top: 50%; right: 50%; position: fixed; background: #ffffff; transform: translate( 50%, -50% ); padding: 0px; } .wcf-close , .wcf-close-newstep{ position: relative; width: 20px; height: 20px; float: left; background: transparent; color: #ffff; font-size: 18px; line-height: 14px; text-align: center; border-radius: 999px; cursor: pointer; } .wcf-close .dashicons-no-alt{ vertical-align: middle; } .wcf-content { text-align: right; padding: 20px;; } .wcf-submit-wrap { text-align: left; margin: 25px 0 0 0; } .wcf-overlay.show, .wcf-popup.show, .wcf-overlay-newstep.show, .wcf-popup-newstep.show { display: block; } .wcf-content input[type='text'] { background-color: transparent; box-shadow: none; border:none; border-bottom: 1px #ddd solid; padding: 10px 0 10px; width: 100%; font-size: 15px; } .wcf-content input[type='text']:focus { border-bottom: 1px #5b9dd9 solid; } .wcf-popup .wcf-choose-type-box{ width: 100%; position: relative; margin: 0 auto; text-align: center; padding: 0 0 15px 0; overflow: overlay; } .wcf-popup .wcf-choose-type-box .wcf-default-type-box, .wcf-popup .wcf-choose-type-box .wcf-import-type-box{ flex: 0 0 50%; width: 46%; float: right; padding: 10px; } .wcf-default-type-box .wcf-default-type-content, .wcf-import-type-box .wcf-import-type-content{ text-align: center; padding: 0 0px 15px; } .wcf-default-type-box .wcf-default-type-content h3, .wcf-import-type-box .wcf-import-type-content h3{ line-height: 1.4em; } .wcf-default-type-content:hover h3, .wcf-import-type-content:hover h3{ color: rgb(0, 133, 186, 1) } .wcf-default-type-content h3 .dashicons, .wcf-import-type-content h3 .dashicons{ vertical-align: middle; } .wcf-default-type-content .wcf-create-flow .dashicons-plus, .wcf-import-type-content .wcf-create-flow .dashicons-plus{ vertical-align: middle; } /** * ************************ * Flow Setting Meta Box * ************************ */ .wcf-tooltip-text{ background: #444; border-radius: 3px; color: #fff; height: auto; right: 56px; margin-top: 10px; max-width: 150px; position: absolute; padding: 6px 10px; top: auto; display: none; z-index: 10000; } .wcf-tooltip-text::before { border-right: 5px solid transparent; border-left: 5px solid transparent; border-top: 5px solid transparent; border-bottom: 5px solid #444; bottom: auto; content: " "; font-size: 0; right: 56px; line-height: 0; margin-right: -5px; position: absolute; top: -10px; width: 0; } .display_tool_tip{ display: block; } /*.wcf-tooltip::before { position: absolute; top: 48px; left: 53px; background-color: #444; border-radius: 5px; color: #fff; content: attr(data-tooltip); padding: 0.5rem; text-transform: none; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; width: 160px; height: auto; line-height: 1em; } .wcf-tooltip::after { position: absolute; top: auto; bottom: 170px; left: 115px; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 5px solid transparent; border-bottom: 5px solid #444; content: " "; font-size: 0; line-height: 0; margin-left: -5px; width: 0; } .wcf-tooltip.display_toot_tip::before, .wcf-tooltip.display_toot_tip::after { opacity: 1; -webkit-transition: all 0.75s ease; transition: all 0.75s ease; word-break: break-all; } .wcf-tooltip::before, .wcf-tooltip::after { color: #efefef; font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif; font-size: 13px; opacity: 0; pointer-events: none; text-align: center; }*/ .wcf-flow-sandbox-table .wcf-field-row .wcf-field-row-content{ width: 100%; } /** * ****************************************************** * Shortcode Box on the Head Section of Checkout Meta Box * ****************************************************** */ #field-wcf-shortcode{ display: none; margin-right: 5px; vertical-align: top; line-height: 0; } /* * ************************ * Css For * 1. Flow Metabox * 2. Textboxes * 3. Select * 4. Buttons * 5. Steps Boxes * ************************ */ /* * *************************************** * Flow Page Css (After removing meta box) * 1. Step Badges * *************************************** */ .wcf-flow-steps-meta-box{ margin-top: 20px; } .wcf-flow-steps-meta-box .wcf-flow-settings{ width: 100%; display: block; } .wcf-flow-steps-meta-box .wcf-new-step-badge { background-color: #0073aa; color: #fff; } .wcf-flow-steps-meta-box .wcf-new-step-badge, .wcf-flow-steps-meta-box .wcf-step-wrap .wcf-step .wcf-flow-badge, .wcf-flow-steps-meta-box .wcf-step-wrap.active .wcf-step .wcf-flow-badge{ color: #000; background-color: #E3E4E8; padding: 0.3em .6em 0.3em; font-size: 0.7em; font-weight: 600; border-radius: 0px; line-height: 0.7em; margin-right: 10px; text-align: center; vertical-align: middle; } #wcf-flow-settings .inside{ margin: 10px 0 0; } .wcf-flow-settings .wcf-flow-steps-data-wrap { padding: 0 1em 1.5em; } .wcf-flow-settings .wcf-flow-steps-wrap{ border-left:none; background-color: transparent; width: 100%; padding: 0px; } .wcf-flow-settings .wcf-step-left-content, .wcf-flow-settings .wcf-steps-action-buttons{ display: inline-block; width: 49%; vertical-align: middle; font-size: 13px; line-height: 3em; } .wcf-flow-settings .wcf-step-left-content{ text-align: right; } .wcf-step-left-content .dashicons{ vertical-align: middle; width: 1em; height: 1em; font-size: 1.5em; line-height: 1em; } .wcf-flow-settings .wcf-steps-action-buttons{ text-align: left; } .wcf-flow-settings .wcf-flow-steps-wrap .wcf-action-button{ display: inline-block; font-size: 1em; line-height: 1em; vertical-align: middle; text-align: center; margin-right: 15px; text-decoration: none; } .wcf-flow-settings .wcf-action-button .dashicons{ pointer-events: none; font-size: 1.5em; width: 1em; height: 1em; vertical-align: middle; } .wcf-flow-settings .wcf-flow-steps-wrap .wcf-action-button .wcf-step-act-btn-text { display: inline-block; line-height: 1.5em; } .wcf-flow-settings .wcf-flow-steps-wrap .wcf-step{ color: #444; border: none; background-color: #fff; box-shadow: 0px 0px 2px 0px #ddd; padding: 15px 10px; cursor: move; } .wcf-new-step-highlight{ border-right: 3px #0073aa solid; } .wcf-popup input[type='radio'] { margin-top: 0px; } .wcf-popup label{ font-size: 16px; } .wcf-step-wrap { margin-bottom: 15px; } #wcf-sandbox-settings .inside{ margin: 15px 0 10px; } .wcf-general-metabox-wrap .wcf-field-row{ display: inline-flex; width: 100%; } .wcf-general-metabox-wrap .wcf-field-desc { padding: 6px 0 0; } /* * ***************************** * Custom classes for common use * ***************************** */ #wcf-sandbox-settings.wcf-highlight { box-shadow: 0 0 0 99999px rgba(0, 0, 0, 0.8); position: relative; z-index: 9999; pointer-events: auto; transition: all 0.5s ease; } .pull-right{ float: left; } .pull-left{ float: right; } .text-error { border-bottom: 1px #FF5050 solid !important; } input[type="text"].error, input[type="text"].error:focus{ border-color: red; box-shadow: 0 0 2px rgba(30,140,190,0); } #show_error { font-style: italic; color: #FF5050 } .wp-ui-text-primary { color: #0073aa; } .wcf-column-left{ width: 25%; float: right; position: relative; max-width: 300px; } .wcf-column-right{ width: 75%; float: right; position: relative; background-color: #fff; } .wcf-import-step-content{ border-top: 1px #ddd solid; padding-top: 10px; margin-top: 30px; } /* * ************************ * Display Template div css * 1 Add, View & Import Buttons & Icons * ************************ */ .wcf-flow-steps-data-wrap .wcf-step-content a .dashicons { vertical-align: middle; } /* * ************************************************ * Meta Boxs (All) * 1. Setting Meta Box (#wcf-step-settings) * 2. Checkout layout Meta Box (#wcf-checkout-settings) * 3. Downsell Meta Box (#wcf-offer-settings) * 4. Thank You Meta Box (#wcf-thankyou-settings) * 5. Upsell Meta Box (#wcf-upsell-settings) * ************************************************ */ .wcf-repeat-notice, #wcf-checkout-settings .wcf-checkout-table .wcf-checkout-style .wcf-cs-fields .wcf-cs-checkbox-field .field-wcf-advance-options-fields{ border-top: 1px #ddd solid; margin-top: 10px; padding-top: 20px; } .wcf-repeat-notice p{ margin: 5px 0px; } /* * Inside Div css for all the metaboxes */ #wcf-ladning-settings .inside, #wcf-checkout-settings .inside, #wcf-offer-settings .inside, #wcf-upsell-settings .inside, #wcf-optin-settings .inside, #wcf-thankyou-settings .inside{ margin:0px; padding: 0px; line-height: 0.9em; } /** * **************************** * 1. Container * 2. Row * 3. Content Divs * 4. Button Divs * 5. Alignment Classes * **************************** */ .wcf-table-container{ display: inline-block; width: 100%; max-width: 100%; background-color: #fafafa; margin-top: 0px; line-height:1.2; } .wcf-column-right .wcf-field-section .wcf-field-section-heading{ color: #333; padding: 10px 0 5px; text-decoration: none; font-size: 15px; font-weight: 600; } .show_box { display: block!important; } .wcf-table-container .wcf-column-right .wcf-custom-field-box .wcf-field-row-content{ width: 100%; border:1px solid #e5e5e5; } .wcf-table-container .wcf-column-right .wcf-custom-field-box .wcf-cpf-row{ border:none; margin-bottom: 0px; } .wcf-table-container .wcf-column-right .wcf-custom-field-box .wcf-cpf-add-row{ padding: 0px 8px 10px; background-color: #f9f9f9; } .wcf-table-container .wcf-column-right .wcf-field-row-heading{ font-size: 12px; width: 30%; height: 100%; display: inline-block; line-height: 1.5em; vertical-align: middle; min-height: 28px; } .wcf-table-container .wcf-column-right .wcf-field-row-content{ width: auto; display: inline-block; font-size: 12px; vertical-align: middle; } .wcf-table-container .wcf-column-right .wcf-field-row-heading .dashicons { line-height: 1; margin-right: 5px; } /*.wcf-cb-fields{ width: 50%; float: left; }*/ .wcf-cb-fields, .wcf-sb-fields{ width: 50%; display: inline-block; position: relative; vertical-align: top; } .wcf-cb-fields .wcf-field-row-heading, .wcf-sb-fields .wcf-field-row-heading{ width: 50% !important; } .wcf-cb-fields .wcf-field-row-content, .wcf-sb-fields .wcf-field-row-content{ width: 50% !important; } .wcf-table-container .wcf-column-right .wcf-field-row .select2-container .select2-selection--single{ margin: 0px; } .wcf-table-container .wcf-column-right .wcf-field-row .select2-container .select2-selection--single .select2-selection__rendered{ outline: none; } .wcf-checkout-table .select2-container--default .select2-selection--single .select2-selection__clear{ display: block; } .wcf-table-container .wcf-column-right .wcf-field-row input[type="text"], .wcf-table-container .wcf-column-right .wcf-field-row input[type="number"], .wcf-table-container .wcf-column-right .wcf-field-row select, .wcf-table-container .wcf-column-right .wcf-field-row textarea, .wcf-table-container .wcf-column-right .wcf-field-row .select2-container--default{ width: 300px; max-width: 100%; } .wcf-table-container .wcf-column-right .wcf-field-row .wp-picker-container input[type=text].wp-color-picker{ width: 65px; } #wcf-step-settings .inside .wcf-checkout-table .field-wcf-step-type .wcf-field-row-content select{ border: none; border-bottom: 1px #ccc solid; box-shadow: none; padding: 5px; width: 30%; } /* * ************************************ * All Page Types Setting's Meta Box * Contains * Checkout Metabox * Upsell Metabox * Downsell Metabox * Thank You Metabox * ************************************ */ .wcf-table-container .wcf-tab-wrapper{ background: #fafafa; border:none; margin: 0px 0 0; } .wcf-table-container .wcf-tab-wrapper .wcf-tab{ background: transparent; border-bottom: 1px #eee solid; display: block; margin: 0; color: #0073aa; line-height: 1em; } .wcf-table-container .wcf-tab-wrapper .wcf-tab .wcf-tab-title{ margin-right: .200em; margin-left: .618em; } .wcf-table-container .wcf-tab-wrapper .wcf-tab.active{ background-color: #eee; color: #555; } .wcf-table-container .wcf-tab-wrapper .wcf-tab .dashicons{ font-size: initial; width: auto; height: auto; } .wcf-table-container .wcf-tab-content{ border: 1px #ddd solid; border-left: none; border-top: none; border-bottom: none; min-height: 227px; overflow: hidden; padding: 10px 0px; } .wcf-table-container .wcf-column-right .wcf-field-row, .wcf-table-container .wcf-column-right .wcf-field-row, .wcf-table-container .wcf-column-right .wcf-field-row, .wcf-table-container .wcf-column-right .wcf-field-row{ padding: 10px 20px; overflow: hidden; } .wcf-table-container .wcf-checkout-style .wcf-cs-fields-options, .wcf-table-container .wcf-checkout-style .wcf-cs-button-options{ display: none; } .wcf-repeatables-wrap .wcf-repeatable-row{ background: #fff; border:none; margin-bottom: 5px; } .wcf-repeatables-wrap .wcf-repeatable-row-standard-fields{ padding: 0px; } .wcf-repeatables-wrap .wcf-repeatable-row-standard-fields .wcf-repeatable-row-actions{ float: none; display: inline-block; text-align: center; margin-right: 15px; } .wcf-repeatables-wrap .wcf-repeatable-row-standard-fields .wcf-repeatable-remove{ vertical-align: middle; padding: 5px; line-height: inherit; font-size: 13px; } .wcf-repeatables-wrap .wcf-repeatable-row-standard-fields .wcf-repeatable-remove .dashicons{ vertical-align: middle; font-size: inherit; } .field-wcf-tq-advance-options-fields{ border-top: 1px solid #DDD; margin-top: 15px; } .wcf-table-container .wcf-column-right .field-wcf-hr-line { padding-right: 0; padding-left: 0; } .wcf-table-container .wcf-column-right .field-wcf-hr-line .wcf-field-row-content { width: 100%; } .wcf-table-container .wcf-radio-option { margin-bottom: 10px; } /** * ****************************** * Field - Post Meta Typography * ****************************** */ .wcf-metabox-wrap .select2-container--default .select2-selection--single { border: 1px solid #ddd; box-shadow: inset 0 1px 2px rgba( 0, 0, 0, 0.07 ); background-color: #fff; color: #32373c; outline: none; transition: 0.05s border-color ease-in-out; border-radius: 0; font-size: 13px; } .wcf-metabox-wrap .select2-container--default .select2-search--dropdown .select2-search__field { border: 1px solid #ddd; box-shadow: none; } /** * ************************ * Create Woo Product Start * ************************ */ .wcf-create-woo-iframe-opened{ overflow: hidden; } .wcf-create-woo-product-overlay{ position: fixed; height: 100%; width: 100%; top: 0; right: 0; background: rgba(0, 0, 0, 0.7); -webkit-transition: opacity 500ms; transition: opacity 500ms; visibility: hidden; opacity: 0; z-index: 9999; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-transition: none; transition: none; } .wcf-create-woo-product-overlay.open { visibility: visible; opacity: 1; z-index: 999999; } .wcf-create-woo-product-wrap{ max-width: 100%; background-color: transparent; position: relative; -webkit-border-radius: 3px; border-radius: 3px; top: 50%; margin: 0 auto; -ms-transform: translate(50%, -35%); width: 90%; min-height: 85%; max-height: 85%; height: 85%; transform: translateY(-50%); z-index: 99999; } .wcf-create-woo-product-wrap:not(.product-loaded):before { content: ""; position: absolute; background: none !important; top: 50%; margin: 0 auto; text-align: center; color: #fff; right: 50%; width: 48px; height: 48px; display: block; border: 3px solid white; -webkit-border-radius: 50%; border-radius: 50%; border-left-color: transparent; border-right-color: transparent; -webkit-animation: wcf-admin-loader 575ms infinite linear; animation: wcf-admin-loader 575ms infinite linear; } .wcf-woo-product-iframe { max-width: 100%; width: 100%; min-height: 100%; height: 100%; background: #ffffff; } .wcf-close-create-woo-product{ background: #fff; border: 1px #fff solid; border-radius: 50%; color: #000; height: 25px; position: fixed; width: 25px; top: -10px; right: auto; z-index: 100000; cursor: pointer; left: -10px; font-size: 20px; line-height: 1.3; text-align: center; } .wcf-close-create-woo-product:before{ content: "\f158"; font-family: dashicons; } #wcf-create-woo-product iframe.wcf-create-woo-product-iframe #wpadminbar, #wcf-create-woo-product iframe.wcf-create-woo-product-iframe #adminmenumain{ display: none; } /** * ************************ * Create Woo Product End * ************************ */ /* * Display upgrade popup custom button */ .wcf-custom-add-new-button.button{ margin: 10px; } /** * Display upgrade popup CSS */ #cartflows-upgrade-notice-overlay { background: #000000b3; filter: alpha(opacity=70); position: fixed; top: 0; left: 0; bottom: 0; right: 0; z-index: 100050; } #cartflows-upgrade-notice-popup table { border: none !important; -webkit-box-shadow: none !important; box-shadow: none !important; } #cartflows-upgrade-notice-popup .inner { -webkit-transform: translate(50%, -50%); -ms-transform: translate(50%, -50%); transform: translate(50%, -50%); background: #fff; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; position: fixed; background-color: #fff; z-index: 100059; text-align: right; top: 50%; right: 50%; width: 350px; -webkit-box-shadow: 0 3px 6px rgba( 0, 0, 0, 0.3 ); box-shadow: 0 3px 6px rgba( 0, 0, 0, 0.3 ); } #cartflows-upgrade-notice-popup .heading { float: right; font-weight: 600; line-height: 35px; overflow: hidden; padding: 0px 20px; text-overflow: ellipsis; white-space: nowrap; width: -webkit-calc( 100% - 40px ); width: calc( 100% - 40px ); background: #fff; font-size: 14px; border-bottom: 1px solid #e5e5e5; } .cartflows-close-popup-button{ border-right: 1px #eee solid; top: 3px; } .cartflows-close-popup-button:hover{ cursor: pointer; } #cartflows-upgrade-notice-popup .contents { clear: both; background: #f1f1f1; padding: 0px 10px; } #cartflows-upgrade-notice-popup .notice { margin: 0 20px 5px 20px; } #cartflows-upgrade-notice-popup .wcf-notice{ padding:10px; } /** * ****************************** * Media Query for 768 Devices * ****************************** */ @media only screen and (max-width: 768px) { .wcf-cb-fields, .wcf-sb-fields { width: 100%; display: block; position: relative; vertical-align: top; } } /** * Device Responsive Css * ****************************** */ @media only screen and (min-width: 1200px){ .wcf-column-left{ width: 300px; } .wcf-column-right{ width: calc( 100% - 300px ); } } @keyframes wcf-admin-loader { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } @-webkit-keyframes wcf-admin-loader { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } PK\!iggadmin/assets/css/arrow.pngnuW+APNG  IHDR ; pHYs%%IR$iTXtXML:com.adobe.xmp &nIDAT(c9sF"⑨(_$\xIENDB`PK\"_(admin/assets/css/flow-admin-edit-rtl.cssnuW+A.post-type-cartflows_flow.post-php a.page-title-action { display: none; } .wcf-flow-steps-meta-actions { margin: 1em 0 2em 0; } .wcf-flow-steps-meta-box { display: block; clear: both; } .wcf-flow-settings { display: flex; clear: both; } .wcf-flow-steps-wrap { display: inline-block; width: 30%; padding-left: 1em; border-left: 1px solid #e5e5e5; } .wcf-flow-steps-data-wrap { display: inline-block; width: 70%; padding: 1em 1.5em; } .wcf-step-content { display: none; } .wcf-add-flow-step-data th, .wcf-add-flow-step-data td { padding: 0 0 10px 10px; } .wcf-word-wrap{ width: 55%; display: inline-flex; } .wcf-import-step-content{ display: table; } .wcf-import-step-message, .wcf-import-step-button{ display: table-cell; vertical-align: middle; } .wcf-import-step-message p{ margin:0px; padding: 0px; text-align: justify; padding-left: 15px; } /* Invalide Step */ .wcf-step-wrap.invalid-step { pointer-events: none; } .wcf-step-wrap.invalid-step .wcf-step-delete{ pointer-events: auto; } .wcf-step-wrap.invalid-step .wcf-step .wcf-flow-badge { color: red; } .wcf-no-product-badge{ color: #FFFFFF; background-color: #f16334; padding: 0.3em .6em 0.3em; font-size: 0.7em; font-weight: 600; border-radius: 0px; line-height: 0.7em; margin-right: 10px; text-align: center; vertical-align: middle; } .wcf-global-checkout-badge{ color: #FFFFFF; background-color: #0072A7; padding: 0.3em .6em 0.3em; font-size: 0.7em; font-weight: 600; border-radius: 0px; line-height: 0.7em; margin-right: 10px; text-align: center; vertical-align: middle; } .wcf-global-checkout-badge.wcf-error-badge{ color: #fff; background-color: #d54e21; } .wcf-step-wrap.wcf-no-product-step{ border-right: 3px solid #f16334; } PK\eP$admin/assets/css/flow-admin-edit.cssnuW+A.post-type-cartflows_flow.post-php a.page-title-action { display: none; } .wcf-flow-steps-meta-actions { margin: 1em 0 2em 0; } .wcf-flow-steps-meta-box { display: block; clear: both; } .wcf-flow-settings { display: flex; clear: both; } .wcf-flow-steps-wrap { display: inline-block; width: 30%; padding-right: 1em; border-right: 1px solid #e5e5e5; } .wcf-flow-steps-data-wrap { display: inline-block; width: 70%; padding: 1em 1.5em; } .wcf-step-content { display: none; } .wcf-add-flow-step-data th, .wcf-add-flow-step-data td { padding: 0 10px 10px 0; } .wcf-word-wrap{ width: 55%; display: inline-flex; } .wcf-import-step-content{ display: table; } .wcf-import-step-message, .wcf-import-step-button{ display: table-cell; vertical-align: middle; } .wcf-import-step-message p{ margin:0px; padding: 0px; text-align: justify; padding-right: 15px; } /* Invalide Step */ .wcf-step-wrap.invalid-step { pointer-events: none; } .wcf-step-wrap.invalid-step .wcf-step-delete{ pointer-events: auto; } .wcf-step-wrap.invalid-step .wcf-step .wcf-flow-badge { color: red; } .wcf-no-product-badge{ color: #FFFFFF; background-color: #f16334; padding: 0.3em .6em 0.3em; font-size: 0.7em; font-weight: 600; border-radius: 0px; line-height: 0.7em; margin-left: 10px; text-align: center; vertical-align: middle; } .wcf-global-checkout-badge{ color: #FFFFFF; background-color: #0072A7; padding: 0.3em .6em 0.3em; font-size: 0.7em; font-weight: 600; border-radius: 0px; line-height: 0.7em; margin-left: 10px; text-align: center; vertical-align: middle; } .wcf-global-checkout-badge.wcf-error-badge{ color: #fff; background-color: #d54e21; } .wcf-step-wrap.wcf-no-product-step{ border-left: 3px solid #f16334; } PK\>3(admin/assets/css/admin-menu-settings.cssnuW+A.notice:not(.wcf-notice) { display: none; } .wcf-flex { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-content: center; -ms-flex-line-pack: center; align-content: center; } .form-field p.wcf-p { margin: 1em 0; } .wcf-container { max-width: 930px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; } .wcf-menu-page-wrapper .wrap { margin: 0 auto; } .wcf-container #poststuff h2 { padding: 12px 12px; } .wcf-container .postbox .hndle { background: #ffffff; border-bottom: 1px solid #e6e6e6; } .wcf-menu-page-wrapper{ left: -20px; position: relative; width: calc( 100% + 20px); } .wcf-menu-page-wrapper a { text-decoration: none; } .wcf-general-form-wrap { width: 680px; } .wcf-general-list .inside { padding: 0; margin: 0; } .wcf-list-section .wcf-widget-list li { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-content: center; -ms-flex-line-pack: center; align-content: center; padding: 10px 12px; -moz-box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1) inset; -webkit-box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1) inset; box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1) inset; margin-bottom: 0; } .wcf-list-section .wcf-widget-list li:nth-child(even) { background-color: #fbfbfb; } .wcf-list-section .wcf-widget-list .activate { border-left: 3px solid #008ec2; padding-left: 12px; } .wcf-widget-list a { text-decoration: none; } .wcf-widget-link-wrapper { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-content: center; -ms-flex-line-pack: center; align-content: center; display: -webkit-flex; -webkit-flex-direction: row-reverse; flex-direction: row-reverse; flex: auto; } .wcf-widget-list li a:before { display: inline-block; margin-right: 2px; font: normal 20px/1 'dashicons'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; vertical-align: top; } .wcf-widget-link-wrapper a:nth-child(even) { margin: 0 10px; } .wcf-container .postbox .hndle { background: #f7f7f7; border-bottom: 2px solid #e6e6e6; } .wcf-container .postbox ul{ margin: 0; } .wcf-widget-list a{ line-height: 1.6; } .wcf-widget-list a:focus{ box-shadow: none; } .wcf-branding-list{ margin:0; } /* Update icon. */ .wcf-widget-link-wrapper a.updating-message:before { color: #f56e28; content: "\f463"; } /* Spins the update icon. */ .wcf-widget-link-wrapper a.updating-message:before { -webkit-animation: rotation 2s infinite linear; animation: rotation 2s infinite linear; } /* Header */ .wcf-menu-page-header.general .wcf-container, .wcf-menu-page-header.branding .wcf-container, .wcf-container.wcf-general, .wcf-container.wcf-branding-wrapper { max-width: 930px; } .wcf-title { flex: auto; align-content: flex-start; text-align: left; } .wcf-title a, .wcf-title span { display: block; outline: none; box-shadow: none; font-size: 1.5rem; color: #333333; font-weight: 500; } .wcf-header-icon { width: 200px; vertical-align: bottom; } .wcf-top-links { flex: auto; text-align: right; font-weight: 500; } .wcf-menu-page-header { background-color: #fff; text-align: center; padding: 20px 0; margin-bottom: 20px; box-shadow: 0 1px 1px 0 rgba(0,0,0,.1); } .wcf-logo { max-width: 170px; } /* Spinner */ .wcf-button-spinner:before { font: normal 20px/.5 dashicons; speak: none; display: inline-block; padding: 0; top: 8px; left: -4px; position: relative; vertical-align: top; content: "\f463"; } .wcf-button-spinner.loading:before { -webkit-animation: rotation 1s infinite linear; animation: rotation 1s infinite linear; } /* New CSS */ .wcf-setting-tab-wrapper .wcf-setting-tab { padding: 10px 15px; display: flex; flex-wrap: wrap; } .wcf-setting-tab-wrapper .wcf-tab-title { width: 40%; } .wcf-setting-tab-wrapper .wcf-tab-link-wrapper { width: 60%; text-align: right; } /** Settings Page - Introduction Box */ #wcf-menu-page .introduction iframe { width: 100%; vertical-align: middle; } #wcf-menu-page .introduction .iframe-wrap { margin: -6px -12px 0px -12px; } /* Form Fields */ .form-field-label, .form-field-data { display: inline-block; padding-right: 5px; } .form-field-actions { display: inline-block; margin-left: 15px; } .form-field-actions a { margin: 0 12px 0 0; } .form-field-actions span.dashicons { margin: 0 5px 0 0; } .form-field-desc { margin: 5px 0 0; } #poststuff .general-settings-form .inside { margin: 2em 0 0; } .general-settings-form .form-field, .postbox-container .form-field { border-bottom: 1px solid #e6e6e6; display: block; width: 100%; margin: 0 0 1em; padding: 0 0 1em; } .general-settings-form .form-field:first-child { margin: 1em 0 1em; } .general-settings-form .form-field:last-child { border: none; } .postbox-container .form-field{ border: none; } .wcf-log-container { word-break: break-all; line-height: 1.5; text-align: left; background-color: #fff; padding: 15px; border-radius: 3px; max-height: 400px; overflow-y: scroll; margin: 20px auto; } .wcf-log-container > pre { display: contents; white-space: pre-wrap; } .wcf_permalink_settings .form-field-desc p{ word-break: break-all; }PK\^0'l'l!admin/assets/css/setup-wizard.cssnuW+A html { background: #f1f1f1; margin: 0 20px; } body { /* background: #fff; */ color: #444; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; margin: 140px auto 25px; padding: 20px 20px 10px 20px; max-width: 700px; /* -webkit-font-smoothing: subpixel-antialiased; */ /* box-shadow: 0 1px 3px rgba(0,0,0,0.13); */ } a { color: #0073aa; } a:hover, a:active { color: #00a0d2; } a:focus { color: #124964; box-shadow: 0 0 0 1px #5b9dd9, 0 0 2px 1px rgba(30, 140, 190, .8); } *, :after, :before { box-sizing: border-box; } .ie8 a:focus { outline: #5b9dd9 solid 1px; } h1, h2 { clear: both; color: #666; font-size: 24px; padding: 0; padding-bottom: 7px; font-weight: 400; } h3 { font-size: 16px; } p, li, dd, dt { padding-bottom: 2px; font-size: 15px; line-height: 1.5; } code, .code { font-family: Consolas, Monaco, monospace; } ul, ol, dl { padding: 5px 5px 5px 22px; } a img { border:0 } abbr { border: 0; font-variant: normal; } fieldset { border: 0; padding: 0; margin: 0; } label { cursor: pointer; } #logo { margin: 6px 0 14px 0; padding: 0 0 7px 0; border-bottom: none; text-align:center } #logo a { background-image: url(../images/w-logo-blue.png?ver=20131202); background-image: none, url(../images/wordpress-logo.svg?ver=20131107); background-size: 84px; background-position: center top; background-repeat: no-repeat; color: #444; /* same as login.css */ height: 84px; font-size: 20px; font-weight: 400; line-height: 1.3em; margin: -130px auto 25px; padding: 0; text-decoration: none; width: 84px; text-indent: -9999px; outline: none; overflow: hidden; display: block; } #logo a:focus { box-shadow: none; } .step { margin: 20px 0 15px; } .step, th { text-align: left; padding: 0; } body { margin: 100px auto 100px auto; box-shadow: none; background: #f1f1f1; padding: 0; max-width: 800px; } a { text-decoration: none; } #cartflows-logo { border: 0; margin: 0 0 24px; padding: 0; text-align: center } #cartflows-logo img { max-width: 50%; } /* Wizard Steps */ .cartflows-setup-wizard-steps, .cartflows-setup-steps { padding: 0 0 24px; margin: 0; list-style: none; overflow: hidden; color: #ccc; width: 100%; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex } .cartflows-setup-wizard-steps li, .cartflows-setup-steps li { width: 33%; float: left; padding: 0 0 .8em; margin: 0; text-align: center; position: relative; border-bottom: 4px solid #ccc; line-height: 1.4em } .cartflows-setup-wizard-steps li:before, .cartflows-setup-steps li:before { content: ""; border: 7px solid #ccc; border-radius: 100%; width: 7px; height: 7px; position: absolute; bottom: 0; left: 50%; margin-left: -6px; margin-bottom: -8px; background: #fff } .cartflows-setup-wizard-steps li.active:after, .cartflows-setup-steps li.active:after { content: ""; border: 2px solid #fff; border-radius: 100%; width: 2px; height: 2px; position: absolute; bottom: 0; left: 50%; margin-left: -1px; margin-bottom: -3px; background: #fff; } .cartflows-setup-wizard-steps li.done:after, .cartflows-setup-steps li.done:after { content: "\f147"; width: auto; height: auto; position: absolute; bottom: -12px; color: #fff; left: 50%; margin-left: -7px; font-family: dashicons; margin-bottom: 0; } .cartflows-setup-wizard-steps li.active, .cartflows-setup-steps li.active { border-color: #f16334; color: #f16334 } .cartflows-setup-wizard-steps li.active:before, .cartflows-setup-steps li.active:before { border-color: #f16334 } .cartflows-setup-wizard-steps li.done, .cartflows-setup-steps li.done { border-color: #f16334; color: #f16334 } .cartflows-setup-wizard-steps li.done:before, .cartflows-setup-steps li.done:before { border-color: #f16334; background: #f16334 } .cartflows-setup-wizard-content a, .cartflows-setup-content a { color: #f16334 } .cartflows-setup-wizard-content a:focus, .cartflows-setup-content a:focus, .cartflows-setup-wizard-content a:hover, .cartflows-setup-content a:hover { color: #111 } /* Wizard Content */ .cartflows-setup-wizard-content, .cartflows-setup-content { box-shadow: 0 1px 3px rgba(0, 0, 0, .13); padding: 24px 24px 0; background: #fff; overflow: hidden; zoom: 1 } .cartflows-setup .cartflows-setup-message{ background: #f5f5f5; padding: 25px; } .cartflows-setup .cartflows-setup-extra-notice { text-align: center; font-size: 11px; margin: 10px auto 0px 0px; } .cartflows-setup .cartflows-setup-extra-notice span, .cartflows-setup .cartflows-setup-extra-notice a{ color: #ccc; } .cartflows-setup .cartflows-setup-extra-notice a{ text-decoration: underline; } .cartflows-setup .cartflows-setup-message .cartflows-setup-message-title { color: #696767; font-weight: 600; margin: 10px auto; } .cartflows-setup-wizard-content h1, .cartflows-setup-content h1, .cartflows-setup-wizard-content h2, .cartflows-setup-content h2, .cartflows-setup-wizard-content h3, .cartflows-setup-content h3, .cartflows-setup-wizard-content table, .cartflows-setup-content table { margin: 0 0 24px; border: 0; padding: 0; color: #666; clear: none } .cartflows-setup-wizard-content p, .cartflows-setup-content p { margin: 0 0 24px } .cartflows-setup-wizard-content p, .cartflows-setup-content p, .cartflows-setup-wizard-content table, .cartflows-setup-content table { font-size: 1em; line-height: 1.75em; color: #666 } .cartflows-setup-wizard-content .cartflows-table, .cartflows-setup-content .cartflows-table { width: 100%; } .cartflows-setup-wizard-content .form-table th, .cartflows-setup-content .form-table th { width: 40%; vertical-align: top; font-weight: 400 } .cartflows-setup-wizard-content .form-table td, .cartflows-setup-content .form-table td { vertical-align: top } .cartflows-setup-wizard-content .form-table td input, .cartflows-setup-content .form-table td input, .cartflows-setup-wizard-content .form-table td select, .cartflows-setup-content .form-table td select { box-sizing: border-box; color: inherit; } .cartflows-setup-wizard-content .form-table td input:not([type='checkbox']), .cartflows-setup-wizard-content .form-table td select { width: 50%; } .cartflows-setup-wizard-content .form-table td .description, .cartflows-setup-content .form-table td .description { line-height: 1.5em; display: block; margin-top: .25em; color: #999; font-style: italic } .cartflows-setup-wizard-content .form-table td .input-checkbox, .cartflows-setup-content .form-table td .input-checkbox, .cartflows-setup-wizard-content .form-table td .input-radio, .cartflows-setup-content .form-table td .input-radio { width: auto; box-sizing: inherit; padding: inherit; margin: 0 .5em 0 0; box-shadow: none } /* Update icon. */ .updating-message:before { margin-right: 5px; content: "\f463"; display: inline-block; font-size: 20px; line-height: 1; font-family: dashicons; text-decoration: inherit; font-weight: normal; font-style: normal; vertical-align: text-bottom; text-align: center; transition: color .1s ease-in 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* Spins the update icon. */ .updating-message:before { -webkit-animation: rotation 2s infinite linear; animation: rotation 2s infinite linear; } @-webkit-keyframes rotation { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); } } @keyframes rotation { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); } } /* Content Bottom Buttons */ .cartflows-setup-actions { display: flex; margin-bottom: 1.5em; } .cartflows-setup-wizard .cartflows-setup-wizard-actions, .cartflows-setup .cartflows-setup-actions { justify-content: space-between; } .cartflows-setup-wizard .cartflows-setup-wizard-actions .button, .cartflows-setup .cartflows-setup-actions .button { font-size: 1em; padding: .5em 1em; line-height: 1em; margin-right: 0; margin-bottom: 0; height: auto; border-radius: 2px; text-shadow: none; box-shadow: none; } .cartflows-setup-wizard .cartflows-setup-wizard-actions .skip-button, .cartflows-setup .cartflows-setup-actions .skip-button { margin-left: 10px; margin-right: 0; } .cartflows-setup .button.button-next{ margin-right: 10px; } .wp-core-ui.cartflows-setup .button.button-large{ border-color: #ccc; opacity: 1; height: auto; line-height: 2.5; padding: 0 1.2em; } .cartflows-setup-wizard .cartflows-setup-wizard-actions .button.button-primary.disabled, .cartflows-setup .cartflows-setup-actions .button.button-primary:disabled, .cartflows-setup .cartflows-setup-actions .button.button-secondary [disabled]{ background: rgb(241, 99, 52, 0.8) !important; border-color: rgb(241, 99, 52, 0.8) !important; color: #fff !important; } .cartflows-setup-wizard .cartflows-setup-wizard-actions .button.button-primary, .cartflows-setup .cartflows-setup-actions .button.button-primary, .cartflows-setup .cartflows-setup-actions .button.button-secondary, .cartflows-setup .cartflows-setup-actions .button-primary.active, .cartflows-setup .cartflows-setup-actions .button-primary.active:hover, .cartflows-setup .cartflows-setup-actions .button-primary.active:focus{ background: #f16334; border-color: #f16334; opacity: 1; height: auto; line-height: 2.5; padding: 0 1.2em; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; transform: translateY(0px); } .wp-core-ui.cartflows-setup .button.button-primary.button-hero, .wp-core-ui.cartflows-setup .button.button-primary.button-hero:active{ box-shadow: 0 2px 0 #f16334; background: #f16334; border-color: #f16334; text-shadow: none; transform: translate(0px); } .aiosrs-pro-return-to-dashboard { font-size: .85em; color: #b5b5b5; margin: 1.18em 0; display: block; text-align: center } /* Theme Config Page */ .wp-core-ui .aiosrs-pro-basic-config .ast-color-picker { vertical-align: top; margin-right: 7px; } .wp-core-ui .aiosrs-pro-basic-config .wp-picker-clear { width: 70px; } /* Ready Page */ .cartflows-setup-wizard-content .twitter-share-button, .cartflows-setup-content .twitter-share-button { float: right } /** * Site Identity */ .cartflows-setup-wizard-content select, .cartflows-setup-content select, .cartflows-setup-wizard-content input, .cartflows-setup-content input { border: 1px solid #f1f1f1; padding: 1em; border-radius: 3px; font-size: 14px; } .cartflows-setup .cartflows-setup-message input{ width: 100%; height: 45px; } .wp-picker-active .wp-picker-holder { position: absolute; z-index: 9; } .cartflows-setup-wizard-next-steps .button-hero:last-child, .cartflows-setup-next-steps .button-hero:last-child { margin-bottom: 0em; } .cartflows-setup-wizard-next-steps .button-hero, .cartflows-setup-next-steps .button-hero { margin-bottom: 1em; } .wcf-wizard-next-steps { border: 1px solid #eee; border-radius: 4px; list-style: none; padding: 0; margin-bottom: 2em; } .wcf-wizard-next-steps .wcf-wizard-next-step-item:first-child { border-top: 0; } .wcf-wizard-next-steps .wcf-wizard-next-step-item { display: -webkit-box; display: flex; border-top: 1px solid #eee; } .wcf-wizard-next-steps li { padding: 0; } .wcf-wizard-next-steps .wcf-wizard-next-step-description { -webkit-box-flex: 1; flex-grow: 1; margin: 1.5em; }.wcf-wizard-next-steps .wcf-wizard-next-step-action { -webkit-box-flex: 0; flex-grow: 0; display: -webkit-box; display: flex; -webkit-box-align: center; align-items: center; } .wcf-wizard-next-steps p.next-step-heading { margin: 0; font-size: .95em; font-weight: 400; font-variant: all-petite-caps; } .wc-setup-content p { margin: 20px 0; font-size: 1em; line-height: 1.75em; color: #666; }.wcf-wizard-next-steps h3.next-step-description { margin: 0; font-size: 16px; font-weight: 600; } .wc-setup-content h1, .wc-setup-content h2, .wc-setup-content h3, .wc-setup-content table { margin: 0 0 20px; border: 0; padding: 0; color: #666; clear: none; font-weight: 500; }.wcf-wizard-next-steps p.next-step-extra-info { margin: 0; } .wc-setup-content p:last-child { margin-bottom: 0; } .wc-setup-content p { margin: 20px 0; font-size: 1em; line-height: 1.75em; color: #666; }.wcf-wizard-next-steps .wcf-wizard-next-step-action .button { margin: 1em 1.5em; } .cartflows-setup-content .wc-setup-actions { overflow: hidden; margin: 20px 0 0; position: relative; } /** * Step: Last */ .cartflows-setup-wizard-next-steps-last ul, .cartflows-setup-next-steps-last ul { padding: 0; } .cartflows-setup-wizard-next-steps-last li i, .cartflows-setup-next-steps-last li i { padding-right: 10px; } .cartflows-setup-wizard-next-steps-last li, .cartflows-setup-next-steps-last li { list-style-type: none; padding: 0; } /** * Schema template */ .aiosrs-pro-basic-config .aiosrs-pro-schema-temp-wrap { display: inline-block; background: #f1f1f1; border: 1px solid #d8d8d8; padding: 10px 5px; width: calc( 33% - 8px); text-align: center; margin-right: 10px; margin-bottom: 10px; cursor: pointer; box-sizing: border-box; overflow: hidden; vertical-align: middle; font-size: 16px; } .aiosrs-pro-basic-config .aiosrs-pro-schema-temp-wrap:nth-child(3n) { margin-right:0; } .aiosrs-pro-basic-config .aiosrs-pro-schema-temp-wrap.selected, .aiosrs-pro-basic-config .aiosrs-pro-schema-temp-wrap:hover { background: #d6d6d6; border-color: #b9b9b9; } .aiosrs-pro-basic-config .aiosrs-pro-schema-temp-wrap i { font-size: 18px; height: 18px; vertical-align: middle; display: block; margin: auto; } .aiosrs-pro-basic-config td { padding: 0; } .cartflows-setup-wizard-content .cartflows-table, .cartflows-setup-content .cartflows-table { border: 1px solid #f1f1f1; border-radius: 4px; } .cartflows-setup-wizard-content .form-table th, .cartflows-setup-content .aiosrs-pro-schema-ready th, .cartflows-setup-wizard-content .form-table td, .cartflows-setup-content .aiosrs-pro-schema-ready td, .cartflows-setup-wizard-content .form-table .button-hero, .cartflows-setup-content .aiosrs-pro-schema-ready .button-hero { font-size: 16px; font-size: 1rem; } .cartflows-setup-wizard-content .aiosrs-pro-schema-ready td, .cartflows-setup-content .aiosrs-pro-schema-ready td { padding-right: 0; } .cartflows-setup-wizard .wizard-close-link, .cartflows-setup .wizard-close-link { color: #ccc; box-shadow: none; } /** * Hide tooltip text */ .cartflows-setup-wizard .ui-helper-hidden-accessible, .cartflows-setup .ui-helper-hidden-accessible { display: none; } .cartflows-setup-wizard .ui-widget-content.bsf-aiosrs-schema-ui-tooltip, .cartflows-setup .ui-widget-content.bsf-aiosrs-schema-ui-tooltip { font-size: 14px; } .aiosrs-pro-schema-ready .button-primary.button-hero { text-align: center; } /** * Schema Pro On-Boarding */ .cartflows-setup-wizard .cartflows-setup-wizard-content .button-next, .cartflows-setup-wizard-content.welcome-content-wrap .button-close { margin-left: 10px; } .cartflows-setup-wizard-content.social-profiles-content-wrap input[type="text"] { width: 100%; } .cartflows-setup-wizard-content.success-content-wrap .form-table td { width: 45%; text-align: center; padding-right: 0; } .cartflows-setup-wizard-content.success-content-wrap .form-table td.space { width: 10%; } .cartflows-setup-wizard-content.general-setting-content-wrap .form-table select { min-width: 50%; } .cartflows-setup-wizard-content.general-setting-content-wrap .form-table input[type="text"] { width: 100%; } .cartflows-setup-wizard-content.general-setting-content-wrap .custom-field-wrapper { display: inline-block; width: 48%; vertical-align: middle; } .cartflows-setup-wizard-content.general-setting-content-wrap .site-logo-custom-wrap { vertical-align: top; } /** * Custom Image Select */ .cartflows-setup-wizard-content.general-setting-content-wrap .image-field-wrap { position: relative; display: inline-block; } .cartflows-setup-wizard-content.general-setting-content-wrap .aiosrs-image-select .dashicons { font-size: 1.2em; width: 1em; height: 1em; line-height: 1em; margin-right: 5px; vertical-align: middle; } .cartflows-setup-wizard-content.general-setting-content-wrap .aiosrs-image-remove { display:none; position: absolute; background: rgba(255,255,255,.7); right: 0; } .cartflows-setup-wizard-content.general-setting-content-wrap .aiosrs-image-remove { font-size: 15px; width: 1em; height: 1em; } .cartflows-setup-wizard-content.general-setting-content-wrap .bsf-custom-image-selected .aiosrs-image-select { display: none; } .cartflows-setup-wizard-content.general-setting-content-wrap .bsf-custom-image-selected .aiosrs-image-remove { display: inline-block; } .cartflows-setup-wizard-content.general-setting-content-wrap .bsf-custom-image-selected .aiosrs-image-select.img { max-width: 100%; display: inline-block; } .cartflows-setup-wizard-content.general-setting-content-wrap .bsf-custom-image-selected .aiosrs-image-select.img img { max-height: 50px; } .cartflows-setup-wizard-content.general-setting-content-wrap .bsf-custom-image-selected .aiosrs-image-select.img img { vertical-align: middle; max-width: 300px; } .close-button-wrapper { text-align: center; margin: 1em 0; } .close-button-wrapper a.button-close .dashicons { vertical-align: middle; font-size: 1.3em; line-height: .9; width: 1em; height: 1em; } .close-button-wrapper .button { font-size: 1em; padding: 5px 15px; height: auto; background: #fff; } .cartflows-setup-wizard-content.welcome-content-wrap ul { margin-top: 0; } .cartflows-setup-wizard-content.welcome-content-wrap ul li { font-size: inherit; color: #666; } .cartflows-setup-wizard-content .no-margin { margin: 0 auto; } .cartflows-setup-wizard-content.global-schemas-content-wrap { overflow: initial; } .cartflows-setup-wizard-content.global-schemas-content-wrap .cartflows-setup-wizard-actions { padding-bottom: 24px; margin-bottom: 0; } /* Meta Box Heading ------------------------------------------------------*/ #aiosrs-schema-settings .inside { margin: 0; padding: 0; } #aiosrs-schema-settings .nav-tab-wrapper { border-bottom: 0; } #aiosrs-schema-settings .nav-tab-wrapper ul { margin: 0; } /* Tooltips */ .cartflows-heading-help { color: #b3b3b3; float: right; font-size: 18px; cursor: help; } .ui-widget-content.bsf-aiosrs-schema-ui-tooltip { background: #333; border-width: 1px; border-color: #333; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 1px 0px 2px 0px rgba(214, 214, 214, 0.5); box-shadow: 1px 0px 2px 0px rgba(214, 214, 214, 0.5); color: #dedede; max-width: 250px; text-align: center; padding: 7px; text-rendering: optimizeLegibility; text-shadow: none; z-index: 9999; } /* Table */ .cartflows-table { border: none; border-bottom: 5px solid #f0f0f0; } .cartflows-.widefat { border-width: 0; border-bottom-width: 2px; } .cartflows-.widefat:last-child { border-bottom-width: 1px; } /* Rows */ .cartflows-row td:before, .cartflows-row td:after { display: table; content: " "; } .cartflows-row td:after { clear: both; } .cartflows-row td { zoom: 1; vertical-align: middle; } .cartflows-row td * { vertical-align: middle; } .cartflows-row:last-child td { border-bottom: none; } /* Row Heading */ .cartflows-row-heading { border-right: 1px solid #f1f1f1; padding: 15px; width: 25%; vertical-align: middle; } .cartflows-row-heading label { display: inline-block; font-size: 13px; line-height: 1.4em; font-weight: bold; padding: 0; margin: 0 0 3px; color: #333; } /* Row Content */ .cartflows-table .cartflows-row-content { padding: 15px 10px; position: relative; width: 75%; } .cartflows-row-content p:last-child { margin-bottom: 0; } .bsf-aiosrs-schema-padding { width: 110px; } .bsf-aiosrs-schema-padding-bottom-wrap { margin-top: 5px; } /* Row Inputs */ .cartflows-row-content select { width: 100%; } .cartflows-row-content .bsf-aiosrs-schema-action-desc.ast-no-desc { margin-top: 0; } .cartflows-row-content .bsf-aiosrs-schema-action-desc { margin-top: 10px; } /* Settings Meta Box ------------------------------------------------------*/ #bsf-aiosrs-schema-settings .inside { margin: 0; padding: 0; } /* Builder Buttons Meta Box ------------------------------------------------------*/ #bsf-aiosrs-schema-buttons .inside { margin: 0; padding: 15px; } #bsf-aiosrs-schema-buttons .button { margin-right: 5px; } /* Rule Settings ------------------------------------------------------*/ /* Rule Forms */ .bsf-aiosrs-schema-saved-rule { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; padding: 0 0 8px 0; } .bsf-aiosrs-schema-saved-rule-select { width: 100%; } .bsf-aiosrs-schema-rule-objects { display: none; } .bsf-aiosrs-schema-rule-objects-visible { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; } .cartflows-row-content .bsf-aiosrs-schema-rule-objects-visible select { width: 50%; } .bsf-aiosrs-schema-rule-objects-visible .bsf-aiosrs-schema-rule-objects { display: inline; margin-left: 7px; } .bsf-aiosrs-schema-remove-rule-button { display: none; margin-top: 5px; text-align: right; width: 33px; } .bsf-aiosrs-schema-remove-rule { color: #000; cursor: pointer; opacity: 0.2; } .bsf-aiosrs-schema-remove-rule:hover { color: #d54e21; opacity: 1; } .bsf-aiosrs-schema-add-rule { float: left; margin-right: 8px; min-width: 150px; } .bsf-aiosrs-schema-add-rule .button { text-align: center; width: 100%; } /* Location Rules */ .bsf-aiosrs-schema-locations-form { display: none; } /* Exclusion Rules */ .bsf-aiosrs-schema-exclusion-rules { display: none; } /* Color Picker */ .cartflows-row .wp-picker-holder { position: absolute; z-index: 1; } .cartflows-row .iris-border .iris-picker-inner { right: 0; } .cartflows-row-content .bsf-aiosrs-schema-type { width: auto; } .cartflows-table .bsf-aiosrs-schema-fixed-text-wrap, .cartflows-table .bsf-aiosrs-schema-custom-text-wrap { width: calc( 55% - 5px ); display: inline-block; } .cartflows-table .bsf-aiosrs-schema-meta-field { width: calc( 45% - 5px ); display: inline-block; } .cartflows-table .bsf-aiosrs-schema-custom-text-wrap input { width: 100%; } .cartflows-table .bsf-custom-remove-image, .cartflows-table .update-custom-image, .cartflows-table .bsf-hidden-field, .bsf-custom-image-selected button.bsf-custom-select-image { display: none; } .bsf-custom-image-selected .bsf-custom-remove-image { display: inline-block; } .select-custom-image, .bsf-custom-image-selected .update-custom-image { display: block; } .bsf-custom-remove-image .dashicons { padding: 0; } .bsf-custom-image-label { margin-left: 5px; display: inline-block; } .bsf-aiosrs-schema-specific-field-wrap { display: inline-block; width: 50%; } .bsf-aiosrs-guideline-link i { font-size: 1rem; width: auto; } /** * Repeater Style */ .aiosrs-pro-repeater-table { width: 100%; border: 1px solid #f1f1f1; padding: 10px; } .aiosrs-pro-repeater-table-wrap { position: relative; margin-bottom: 1em; } .cartflows-row:first-child { line-height: 0; height: 0; } .bsf-repeater-close { position: absolute; top: 0; right: 0; padding: 2px; border: 1px solid #f1f1f1; } .bsf-repeater-add-new-btn { float: right; width: 100px; } .aiosrs-pro-repeater-table .cartflows-row-heading, .aiosrs-pro-repeater-table .cartflows-row-content { border: 0; padding: 0; width: 100%; display: inline-block; } .aiosrs-pro-repeater-table .cartflows-row-heading label, .aiosrs-pro-repeater-table .cartflows-row-content { line-height: 1; } .aiosrs-pro-repeater-table .cartflows-row td:before, .aiosrs-pro-repeater-table .cartflows-row td:after { display: none; } .bsf-aiosrs-schema-type-wrap .aiosrs-pro-repeater-table-wrap:first-of-type:last-of-type .bsf-repeater-close { opacity: .3; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"; pointer-events: none; } .cartflows-row-repeater-type > .cartflows-row-heading { vertical-align: top; padding-top: 25px; } .wp-schema-pro-tooltip-wrapper { font-size: 14px; line-height: 18px; } .wp-schema-pro-tooltip-wrapper .wp-schema-pro-tooltip-icon { line-height: 1.5; vertical-align: middle; } .cartflows-setup-wizard-content.advanced-settings-content-wrap .label-wrapper{ display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } /* Text meant only for screen readers */ .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } input.wcf-error{ border: 1px solid #ff0000; }PK\jaI%l%l%admin/assets/css/setup-wizard-rtl.cssnuW+A html { background: #f1f1f1; margin: 0 20px; } body { /* background: #fff; */ color: #444; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; margin: 140px auto 25px; padding: 20px 20px 10px 20px; max-width: 700px; /* -webkit-font-smoothing: subpixel-antialiased; */ /* box-shadow: 0 1px 3px rgba(0,0,0,0.13); */ } a { color: #0073aa; } a:hover, a:active { color: #00a0d2; } a:focus { color: #124964; box-shadow: 0 0 0 1px #5b9dd9, 0 0 2px 1px rgba(30, 140, 190, .8); } *, :after, :before { box-sizing: border-box; } .ie8 a:focus { outline: #5b9dd9 solid 1px; } h1, h2 { clear: both; color: #666; font-size: 24px; padding: 0; padding-bottom: 7px; font-weight: 400; } h3 { font-size: 16px; } p, li, dd, dt { padding-bottom: 2px; font-size: 15px; line-height: 1.5; } code, .code { font-family: Consolas, Monaco, monospace; } ul, ol, dl { padding: 5px 22px 5px 5px; } a img { border:0 } abbr { border: 0; font-variant: normal; } fieldset { border: 0; padding: 0; margin: 0; } label { cursor: pointer; } #logo { margin: 6px 0 14px 0; padding: 0 0 7px 0; border-bottom: none; text-align:center } #logo a { background-image: url(../images/w-logo-blue.png?ver=20131202); background-image: none, url(../images/wordpress-logo.svg?ver=20131107); background-size: 84px; background-position: center top; background-repeat: no-repeat; color: #444; /* same as login.css */ height: 84px; font-size: 20px; font-weight: 400; line-height: 1.3em; margin: -130px auto 25px; padding: 0; text-decoration: none; width: 84px; text-indent: -9999px; outline: none; overflow: hidden; display: block; } #logo a:focus { box-shadow: none; } .step { margin: 20px 0 15px; } .step, th { text-align: right; padding: 0; } body { margin: 100px auto 100px auto; box-shadow: none; background: #f1f1f1; padding: 0; max-width: 800px; } a { text-decoration: none; } #cartflows-logo { border: 0; margin: 0 0 24px; padding: 0; text-align: center } #cartflows-logo img { max-width: 50%; } /* Wizard Steps */ .cartflows-setup-wizard-steps, .cartflows-setup-steps { padding: 0 0 24px; margin: 0; list-style: none; overflow: hidden; color: #ccc; width: 100%; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex } .cartflows-setup-wizard-steps li, .cartflows-setup-steps li { width: 33%; float: right; padding: 0 0 .8em; margin: 0; text-align: center; position: relative; border-bottom: 4px solid #ccc; line-height: 1.4em } .cartflows-setup-wizard-steps li:before, .cartflows-setup-steps li:before { content: ""; border: 7px solid #ccc; border-radius: 100%; width: 7px; height: 7px; position: absolute; bottom: 0; right: 50%; margin-right: -6px; margin-bottom: -8px; background: #fff } .cartflows-setup-wizard-steps li.active:after, .cartflows-setup-steps li.active:after { content: ""; border: 2px solid #fff; border-radius: 100%; width: 2px; height: 2px; position: absolute; bottom: 0; right: 50%; margin-right: -1px; margin-bottom: -3px; background: #fff; } .cartflows-setup-wizard-steps li.done:after, .cartflows-setup-steps li.done:after { content: "\f147"; width: auto; height: auto; position: absolute; bottom: -12px; color: #fff; right: 50%; margin-right: -7px; font-family: dashicons; margin-bottom: 0; } .cartflows-setup-wizard-steps li.active, .cartflows-setup-steps li.active { border-color: #f16334; color: #f16334 } .cartflows-setup-wizard-steps li.active:before, .cartflows-setup-steps li.active:before { border-color: #f16334 } .cartflows-setup-wizard-steps li.done, .cartflows-setup-steps li.done { border-color: #f16334; color: #f16334 } .cartflows-setup-wizard-steps li.done:before, .cartflows-setup-steps li.done:before { border-color: #f16334; background: #f16334 } .cartflows-setup-wizard-content a, .cartflows-setup-content a { color: #f16334 } .cartflows-setup-wizard-content a:focus, .cartflows-setup-content a:focus, .cartflows-setup-wizard-content a:hover, .cartflows-setup-content a:hover { color: #111 } /* Wizard Content */ .cartflows-setup-wizard-content, .cartflows-setup-content { box-shadow: 0 1px 3px rgba(0, 0, 0, .13); padding: 24px 24px 0; background: #fff; overflow: hidden; zoom: 1 } .cartflows-setup .cartflows-setup-message{ background: #f5f5f5; padding: 25px; } .cartflows-setup .cartflows-setup-extra-notice { text-align: center; font-size: 11px; margin: 10px 0px 0px auto; } .cartflows-setup .cartflows-setup-extra-notice span, .cartflows-setup .cartflows-setup-extra-notice a{ color: #ccc; } .cartflows-setup .cartflows-setup-extra-notice a{ text-decoration: underline; } .cartflows-setup .cartflows-setup-message .cartflows-setup-message-title { color: #696767; font-weight: 600; margin: 10px auto; } .cartflows-setup-wizard-content h1, .cartflows-setup-content h1, .cartflows-setup-wizard-content h2, .cartflows-setup-content h2, .cartflows-setup-wizard-content h3, .cartflows-setup-content h3, .cartflows-setup-wizard-content table, .cartflows-setup-content table { margin: 0 0 24px; border: 0; padding: 0; color: #666; clear: none } .cartflows-setup-wizard-content p, .cartflows-setup-content p { margin: 0 0 24px } .cartflows-setup-wizard-content p, .cartflows-setup-content p, .cartflows-setup-wizard-content table, .cartflows-setup-content table { font-size: 1em; line-height: 1.75em; color: #666 } .cartflows-setup-wizard-content .cartflows-table, .cartflows-setup-content .cartflows-table { width: 100%; } .cartflows-setup-wizard-content .form-table th, .cartflows-setup-content .form-table th { width: 40%; vertical-align: top; font-weight: 400 } .cartflows-setup-wizard-content .form-table td, .cartflows-setup-content .form-table td { vertical-align: top } .cartflows-setup-wizard-content .form-table td input, .cartflows-setup-content .form-table td input, .cartflows-setup-wizard-content .form-table td select, .cartflows-setup-content .form-table td select { box-sizing: border-box; color: inherit; } .cartflows-setup-wizard-content .form-table td input:not([type='checkbox']), .cartflows-setup-wizard-content .form-table td select { width: 50%; } .cartflows-setup-wizard-content .form-table td .description, .cartflows-setup-content .form-table td .description { line-height: 1.5em; display: block; margin-top: .25em; color: #999; font-style: italic } .cartflows-setup-wizard-content .form-table td .input-checkbox, .cartflows-setup-content .form-table td .input-checkbox, .cartflows-setup-wizard-content .form-table td .input-radio, .cartflows-setup-content .form-table td .input-radio { width: auto; box-sizing: inherit; padding: inherit; margin: 0 0 0 .5em; box-shadow: none } /* Update icon. */ .updating-message:before { margin-left: 5px; content: "\f463"; display: inline-block; font-size: 20px; line-height: 1; font-family: dashicons; text-decoration: inherit; font-weight: normal; font-style: normal; vertical-align: text-bottom; text-align: center; transition: color .1s ease-in 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* Spins the update icon. */ .updating-message:before { -webkit-animation: rotation 2s infinite linear; animation: rotation 2s infinite linear; } @-webkit-keyframes rotation { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(-359deg); transform: rotate(-359deg); } } @keyframes rotation { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(-359deg); transform: rotate(-359deg); } } /* Content Bottom Buttons */ .cartflows-setup-actions { display: flex; margin-bottom: 1.5em; } .cartflows-setup-wizard .cartflows-setup-wizard-actions, .cartflows-setup .cartflows-setup-actions { justify-content: space-between; } .cartflows-setup-wizard .cartflows-setup-wizard-actions .button, .cartflows-setup .cartflows-setup-actions .button { font-size: 1em; padding: .5em 1em; line-height: 1em; margin-left: 0; margin-bottom: 0; height: auto; border-radius: 2px; text-shadow: none; box-shadow: none; } .cartflows-setup-wizard .cartflows-setup-wizard-actions .skip-button, .cartflows-setup .cartflows-setup-actions .skip-button { margin-right: 10px; margin-left: 0; } .cartflows-setup .button.button-next{ margin-left: 10px; } .wp-core-ui.cartflows-setup .button.button-large{ border-color: #ccc; opacity: 1; height: auto; line-height: 2.5; padding: 0 1.2em; } .cartflows-setup-wizard .cartflows-setup-wizard-actions .button.button-primary.disabled, .cartflows-setup .cartflows-setup-actions .button.button-primary:disabled, .cartflows-setup .cartflows-setup-actions .button.button-secondary [disabled]{ background: rgb(241, 99, 52, 0.8) !important; border-color: rgb(241, 99, 52, 0.8) !important; color: #fff !important; } .cartflows-setup-wizard .cartflows-setup-wizard-actions .button.button-primary, .cartflows-setup .cartflows-setup-actions .button.button-primary, .cartflows-setup .cartflows-setup-actions .button.button-secondary, .cartflows-setup .cartflows-setup-actions .button-primary.active, .cartflows-setup .cartflows-setup-actions .button-primary.active:hover, .cartflows-setup .cartflows-setup-actions .button-primary.active:focus{ background: #f16334; border-color: #f16334; opacity: 1; height: auto; line-height: 2.5; padding: 0 1.2em; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; transform: translateY(0px); } .wp-core-ui.cartflows-setup .button.button-primary.button-hero, .wp-core-ui.cartflows-setup .button.button-primary.button-hero:active{ box-shadow: 0 2px 0 #f16334; background: #f16334; border-color: #f16334; text-shadow: none; transform: translate(0px); } .aiosrs-pro-return-to-dashboard { font-size: .85em; color: #b5b5b5; margin: 1.18em 0; display: block; text-align: center } /* Theme Config Page */ .wp-core-ui .aiosrs-pro-basic-config .ast-color-picker { vertical-align: top; margin-left: 7px; } .wp-core-ui .aiosrs-pro-basic-config .wp-picker-clear { width: 70px; } /* Ready Page */ .cartflows-setup-wizard-content .twitter-share-button, .cartflows-setup-content .twitter-share-button { float: left } /** * Site Identity */ .cartflows-setup-wizard-content select, .cartflows-setup-content select, .cartflows-setup-wizard-content input, .cartflows-setup-content input { border: 1px solid #f1f1f1; padding: 1em; border-radius: 3px; font-size: 14px; } .cartflows-setup .cartflows-setup-message input{ width: 100%; height: 45px; } .wp-picker-active .wp-picker-holder { position: absolute; z-index: 9; } .cartflows-setup-wizard-next-steps .button-hero:last-child, .cartflows-setup-next-steps .button-hero:last-child { margin-bottom: 0em; } .cartflows-setup-wizard-next-steps .button-hero, .cartflows-setup-next-steps .button-hero { margin-bottom: 1em; } .wcf-wizard-next-steps { border: 1px solid #eee; border-radius: 4px; list-style: none; padding: 0; margin-bottom: 2em; } .wcf-wizard-next-steps .wcf-wizard-next-step-item:first-child { border-top: 0; } .wcf-wizard-next-steps .wcf-wizard-next-step-item { display: -webkit-box; display: flex; border-top: 1px solid #eee; } .wcf-wizard-next-steps li { padding: 0; } .wcf-wizard-next-steps .wcf-wizard-next-step-description { -webkit-box-flex: 1; flex-grow: 1; margin: 1.5em; }.wcf-wizard-next-steps .wcf-wizard-next-step-action { -webkit-box-flex: 0; flex-grow: 0; display: -webkit-box; display: flex; -webkit-box-align: center; align-items: center; } .wcf-wizard-next-steps p.next-step-heading { margin: 0; font-size: .95em; font-weight: 400; font-variant: all-petite-caps; } .wc-setup-content p { margin: 20px 0; font-size: 1em; line-height: 1.75em; color: #666; }.wcf-wizard-next-steps h3.next-step-description { margin: 0; font-size: 16px; font-weight: 600; } .wc-setup-content h1, .wc-setup-content h2, .wc-setup-content h3, .wc-setup-content table { margin: 0 0 20px; border: 0; padding: 0; color: #666; clear: none; font-weight: 500; }.wcf-wizard-next-steps p.next-step-extra-info { margin: 0; } .wc-setup-content p:last-child { margin-bottom: 0; } .wc-setup-content p { margin: 20px 0; font-size: 1em; line-height: 1.75em; color: #666; }.wcf-wizard-next-steps .wcf-wizard-next-step-action .button { margin: 1em 1.5em; } .cartflows-setup-content .wc-setup-actions { overflow: hidden; margin: 20px 0 0; position: relative; } /** * Step: Last */ .cartflows-setup-wizard-next-steps-last ul, .cartflows-setup-next-steps-last ul { padding: 0; } .cartflows-setup-wizard-next-steps-last li i, .cartflows-setup-next-steps-last li i { padding-left: 10px; } .cartflows-setup-wizard-next-steps-last li, .cartflows-setup-next-steps-last li { list-style-type: none; padding: 0; } /** * Schema template */ .aiosrs-pro-basic-config .aiosrs-pro-schema-temp-wrap { display: inline-block; background: #f1f1f1; border: 1px solid #d8d8d8; padding: 10px 5px; width: calc( 33% - 8px); text-align: center; margin-left: 10px; margin-bottom: 10px; cursor: pointer; box-sizing: border-box; overflow: hidden; vertical-align: middle; font-size: 16px; } .aiosrs-pro-basic-config .aiosrs-pro-schema-temp-wrap:nth-child(3n) { margin-left:0; } .aiosrs-pro-basic-config .aiosrs-pro-schema-temp-wrap.selected, .aiosrs-pro-basic-config .aiosrs-pro-schema-temp-wrap:hover { background: #d6d6d6; border-color: #b9b9b9; } .aiosrs-pro-basic-config .aiosrs-pro-schema-temp-wrap i { font-size: 18px; height: 18px; vertical-align: middle; display: block; margin: auto; } .aiosrs-pro-basic-config td { padding: 0; } .cartflows-setup-wizard-content .cartflows-table, .cartflows-setup-content .cartflows-table { border: 1px solid #f1f1f1; border-radius: 4px; } .cartflows-setup-wizard-content .form-table th, .cartflows-setup-content .aiosrs-pro-schema-ready th, .cartflows-setup-wizard-content .form-table td, .cartflows-setup-content .aiosrs-pro-schema-ready td, .cartflows-setup-wizard-content .form-table .button-hero, .cartflows-setup-content .aiosrs-pro-schema-ready .button-hero { font-size: 16px; font-size: 1rem; } .cartflows-setup-wizard-content .aiosrs-pro-schema-ready td, .cartflows-setup-content .aiosrs-pro-schema-ready td { padding-left: 0; } .cartflows-setup-wizard .wizard-close-link, .cartflows-setup .wizard-close-link { color: #ccc; box-shadow: none; } /** * Hide tooltip text */ .cartflows-setup-wizard .ui-helper-hidden-accessible, .cartflows-setup .ui-helper-hidden-accessible { display: none; } .cartflows-setup-wizard .ui-widget-content.bsf-aiosrs-schema-ui-tooltip, .cartflows-setup .ui-widget-content.bsf-aiosrs-schema-ui-tooltip { font-size: 14px; } .aiosrs-pro-schema-ready .button-primary.button-hero { text-align: center; } /** * Schema Pro On-Boarding */ .cartflows-setup-wizard .cartflows-setup-wizard-content .button-next, .cartflows-setup-wizard-content.welcome-content-wrap .button-close { margin-right: 10px; } .cartflows-setup-wizard-content.social-profiles-content-wrap input[type="text"] { width: 100%; } .cartflows-setup-wizard-content.success-content-wrap .form-table td { width: 45%; text-align: center; padding-left: 0; } .cartflows-setup-wizard-content.success-content-wrap .form-table td.space { width: 10%; } .cartflows-setup-wizard-content.general-setting-content-wrap .form-table select { min-width: 50%; } .cartflows-setup-wizard-content.general-setting-content-wrap .form-table input[type="text"] { width: 100%; } .cartflows-setup-wizard-content.general-setting-content-wrap .custom-field-wrapper { display: inline-block; width: 48%; vertical-align: middle; } .cartflows-setup-wizard-content.general-setting-content-wrap .site-logo-custom-wrap { vertical-align: top; } /** * Custom Image Select */ .cartflows-setup-wizard-content.general-setting-content-wrap .image-field-wrap { position: relative; display: inline-block; } .cartflows-setup-wizard-content.general-setting-content-wrap .aiosrs-image-select .dashicons { font-size: 1.2em; width: 1em; height: 1em; line-height: 1em; margin-left: 5px; vertical-align: middle; } .cartflows-setup-wizard-content.general-setting-content-wrap .aiosrs-image-remove { display:none; position: absolute; background: rgba(255,255,255,.7); left: 0; } .cartflows-setup-wizard-content.general-setting-content-wrap .aiosrs-image-remove { font-size: 15px; width: 1em; height: 1em; } .cartflows-setup-wizard-content.general-setting-content-wrap .bsf-custom-image-selected .aiosrs-image-select { display: none; } .cartflows-setup-wizard-content.general-setting-content-wrap .bsf-custom-image-selected .aiosrs-image-remove { display: inline-block; } .cartflows-setup-wizard-content.general-setting-content-wrap .bsf-custom-image-selected .aiosrs-image-select.img { max-width: 100%; display: inline-block; } .cartflows-setup-wizard-content.general-setting-content-wrap .bsf-custom-image-selected .aiosrs-image-select.img img { max-height: 50px; } .cartflows-setup-wizard-content.general-setting-content-wrap .bsf-custom-image-selected .aiosrs-image-select.img img { vertical-align: middle; max-width: 300px; } .close-button-wrapper { text-align: center; margin: 1em 0; } .close-button-wrapper a.button-close .dashicons { vertical-align: middle; font-size: 1.3em; line-height: .9; width: 1em; height: 1em; } .close-button-wrapper .button { font-size: 1em; padding: 5px 15px; height: auto; background: #fff; } .cartflows-setup-wizard-content.welcome-content-wrap ul { margin-top: 0; } .cartflows-setup-wizard-content.welcome-content-wrap ul li { font-size: inherit; color: #666; } .cartflows-setup-wizard-content .no-margin { margin: 0 auto; } .cartflows-setup-wizard-content.global-schemas-content-wrap { overflow: initial; } .cartflows-setup-wizard-content.global-schemas-content-wrap .cartflows-setup-wizard-actions { padding-bottom: 24px; margin-bottom: 0; } /* Meta Box Heading ------------------------------------------------------*/ #aiosrs-schema-settings .inside { margin: 0; padding: 0; } #aiosrs-schema-settings .nav-tab-wrapper { border-bottom: 0; } #aiosrs-schema-settings .nav-tab-wrapper ul { margin: 0; } /* Tooltips */ .cartflows-heading-help { color: #b3b3b3; float: left; font-size: 18px; cursor: help; } .ui-widget-content.bsf-aiosrs-schema-ui-tooltip { background: #333; border-width: 1px; border-color: #333; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: -1px 0px 2px 0px rgba(214, 214, 214, 0.5); box-shadow: -1px 0px 2px 0px rgba(214, 214, 214, 0.5); color: #dedede; max-width: 250px; text-align: center; padding: 7px; text-rendering: optimizeLegibility; text-shadow: none; z-index: 9999; } /* Table */ .cartflows-table { border: none; border-bottom: 5px solid #f0f0f0; } .cartflows-.widefat { border-width: 0; border-bottom-width: 2px; } .cartflows-.widefat:last-child { border-bottom-width: 1px; } /* Rows */ .cartflows-row td:before, .cartflows-row td:after { display: table; content: " "; } .cartflows-row td:after { clear: both; } .cartflows-row td { zoom: 1; vertical-align: middle; } .cartflows-row td * { vertical-align: middle; } .cartflows-row:last-child td { border-bottom: none; } /* Row Heading */ .cartflows-row-heading { border-left: 1px solid #f1f1f1; padding: 15px; width: 25%; vertical-align: middle; } .cartflows-row-heading label { display: inline-block; font-size: 13px; line-height: 1.4em; font-weight: bold; padding: 0; margin: 0 0 3px; color: #333; } /* Row Content */ .cartflows-table .cartflows-row-content { padding: 15px 10px; position: relative; width: 75%; } .cartflows-row-content p:last-child { margin-bottom: 0; } .bsf-aiosrs-schema-padding { width: 110px; } .bsf-aiosrs-schema-padding-bottom-wrap { margin-top: 5px; } /* Row Inputs */ .cartflows-row-content select { width: 100%; } .cartflows-row-content .bsf-aiosrs-schema-action-desc.ast-no-desc { margin-top: 0; } .cartflows-row-content .bsf-aiosrs-schema-action-desc { margin-top: 10px; } /* Settings Meta Box ------------------------------------------------------*/ #bsf-aiosrs-schema-settings .inside { margin: 0; padding: 0; } /* Builder Buttons Meta Box ------------------------------------------------------*/ #bsf-aiosrs-schema-buttons .inside { margin: 0; padding: 15px; } #bsf-aiosrs-schema-buttons .button { margin-left: 5px; } /* Rule Settings ------------------------------------------------------*/ /* Rule Forms */ .bsf-aiosrs-schema-saved-rule { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; padding: 0 0 8px 0; } .bsf-aiosrs-schema-saved-rule-select { width: 100%; } .bsf-aiosrs-schema-rule-objects { display: none; } .bsf-aiosrs-schema-rule-objects-visible { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; } .cartflows-row-content .bsf-aiosrs-schema-rule-objects-visible select { width: 50%; } .bsf-aiosrs-schema-rule-objects-visible .bsf-aiosrs-schema-rule-objects { display: inline; margin-right: 7px; } .bsf-aiosrs-schema-remove-rule-button { display: none; margin-top: 5px; text-align: left; width: 33px; } .bsf-aiosrs-schema-remove-rule { color: #000; cursor: pointer; opacity: 0.2; } .bsf-aiosrs-schema-remove-rule:hover { color: #d54e21; opacity: 1; } .bsf-aiosrs-schema-add-rule { float: right; margin-left: 8px; min-width: 150px; } .bsf-aiosrs-schema-add-rule .button { text-align: center; width: 100%; } /* Location Rules */ .bsf-aiosrs-schema-locations-form { display: none; } /* Exclusion Rules */ .bsf-aiosrs-schema-exclusion-rules { display: none; } /* Color Picker */ .cartflows-row .wp-picker-holder { position: absolute; z-index: 1; } .cartflows-row .iris-border .iris-picker-inner { left: 0; } .cartflows-row-content .bsf-aiosrs-schema-type { width: auto; } .cartflows-table .bsf-aiosrs-schema-fixed-text-wrap, .cartflows-table .bsf-aiosrs-schema-custom-text-wrap { width: calc( 55% - 5px ); display: inline-block; } .cartflows-table .bsf-aiosrs-schema-meta-field { width: calc( 45% - 5px ); display: inline-block; } .cartflows-table .bsf-aiosrs-schema-custom-text-wrap input { width: 100%; } .cartflows-table .bsf-custom-remove-image, .cartflows-table .update-custom-image, .cartflows-table .bsf-hidden-field, .bsf-custom-image-selected button.bsf-custom-select-image { display: none; } .bsf-custom-image-selected .bsf-custom-remove-image { display: inline-block; } .select-custom-image, .bsf-custom-image-selected .update-custom-image { display: block; } .bsf-custom-remove-image .dashicons { padding: 0; } .bsf-custom-image-label { margin-right: 5px; display: inline-block; } .bsf-aiosrs-schema-specific-field-wrap { display: inline-block; width: 50%; } .bsf-aiosrs-guideline-link i { font-size: 1rem; width: auto; } /** * Repeater Style */ .aiosrs-pro-repeater-table { width: 100%; border: 1px solid #f1f1f1; padding: 10px; } .aiosrs-pro-repeater-table-wrap { position: relative; margin-bottom: 1em; } .cartflows-row:first-child { line-height: 0; height: 0; } .bsf-repeater-close { position: absolute; top: 0; left: 0; padding: 2px; border: 1px solid #f1f1f1; } .bsf-repeater-add-new-btn { float: left; width: 100px; } .aiosrs-pro-repeater-table .cartflows-row-heading, .aiosrs-pro-repeater-table .cartflows-row-content { border: 0; padding: 0; width: 100%; display: inline-block; } .aiosrs-pro-repeater-table .cartflows-row-heading label, .aiosrs-pro-repeater-table .cartflows-row-content { line-height: 1; } .aiosrs-pro-repeater-table .cartflows-row td:before, .aiosrs-pro-repeater-table .cartflows-row td:after { display: none; } .bsf-aiosrs-schema-type-wrap .aiosrs-pro-repeater-table-wrap:first-of-type:last-of-type .bsf-repeater-close { opacity: .3; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"; pointer-events: none; } .cartflows-row-repeater-type > .cartflows-row-heading { vertical-align: top; padding-top: 25px; } .wp-schema-pro-tooltip-wrapper { font-size: 14px; line-height: 18px; } .wp-schema-pro-tooltip-wrapper .wp-schema-pro-tooltip-icon { line-height: 1.5; vertical-align: middle; } .cartflows-setup-wizard-content.advanced-settings-content-wrap .label-wrapper{ display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } /* Text meant only for screen readers */ .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } input.wcf-error{ border: 1px solid #ff0000; }PK\7vK^^!admin/assets/css/global-admin.cssnuW+A/* * ************************************************ * Plugin Name: Cartflows * Plugin URL: https://cartflows.com/ * Description: CartFlows for WooCommerce. * Author: Brainstorm Force * Author URI: https://www.brainstormforce.com/ * Version: 1.0 * ************************************************ */ /** * ********************* * Cartflows Font Icon * ********************* */ @font-face { font-family: 'cartflows-logo-icon'; src: url('../fonts/cartflows-logo-icon.eot?kxnn1n'); src: url('../fonts/cartflows-logo-icon.eot?kxnn1n#iefix') format('embedded-opentype'), url('../fonts/cartflows-logo-icon.ttf?kxnn1n') format('truetype'), url('../fonts/cartflows-logo-icon.woff?kxnn1n') format('woff'), url('../fonts/cartflows-logo-icon.svg?kxnn1n#cartflows-logo-icon') format('svg'); font-weight: normal; font-style: normal; } .wcf-cartflows-logo-img [class^="cartflows-icon"], .wcf-cartflows-logo-img [class*=" cartflows-icon"], /* For Pro Compatibility */ [class^="cartflows-logo-icon"], [class*=" cartflows-logo-icon"]{ /* use !important to prevent issues with browser extensions that change fonts */ font-family: 'cartflows-logo-icon' !important; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .wcf-cartflows-logo-img .cartflows-icon:before, /* For Pro Compatibility */ .cartflows-logo-icon:before { content: "\e900"; color: #f16334; } /** * * Step Meta - All Page Css */ .post-type-cartflows_step #delete-action { display: none; } /* * ************************ * Post page Name & Button * ************************ */ .post-type-cartflows_flow .wrap{ margin: 25px 20px 0 2px; } .wcf-notice-back-edit-flow .dashicons { vertical-align: text-bottom; } .post-type-cartflows_flow .wcf-notice-back-edit-flow{ margin-top: 30px; } .post-type-cartflows_flow .wcf-notice-back-edit-flow .button-primary{ height: 30px; } .wcf-notice-back-edit-flow .dashicons-arrow-left-alt{ vertical-align: text-bottom; } /* * ************************ * Add Flow Popup Window * 1. Overlay * 2. Popup Box Alignment * 3. Buttons & Textbox * 4. wcf-choose-type-box * ************************ */ .wcf-overlay , .wcf-overlay-newstep { display: none; position: fixed; width: 100%; height: 100%; background: rgba(0,0,0,0.6); top: 0; left: 0; } .wcf-popup .wcf-popup-header{ padding: 12px 20px; overflow: hidden; } .wcf-popup .wcf-popup-header label{ color: #fff; font-weight: 600; float: left; } .wcf-popup, .wcf-popup-newstep { display: none; width: 600px; top: 50%; left: 50%; position: fixed; background: #ffffff; transform: translate( -50%, -50% ); padding: 0px; } .wcf-close , .wcf-close-newstep{ position: relative; width: 20px; height: 20px; float: right; background: transparent; color: #ffff; font-size: 18px; line-height: 14px; text-align: center; border-radius: 999px; cursor: pointer; } .wcf-close .dashicons-no-alt{ vertical-align: middle; } .wcf-content { text-align: left; padding: 20px;; } .wcf-submit-wrap { text-align: right; margin: 25px 0 0 0; } .wcf-overlay.show, .wcf-popup.show, .wcf-overlay-newstep.show, .wcf-popup-newstep.show { display: block; } .wcf-content input[type='text'] { background-color: transparent; box-shadow: none; border:none; border-bottom: 1px #ddd solid; padding: 10px 0 10px; width: 100%; font-size: 15px; } .wcf-content input[type='text']:focus { border-bottom: 1px #5b9dd9 solid; } .wcf-popup .wcf-choose-type-box{ width: 100%; position: relative; margin: 0 auto; text-align: center; padding: 0 0 15px 0; overflow: overlay; } .wcf-popup .wcf-choose-type-box .wcf-default-type-box, .wcf-popup .wcf-choose-type-box .wcf-import-type-box{ flex: 0 0 50%; width: 46%; float: left; padding: 10px; } .wcf-default-type-box .wcf-default-type-content, .wcf-import-type-box .wcf-import-type-content{ text-align: center; padding: 0 0px 15px; } .wcf-default-type-box .wcf-default-type-content h3, .wcf-import-type-box .wcf-import-type-content h3{ line-height: 1.4em; } .wcf-default-type-content:hover h3, .wcf-import-type-content:hover h3{ color: rgb(0, 133, 186, 1) } .wcf-default-type-content h3 .dashicons, .wcf-import-type-content h3 .dashicons{ vertical-align: middle; } .wcf-default-type-content .wcf-create-flow .dashicons-plus, .wcf-import-type-content .wcf-create-flow .dashicons-plus{ vertical-align: middle; } /** * ************************ * Flow Setting Meta Box * ************************ */ .wcf-tooltip-text{ background: #444; border-radius: 3px; color: #fff; height: auto; left: 56px; margin-top: 10px; max-width: 150px; position: absolute; padding: 6px 10px; top: auto; display: none; z-index: 10000; } .wcf-tooltip-text::before { border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 5px solid transparent; border-bottom: 5px solid #444; bottom: auto; content: " "; font-size: 0; left: 56px; line-height: 0; margin-left: -5px; position: absolute; top: -10px; width: 0; } .display_tool_tip{ display: block; } /*.wcf-tooltip::before { position: absolute; top: 48px; left: 53px; background-color: #444; border-radius: 5px; color: #fff; content: attr(data-tooltip); padding: 0.5rem; text-transform: none; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; width: 160px; height: auto; line-height: 1em; } .wcf-tooltip::after { position: absolute; top: auto; bottom: 170px; left: 115px; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 5px solid transparent; border-bottom: 5px solid #444; content: " "; font-size: 0; line-height: 0; margin-left: -5px; width: 0; } .wcf-tooltip.display_toot_tip::before, .wcf-tooltip.display_toot_tip::after { opacity: 1; -webkit-transition: all 0.75s ease; transition: all 0.75s ease; word-break: break-all; } .wcf-tooltip::before, .wcf-tooltip::after { color: #efefef; font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif; font-size: 13px; opacity: 0; pointer-events: none; text-align: center; }*/ .wcf-flow-sandbox-table .wcf-field-row .wcf-field-row-content{ width: 100%; } /** * ****************************************************** * Shortcode Box on the Head Section of Checkout Meta Box * ****************************************************** */ #field-wcf-shortcode{ display: none; margin-left: 5px; vertical-align: top; line-height: 0; } /* * ************************ * Css For * 1. Flow Metabox * 2. Textboxes * 3. Select * 4. Buttons * 5. Steps Boxes * ************************ */ /* * *************************************** * Flow Page Css (After removing meta box) * 1. Step Badges * *************************************** */ .wcf-flow-steps-meta-box{ margin-top: 20px; } .wcf-flow-steps-meta-box .wcf-flow-settings{ width: 100%; display: block; } .wcf-flow-steps-meta-box .wcf-new-step-badge { background-color: #0073aa; color: #fff; } .wcf-flow-steps-meta-box .wcf-new-step-badge, .wcf-flow-steps-meta-box .wcf-step-wrap .wcf-step .wcf-flow-badge, .wcf-flow-steps-meta-box .wcf-step-wrap.active .wcf-step .wcf-flow-badge{ color: #000; background-color: #E3E4E8; padding: 0.3em .6em 0.3em; font-size: 0.7em; font-weight: 600; border-radius: 0px; line-height: 0.7em; margin-left: 10px; text-align: center; vertical-align: middle; } #wcf-flow-settings .inside{ margin: 10px 0 0; } .wcf-flow-settings .wcf-flow-steps-data-wrap { padding: 0 1em 1.5em; } .wcf-flow-settings .wcf-flow-steps-wrap{ border-right:none; background-color: transparent; width: 100%; padding: 0px; } .wcf-flow-settings .wcf-step-left-content, .wcf-flow-settings .wcf-steps-action-buttons{ display: inline-block; width: 49%; vertical-align: middle; font-size: 13px; line-height: 3em; } .wcf-flow-settings .wcf-step-left-content{ text-align: left; } .wcf-step-left-content .dashicons{ vertical-align: middle; width: 1em; height: 1em; font-size: 1.5em; line-height: 1em; } .wcf-flow-settings .wcf-steps-action-buttons{ text-align: right; } .wcf-flow-settings .wcf-flow-steps-wrap .wcf-action-button{ display: inline-block; font-size: 1em; line-height: 1em; vertical-align: middle; text-align: center; margin-left: 15px; text-decoration: none; } .wcf-flow-settings .wcf-action-button .dashicons{ pointer-events: none; font-size: 1.5em; width: 1em; height: 1em; vertical-align: middle; } .wcf-flow-settings .wcf-flow-steps-wrap .wcf-action-button .wcf-step-act-btn-text { display: inline-block; line-height: 1.5em; } .wcf-flow-settings .wcf-flow-steps-wrap .wcf-step{ color: #444; border: none; background-color: #fff; box-shadow: 0px 0px 2px 0px #ddd; padding: 15px 10px; cursor: move; } .wcf-new-step-highlight{ border-left: 3px #0073aa solid; } .wcf-popup input[type='radio'] { margin-top: 0px; } .wcf-popup label{ font-size: 16px; } .wcf-step-wrap { margin-bottom: 15px; } #wcf-sandbox-settings .inside{ margin: 15px 0 10px; } .wcf-general-metabox-wrap .wcf-field-row{ display: inline-flex; width: 100%; } .wcf-general-metabox-wrap .wcf-field-desc { padding: 6px 0 0; } /* * ***************************** * Custom classes for common use * ***************************** */ #wcf-sandbox-settings.wcf-highlight { box-shadow: 0 0 0 99999px rgba(0, 0, 0, 0.8); position: relative; z-index: 9999; pointer-events: auto; transition: all 0.5s ease; } .pull-right{ float: right; } .pull-left{ float: left; } .text-error { border-bottom: 1px #FF5050 solid !important; } input[type="text"].error, input[type="text"].error:focus{ border-color: red; box-shadow: 0 0 2px rgba(30,140,190,0); } #show_error { font-style: italic; color: #FF5050 } .wp-ui-text-primary { color: #0073aa; } .wcf-column-left{ width: 25%; float: left; position: relative; max-width: 300px; } .wcf-column-right{ width: 75%; float: left; position: relative; background-color: #fff; } .wcf-import-step-content{ border-top: 1px #ddd solid; padding-top: 10px; margin-top: 30px; } /* * ************************ * Display Template div css * 1 Add, View & Import Buttons & Icons * ************************ */ .wcf-flow-steps-data-wrap .wcf-step-content a .dashicons { vertical-align: middle; } /* * ************************************************ * Meta Boxs (All) * 1. Setting Meta Box (#wcf-step-settings) * 2. Checkout layout Meta Box (#wcf-checkout-settings) * 3. Downsell Meta Box (#wcf-offer-settings) * 4. Thank You Meta Box (#wcf-thankyou-settings) * 5. Upsell Meta Box (#wcf-upsell-settings) * ************************************************ */ .wcf-repeat-notice, #wcf-checkout-settings .wcf-checkout-table .wcf-checkout-style .wcf-cs-fields .wcf-cs-checkbox-field .field-wcf-advance-options-fields{ border-top: 1px #ddd solid; margin-top: 10px; padding-top: 20px; } .wcf-repeat-notice p{ margin: 5px 0px; } /* * Inside Div css for all the metaboxes */ #wcf-ladning-settings .inside, #wcf-checkout-settings .inside, #wcf-offer-settings .inside, #wcf-upsell-settings .inside, #wcf-optin-settings .inside, #wcf-thankyou-settings .inside{ margin:0px; padding: 0px; line-height: 0.9em; } /** * **************************** * 1. Container * 2. Row * 3. Content Divs * 4. Button Divs * 5. Alignment Classes * **************************** */ .wcf-table-container{ display: inline-block; width: 100%; max-width: 100%; background-color: #fafafa; margin-top: 0px; line-height:1.2; } .wcf-column-right .wcf-field-section .wcf-field-section-heading{ color: #333; padding: 10px 0 5px; text-decoration: none; font-size: 15px; font-weight: 600; } .show_box { display: block!important; } .wcf-table-container .wcf-column-right .wcf-custom-field-box .wcf-field-row-content{ width: 100%; border:1px solid #e5e5e5; } .wcf-table-container .wcf-column-right .wcf-custom-field-box .wcf-cpf-row{ border:none; margin-bottom: 0px; } .wcf-table-container .wcf-column-right .wcf-custom-field-box .wcf-cpf-add-row{ padding: 0px 8px 10px; background-color: #f9f9f9; } .wcf-table-container .wcf-column-right .wcf-field-row-heading{ font-size: 12px; width: 30%; height: 100%; display: inline-block; line-height: 1.5em; vertical-align: middle; min-height: 28px; } .wcf-table-container .wcf-column-right .wcf-field-row-content{ width: auto; display: inline-block; font-size: 12px; vertical-align: middle; } .wcf-table-container .wcf-column-right .wcf-field-row-heading .dashicons { line-height: 1; margin-left: 5px; } /*.wcf-cb-fields{ width: 50%; float: left; }*/ .wcf-cb-fields, .wcf-sb-fields{ width: 50%; display: inline-block; position: relative; vertical-align: top; } .wcf-cb-fields .wcf-field-row-heading, .wcf-sb-fields .wcf-field-row-heading{ width: 50% !important; } .wcf-cb-fields .wcf-field-row-content, .wcf-sb-fields .wcf-field-row-content{ width: 50% !important; } .wcf-table-container .wcf-column-right .wcf-field-row .select2-container .select2-selection--single{ margin: 0px; } .wcf-table-container .wcf-column-right .wcf-field-row .select2-container .select2-selection--single .select2-selection__rendered{ outline: none; } .wcf-checkout-table .select2-container--default .select2-selection--single .select2-selection__clear{ display: block; } .wcf-table-container .wcf-column-right .wcf-field-row input[type="text"], .wcf-table-container .wcf-column-right .wcf-field-row input[type="number"], .wcf-table-container .wcf-column-right .wcf-field-row select, .wcf-table-container .wcf-column-right .wcf-field-row textarea, .wcf-table-container .wcf-column-right .wcf-field-row .select2-container--default{ width: 300px; max-width: 100%; } .wcf-table-container .wcf-column-right .wcf-field-row .wp-picker-container input[type=text].wp-color-picker{ width: 65px; } #wcf-step-settings .inside .wcf-checkout-table .field-wcf-step-type .wcf-field-row-content select{ border: none; border-bottom: 1px #ccc solid; box-shadow: none; padding: 5px; width: 30%; } /* * ************************************ * All Page Types Setting's Meta Box * Contains * Checkout Metabox * Upsell Metabox * Downsell Metabox * Thank You Metabox * ************************************ */ .wcf-table-container .wcf-tab-wrapper{ background: #fafafa; border:none; margin: 0px 0 0; } .wcf-table-container .wcf-tab-wrapper .wcf-tab{ background: transparent; border-bottom: 1px #eee solid; display: block; margin: 0; color: #0073aa; line-height: 1em; } .wcf-table-container .wcf-tab-wrapper .wcf-tab .wcf-tab-title{ margin-left: .200em; margin-right: .618em; } .wcf-table-container .wcf-tab-wrapper .wcf-tab.active{ background-color: #eee; color: #555; } .wcf-table-container .wcf-tab-wrapper .wcf-tab .dashicons{ font-size: initial; width: auto; height: auto; } .wcf-table-container .wcf-tab-content{ border: 1px #ddd solid; border-right: none; border-top: none; border-bottom: none; min-height: 227px; overflow: hidden; padding: 10px 0px; } .wcf-table-container .wcf-column-right .wcf-field-row, .wcf-table-container .wcf-column-right .wcf-field-row, .wcf-table-container .wcf-column-right .wcf-field-row, .wcf-table-container .wcf-column-right .wcf-field-row{ padding: 10px 20px; overflow: hidden; } .wcf-table-container .wcf-checkout-style .wcf-cs-fields-options, .wcf-table-container .wcf-checkout-style .wcf-cs-button-options{ display: none; } .wcf-repeatables-wrap .wcf-repeatable-row{ background: #fff; border:none; margin-bottom: 5px; } .wcf-repeatables-wrap .wcf-repeatable-row-standard-fields{ padding: 0px; } .wcf-repeatables-wrap .wcf-repeatable-row-standard-fields .wcf-repeatable-row-actions{ float: none; display: inline-block; text-align: center; margin-left: 15px; } .wcf-repeatables-wrap .wcf-repeatable-row-standard-fields .wcf-repeatable-remove{ vertical-align: middle; padding: 5px; line-height: inherit; font-size: 13px; } .wcf-repeatables-wrap .wcf-repeatable-row-standard-fields .wcf-repeatable-remove .dashicons{ vertical-align: middle; font-size: inherit; } .field-wcf-tq-advance-options-fields{ border-top: 1px solid #DDD; margin-top: 15px; } .wcf-table-container .wcf-column-right .field-wcf-hr-line { padding-left: 0; padding-right: 0; } .wcf-table-container .wcf-column-right .field-wcf-hr-line .wcf-field-row-content { width: 100%; } .wcf-table-container .wcf-radio-option { margin-bottom: 10px; } /** * ****************************** * Field - Post Meta Typography * ****************************** */ .wcf-metabox-wrap .select2-container--default .select2-selection--single { border: 1px solid #ddd; box-shadow: inset 0 1px 2px rgba( 0, 0, 0, 0.07 ); background-color: #fff; color: #32373c; outline: none; transition: 0.05s border-color ease-in-out; border-radius: 0; font-size: 13px; } .wcf-metabox-wrap .select2-container--default .select2-search--dropdown .select2-search__field { border: 1px solid #ddd; box-shadow: none; } /** * ************************ * Create Woo Product Start * ************************ */ .wcf-create-woo-iframe-opened{ overflow: hidden; } .wcf-create-woo-product-overlay{ position: fixed; height: 100%; width: 100%; top: 0; left: 0; background: rgba(0, 0, 0, 0.7); -webkit-transition: opacity 500ms; transition: opacity 500ms; visibility: hidden; opacity: 0; z-index: 9999; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-transition: none; transition: none; } .wcf-create-woo-product-overlay.open { visibility: visible; opacity: 1; z-index: 999999; } .wcf-create-woo-product-wrap{ max-width: 100%; background-color: transparent; position: relative; -webkit-border-radius: 3px; border-radius: 3px; top: 50%; margin: 0 auto; -ms-transform: translate(-50%, -35%); width: 90%; min-height: 85%; max-height: 85%; height: 85%; transform: translateY(-50%); z-index: 99999; } .wcf-create-woo-product-wrap:not(.product-loaded):before { content: ""; position: absolute; background: none !important; top: 50%; margin: 0 auto; text-align: center; color: #fff; left: 50%; width: 48px; height: 48px; display: block; border: 3px solid white; -webkit-border-radius: 50%; border-radius: 50%; border-right-color: transparent; border-left-color: transparent; -webkit-animation: wcf-admin-loader 575ms infinite linear; animation: wcf-admin-loader 575ms infinite linear; } .wcf-woo-product-iframe { max-width: 100%; width: 100%; min-height: 100%; height: 100%; background: #ffffff; } .wcf-close-create-woo-product{ background: #fff; border: 1px #fff solid; border-radius: 50%; color: #000; height: 25px; position: fixed; width: 25px; top: -10px; left: auto; z-index: 100000; cursor: pointer; right: -10px; font-size: 20px; line-height: 1.3; text-align: center; } .wcf-close-create-woo-product:before{ content: "\f158"; font-family: dashicons; } #wcf-create-woo-product iframe.wcf-create-woo-product-iframe #wpadminbar, #wcf-create-woo-product iframe.wcf-create-woo-product-iframe #adminmenumain{ display: none; } /** * ************************ * Create Woo Product End * ************************ */ /* * Display upgrade popup custom button */ .wcf-custom-add-new-button.button{ margin: 10px; } /** * Display upgrade popup CSS */ #cartflows-upgrade-notice-overlay { background: #000000b3; filter: alpha(opacity=70); position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 100050; } #cartflows-upgrade-notice-popup table { border: none !important; -webkit-box-shadow: none !important; box-shadow: none !important; } #cartflows-upgrade-notice-popup .inner { -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); background: #fff; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; position: fixed; background-color: #fff; z-index: 100059; text-align: left; top: 50%; left: 50%; width: 350px; -webkit-box-shadow: 0 3px 6px rgba( 0, 0, 0, 0.3 ); box-shadow: 0 3px 6px rgba( 0, 0, 0, 0.3 ); } #cartflows-upgrade-notice-popup .heading { float: left; font-weight: 600; line-height: 35px; overflow: hidden; padding: 0px 20px; text-overflow: ellipsis; white-space: nowrap; width: -webkit-calc( 100% - 40px ); width: calc( 100% - 40px ); background: #fff; font-size: 14px; border-bottom: 1px solid #e5e5e5; } .cartflows-close-popup-button{ border-left: 1px #eee solid; top: 3px; } .cartflows-close-popup-button:hover{ cursor: pointer; } #cartflows-upgrade-notice-popup .contents { clear: both; background: #f1f1f1; padding: 0px 10px; } #cartflows-upgrade-notice-popup .notice { margin: 0 20px 5px 20px; } #cartflows-upgrade-notice-popup .wcf-notice{ padding:10px; } /** * ****************************** * Media Query for 768 Devices * ****************************** */ @media only screen and (max-width: 768px) { .wcf-cb-fields, .wcf-sb-fields { width: 100%; display: block; position: relative; vertical-align: top; } } /** * Device Responsive Css * ****************************** */ @media only screen and (min-width: 1200px){ .wcf-column-left{ width: 300px; } .wcf-column-right{ width: calc( 100% - 300px ); } } @keyframes wcf-admin-loader { 100% { -webkit-transform: rotate(-360deg); transform: rotate(-360deg); } } @-webkit-keyframes wcf-admin-loader { 100% { -webkit-transform: rotate(-360deg); transform: rotate(-360deg); } } PK\n,admin/assets/css/admin-menu-settings-rtl.cssnuW+A.notice:not(.wcf-notice) { display: none; } .wcf-flex { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-content: center; -ms-flex-line-pack: center; align-content: center; } .form-field p.wcf-p { margin: 1em 0; } .wcf-container { max-width: 930px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; } .wcf-menu-page-wrapper .wrap { margin: 0 auto; } .wcf-container #poststuff h2 { padding: 12px 12px; } .wcf-container .postbox .hndle { background: #ffffff; border-bottom: 1px solid #e6e6e6; } .wcf-menu-page-wrapper{ right: -20px; position: relative; width: calc( 100% + 20px); } .wcf-menu-page-wrapper a { text-decoration: none; } .wcf-general-form-wrap { width: 680px; } .wcf-general-list .inside { padding: 0; margin: 0; } .wcf-list-section .wcf-widget-list li { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-content: center; -ms-flex-line-pack: center; align-content: center; padding: 10px 12px; -moz-box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1) inset; -webkit-box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1) inset; box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1) inset; margin-bottom: 0; } .wcf-list-section .wcf-widget-list li:nth-child(even) { background-color: #fbfbfb; } .wcf-list-section .wcf-widget-list .activate { border-right: 3px solid #008ec2; padding-right: 12px; } .wcf-widget-list a { text-decoration: none; } .wcf-widget-link-wrapper { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-content: center; -ms-flex-line-pack: center; align-content: center; display: -webkit-flex; -webkit-flex-direction: row-reverse; flex-direction: row-reverse; flex: auto; } .wcf-widget-list li a:before { display: inline-block; margin-left: 2px; font: normal 20px/1 'dashicons'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; vertical-align: top; } .wcf-widget-link-wrapper a:nth-child(even) { margin: 0 10px; } .wcf-container .postbox .hndle { background: #f7f7f7; border-bottom: 2px solid #e6e6e6; } .wcf-container .postbox ul{ margin: 0; } .wcf-widget-list a{ line-height: 1.6; } .wcf-widget-list a:focus{ box-shadow: none; } .wcf-branding-list{ margin:0; } /* Update icon. */ .wcf-widget-link-wrapper a.updating-message:before { color: #f56e28; content: "\f463"; } /* Spins the update icon. */ .wcf-widget-link-wrapper a.updating-message:before { -webkit-animation: rotation 2s infinite linear; animation: rotation 2s infinite linear; } /* Header */ .wcf-menu-page-header.general .wcf-container, .wcf-menu-page-header.branding .wcf-container, .wcf-container.wcf-general, .wcf-container.wcf-branding-wrapper { max-width: 930px; } .wcf-title { flex: auto; align-content: flex-start; text-align: right; } .wcf-title a, .wcf-title span { display: block; outline: none; box-shadow: none; font-size: 1.5rem; color: #333333; font-weight: 500; } .wcf-header-icon { width: 200px; vertical-align: bottom; } .wcf-top-links { flex: auto; text-align: left; font-weight: 500; } .wcf-menu-page-header { background-color: #fff; text-align: center; padding: 20px 0; margin-bottom: 20px; box-shadow: 0 1px 1px 0 rgba(0,0,0,.1); } .wcf-logo { max-width: 170px; } /* Spinner */ .wcf-button-spinner:before { font: normal 20px/.5 dashicons; speak: none; display: inline-block; padding: 0; top: 8px; right: -4px; position: relative; vertical-align: top; content: "\f463"; } .wcf-button-spinner.loading:before { -webkit-animation: rotation 1s infinite linear; animation: rotation 1s infinite linear; } /* New CSS */ .wcf-setting-tab-wrapper .wcf-setting-tab { padding: 10px 15px; display: flex; flex-wrap: wrap; } .wcf-setting-tab-wrapper .wcf-tab-title { width: 40%; } .wcf-setting-tab-wrapper .wcf-tab-link-wrapper { width: 60%; text-align: left; } /** Settings Page - Introduction Box */ #wcf-menu-page .introduction iframe { width: 100%; vertical-align: middle; } #wcf-menu-page .introduction .iframe-wrap { margin: -6px -12px 0px -12px; } /* Form Fields */ .form-field-label, .form-field-data { display: inline-block; padding-left: 5px; } .form-field-actions { display: inline-block; margin-right: 15px; } .form-field-actions a { margin: 0 0 0 12px; } .form-field-actions span.dashicons { margin: 0 0 0 5px; } .form-field-desc { margin: 5px 0 0; } #poststuff .general-settings-form .inside { margin: 2em 0 0; } .general-settings-form .form-field, .postbox-container .form-field { border-bottom: 1px solid #e6e6e6; display: block; width: 100%; margin: 0 0 1em; padding: 0 0 1em; } .general-settings-form .form-field:first-child { margin: 1em 0 1em; } .general-settings-form .form-field:last-child { border: none; } .postbox-container .form-field{ border: none; } .wcf-log-container { word-break: break-all; line-height: 1.5; text-align: right; background-color: #fff; padding: 15px; border-radius: 3px; max-height: 400px; overflow-y: scroll; margin: 20px auto; } .wcf-log-container > pre { display: contents; white-space: pre-wrap; } .wcf_permalink_settings .form-field-desc p{ word-break: break-all; }PK\^f*;  &admin/assets/js/admin-menu-settings.jsnuW+A(function ($) { /* Disable/Enable Facebook Pixel Field section*/ var wcf_toggle_fields_facebook_pixel = function () { var fb_pixel_fields = ".wcf-fb-pixel-wrapper"; jQuery(fb_pixel_fields).toggle(jQuery("#wcf_wcf_facebook_pixel_tracking").is(":checked")); jQuery("#wcf_wcf_facebook_pixel_tracking").click(function () { jQuery(fb_pixel_fields).toggle(jQuery("#wcf_wcf_facebook_pixel_tracking").is(":checked")); }); } /* Disable/Enable Facebook Pixel Field section*/ /* Disable/Enable Google Analytics Field section */ var wcf_toggle_fields_google_analytics = function (){ var google_analytics_fields = ".wcf-google-analytics-wrapper"; jQuery(google_analytics_fields).toggle(jQuery("#wcf_enable_google-analytics-id").is(":checked")); jQuery("#wcf_enable_google-analytics-id").click(function () { jQuery(google_analytics_fields).toggle(jQuery("#wcf_enable_google-analytics-id").is(":checked")); }); } /* Disable/Enable Google Analytics Field section */ $(document).ready(function () { wcf_toggle_fields_facebook_pixel(); wcf_toggle_fields_google_analytics(); }); })(jQuery);PK\D PPadmin/assets/js/setup-wizard.jsnuW+A( function( $ ) { CartFlowsWizard = { init: function() { this._bind(); }, /** * Bind */ _bind: function() { $( document ).on('click', '.wcf-install-plugins', CartFlowsWizard._installNow ); $( document ).on('click', '.wcf-install-wc', CartFlowsWizard._installWc ); $( document ).on('wp-plugin-installing' , CartFlowsWizard._pluginInstalling); $( document ).on('wp-plugin-install-error' , CartFlowsWizard._installError); $( document ).on('wp-plugin-install-success' , CartFlowsWizard._installSuccess); $( document ).on('click', '.mautic-form-submit', CartFlowsWizard._onMauticSubmit ); }, _onMauticSubmit: function( event ) { event.preventDefault(); event.stopPropagation(); var form = $(this).closest('form'); var email_field = form.find('#mauticform_input_cartflowsonboarding_enter_your_email'); var submit_button = $(this); var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,14})$/; if ( reg.test( email_field.val() ) == false ) { email_field.addClass('wcf-error'); return false; } else { email_field.removeClass('wcf-error'); } submit_button.attr( 'disabled', 'disabled' ); $.ajax({ type: "POST", url: form.attr('action'), data: form.serialize(), // async: false, headers: {'X-Requested-With': 'XMLHttpRequest'}, success: function() { // callback code here console.log('in success'); var redirect_link = $( '.wcf-redirect-link' ).data('redirect-link') || ''; window.location = redirect_link; }, error: function( ) { console.log('in error'); } }); /* Do not execute anything here */ }, /** * Installing Plugin */ _pluginInstalling: function(event, args) { event.preventDefault(); console.log( 'Installing..' ); }, /** * Install Error */ _installError: function(event, args) { event.preventDefault(); console.log( 'Install Error!' ); var redirect_link = $( '.wcf-redirect-link' ).data('redirect-link') || ''; console.log( redirect_link ); if( '' !== redirect_link ) { window.location = redirect_link; console.log( 'redirecting..' ); } }, /** * Install Success */ _installSuccess: function( event, args ) { event.preventDefault(); var plugin_init = args.slug + "/" + args.slug + ".php"; var plugin_slug = args.slug; console.log( plugin_slug ); if ( 'woocommerce' === plugin_slug ) { return; } if( 'woo-cart-abandonment-recovery' === plugin_slug ) { CartFlowsWizard._activateWc(); return; } CartFlowsWizard._activatePlugin( plugin_init, plugin_slug ); }, _activatePlugin: function( plugin_init, plugin_slug ) { var redirect_link = $( '.wcf-redirect-link' ).data('redirect-link') || ''; var save_builder_option = ( '1' == $( "#save-pb-option" ).val() ) || false; $.ajax({ url : ajaxurl, method : 'POST', data : { action : 'page_builder_step_save', page_builder : plugin_slug, plugin_init : plugin_init, save_builder_option : save_builder_option, security : cartflows_setup_vars.wcf_page_builder_step_save_nonce }, }) .done(function( response ) { if( response.success ) { if ( '' !== redirect_link ) { window.location = redirect_link; } } }) .fail(function() { console.log("error"); }) .always(function() { console.log("complete"); }); }, /** * Install Now */ _installNow: function(event) { event.preventDefault(); var $button = $( this ), $document = $(document), plugin_slug = $( '.page-builder-list option:selected' ).data( 'slug' ) || '', install = $( '.page-builder-list option:selected' ).data( 'install' ) || 'no', plugin_init = $( '.page-builder-list option:selected' ).data( 'init' ) || '', redirect_link = $( '.wcf-redirect-link' ).data('redirect-link') || ''; if ( $button.hasClass( 'updating-message' ) || $button.hasClass( 'button-disabled' ) ) { return; } $button.addClass( 'updating-message' ); if( 'yes' === install ) { CartFlowsWizard._activatePlugin( plugin_init, plugin_slug ); } else if( 'no' === install ) { console.log( 'plugin_slug ' + plugin_slug ); CartFlowsWizard._installPlugin( plugin_slug ); } else { $.ajax({ url : ajaxurl, method : 'POST', data : { action : 'page_builder_save_option', page_builder : plugin_slug }, }) .done(function( data ) { if( data.success ) { if( '' !== redirect_link ) { window.location = redirect_link; } } }) .fail(function() { console.log("error"); }) .always(function() { console.log("complete"); }); } }, _installWc: function( event ) { event.preventDefault(); var $button = $(this); if ( $button.hasClass( 'updating-message' ) || $button.hasClass( 'button-disabled' ) ) { return; } $button.addClass( 'updating-message' ); var redirect_link = $( '.wcf-redirect-link' ).data('redirect-link') || ''; if( $( '.wcf-install-wc-input' ).prop( "checked" ) == true ) { var woo_installed = $( '.wcf-install-wc-input' ).data('woo-install'); var wcf_ca_installed = $( '.wcf-install-wc-input' ).data('wcf-ca-install'); if( 'yes' === woo_installed && 'yes' === wcf_ca_installed ) { CartFlowsWizard._activateWc(); } if( 'no' == woo_installed ) { CartFlowsWizard._installPlugin( 'woocommerce' ); } if( 'no' == wcf_ca_installed ) { CartFlowsWizard._installPlugin( 'woo-cart-abandonment-recovery' ); } } else { window.location = redirect_link; } }, _activateWc: function() { var redirect_link = $( '.wcf-redirect-link' ).data('redirect-link') || ''; $.ajax({ url : ajaxurl, method : 'POST', data : { action : 'wcf_activate_wc_plugins', security : cartflows_setup_vars.wcf_wc_plugins_activate_nonce }, }) .done(function( response ) { if( response.success && '' !== redirect_link ) { window.location = redirect_link; } }) .fail(function() { console.log("error"); }) .always(function() { console.log("complete"); }); }, _installPlugin: function( plugin_slug ) { if ( wp.updates.shouldRequestFilesystemCredentials && ! wp.updates.ajaxLocked ) { wp.updates.requestFilesystemCredentials( event ); $document.on( 'credential-modal-cancel', function() { var $message = $( '.install-now.updating-message' ); $message .removeClass( 'updating-message' ) .text( wp.updates.l10n.installNow ); wp.a11y.speak( wp.updates.l10n.updateCancel, 'polite' ); } ); } wp.updates.installPlugin( { slug: plugin_slug } ); }, } $( document ).ready(function() { CartFlowsWizard.init(); }); } )( jQuery ); PK\WZ[  "admin/assets/js/flow-admin-edit.jsnuW+A(function($){ var wcf_steps_hide_show_delete = function() { $('.wcf-flow-settings .wcf-step-delete').on('click', function(e) { e.preventDefault(); var current_target = $( e.target ); var $this = $(this), step_id = $this.data('id'), icon_span = $this.find('.dashicons-trash'), text_span = $this.find('.wcf-step-act-btn-text'), parent = $this.parents('.wcf-step-wrap'); var delete_status = confirm( "This action will delete this flow step. Are you sure?" ); if (true == delete_status) { console.log( 'Step Deleting' ); icon_span.addClass('wp-ui-text-notification'); text_span.addClass('wp-ui-text-notification').text('Deleting..'); //$this.text('Deleting..'); var post_id = $( 'form#post #post_ID').val(); $.ajax({ url: ajaxurl, data: { action: "cartflows_delete_flow_step", post_id : post_id, step_id : step_id, security: cartflows_admin.wcf_delete_flow_step_nonce }, dataType: 'json', type: 'POST', success: function ( data ) { parent.slideUp(400, 'swing', function() { parent.remove(); }); setTimeout(function() { $('.wcf-flow-steps-container').trigger('wcf-step-deleted',[step_id]); }, 600); console.log( data ); } }); } }); } var wcf_flow_steps_sortbale = function() { $('.wcf-flow-settings .wcf-flow-steps-container').sortable({ connectWith: '.wcf-flow-steps-container', forcePlaceholderSize: true, placeholder: "sortable-placeholder", update: function(event, ui) { var $this = $(this), step_fields = $this.find('.wcf-steps-hidden'), step_ids = [], post_id = $( 'form#post #post_ID').val(); step_fields.each(function(i, obj) { step_ids.push( $(this).val() ) //test }); $this.sortable('disable'); $.ajax({ url: ajaxurl, data: { action: "cartflows_reorder_flow_steps", post_id : post_id, step_ids : step_ids, security: cartflows_admin.wcf_reorder_flow_steps_nonce }, dataType: 'json', type: 'POST', success: function ( data ) { $this.sortable('enable'); if ( data.status ) { console.log( 'Sorted' ); } console.log( data ); } }); } }); } $(document).ready(function($) { wcf_steps_hide_show_delete(); wcf_flow_steps_sortbale(); }); })(jQuery); PK\@0'F4F4admin/assets/js/global-admin.jsnuW+A( function( $ ) { /** * Add Shortcode next to metabox heading. * * @since 1.0.0 */ /* Toogle fields logic for all fields */ var wcf_toggle_fields_general_logic = function() { var fields = $('[toggle]'); if ( fields.length < 1 ) { return; } fields.each(function( i ) { console.log( $(this) ); }); // if( 'custom' == default_value ){ // $('.field-wcf-field-tb-padding').show(); // $('.field-wcf-field-lr-padding').show(); // }else{ // $('.field-wcf-field-tb-padding .wcf-field-row-content input[type="number"]').val(''); // $('.field-wcf-field-lr-padding .wcf-field-row-content input[type="number"]').val(''); // $('.field-wcf-field-tb-padding').hide(); // $('.field-wcf-field-lr-padding').hide(); // } $('.wcf-field-row input[type=checkbox]').on('change', function(e) { e.preventDefault(); var $this = $(this), toggle_data = $this.attr('toggle'); console.log( toggle_data ); console.log( $(this).is(':checked') ); // if(selected_value == 'custom' ){ // $('.field-wcf-field-tb-padding').show(); // $('.field-wcf-field-lr-padding').show(); // }else{ // $('.field-wcf-field-tb-padding').hide(); // $('.field-wcf-field-lr-padding').hide(); // } }); var hide_show_fields = function() { // body... } } /* Show Hide Custom Options for input types */ var wcf_checkout_show_field_custom_options = function() { var default_value = $('.field-wcf-input-field-size select').val(); if( 'custom' == default_value ){ $('.field-wcf-field-tb-padding').show(); $('.field-wcf-field-lr-padding').show(); }else{ $('.field-wcf-field-tb-padding .wcf-field-row-content input[type="number"]').val(''); $('.field-wcf-field-lr-padding .wcf-field-row-content input[type="number"]').val(''); $('.field-wcf-field-tb-padding').hide(); $('.field-wcf-field-lr-padding').hide(); } $('.field-wcf-input-field-size select').on('change', function(e) { e.preventDefault(); var $this = $(this), selected_value = $this.val(); if(selected_value == 'custom' ){ $('.field-wcf-field-tb-padding').show(); $('.field-wcf-field-lr-padding').show(); }else{ $('.field-wcf-field-tb-padding').hide(); $('.field-wcf-field-lr-padding').hide(); } }); } /* Show Hide Custom Options for Buttons */ var wcf_checkout_show_button_custom_options = function() { var wrapper = $('.wcf-checkout-table'); if ( wrapper.length < 1 ) { return; } var default_value = wrapper.find('.field-wcf-input-button-size select').val(); if( 'custom' == default_value ){ wrapper.find('.field-wcf-submit-tb-padding').show(); wrapper.find('.field-wcf-submit-lr-padding').show(); }else{ wrapper.find('.field-wcf-submit-tb-padding').hide(); wrapper.find('.field-wcf-submit-lr-padding').hide(); } wrapper.find('.field-wcf-input-button-size select').on('change', function(e) { e.preventDefault(); var $this = $(this), selected_value = $this.val(); if(selected_value == 'custom' ){ wrapper.find('.field-wcf-submit-tb-padding').show(); wrapper.find('.field-wcf-submit-lr-padding').show(); }else{ wrapper.find('.field-wcf-submit-tb-padding').hide(); wrapper.find('.field-wcf-submit-lr-padding').hide(); } }); } /* Show Hide Custom Options for Buttons */ var wcf_optin_submit_button_custom_options = function() { var wrapper = $('.wcf-optin-table'); if ( wrapper.length < 1 ) { return; } var default_value = wrapper.find('.field-wcf-submit-button-size select').val(); if( 'custom' == default_value ){ wrapper.find('.field-wcf-submit-tb-padding').show(); wrapper.find('.field-wcf-submit-lr-padding').show(); wrapper.find('.field-wcf-submit-button-position').show(); }else{ wrapper.find('.field-wcf-submit-tb-padding .wcf-field-row-content input[type="number"]').val(''); wrapper.find('.field-wcf-submit-lr-padding .wcf-field-row-content input[type="number"]').val(''); wrapper.find('.field-wcf-submit-tb-padding').hide(); wrapper.find('.field-wcf-submit-lr-padding').hide(); wrapper.find('.field-wcf-submit-button-position').hide(); } wrapper.find('.field-wcf-submit-button-size select').on('change', function(e) { e.preventDefault(); var $this = $(this), selected_value = $this.val(); if(selected_value == 'custom' ){ wrapper.find('.field-wcf-submit-tb-padding').show(); wrapper.find('.field-wcf-submit-lr-padding').show(); wrapper.find('.field-wcf-submit-button-position').show(); }else{ wrapper.find('.field-wcf-submit-tb-padding').hide(); wrapper.find('.field-wcf-submit-lr-padding').hide(); wrapper.find('.field-wcf-submit-button-position').hide(); } }); }; var wcf_checkout_prevent_toggle_for_shortcode = function() { // Prevent inputs in meta box headings opening/closing contents. $( '#wcf-checkout-settings' ).find( '.hndle' ).unbind( 'click.postboxes' ); $( '#wcf-checkout-settings' ).on( 'click', '.hndle', function( event ) { // If the user clicks on some form input inside the h3 the box should not be toggled. if ( $( event.target ).filter( 'input, option, label, select' ).length ) { return; } $( '#wcf-checkout-settings' ).toggleClass( 'closed' ); }); }; var wcf_add_tool_tip_msg = function(){ var tooltip = false; $('.wcf-field-heading-help').click(function(){ var tip_wrap = $(this).closest('.wcf-field-row'); closest_tooltip = tip_wrap.find('.wcf-tooltip-text'); closest_tooltip.toggleClass('display_tool_tip'); }); }; // Check for the highlight area and add the class. var wcf_highlight_the_metabox = function(){ if( ( 'undefined' !== typeof cartflows_admin ) && ( cartflows_admin.wcf_edit_test_mode ) ){ $('#wcf-sandbox-settings').addClass("wcf-highlight"); // Remove the class automatically after 6 seconds. setTimeout(function(){ wcfDeactivateHighlight() }, 6000); // Click outside the higlight element and remove the class $(document).on('click', function (e) { wcfDeactivateHighlight(); }); } }; // Function to remove the highlighted class var wcfDeactivateHighlight = function() { $('#wcf-sandbox-settings').removeClass('wcf-highlight'); }; var wcf_toggle_post_update = function() { if ( 'undefined' === typeof cartflows_woo ) { return; } if( ! cartflows_woo.show_update_post ) { $("#submitdiv").hide(); } }; var wcf_create_woo_product_from_iframe = function() { // Function to create an HTML elements function _create_html_element( args, appent_to ){ window.htmlElement = document.createElement( args['element'] ); window.htmlElement.id = args['id']; window.htmlElement.className = args['class']; if( 'body' === appent_to ){ document.getElementsByTagName('body')[0].appendChild(window.htmlElement); }else{ document.getElementById( appent_to ).appendChild(window.htmlElement); } } // Function to create Iframe function _create_iframe_element( args, appent_to ){ window.iFrameElement = document.createElement( args['element'] ); window.iFrameElement.id = args['id']; window.iFrameElement.className = args['class']; window.iFrameElement.frameborder = args['border']; window.iFrameElement.allowtransparency = args['transparency']; window.iFrameElement.src = args['src']; window.iFrameElement.setAttribute('style', 'opacity: 0; visibility:hidden;'); var created = document.getElementById( appent_to ).appendChild(window.iFrameElement); $('#' + args['id'] ).on( 'load', function() { $('#wcf-create-woo-product-iframe').contents().find("body").addClass("wcf-in-iframe"); /* Create Close Button */ var args = { 'element' : 'a', 'id' : 'wcf-close-create-woo-product', 'class' : 'wcf-close-create-woo-product close-icon', }; _create_html_element( args, 'wcf-create-woo-product-wrap' ); // Display Iframe window.iFrameElement.setAttribute('style', 'opacity: 1; visibility:visible;'); $( '.wcf-create-woo-product-wrap' ).addClass( 'product-loaded' ); } ); } // Function to destroy the Iframe & close the popup. function _destroy_create_woo_product_iframe(){ window.iFrameElement.setAttribute('style', 'opacity: 0; visibility:hidden;'); $('body').removeClass('wcf-create-woo-iframe-opened'); $('#wcf-create-woo-product-overlay').removeClass('open'); $('.wcf-create-woo-product').removeClass('updating-message'); $( '.wcf-create-woo-product-wrap' ).removeClass( 'product-loaded' ); $("#wcf-create-woo-product-overlay").remove(); } function wcf_open_create_woo_product_popup(){ $( '.wcf-create-woo-product' ).on( 'click', function( event ) { event.preventDefault(); var create_btn = $('.wcf-create-woo-product'); /* Display Loading */ create_btn.addClass('updating-message'); // Create wrapper div. var args = { 'element': 'div', 'id': 'wcf-create-woo-product-overlay', 'class': 'wcf-create-woo-product-overlay' }; // Create wrapper div. var args = { 'element': 'div', 'id': 'wcf-create-woo-product-overlay', 'class': 'wcf-create-woo-product-overlay' }; _create_html_element( args, 'body' ); /* Create frame wrap */ var args = { 'element': 'div', 'id': 'wcf-create-woo-product-wrap', 'class': 'wcf-create-woo-product-wrap' }; _create_html_element( args, 'wcf-create-woo-product-overlay' ); $( '#wcf-create-woo-product-overlay' ).addClass( 'open' ); /* Create Iframe */ var args = { 'element' : 'iframe', 'id' : 'wcf-create-woo-product-iframe', 'class' : 'wcf-woo-product-iframe', 'border' : 0, 'transparency' : 'true', 'src' : cartflows_admin.create_product_src, }; _create_iframe_element( args, 'wcf-create-woo-product-wrap' ); $('body').addClass('wcf-create-woo-iframe-opened'); }); } // Close iframe events function. function wcf_close_create_woo_product_popup() { $( document.body ).on( 'click', '#wcf-close-create-woo-product', function(){ if( $(this).hasClass('close-icon') && $('#wcf-create-woo-product-overlay').hasClass('open') ){ _destroy_create_woo_product_iframe(); } } ); $( document.body ).on( 'click', '#wcf-create-woo-product-overlay', function(){ if( $('#wcf-create-woo-product-overlay').hasClass('open') ){ _destroy_create_woo_product_iframe(); } } ); } wcf_open_create_woo_product_popup(); wcf_close_create_woo_product_popup(); }; var wcf_show_upgrade_to_pro_popup = function(){ $('.wcf-custom-add-new-button').click(function(){ $('#cartflows-upgrade-notice-popup').show(); $('#cartflows-upgrade-notice-overlay').show(); }); $('.cartflows-close-popup-button').click(function(){ $('#cartflows-upgrade-notice-popup').hide(); $('#cartflows-upgrade-notice-overlay').hide(); }); $('#cartflows-upgrade-notice-overlay').click(function(){ $('#cartflows-upgrade-notice-popup').hide(); $('#cartflows-upgrade-notice-overlay').hide(); }); }; /* Optin - hide/show login */ var wcf_optin_hide_show_init = function(){ var wrapper = $('.wcf-optin-table'); if ( wrapper.length < 1 ) { return; } var field = $('input[type=checkbox]#wcf-optin-pass-fields'); var toggle_fields = [ '.field-wcf-optin-pass-specific-fields', '.wcf-optin-pass-fields-doc' ]; if ( field.is(":checked") ) { $.each( toggle_fields, function(i, val) { wrapper.find( val ).show(); }) } else { $.each( toggle_fields, function(i, val) { wrapper.find( val ).hide(); }); } field.on('change', function(e) { if ( field.is(":checked") ) { $.each( toggle_fields, function(i, val) { wrapper.find( val ).show(); }) } else { $.each( toggle_fields, function(i, val) { wrapper.find( val ).hide(); }); } }); }; $( document ).ready(function() { //wcf_toggle_fields_general_logic(); //alert("Before Stattement"); $( '#field-wcf-shortcode' ).appendTo( '#wcf-checkout-settings .hndle span' ); $( '#field-wcf-shortcode' ).css( "display", "inline" ); //alert("After Stattement"); /* Checkout */ wcf_checkout_show_field_custom_options(); wcf_checkout_show_button_custom_options(); wcf_checkout_prevent_toggle_for_shortcode(); /* Optin */ wcf_optin_submit_button_custom_options(); wcf_optin_hide_show_init(); /* Other */ wcf_add_tool_tip_msg(); wcf_highlight_the_metabox(); wcf_toggle_post_update(); wcf_show_upgrade_to_pro_popup(); /* Create woo product from iframe */ wcf_create_woo_product_from_iframe(); }); } )( jQuery ); PK\a01__theme-support/astra/astra.phpnuW+A\n" "Language-Team: LANGUAGE \n" "Language: en\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Poedit-Country: United States\n" "X-Poedit-SourceCharset: UTF-8\n" "X-Poedit-KeywordsList: " "__;_e;_x:1,2c;_ex:1,2c;_n:1,2;_nx:1,2,4c;_n_noop:1,2;_nx_noop:1,2,3c;esc_" "attr__;esc_html__;esc_attr_e;esc_html_e;esc_attr_x:1,2c;esc_html_x:1,2c;\n" "X-Poedit-Basepath: ../\n" "X-Poedit-SearchPath-0: .\n" "X-Poedit-Bookmarks: \n" "X-Textdomain-Support: yes\n" "X-Generator: grunt-wp-i18n 1.0.3\n" #: classes/batch-process/class-cartflows-importer-elementor.php:44 msgid "Invalid content." msgstr "" #: classes/batch-process/class-cartflows-importer-elementor.php:52 msgid "Invalid content. Expected an array." msgstr "" #: classes/batch-process/helpers/class-wp-background-process.php:435 msgid "Every %d Minutes" msgstr "" #: classes/class-cartflows-admin-fields.php:231 msgid "Select" msgstr "" #: classes/class-cartflows-admin-fields.php:234 msgid "No Checkout Steps" msgstr "" #: classes/class-cartflows-admin-fields.php:260 #. translators: %s: link msgid "" "Be sure not to add any product in above selected Global Checkout step. " "Please read information about how to set up Global Checkout %1$shere%2$s." msgstr "" #: classes/class-cartflows-admin.php:153 classes/class-cartflows-admin.php:154 #: includes/admin/cartflows-general-bck.php:34 #: modules/optin/classes/class-cartflows-optin-meta.php:150 #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:148 msgid "Settings" msgstr "" #: classes/class-cartflows-admin.php:436 msgid "Installing and activating.." msgstr "" #: classes/class-cartflows-admin.php:437 msgid "There was an error with the installation of plugin." msgstr "" #: classes/class-cartflows-admin.php:491 msgid "Flows Library" msgstr "" #: classes/class-cartflows-admin.php:498 #: modules/flow/view/meta-flow-steps.php:156 msgid "Ready Templates" msgstr "" #: classes/class-cartflows-admin.php:501 #: modules/flow/view/meta-flow-steps.php:159 msgid "Create Your Own" msgstr "" #: classes/class-cartflows-admin.php:512 #: modules/flow/view/meta-flow-steps.php:171 msgid "Search Sites" msgstr "" #: classes/class-cartflows-admin.php:513 #: modules/flow/view/meta-flow-steps.php:172 msgid "Search Flow..." msgstr "" #: classes/class-cartflows-admin.php:530 msgid "Design Your Flow" msgstr "" #: classes/class-cartflows-admin.php:531 #: classes/class-cartflows-importer.php:637 #: classes/class-cartflows-importer.php:736 #: modules/flow/view/meta-flow-steps.php:202 msgid "Learn How" msgstr "" #: classes/class-cartflows-api.php:368 msgid "Request successfully processed!" msgstr "" #: classes/class-cartflows-cloning.php:423 msgid "Clone this flow" msgstr "" #: classes/class-cartflows-cloning.php:423 #: modules/flow/view/meta-flow-steps.php:115 msgid "Clone" msgstr "" #: classes/class-cartflows-default-meta.php:741 #: modules/optin/classes/class-cartflows-optin-meta.php:487 msgid "Submit" msgstr "" #: classes/class-cartflows-flow-frontend.php:53 msgid "" "Test mode is active — which displays random products for previewing. It can " "be deactivated from the flow settings in the admin dashboard." msgstr "" #: classes/class-cartflows-flow-frontend.php:58 msgid "Click here to disable it" msgstr "" #: classes/class-cartflows-importer.php:81 msgid "Export this flow" msgstr "" #: classes/class-cartflows-importer.php:81 includes/exporter.php:18 msgid "Export" msgstr "" #: classes/class-cartflows-importer.php:92 msgid "Flow Export" msgstr "" #: classes/class-cartflows-importer.php:93 msgid "Flow Import" msgstr "" #: classes/class-cartflows-importer.php:104 msgid "No post to export has been supplied!" msgstr "" #: classes/class-cartflows-importer.php:295 msgid "Please upload a valid .json file" msgstr "" #: classes/class-cartflows-importer.php:301 msgid "Please upload a file to import" msgstr "" #: classes/class-cartflows-importer.php:478 msgid "Successfully imported flows." msgstr "" #: classes/class-cartflows-importer.php:510 msgid "Loading Steps" msgstr "" #: classes/class-cartflows-importer.php:512 msgid "Getting steps from the cloud. Please wait for the moment." msgstr "" #: classes/class-cartflows-importer.php:523 msgid "Searching Template.." msgstr "" #: classes/class-cartflows-importer.php:525 msgid "Getting templates from the cloud. Please wait for the moment." msgstr "" #: classes/class-cartflows-importer.php:534 msgid "Importing.." msgstr "" #: classes/class-cartflows-importer.php:543 #: classes/class-cartflows-importer.php:583 msgid "Imported" msgstr "" #: classes/class-cartflows-importer.php:544 #: classes/class-cartflows-importer.php:584 msgid "Thanks for patience" msgstr "" #: classes/class-cartflows-importer.php:553 #: classes/class-cartflows-importer.php:565 msgid "Coming Soon!" msgstr "" #: classes/class-cartflows-importer.php:584 msgid "Redirecting to the Elementor edit window." msgstr "" #: classes/class-cartflows-importer.php:630 #: classes/class-cartflows-importer.php:746 msgid "Pro" msgstr "" #: classes/class-cartflows-importer.php:671 #: classes/class-cartflows-importer.php:778 msgid "Activate License" msgstr "" #: classes/class-cartflows-importer.php:673 #: classes/class-cartflows-importer.php:780 #: modules/flow/classes/class-cartflows-flow-meta.php:461 msgid "Get Pro" msgstr "" #: classes/class-cartflows-importer.php:698 msgid "Create" msgstr "" #: classes/class-cartflows-importer.php:797 msgid "Under Maintenance.." msgstr "" #: classes/class-cartflows-importer.php:798 msgid "" "If you are seeing this message, most likely our servers are under routine " "maintenance and we will be back shortly." msgstr "" #: classes/class-cartflows-importer.php:799 msgid "" "In rare case, it is possible your website is having trouble connecting with " "ours. If you need help, please feel free to get in touch with us from our " "website.." msgstr "" #: classes/class-cartflows-importer.php:829 #. translators: %s: Plugin string msgid "" "%1$s to see CartFlows templates. If you prefer another page builder tool, " "you can select it here." msgstr "" #: classes/class-cartflows-importer.php:844 msgid "All" msgstr "" #: classes/class-cartflows-importer.php:847 msgid "Select Step Type" msgstr "" #: classes/class-cartflows-importer.php:931 msgid "Import from Cloud" msgstr "" #: classes/class-cartflows-importer.php:1230 msgid "Sales Landing" msgstr "" #: classes/class-cartflows-importer.php:1234 #: modules/flow/classes/class-cartflows-step-post-type.php:251 #: modules/flow/view/meta-flow-steps.php:12 msgid "Checkout (Woo)" msgstr "" #: classes/class-cartflows-importer.php:1238 #: modules/flow/classes/class-cartflows-step-post-type.php:258 #: modules/flow/view/meta-flow-steps.php:13 msgid "Thank You (Woo)" msgstr "" #: classes/class-cartflows-importer.php:1246 #: modules/flow/classes/class-cartflows-step-post-type.php:237 #: modules/flow/view/meta-flow-steps.php:11 msgid "Landing" msgstr "" #: classes/class-cartflows-importer.php:1250 msgid "Thank You" msgstr "" #: classes/class-cartflows-importer.php:1360 #. translators: %s: template ID msgid "Invalid template id %1$s or post id %2$s." msgstr "" #: classes/class-cartflows-importer.php:1422 #. translators: %s: flow ID msgid "Invalid flow id %1$s OR step type %2$s." msgstr "" #: classes/class-cartflows-importer.php:1547 msgid "" "Elementor is not activated. Please activate plugin Elementor Page Builder " "to import the step." msgstr "" #: classes/class-cartflows-importer.php:1650 msgid "Action failed. Invalid Security Nonce." msgstr "" #: classes/class-cartflows-importer.php:1657 msgid "User have not plugin install permissions." msgstr "" #: classes/class-cartflows-importer.php:1679 msgid "Plugin Successfully Activated" msgstr "" #: classes/class-cartflows-learndash-compatibility.php:86 msgid "None" msgstr "" #: classes/class-cartflows-learndash-compatibility.php:113 #. translators: 1: anchor start, 2: anchor close msgid "" "Non-enrolled students will redirect to the selected CartFlows template. If " "you have not created any Flow already, add new Flow from %1$shere%2$s." msgstr "" #: classes/class-cartflows-learndash-compatibility.php:119 msgid "Select CartFlows Template for this Course" msgstr "" #: classes/class-cartflows-loader.php:222 #. translators: %s: html tags msgid "" "You are using an older version of %1$sCartFlows Pro%2$s. Please update " "%1$sCartFlows Pro%2$s plugin to version %1$s%3$s%2$s or higher." msgstr "" #: classes/class-cartflows-loader.php:462 #. translators: %s: html tags msgid "" "This %1$sCartFlows%2$s page requires %1$sWooCommerce%2$s plugin installed & " "activated." msgstr "" #: classes/class-cartflows-loader.php:472 msgid "Activate WooCommerce" msgstr "" #: classes/class-cartflows-loader.php:480 msgid "Install WooCommerce" msgstr "" #: classes/class-cartflows-logger.php:161 msgid "Action failed. Please refresh the page and retry." msgstr "" #: classes/class-cartflows-meta-fields.php:80 msgid "Thin 100" msgstr "" #: classes/class-cartflows-meta-fields.php:81 msgid "Extra-Light 200" msgstr "" #: classes/class-cartflows-meta-fields.php:82 msgid "Light 300" msgstr "" #: classes/class-cartflows-meta-fields.php:83 msgid "Normal 400" msgstr "" #: classes/class-cartflows-meta-fields.php:84 msgid "Medium 500" msgstr "" #: classes/class-cartflows-meta-fields.php:85 msgid "Semi-Bold 600" msgstr "" #: classes/class-cartflows-meta-fields.php:86 msgid "Bold 700" msgstr "" #: classes/class-cartflows-meta-fields.php:87 msgid "Extra-Bold 800" msgstr "" #: classes/class-cartflows-meta-fields.php:88 msgid "Ultra-Bold 900" msgstr "" #: classes/class-cartflows-meta-fields.php:548 #: classes/class-cartflows-meta-fields.php:747 msgid "Search for a product…" msgstr "" #: classes/class-cartflows-meta-fields.php:589 msgid "Search for a coupon…" msgstr "" #: classes/class-cartflows-meta-fields.php:722 msgid "Add New Product" msgstr "" #: classes/class-cartflows-meta-fields.php:723 msgid "Create Product" msgstr "" #: classes/class-cartflows-meta-fields.php:755 msgid "Remove" msgstr "" #: classes/class-cartflows-meta.php:34 msgid "Update" msgstr "" #: classes/class-cartflows-meta.php:42 #: modules/flow/classes/class-cartflows-flow-meta.php:82 msgid "Back to edit Flow" msgstr "" #: classes/class-cartflows-meta.php:63 #: modules/checkout/classes/class-cartflows-checkout-meta.php:192 #: modules/landing/classes/class-cartflows-landing-meta.php:136 #: modules/optin/classes/class-cartflows-optin-meta.php:156 #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:154 msgid "Custom Script" msgstr "" #: classes/class-cartflows-meta.php:66 msgid "" "Custom script lets you add your own custom script on front end of this flow " "page." msgstr "" #: classes/class-cartflows-metabox.php:59 msgid "Flow Details" msgstr "" #: classes/class-cartflows-wizard.php:83 msgid "Thanks for installing and using CartFlows!" msgstr "" #: classes/class-cartflows-wizard.php:84 msgid "" "It is easy to use the CartFlows. Please use the setup wizard to quick start " "setup." msgstr "" #: classes/class-cartflows-wizard.php:86 msgid "Start Wizard" msgstr "" #: classes/class-cartflows-wizard.php:87 msgid "Skip Setup" msgstr "" #: classes/class-cartflows-wizard.php:117 #: includes/admin/cartflows-general-bck.php:24 msgid "Welcome" msgstr "" #: classes/class-cartflows-wizard.php:122 msgid "Page Builder" msgstr "" #: classes/class-cartflows-wizard.php:126 msgid "Checkout" msgstr "" #: classes/class-cartflows-wizard.php:130 msgid "Training" msgstr "" #: classes/class-cartflows-wizard.php:134 msgid "Ready!" msgstr "" #: classes/class-cartflows-wizard.php:209 msgid "CartFlows Setup" msgstr "" #: classes/class-cartflows-wizard.php:235 msgid "Exit Setup Wizard" msgstr "" #: classes/class-cartflows-wizard.php:288 msgid "Welcome to CartFlows!" msgstr "" #: classes/class-cartflows-wizard.php:289 msgid "" "Thank you for choosing CartFlows to get more leads, increase conversions, & " "maximize profits. This short setup wizard will guide you though configuring " "CartFlows and creating your first funnel." msgstr "" #: classes/class-cartflows-wizard.php:295 msgid "Lets Go »" msgstr "" #: classes/class-cartflows-wizard.php:322 msgid "Page Builder Setup" msgstr "" #: classes/class-cartflows-wizard.php:323 msgid "Please select a page builder you would like to use with CartFlows." msgstr "" #: classes/class-cartflows-wizard.php:328 msgid "Select Page Builder" msgstr "" #: classes/class-cartflows-wizard.php:335 #: includes/admin/cartflows-general.php:94 msgid "Elementor" msgstr "" #: classes/class-cartflows-wizard.php:345 msgid "Beaver Builder Plugin (Lite Version)" msgstr "" #: classes/class-cartflows-wizard.php:355 #: includes/admin/cartflows-general.php:96 msgid "Divi" msgstr "" #: classes/class-cartflows-wizard.php:365 #: includes/admin/cartflows-general.php:97 msgid "Other" msgstr "" #: classes/class-cartflows-wizard.php:387 msgid "" "While CartFlows Should work with most page builders, we offer templates for " "the above page builders." msgstr "" #: classes/class-cartflows-wizard.php:390 #: classes/class-cartflows-wizard.php:435 #: classes/class-cartflows-wizard.php:622 msgid "« Previous" msgstr "" #: classes/class-cartflows-wizard.php:393 msgid "Skip this step" msgstr "" #: classes/class-cartflows-wizard.php:394 msgid "Next »" msgstr "" #: classes/class-cartflows-wizard.php:413 msgid "Choose a checkout" msgstr "" #: classes/class-cartflows-wizard.php:416 msgid "" "While CartFlows is designed to use WooCommerce sell digital and physical " "products, not all funnels need a checkout system." msgstr "" #: classes/class-cartflows-wizard.php:418 msgid "" "Would you like to install WooCommerce to sell digital and physical products " "in your funnels?" msgstr "" #: classes/class-cartflows-wizard.php:425 msgid "The following plugin will be installed and activated for you:" msgstr "" #: classes/class-cartflows-wizard.php:426 msgid "WooCommerce" msgstr "" #: classes/class-cartflows-wizard.php:427 msgid "WooCommerce Cart Abandonment Recovery" msgstr "" #: classes/class-cartflows-wizard.php:438 #: classes/class-cartflows-wizard.php:625 msgid "No thanks" msgstr "" #: classes/class-cartflows-wizard.php:439 msgid "Yes" msgstr "" #: classes/class-cartflows-wizard.php:558 msgid "Congratulations, You Did It!" msgstr "" #: classes/class-cartflows-wizard.php:565 msgid "" "CartFlows is ready to use on your website. You've successfully completed " "the setup process and all that is left for you to do is create your first " "flow." msgstr "" #: classes/class-cartflows-wizard.php:579 msgid "Create a flow" msgstr "" #: classes/class-cartflows-wizard.php:596 msgid "Exclusive CartFlows Training Course Offer" msgstr "" #: classes/class-cartflows-wizard.php:607 msgid "" "We want you to get off to a great start using CartFlows, so we would like " "to give access to our exclusive training course." msgstr "" #: classes/class-cartflows-wizard.php:608 msgid "Get access to this couse, for free, by entering your email below." msgstr "" #: classes/class-cartflows-wizard.php:610 msgid "Enter Email address" msgstr "" #: classes/class-cartflows-wizard.php:626 msgid "Allow" msgstr "" #: classes/logger/class-cartflows-log-handler-file.php:351 #: classes/logger/class-cartflows-log-handler-file.php:371 msgid "This method should not be called before plugins_loaded." msgstr "" #: classes/logger/class-cartflows-wc-logger.php:58 #. translators: 1: class name 2: Cartflows_Log_Handler_Interface msgid "The provided handler %1$s does not implement %2$s." msgstr "" #: classes/logger/class-cartflows-wc-logger.php:136 #. translators: 1: Cartflows_WC_Logger::log 2: level msgid "%1$s was called with an invalid level \"%2$s\"." msgstr "" #: includes/admin/cartflows-admin.php:19 #: includes/admin/cartflows-general.php:48 msgid "Modernizing WordPress eCommerce!" msgstr "" #: includes/admin/cartflows-admin.php:29 msgid "Settings saved successfully." msgstr "" #: includes/admin/cartflows-error-log.php:36 msgid "%1$s at %2$s" msgstr "" #: includes/admin/cartflows-error-log.php:41 #: modules/flow/classes/class-cartflows-flow-post-type.php:225 #: modules/flow/view/meta-flow-steps.php:104 msgid "View" msgstr "" #: includes/admin/cartflows-error-log.php:65 msgid "Delete log" msgstr "" #: includes/admin/cartflows-error-log.php:70 msgid "There are currently no logs to view." msgstr "" #: includes/admin/cartflows-general-bck.php:10 msgid "Selec" msgstr "" #: includes/admin/cartflows-general-bck.php:22 msgid "General" msgstr "" #: includes/admin/cartflows-general.php:31 #: includes/admin/cartflows-general.php:58 msgid "General Settings" msgstr "" #: includes/admin/cartflows-general.php:40 msgid "Getting Started" msgstr "" #: includes/admin/cartflows-general.php:71 msgid "Disallow search engines from indexing flows" msgstr "" #: includes/admin/cartflows-general.php:81 #: modules/flow/view/meta-flow-steps.php:93 msgid "Global Checkout" msgstr "" #: includes/admin/cartflows-general.php:90 msgid "Show Templates designed with" msgstr "" #: includes/admin/cartflows-general.php:91 msgid "" "CartFlows offers flow templates that can be imported in one click. These " "templates are available in few different page builders. Please choose your " "preferred page builder from the list so you will only see templates that " "are made using that page builder.." msgstr "" #: includes/admin/cartflows-general.php:95 msgid "Beaver Builder" msgstr "" #: includes/admin/cartflows-general.php:106 #: includes/admin/cartflows-general.php:190 #: includes/admin/cartflows-general.php:296 #: includes/admin/cartflows-general.php:413 msgid "Save Changes" msgstr "" #: includes/admin/cartflows-general.php:116 msgid "Permalink Settings" msgstr "" #: includes/admin/cartflows-general.php:131 #: modules/checkout/classes/class-cartflows-checkout-meta.php:603 #: modules/optin/classes/class-cartflows-optin-meta.php:380 msgid "Default" msgstr "" #: includes/admin/cartflows-general.php:137 msgid "Flow and Step Slug" msgstr "" #: includes/admin/cartflows-general.php:143 msgid "Flow Slug" msgstr "" #: includes/admin/cartflows-general.php:149 msgid "Step Slug" msgstr "" #: includes/admin/cartflows-general.php:161 msgid "Post Type Permalink Base" msgstr "" #: includes/admin/cartflows-general.php:169 msgid "Step Base" msgstr "" #: includes/admin/cartflows-general.php:179 msgid "Flow Base" msgstr "" #: includes/admin/cartflows-general.php:191 msgid "Set Default" msgstr "" #: includes/admin/cartflows-general.php:205 msgid "Facebook Pixel Settings" msgstr "" #: includes/admin/cartflows-general.php:220 msgid "Enable Facebook Pixel Tracking" msgstr "" #: includes/admin/cartflows-general.php:233 msgid "Enable for the whole site" msgstr "" #: includes/admin/cartflows-general.php:241 #: includes/admin/cartflows-general.php:340 msgid "If this option is unchecked, it will only apply to CartFlows steps." msgstr "" #: includes/admin/cartflows-general.php:251 msgid "Enter Facebook pixel ID" msgstr "" #: includes/admin/cartflows-general.php:259 #: includes/admin/cartflows-general.php:358 msgid "Enable Events:" msgstr "" #: includes/admin/cartflows-general.php:268 msgid "Initiate Checkout" msgstr "" #: includes/admin/cartflows-general.php:277 #: includes/admin/cartflows-general.php:384 msgid "Add Payment Info" msgstr "" #: includes/admin/cartflows-general.php:286 msgid "Purchase Complete" msgstr "" #: includes/admin/cartflows-general.php:308 msgid "Google Analytics Settings" msgstr "" #: includes/admin/cartflows-general.php:319 msgid "Enable Google Analytics Tracking" msgstr "" #: includes/admin/cartflows-general.php:332 msgid "Enable for the whole website" msgstr "" #: includes/admin/cartflows-general.php:350 msgid "Google Analytics ID" msgstr "" #: includes/admin/cartflows-general.php:352 msgid "" "Log into your google analytics account to find your ID. eg: " "UA-XXXXXX-X." msgstr "" #: includes/admin/cartflows-general.php:366 msgid "Begin Checkout" msgstr "" #: includes/admin/cartflows-general.php:375 msgid "Add To Cart" msgstr "" #: includes/admin/cartflows-general.php:393 msgid "Purchase" msgstr "" #: includes/admin/cartflows-general.php:401 msgid "" "Google Analytics not working correctly? Click here to know more. " msgstr "" #: includes/admin/cartflows-general.php:434 msgid "Knowledge Base" msgstr "" #: includes/admin/cartflows-general.php:438 msgid "Not sure how something works? Take a peek at the knowledge base and learn." msgstr "" #: includes/admin/cartflows-general.php:441 msgid "Visit Knowledge Base »" msgstr "" #: includes/admin/cartflows-general.php:449 msgid "Community" msgstr "" #: includes/admin/cartflows-general.php:453 msgid "" "Join the community of super helpful CartFlows users. Say hello, ask " "questions, give feedback and help each other!" msgstr "" #: includes/admin/cartflows-general.php:456 msgid "Join Our Facebook Group »" msgstr "" #: includes/admin/cartflows-general.php:464 msgid "Five Star Support" msgstr "" #: includes/admin/cartflows-general.php:468 msgid "Got a question? Get in touch with CartFlows developers. We're happy to help!" msgstr "" #: includes/admin/cartflows-general.php:471 msgid "Submit a Ticket »" msgstr "" #: includes/admin/cartflows-general.php:481 msgid "Load Minified CSS" msgstr "" #: includes/admin/cartflows-general.php:486 msgid "" "Load the Minified CSS from here. Just Enable it by checking the below given " "checkbox." msgstr "" #: includes/admin/cartflows-general.php:493 msgid "Load minified CSS & JS Files" msgstr "" #: includes/admin/cartflows-general.php:498 msgid "Save" msgstr "" #: includes/exporter.php:12 msgid "Export Flows to a JSON file" msgstr "" #: includes/exporter.php:13 msgid "" "This tool allows you to generate and download a JSON file containing a list " "of all flows." msgstr "" #: includes/importer.php:12 msgid "Import Flows to a JSON file" msgstr "" #: includes/importer.php:13 msgid "This tool allows you to import the flows from the JSON file." msgstr "" #: includes/importer.php:21 msgid "Import" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:254 #: modules/optin/classes/class-cartflows-optin-markup.php:146 #: modules/thankyou/classes/class-cartflows-thankyou-markup.php:90 msgid "" "WooCommerce functions do not exist. If you are in an IFrame, please reload " "it." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:255 #: modules/optin/classes/class-cartflows-optin-markup.php:147 #: modules/thankyou/classes/class-cartflows-thankyou-markup.php:91 msgid "Click Here to Reload" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:273 msgid "Checkout ID not found" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:336 #: modules/checkout/templates/embed/checkout-template-simple.php:25 #: modules/checkout/templates/wcf-template.php:36 #: modules/optin/templates/optin-template-simple.php:25 msgid "Your cart is currently empty." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:401 msgid "" "No product is selected. Please select products from the checkout meta " "settings to continue." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:454 msgid "Variations Not set" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:462 msgid "This product can't be purchased" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:901 #: modules/checkout/classes/class-cartflows-checkout-markup.php:944 msgid "Coupon Code" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:902 #: modules/checkout/classes/class-cartflows-checkout-markup.php:953 msgid "Apply" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:1109 msgid "Sorry there was a problem removing this coupon." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:1112 msgid "Coupon has been removed." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:1131 msgid "Sorry there was a problem removing " msgstr "" #: modules/checkout/classes/class-cartflows-checkout-markup.php:1134 msgid " has been removed." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:65 msgid "Checkout Layout" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:150 #: modules/landing/classes/class-cartflows-landing-meta.php:130 #: modules/optin/classes/class-cartflows-optin-meta.php:126 #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:130 msgid "Shortcodes" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:156 #: modules/optin/classes/class-cartflows-optin-meta.php:132 msgid "Select Product" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:162 msgid "Order Bump" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:168 msgid "Checkout Offer" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:174 msgid "Checkout Design" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:180 msgid "Checkout Fields" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:186 msgid "Checkout Settings" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:203 msgid "Logo (Optional)" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:265 msgid "Add this shortcode to your checkout page" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:301 #. translators: %s: link msgid "" "Upgrade to %1$sCartFlows Pro%2$s for Pre-applied Coupon, Product Variations " "& Quantity Options." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:328 #. translators: %s: link msgid "Upgrade to %1$sCartFlows Pro%2$s for Checkout Offer feature" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:338 #. translators: %s: link msgid "Update to %1$sCartFlows Pro%2$s to %3$s or above for Checkout Offer feature" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:365 #. translators: %s: link msgid "Upgrade to %1$sCartFlows Pro%2$s for animate browser tab feature" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:375 #. translators: %s: link msgid "" "Update to %1$sCartFlows Pro%2$s to %3$s or above for animate browser tab " "feature" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:398 #. translators: %s: link msgid "Upgrade to %1$sCartFlows Pro%2$s for Order Bump feature." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:425 #: modules/optin/classes/class-cartflows-optin-meta.php:267 #. translators: %s: link msgid "Upgrade to %1$sCartFlows Pro%2$s for Custom Fields feature." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:448 msgid "Place Order Button Text" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:452 msgid "Place order" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:454 msgid "It will change the Place Order Button text on checkout page." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:464 msgid "Enable cart editing on checkout" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:472 #. translators: %s: link msgid "Users will able to remove products from the checkout page." msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:502 msgid "One Column (Available in CartFlows Pro) " msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:503 msgid "Two Step (Available in CartFlows Pro) " msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:509 msgid "Checkout Skin" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:513 msgid "One Column" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:514 msgid "Two Column" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:515 msgid "Two Step" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:524 #: modules/optin/classes/class-cartflows-optin-meta.php:343 msgid "Primary Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:533 #: modules/checkout/classes/class-cartflows-checkout-meta.php:568 #: modules/checkout/classes/class-cartflows-checkout-meta.php:614 #: modules/checkout/classes/class-cartflows-checkout-meta.php:706 #: modules/optin/classes/class-cartflows-optin-meta.php:352 #: modules/optin/classes/class-cartflows-optin-meta.php:391 #: modules/optin/classes/class-cartflows-optin-meta.php:503 #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:209 #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:240 msgid "Font Family" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:541 msgid "Advance Options" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:553 #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:225 msgid "Heading" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:559 msgid "Heading Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:577 #: modules/checkout/classes/class-cartflows-checkout-meta.php:623 #: modules/checkout/classes/class-cartflows-checkout-meta.php:715 #: modules/optin/classes/class-cartflows-optin-meta.php:400 #: modules/optin/classes/class-cartflows-optin-meta.php:512 #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:249 msgid "Font Weight" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:585 #: modules/optin/classes/class-cartflows-optin-meta.php:363 msgid "Input Fields" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:593 #: modules/optin/classes/class-cartflows-optin-meta.php:370 msgid "Floating Labels (Available in CartFlows Pro)" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:599 #: modules/optin/classes/class-cartflows-optin-meta.php:376 msgid "Style" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:604 #: modules/optin/classes/class-cartflows-optin-meta.php:381 msgid "Floating Labels" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:631 #: modules/checkout/classes/class-cartflows-checkout-meta.php:723 #: modules/optin/classes/class-cartflows-optin-meta.php:408 #: modules/optin/classes/class-cartflows-optin-meta.php:520 msgid "Size" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:635 #: modules/checkout/classes/class-cartflows-checkout-meta.php:727 #: modules/optin/classes/class-cartflows-optin-meta.php:412 #: modules/optin/classes/class-cartflows-optin-meta.php:524 msgid "Extra Small" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:636 #: modules/checkout/classes/class-cartflows-checkout-meta.php:728 #: modules/optin/classes/class-cartflows-optin-meta.php:413 #: modules/optin/classes/class-cartflows-optin-meta.php:525 msgid "Small" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:637 #: modules/checkout/classes/class-cartflows-checkout-meta.php:729 #: modules/optin/classes/class-cartflows-optin-meta.php:414 #: modules/optin/classes/class-cartflows-optin-meta.php:526 msgid "Medium" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:638 #: modules/checkout/classes/class-cartflows-checkout-meta.php:730 #: modules/optin/classes/class-cartflows-optin-meta.php:415 #: modules/optin/classes/class-cartflows-optin-meta.php:527 msgid "Large" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:639 #: modules/checkout/classes/class-cartflows-checkout-meta.php:731 #: modules/optin/classes/class-cartflows-optin-meta.php:416 #: modules/optin/classes/class-cartflows-optin-meta.php:528 msgid "Extra Large" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:640 #: modules/checkout/classes/class-cartflows-checkout-meta.php:732 #: modules/optin/classes/class-cartflows-optin-meta.php:417 #: modules/optin/classes/class-cartflows-optin-meta.php:529 msgid "Custom" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:647 #: modules/checkout/classes/class-cartflows-checkout-meta.php:739 #: modules/optin/classes/class-cartflows-optin-meta.php:424 #: modules/optin/classes/class-cartflows-optin-meta.php:536 msgid "Top Bottom Spacing" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:655 #: modules/checkout/classes/class-cartflows-checkout-meta.php:747 #: modules/optin/classes/class-cartflows-optin-meta.php:432 #: modules/optin/classes/class-cartflows-optin-meta.php:544 msgid "Left Right Spacing" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:663 #: modules/optin/classes/class-cartflows-optin-meta.php:448 msgid "Text / Placeholder Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:671 #: modules/checkout/classes/class-cartflows-checkout-meta.php:771 #: modules/optin/classes/class-cartflows-optin-meta.php:456 #: modules/optin/classes/class-cartflows-optin-meta.php:581 msgid "Background Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:679 #: modules/checkout/classes/class-cartflows-checkout-meta.php:787 #: modules/optin/classes/class-cartflows-optin-meta.php:464 #: modules/optin/classes/class-cartflows-optin-meta.php:597 msgid "Border Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:686 #: modules/optin/classes/class-cartflows-optin-meta.php:440 msgid "Label Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:699 msgid "Buttons" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:755 #: modules/optin/classes/class-cartflows-optin-meta.php:565 msgid "Text Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:763 #: modules/optin/classes/class-cartflows-optin-meta.php:573 msgid "Text Hover Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:779 #: modules/optin/classes/class-cartflows-optin-meta.php:589 msgid "Background Hover Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:795 #: modules/optin/classes/class-cartflows-optin-meta.php:605 msgid "Border Hover Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:808 msgid "Sections" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:814 msgid "Highlight Area Background Color" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:853 msgid "Header Logo" msgstr "" #: modules/checkout/classes/class-cartflows-checkout-meta.php:861 msgid "Logo Width (In px)" msgstr "" #: modules/checkout/templates/wcf-template.php:46 msgid "Copyright ©" msgstr "" #: modules/checkout/templates/wcf-template.php:50 msgid "All Rights Reserved" msgstr "" #: modules/flow/classes/class-cartflows-flow-meta.php:250 #. translators: %s flow id msgid "Step not deleted for flow - %s" msgstr "" #: modules/flow/classes/class-cartflows-flow-meta.php:281 #. translators: %s flow id msgid "Step deleted for flow - %s" msgstr "" #: modules/flow/classes/class-cartflows-flow-meta.php:309 #. translators: %s flow id msgid "Steps not sorted for flow - %s" msgstr "" #: modules/flow/classes/class-cartflows-flow-meta.php:332 #. translators: %s flow id msgid "Steps sorted for flow - %s" msgstr "" #: modules/flow/classes/class-cartflows-flow-meta.php:443 msgid "Analytics" msgstr "" #: modules/flow/classes/class-cartflows-flow-meta.php:460 #. translators: %s: link msgid "Upgrade to %1$sCartFlows Pro%2$s for Analytics feature" msgstr "" #: modules/flow/classes/class-cartflows-flow-meta.php:478 msgid "Flow Settings" msgstr "" #: modules/flow/classes/class-cartflows-flow-meta.php:563 msgid "Enable Test Mode" msgstr "" #: modules/flow/classes/class-cartflows-flow-meta.php:570 msgid "" "If you are using WooCommerce plugin then test mode will add random products " "in your flow, so you can preview it easily while testing." msgstr "" #: modules/flow/classes/class-cartflows-flow-meta.php:689 #: modules/flow/view/meta-flow-steps.php:133 msgid "Add New Step" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:69 msgid "Flow: " msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:69 msgid "Name: " msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:101 msgid "Search Flows" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:102 msgid "All Flows" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:103 msgid "Edit Flow" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:104 msgid "View Flow" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:105 #: modules/flow/classes/class-cartflows-flow-post-type.php:107 #: modules/flow/classes/class-cartflows-step-post-type.php:166 #: modules/flow/classes/class-cartflows-step-post-type.php:168 msgid "Add New" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:106 msgid "Update Flow" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:108 msgid "New Flow Name" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:190 msgid "Upgrade to CartFlows Pro" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:209 msgid "Slug" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:332 msgid "Flows" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:354 #: modules/flow/classes/class-cartflows-flow-post-type.php:360 #: modules/flow/classes/class-cartflows-step-post-type.php:397 #: modules/flow/classes/class-cartflows-step-post-type.php:403 #. translators: %s: singular custom post type name msgid "%s updated." msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:356 #: modules/flow/classes/class-cartflows-step-post-type.php:399 #. translators: %s: singular custom post type name msgid "Custom %s updated." msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:358 #: modules/flow/classes/class-cartflows-step-post-type.php:401 #. translators: %s: singular custom post type name msgid "Custom %s deleted." msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:362 #: modules/flow/classes/class-cartflows-step-post-type.php:405 #. translators: %1$s: singular custom post type name ,%2$s: date and time of #. the revision msgid "%1$s restored to revision from %2$s" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:364 #: modules/flow/classes/class-cartflows-step-post-type.php:407 #. translators: %s: singular custom post type name msgid "%s published." msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:366 #: modules/flow/classes/class-cartflows-step-post-type.php:409 #. translators: %s: singular custom post type name msgid "%s saved." msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:368 #: modules/flow/classes/class-cartflows-step-post-type.php:411 #. translators: %s: singular custom post type name msgid "%s submitted." msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:370 #: modules/flow/classes/class-cartflows-step-post-type.php:413 #. translators: %s: singular custom post type name msgid "%s scheduled for." msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:372 #: modules/flow/classes/class-cartflows-step-post-type.php:415 #. translators: %s: singular custom post type name msgid "%s draft updated." msgstr "" #: modules/flow/classes/class-cartflows-flow-shortcodes.php:148 #: modules/widgets/class-cartflows-next-step.php:78 msgid "Next Step" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:162 msgid "Search Steps" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:163 msgid "All Steps" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:164 #: modules/flow/view/meta-flow-steps.php:106 msgid "Edit Step" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:165 #: modules/flow/view/meta-flow-steps.php:102 msgid "View Step" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:167 msgid "Update Step" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:169 msgid "New Step Name" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:209 msgid "Step Type" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:219 msgid "Step Flow" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:244 #: modules/flow/view/meta-flow-steps.php:16 msgid "Optin (Woo)" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:265 #: modules/flow/view/meta-flow-steps.php:14 msgid "Upsell (Woo)" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:272 #: modules/flow/view/meta-flow-steps.php:15 msgid "Downsell (Woo)" msgstr "" #: modules/flow/view/meta-flow-steps.php:85 msgid "No Product Assigned" msgstr "" #: modules/flow/view/meta-flow-steps.php:89 msgid "Global Checkout - Remove selected checkout product" msgstr "" #: modules/flow/view/meta-flow-steps.php:108 msgid "Edit" msgstr "" #: modules/flow/view/meta-flow-steps.php:113 msgid "Clone Step" msgstr "" #: modules/flow/view/meta-flow-steps.php:118 msgid "Delete Step" msgstr "" #: modules/flow/view/meta-flow-steps.php:120 msgid "Delete" msgstr "" #: modules/flow/view/meta-flow-steps.php:149 msgid "Steps Library" msgstr "" #: modules/flow/view/meta-flow-steps.php:198 msgid "Create Step" msgstr "" #: modules/flow/view/meta-flow-steps.php:200 msgid "You need a Cartflows Pro version to import Upsell / Downsell" msgstr "" #: modules/landing/classes/class-cartflows-landing-meta.php:66 msgid "Landing Page Settings" msgstr "" #: modules/landing/classes/class-cartflows-landing-meta.php:169 msgid "Next Step Link" msgstr "" #: modules/optin/classes/class-cartflows-optin-markup.php:165 msgid "Please place shortcode on Optin step-type only." msgstr "" #: modules/optin/classes/class-cartflows-optin-markup.php:225 msgid "" "No product is selected. Please select a Simple, Virtual and Free product " "from the meta settings." msgstr "" #: modules/optin/classes/class-cartflows-optin-markup.php:242 msgid "Please update the selected product's price to zero (0)." msgstr "" #: modules/optin/classes/class-cartflows-optin-markup.php:251 #: modules/optin/classes/class-cartflows-optin-markup.php:255 msgid "Please select a Simple, Virtual and Free product." msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:65 msgid "Optin Settings" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:138 #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:136 msgid "Design" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:144 msgid "Form Fields" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:213 msgid "Add this shortcode to your optin page" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:238 msgid "Select Free Product" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:239 msgid "Select Free and Virtual product only." msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:290 msgid "Pass Fields as URL Parameters" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:293 msgid "Enable" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:294 msgid "" "You can pass specific fields from the form to next step as URL query " "parameters." msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:305 msgid "Enter form field" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:308 #: modules/optin/classes/class-cartflows-optin-meta.php:318 msgid "Enter comma seprated field name. E.g. first_name, last_name" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:310 msgid "Fields to pass, separated by commas" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:320 #. translators: %s: link msgid "" "You can pass field value as a URL parameter to the next step. %1$sClick " "here%2$s for more information." msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:477 msgid "Submit Button" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:483 msgid "Button Text" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:494 #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:217 msgid "Font Size" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:552 msgid "Position" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:556 msgid "Left" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:557 msgid "Center" msgstr "" #: modules/optin/classes/class-cartflows-optin-meta.php:558 msgid "Right" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:65 msgid "Thank You Page Settings" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:142 msgid "Edit Fields" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:182 msgid "Order Details" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:194 msgid "Text" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:200 #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:231 msgid "Color" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:257 msgid "Advanced Options" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:267 msgid "Container Width (In px)" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:275 msgid "Section Background Color" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:289 msgid "Enable Order Overview " msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:297 msgid "Enable Order Details " msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:305 msgid "Enable Billing Details " msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:313 msgid "Enable Shipping Details " msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:329 msgid "Thank You Page Text" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:333 #: woocommerce/template/checkout/thankyou.php:41 #: woocommerce/template/checkout/thankyou.php:83 msgid "Thank you. Your order has been received." msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:335 msgid "It will change the default text on thank you page." msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:343 msgid "Redirect After Purchase" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:352 msgid "Redirect Link" msgstr "" #: modules/thankyou/classes/class-cartflows-thankyou-meta.php:356 msgid "https://" msgstr "" #: modules/widgets/class-cartflows-next-step.php:24 msgid "CartFlows Next Step" msgstr "" #: modules/widgets/class-cartflows-next-step.php:26 msgid "Next Step Widgets" msgstr "" #: modules/widgets/class-cartflows-next-step.php:106 msgid "New title" msgstr "" #: modules/widgets/class-cartflows-next-step.php:123 msgid "Title:" msgstr "" #: modules/widgets/class-cartflows-next-step.php:127 msgid "Flow ID:" msgstr "" #: modules/widgets/class-cartflows-next-step.php:131 msgid "Step ID:" msgstr "" #: woocommerce/template/cart/cart-shipping.php:51 #. Translators: $s shipping destination. msgid "Estimate for %s." msgstr "" #: woocommerce/template/cart/cart-shipping.php:52 msgid "Change address" msgstr "" #: woocommerce/template/cart/cart-shipping.php:54 msgid "This is only an estimate. Prices will be updated during checkout." msgstr "" #: woocommerce/template/cart/cart-shipping.php:61 msgid "Enter your address to view shipping options." msgstr "" #: woocommerce/template/cart/cart-shipping.php:63 msgid "" "There are no shipping methods available. Please ensure that your address " "has been entered correctly, or contact us if you need any help." msgstr "" #: woocommerce/template/cart/cart-shipping.php:66 #. Translators: $s shipping destination. msgid "No shipping options were found for %s." msgstr "" #: woocommerce/template/cart/cart-shipping.php:67 msgid "Enter a different address" msgstr "" #: woocommerce/template/checkout/form-billing.php:27 msgid "Billing & Shipping" msgstr "" #: woocommerce/template/checkout/form-billing.php:31 msgid "Billing details" msgstr "" #: woocommerce/template/checkout/form-billing.php:59 msgid "Create an account?" msgstr "" #: woocommerce/template/checkout/form-checkout.php:26 msgid "You must be logged in to checkout." msgstr "" #: woocommerce/template/checkout/form-checkout.php:52 msgid "Your order" msgstr "" #: woocommerce/template/checkout/form-coupon.php:26 msgid "Have a coupon?" msgstr "" #: woocommerce/template/checkout/form-coupon.php:26 msgid "Click here to enter your code" msgstr "" #: woocommerce/template/checkout/form-coupon.php:31 msgid "If you have a coupon code, please apply it below." msgstr "" #: woocommerce/template/checkout/form-coupon.php:34 msgid "Coupon code" msgstr "" #: woocommerce/template/checkout/form-coupon.php:38 msgid "Apply coupon" msgstr "" #: woocommerce/template/checkout/form-login.php:26 msgid "Returning customer?" msgstr "" #: woocommerce/template/checkout/form-login.php:26 msgid "Click here to login" msgstr "" #: woocommerce/template/checkout/form-login.php:32 msgid "" "If you have shopped with us before, please enter your details below. If you " "are a new customer, please proceed to the Billing & Shipping section." msgstr "" #: woocommerce/template/checkout/form-shipping.php:26 msgid "Ship to a different address?" msgstr "" #: woocommerce/template/checkout/form-shipping.php:57 msgid "Additional information" msgstr "" #: woocommerce/template/checkout/payment.php:33 msgid "" "Sorry, it seems that there are no available payment methods for your state. " "Please contact us if you require assistance or wish to make alternate " "arrangements." msgstr "" #: woocommerce/template/checkout/payment.php:33 msgid "Please fill in your details above to see available payment methods." msgstr "" #: woocommerce/template/checkout/payment.php:42 #. translators: $1 and $2 opening and closing emphasis tags respectively msgid "" "Since your browser does not support JavaScript, or it is disabled, please " "ensure you click the %1$sUpdate Totals%2$s button before placing your " "order. You may be charged more than the amount stated above if you fail to " "do so." msgstr "" #: woocommerce/template/checkout/payment.php:44 msgid "Update totals" msgstr "" #: woocommerce/template/checkout/review-order.php:26 msgid "Product" msgstr "" #: woocommerce/template/checkout/review-order.php:27 #: woocommerce/template/checkout/review-order.php:107 msgid "Total" msgstr "" #: woocommerce/template/checkout/review-order.php:60 msgid "Subtotal" msgstr "" #: woocommerce/template/checkout/thankyou.php:30 msgid "" "Unfortunately your order cannot be processed as the originating " "bank/merchant has declined your transaction. Please attempt your purchase " "again." msgstr "" #: woocommerce/template/checkout/thankyou.php:33 msgid "Pay" msgstr "" #: woocommerce/template/checkout/thankyou.php:35 msgid "My account" msgstr "" #: woocommerce/template/checkout/thankyou.php:46 msgid "Order number:" msgstr "" #: woocommerce/template/checkout/thankyou.php:51 msgid "Date:" msgstr "" #: woocommerce/template/checkout/thankyou.php:57 msgid "Email:" msgstr "" #: woocommerce/template/checkout/thankyou.php:63 msgid "Total:" msgstr "" #: woocommerce/template/checkout/thankyou.php:69 msgid "Payment method:" msgstr "" #: woocommerce/template/global/form-login.php:34 msgid "Username or email" msgstr "" #: woocommerce/template/global/form-login.php:38 msgid "Password" msgstr "" #: woocommerce/template/global/form-login.php:48 msgid "Login" msgstr "" #: woocommerce/template/global/form-login.php:53 msgid "Remember me" msgstr "" #: woocommerce/template/global/form-login.php:57 msgid "Lost your password?" msgstr "" #. Plugin Name of the plugin/theme msgid "CartFlows" msgstr "" #. Author URI of the plugin/theme msgid "https://cartflows.com/" msgstr "" #. Description of the plugin/theme msgid "Create beautiful checkout pages & sales flows for WooCommerce." msgstr "" #. Author of the plugin/theme msgid "CartFlows Inc" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:99 msgctxt "flow general name" msgid "Flows" msgstr "" #: modules/flow/classes/class-cartflows-flow-post-type.php:100 msgctxt "flow singular name" msgid "Flow" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:160 msgctxt "flow step general name" msgid "Steps" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:161 msgctxt "flow step singular name" msgid "Step" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:313 msgctxt "cartflows" msgid "CartFlows — Boxed" msgstr "" #: modules/flow/classes/class-cartflows-step-post-type.php:314 msgctxt "cartflows" msgid "Template for Page Builders" msgstr ""PK\)v3 cartflows.phpnuW+Alabel{opacity:1;overflow:visible}}PK\SFDFD%assets/min-css/optin-template.min.cssnuW+A.elementor-editor-active .wcf-optin-form .woocommerce #order_review #payment #place_order{pointer-events:none!important}.cartflows-container .wcf-optin-form,.cartflows-container .wcf-optin-form *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.wcf-optin-form .wc-backward{display:none!important}.wcf-optin-form .woocommerce form .form-row-first,.wcf-optin-form .woocommerce form .form-row-last{width:50%;display:block}.wcf-optin-form .woocommerce form .form-row-full{width:100%;clear:both}.wcf-optin-form form .form-row-wide{width:100%}.wcf-optin-form .woocommerce form .form-row-first,.woocommerce-page form .form-row-first{float:left;clear:left}.wcf-optin-form .woocommerce form .form-row-last,.woocommerce-page form .form-row-last{float:right;clear:right}.wcf-optin-form .woocommerce form .form-row .required{color:red;font-weight:700;border:0!important;text-decoration:none}.wcf-optin-form form .form-row-first.form-row-one{clear:both}.wcf-optin-form .woocommerce form.woocommerce-form-login{display:none}.wcf-optin-form .woocommerce .blockUI.blockOverlay{font-size:15px}.wcf-optin-form .woocommerce form .form-row.woocommerce-invalid .select2-container,.wcf-optin-form .woocommerce form .form-row.woocommerce-invalid input.input-text,.wcf-optin-form .woocommerce form .form-row.woocommerce-invalid select{border-width:1px;border-color:#e2401c}.wcf-optin-form .woocommerce form .form-row.woocommerce-validated .select2-container,.wcf-optin-form .woocommerce form .form-row.woocommerce-validated input.input-text,.wcf-optin-form .woocommerce form .form-row.woocommerce-validated select{border-width:1px}.wcf-optin-form .select2-container--default.field-required .select2-selection--single,.wcf-optin-form .woocommerce #order_review .input-text.field-required,.wcf-optin-form .woocommerce form .form-row input.input-text.field-required,.wcf-optin-form .woocommerce form .form-row textarea.input-text.field-required{border-color:#e2401c}.wcf-optin-form .woocommerce form .form-row input.field-validated{border-left-width:2px;border-left-color:#69bf29}.wcf-optin-form .woocommerce #payment [type=radio]:checked+label,.wcf-optin-form .woocommerce #payment [type=radio]:not(:checked)+label{padding:0}.wcf-optin-form .woocommerce #payment input[type=radio]{-webkit-border-radius:50%;border-radius:50%;margin-right:4px;line-height:10px}.wcf-optin-form .woocommerce #payment input[type=checkbox]:checked:before,.wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:checked:before,.wcf-optin-form .woocommerce .woocommerce-billing-fields [type=checkbox]:checked:before,.wcf-optin-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{content:"\e600";margin:0;color:#f16334}.wcf-optin-form .woocommerce #payment input[type=checkbox],.wcf-optin-form .woocommerce #payment input[type=radio],.wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox],.wcf-optin-form .woocommerce .woocommerce-billing-fields [type=checkbox],.wcf-optin-form .woocommerce .woocommerce-shipping-fields [type=checkbox]{border:1px solid #b4b9be;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 4px 0 0;outline:0;padding:0!important;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-appearance:none;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}.wcf-optin-form .woocommerce #payment input[type=checkbox]:focus,.wcf-optin-form .woocommerce #payment input[type=radio]:focus,.wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:focus,.wcf-optin-form .woocommerce .woocommerce-billing-fields [type=checkbox]:focus,.wcf-optin-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:focus{border-color:#f16334;-webkit-box-shadow:0 0 2px rgba(241,99,52,.8);box-shadow:0 0 2px rgba(241,99,52,.8)}.wcf-optin-form .woocommerce #payment input[type=radio]:checked:before{background-color:#f16334;-webkit-border-radius:50px;border-radius:50px;content:"\2022";font-size:24px;height:6px;line-height:16px;margin:4px;text-indent:-9999px;width:6px}.wcf-optin-form .woocommerce #payment input[type=checkbox]:checked:before,.wcf-optin-form .woocommerce #payment input[type=radio]:checked:before,.wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:before,.wcf-optin-form .woocommerce .woocommerce-billing-fields [type=checkbox]:checked:before,.wcf-optin-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{display:inline-block;float:left;font:normal 15px/1 cartflows-icon;speak:none;vertical-align:middle;width:6px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wcf-optin-form .woocommerce-checkout #payment ul.payment_methods li input[type=checkbox]{min-width:16px}.wcf-optin-form .woocommerce .col2-set .col-1,.wcf-optin-form .woocommerce .col2-set .col-2,.wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1,.wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2{float:none;width:100%;max-width:100%;padding:0;-webkit-border-radius:0;border-radius:0;border:none;border-color:none;margin-bottom:0}.wcf-optin-form #order_review_heading,.wcf-optin-form .woocommerce #ship-to-different-address,.wcf-optin-form .woocommerce-additional-fields>h3,.wcf-optin-form .woocommerce-billing-fields>h3{display:none}.wcf-optin-form .woocommerce-checkout #payment{background:unset;-webkit-border-radius:0;border-radius:0}.wcf-optin-form .woocommerce-checkout #payment .form-row{margin:0;padding:0}.wcf-optin-form .woocommerce-checkout #payment .form-row label.checkbox{display:block;margin-bottom:1.1em}.wcf-optin-form .woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:none;margin-left:10px}.wcf-optin-form .woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 .5em}.wcf-optin-form .woocommerce-checkout #payment fieldset .form-row .wcf-optin-form .woocommerce-checkout #payment fieldset p{margin-bottom:10px}.wcf-optin-form .woocommerce-checkout #payment div.payment_box{background-color:#eaeaea;font-family:inherit;font-weight:inherit;margin-bottom:.5em}.wcf-optin-form #add_payment_method #payment div.payment_box::before,.wcf-optin-form .woocommerce-cart #payment div.payment_box::before,.wcf-optin-form .woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid;border-right-color:transparent;border-left-color:transparent;border-top-color:transparent;border-bottom-color:#eaeaea;position:absolute;top:-.75em;left:0;margin:-1em 0 0 2em}.wcf-optin-form .select2-container--default .select2-selection--single{display:block;width:100%;min-height:34px;height:auto;padding:11px 12px;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid;border-color:#d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;outline:0}.wcf-optin-form .select2-container--default .select2-selection--single .select2-selection__rendered{color:#666;line-height:26px;min-height:26px;overflow:visible;padding-left:0}.select2-results__option[data-selected],.wcf-optin-form .select2-results__option[aria-selected]{font-size:14px}.wcf-optin-form .select2-container--default .select2-selection--single .select2-selection__arrow{height:100%}.select2-dropdown{border:1px solid #d4d4d4}.wcf-optin-form .woocommerce #order_review .input-text,.wcf-optin-form .woocommerce form .form-row input.input-text,.wcf-optin-form .woocommerce form .form-row select,.wcf-optin-form .woocommerce form .form-row textarea{display:block;width:100%;min-height:34px;padding:11px 12px;font-family:inherit;font-weight:inherit;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid;border-color:#d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;height:auto}.wcf-optin-form #order_review{padding:0;width:100%}.wcf-optin-form .select2-container--open,.wcf-optin-form input[type=email]:focus,.wcf-optin-form input[type=password]:focus,.wcf-optin-form input[type=tel]:focus,.wcf-optin-form input[type=text]:focus,.wcf-optin-form textarea:focus{border-color:#b3b3b3;-webkit-box-shadow:none;box-shadow:none;outline:0}.wcf-optin-form button:focus{outline:0;outline-color:none;outline-style:none;outline-width:none}.wcf-optin-form .woocommerce form.woocommerce-form-login .form-row button,.wcf-optin-form form.checkout_coupon .button{display:block;clear:both;border:none;font-size:15px;font-family:inherit;font-weight:inherit;background-color:#f16334;line-height:9px;padding:18px;margin-bottom:10px;width:100%}.wcf-optin-form .woocommerce #order_review #payment button{float:none;margin:0 auto;display:block}.wcf-optin-form .woocommerce #order_review button{border:1px solid;border-color:#f16334;background-color:#f16334;font-family:inherit;font-weight:inherit;font-size:18px;letter-spacing:.5px;width:100%;padding:16px 24px;font-size:16px;line-height:1.5;-webkit-border-radius:3px;border-radius:3px;color:#fff}.wcf-optin-form .woocommerce #order_review button.wcf-btn-small{padding:8px 6px;background-color:#c8c8c8;border:1px #c8c8c8 solid}.wcf-optin-form .woocommerce #order_review button.wcf-btn-small:hover{border-color:#f16334;background-color:#f16334}.wcf-optin-form .woocommerce #payment #place_order:hover{background-color:#f16334;border-color:#f16334;color:#fff}.wcf-optin-form .woocommerce-additional-fields,.wcf-optin-form .woocommerce-form-coupon-toggle,.wcf-optin-form table.shop_table.woocommerce-checkout-review-order-table{display:none!important}.wcf-optin-form .woocommerce-checkout{display:inline-block;text-align:inherit;width:100%}.wcf-optin-form .woocommerce-checkout .wcf-col2-set{display:block;width:100%;float:none;margin:10px 0 0 0;padding:0}.wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper,.wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{margin:0 -7px;-ms-flex-wrap:wrap;flex-wrap:wrap;-js-display:flex;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap}.wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper{margin:0 -7px}.wcf-optin-form .woocommerce form .form-row{display:block;margin-bottom:1.1em;padding:3px 7px;position:relative}.wcf-optin-form .woocommerce form .woocommerce-account-fields{display:none}.wcf-optin-form .woocommerce form .woocommerce-account-fields .form-row{padding:0}.wcf-optin-form .woocommerce form.woocommerce-form-login .form-row label,.wcf-optin-form .woocommerce-checkout .form-row label{font-size:13px;line-height:1em;letter-spacing:.3px;font-family:inherit;font-weight:inherit;margin-bottom:8px}.wcf-optin-form .woocommerce .woocommerce-billing-fields label,.wcf-optin-form .woocommerce .woocommerce-shipping-fields label{display:inherit}.wcf-optin-form .woocommerce .woocommerce-terms-and-conditions-wrapper{display:none}.wcf-optin-form .woocommerce a{color:#f16334;background-color:transparent;text-decoration:none}.wcf-optin-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message,.wcf-optin-form .woocommerce .woocommerce-error,.wcf-optin-form .woocommerce .woocommerce-info,.wcf-optin-form .woocommerce .woocommerce-message,.wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{padding:1em 2em .4em 2em;border-top:none;background-color:inherit;font-size:14px;font-weight:500;text-align:left;margin:0}.wcf-optin-form .woocommerce-info::before,.wcf-optin-form .woocommerce-message::before{left:.1em;color:#f16334}.wcf-optin-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error,.wcf-optin-form .woocommerce .woocommerce-error,.wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{background-color:#fff6f6;border:dashed 1px #a00;padding:25px 25px 20px;color:#a00;margin:1rem 0 1rem;font-size:14px;width:100%}.wcf-optin-form .woocommerce .woocommerce-error::before{content:''}.wcf-optin-form .woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{display:inline}.wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{margin:1em 0 1em}.wcf-optin-form .woocommerce .woocommerce-error li{list-style:disc inside!important;margin:0 0 8px}.wcf-optin-form .woocommerce .woocommerce-error li strong{font-weight:400}.wcf-optin-form .woocommerce form.checkout_coupon{border:1px solid #d3ced2;padding:30px 20px 20px;margin:2em 0;text-align:left;-webkit-border-radius:5px;border-radius:5px}.wcf-optin-form .woocommerce .checkout_coupon p{font-size:14px}.wcf-optin-form .woocommerce .checkout_coupon p{font-family:inherit;font-weight:500;margin-top:0;margin-bottom:10px}.wcf-optin-form-one-column{background:inherit;width:100%;margin:0 auto}.wcf-optin-form-one-column .woocommerce .col2-set .col-1,.wcf-optin-form-one-column .woocommerce .col2-set .col-2,.wcf-optin-form-one-column .woocommerce .wcf-order-wrap,.wcf-optin-form-one-column .woocommerce form.checkout_coupon,.wcf-optin-form-one-column .woocommerce-checkout #order_review_heading,.wcf-optin-form-one-column .woocommerce-checkout #payment,.wcf-optin-form-one-column .woocommerce-checkout #your_products_heading,.wcf-optin-form-one-column .woocommerce-checkout .shop_table,.wcf-optin-form-one-column .woocommerce-checkout .wcf-qty-options{width:100%}.wcf-optin-form-one-column input[type=email],.wcf-optin-form-one-column input[type=password],.wcf-optin-form-one-column input[type=tel],.wcf-optin-form-one-column input[type=text],.wcf-optin-form-one-column select,.wcf-optin-form-one-column textarea{display:block;width:100%;min-height:40px;padding:11px 12px;font-family:inherit;font-weight:inherit;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none}.wcf-optin-form-one-column .woocommerce-checkout #order_review_heading,.wcf-optin-form-one-column .woocommerce-checkout #your_products_heading{margin:20px 0 0}.wcf-optin-form-one-column .woocommerce-checkout #order_review{width:100%}@media only screen and (max-width:768px){.wcf-optin-form form.checkout_coupon .button{font-size:12px}.wcf-optin-form .woocommerce .col2-set .col-1,.wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1,.wcf-optin-form .woocommerce .wcf-order-wrap{padding:15px 0}.wcf-optin-form .woocommerce .col2-set .col-2,.wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2{padding:0}.wcf-optin-form .woocommerce form .form-row-first,.wcf-optin-form .woocommerce form .form-row-last{width:100%}.wcf-optin-form #order_review_heading,.wcf-optin-form .woocommerce #ship-to-different-address,.wcf-optin-form .woocommerce-additional-fields>h3,.wcf-optin-form .woocommerce-billing-fields>h3{font-size:1em}}#et-info-email:before,#et-info-phone:before,#et_search_icon:before,.comment-reply-link:after,.et-cart-info span:before,.et-pb-arrow-next:before,.et-pb-arrow-prev:before,.et-social-icon a:before,.et_audio_container .mejs-playpause-button button:before,.et_audio_container .mejs-volume-button button:before,.et_overlay:before,.et_password_protected_form .et_submit_button:after,.et_pb_button:after,.et_pb_contact_reset:after,.et_pb_contact_submit:after,.et_pb_font_icon:before,.et_pb_newsletter_button:after,.et_pb_pricing_table_button:after,.et_pb_promo_button:after,.et_pb_social_icon a.icon:before,.et_pb_testimonial:before,.et_pb_toggle_title:before,.form-submit .et_pb_button:after,.mobile_menu_bar:before,.woocommerce #content input.button.alt:after,.woocommerce #content input.button:after,.woocommerce #respond input#submit.alt:after,.woocommerce #respond input#submit:after,.woocommerce a.button.alt:after,.woocommerce button.button.alt:after,.woocommerce button.button:after,.woocommerce button.single_add_to_cart_button.button:after,.woocommerce input.button.alt:after,.woocommerce input.button:after,.woocommerce-page #content input.button.alt:after,.woocommerce-page #content input.button:after,.woocommerce-page #respond input#submit.alt:after,.woocommerce-page #respond input#submit:after,.woocommerce-page a.button.alt:after,.woocommerce-page a.button:after,.woocommerce-page button.button.alt:after,.woocommerce-page button.button:after,.woocommerce-page input.button.alt:after,.woocommerce-page input.button:after,a.et_pb_more_button:after{text-shadow:0 0;font-family:none;font-weight:400;font-style:normal;font-variant:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1;text-transform:none;speak:none}.comment-reply-link:hover:after,.woocommerce #content input.button.alt:hover:after,.woocommerce #content input.button:hover:after,.woocommerce #respond input#submit.alt:hover:after,.woocommerce #respond input#submit:hover:after,.woocommerce a.button.alt:hover:after,.woocommerce a.button:hover:after,.woocommerce button.button.alt:hover:after,.woocommerce button.button:hover:after,.woocommerce input.button.alt:hover:after,.woocommerce input.button:hover:after{opacity:0}.thrv_wrapper .wcf-optin-form div{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}PK\;mm6assets/min-css/checkout-template-the-seven-rtl.min.cssnuW+A.wf-container>*,body,body.page,button,input,optgroup,select,textarea{font-family:normal 1rem/2 sans-serif,Helvetica,Arial,Verdana,sans-serif;font-size:inherit}.wcf-embed-checkout-form-one-column #customer_details{width:100%}.wcf-embed-checkout-form-two-column #customer_details{width:55%}.wpcf7-number,input[type=date],input[type=email],input[type=number],input[type=password],input[type=range],input[type=search],input[type=tel],input[type=text],input[type=url],select{height:auto}#ship-to-different-address{font:inherit}#ship-to-different-address label,.create-account label.checkbox span{font-size:inherit;line-height:inherit}.order_details .product-name,.order_details .product-name a,.woocommerce-checkout-review-order .product-name,.woocommerce-checkout-review-order .product-name a{font:inherit;font-size:inherit;color:inherit}.order_details .about_paypal,.order_details .cart-subtotal th,.order_details .order-total th,.order_details .product-quantity,.order_details .product-total,.order_details .product-total .woocommerce-Price-amount,.order_details .shipping th,.order_details tfoot th,.woocommerce-checkout-review-order .about_paypal,.woocommerce-checkout-review-order .cart-subtotal th,.woocommerce-checkout-review-order .order-total th,.woocommerce-checkout-review-order .product-quantity,.woocommerce-checkout-review-order .product-total,.woocommerce-checkout-review-order .product-total .woocommerce-Price-amount,.woocommerce-checkout-review-order .shipping th,.woocommerce-checkout-review-order tfoot th{color:inherit}#shipping_method label,.payment_methods label{color:inherit;font-size:inherit;line-height:inherit}.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-checkbox-text,.woocommerce-terms-and-conditions-text{font-size:inherit;line-height:inherit}.woocommerce-error .woocommerce-error-text,.woocommerce-error .woocommerce-info-text,.woocommerce-error .woocommerce-message-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-info .woocommerce-error-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-info .woocommerce-info-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-info .woocommerce-message-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-message .woocommerce-error-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-message .woocommerce-info-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-message .woocommerce-message-text{font:inherit}.checkout .woocommerce-NoticeGroup .woocommerce-error .woocommerce-error-text{margin:0;padding-right:0}table.shop_table tbody tr td,table.shop_table tbody tr th,table.shop_table thead tr td,table.shop_table thead tr th{border:none;font-weight:400;width:50%}@media screen and (max-width:990px){#customer_details{width:100%}.mt20{margin-top:10px!important}}@media only screen and (max-width:768px){#customer_details{width:100%}.mt20{margin-top:10px!important}}@media screen and (max-width:600px){#customer_details{width:100%}table.shop_table tbody tr{padding:0}.shop_table tr{border-top:inherit;-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-flow:inherit;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-flow:inherit;flex-flow:inherit}.shop_table tr.cart_item td.product-name{-webkit-box-align:baseline;-webkit-align-items:baseline;-moz-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-flow:inherit;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-flow:inherit;flex-flow:inherit;text-align:right}.shop_table thead{display:block}}PK\BDgg(assets/min-css/checkout-template.min.cssnuW+A.cartflows-container .wcf-embed-checkout-form,.cartflows-container .wcf-embed-checkout-form *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.wcf-embed-checkout-form .wc-backward{display:none!important}.wcf-embed-checkout-form .woocommerce form .form-row-first,.wcf-embed-checkout-form .woocommerce form .form-row-last,.wcf-embed-checkout-form .woocommerce-page form .form-row-first,.wcf-embed-checkout-form .woocommerce-page form .form-row-last{width:50%;display:block}.wcf-embed-checkout-form .woocommerce form .form-row-full,.wcf-embed-checkout-form .woocommerce-page form .form-row-full{width:100%;clear:both}.wcf-embed-checkout-form form .form-row-wide{width:100%}.wcf-embed-checkout-form form .wcf-column-33{width:33.33%}.wcf-embed-checkout-form .woocommerce form .form-row-first,.woocommerce-page form .form-row-first{float:left;clear:left}.wcf-embed-checkout-form .woocommerce form .form-row-last,.woocommerce-page form .form-row-last{float:right;clear:right}.wcf-embed-checkout-form .woocommerce form .form-row .required{color:red;font-weight:700;border:0!important;text-decoration:none}.wcf-embed-checkout-form .woocommerce .woocommerce-checkout .product-name .remove{font-family:cartflows-icon;display:inline-block;font-size:10px;border:1px #4d5763 solid;-webkit-border-radius:50%;border-radius:50%;padding:1px;color:#4d5763!important;line-height:1;margin-right:5px;text-align:center;font-weight:100;width:14px;height:14px;background-color:#fff}.wcf-embed-checkout-form .woocommerce .woocommerce-checkout .product-name .remove:hover{color:#f1653c!important;border:1px #f1653c solid;background-color:#fff}.wcf-embed-checkout-form form .form-row-first.form-row-one{clear:both}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login{display:none}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row{margin-bottom:15px}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .clear{clear:none}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label{margin:0;line-height:1em;padding-top:0;position:relative;top:0}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .login-form-actions{-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-bottom:0}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .lost_password,.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .remember_me{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;font-family:inherit;font-size:13px}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me label{margin-bottom:0;vertical-align:text-top}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me input,.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me span{vertical-align:middle}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .lost_password{text-align:right;margin-top:0;margin-bottom:0}.wcf-embed-checkout-form .woocommerce .blockUI.blockOverlay{font-size:15px}.wcf-embed-checkout-form .woocommerce form .form-row.mt20{margin-top:20px}.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid .select2-container,.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid input.input-text,.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid select{border-width:1px;border-color:#e2401c}.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated .select2-container,.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated input.input-text,.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated select{border-width:1px}.wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single,.wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required,.wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required,.wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required{border-color:#e2401c}.wcf-embed-checkout-form .woocommerce form .form-row input.field-validated{border-left-width:2px;border-left-color:#69bf29}.wcf-embed-checkout-form .wcf-checkout-header-image{text-align:center}.wcf-embed-checkout-form .woocommerce #payment [type=radio]:checked+label,.wcf-embed-checkout-form .woocommerce #payment [type=radio]:not(:checked)+label{padding:0}.wcf-embed-checkout-form .woocommerce #payment input[type=radio]{-webkit-border-radius:50%;border-radius:50%;margin-right:4px;line-height:10px}.wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before,.wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:checked:before,.wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type=checkbox]:checked:before,.wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{content:"\e600";margin:0;color:#f16334}.wcf-embed-checkout-form .woocommerce #payment input[type=checkbox],.wcf-embed-checkout-form .woocommerce #payment input[type=radio],.wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox],.wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type=checkbox],.wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]{border:1px solid #b4b9be;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 4px 0 0;outline:0;padding:0!important;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-appearance:none;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}.wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:focus,.wcf-embed-checkout-form .woocommerce #payment input[type=radio]:focus,.wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:focus,.wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type=checkbox]:focus,.wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:focus{border-color:#f16334;-webkit-box-shadow:0 0 2px rgba(241,99,52,.8);box-shadow:0 0 2px rgba(241,99,52,.8)}.wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before{background-color:#f16334;-webkit-border-radius:50px;border-radius:50px;content:"\2022";font-size:24px;height:6px;line-height:16px;margin:4px;text-indent:-9999px;width:6px}.wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before,.wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before,.wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:before,.wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type=checkbox]:checked:before,.wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{display:inline-block;float:left;font:normal 15px/1 cartflows-icon;speak:none;vertical-align:middle;width:6px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li input[type=checkbox]{min-width:16px}.wcf-embed-checkout-form .woocommerce .col2-set .col-1,.wcf-embed-checkout-form .woocommerce .col2-set .col-2,.wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-1,.wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-2,.wcf-embed-checkout-form .woocommerce-page .col2-set .col-1,.wcf-embed-checkout-form .woocommerce-page .col2-set .col-2,.wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-1,.wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-2{float:none;width:100%;max-width:100%;padding:0;-webkit-border-radius:0;border-radius:0;border:none;border-color:none;margin-bottom:0}.wcf-embed-checkout-form #order_review_heading,.wcf-embed-checkout-form .woocommerce #ship-to-different-address,.wcf-embed-checkout-form .woocommerce-additional-fields>h3,.wcf-embed-checkout-form .woocommerce-billing-fields>h3{font-family:inherit;font-weight:600;font-size:20px;margin:0 0 25px 0;padding:0;width:100%}.wcf-embed-checkout-form .woocommerce-checkout #payment{background:unset;-webkit-border-radius:0;border-radius:0}.wcf-embed-checkout-form .woocommerce-checkout #payment .form-row{margin:0;padding:0}.wcf-embed-checkout-form .woocommerce-checkout #payment .form-row label.checkbox{display:block;margin-bottom:1.1em}.wcf-embed-checkout-form .woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:none;margin-left:10px}.wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 .5em}.wcf-embed-checkout-form .woocommerce-checkout #payment fieldset .form-row .wcf-embed-checkout-form .woocommerce-checkout #payment fieldset p{margin-bottom:10px}.wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box{background-color:#eaeaea;font-family:inherit;font-weight:inherit;margin-bottom:.5em}.wcf-embed-checkout-form #add_payment_method #payment div.payment_box::before,.wcf-embed-checkout-form .woocommerce-cart #payment div.payment_box::before,.wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid;border-right-color:transparent;border-left-color:transparent;border-top-color:transparent;border-bottom-color:#eaeaea;position:absolute;top:-.75em;left:0;margin:-1em 0 0 2em}.wcf-embed-checkout-form .select2-container--default .select2-selection--single{display:block;width:100%;min-height:34px;height:auto;padding:11px 12px;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid;border-color:#d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;outline:0}.wcf-embed-checkout-form .select2-container--default .select2-selection--single .select2-selection__rendered{color:#666;line-height:19px;min-height:19px;overflow:visible;padding-left:0}.select2-results__option[data-selected],.wcf-embed-checkout-form .select2-results__option[aria-selected]{font-size:14px}.wcf-embed-checkout-form .select2-container--default .select2-selection--single .select2-selection__arrow{height:100%}.select2-dropdown{border:1px solid #d4d4d4}.wcf-embed-checkout-form .woocommerce #order_review .input-text,.wcf-embed-checkout-form .woocommerce form .form-row input.input-text,.wcf-embed-checkout-form .woocommerce form .form-row select,.wcf-embed-checkout-form .woocommerce form .form-row textarea{display:block;width:100%;min-height:34px;padding:11px 12px;font-family:inherit;font-weight:inherit;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid;border-color:#d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;height:auto}.wcf-embed-checkout-form #order_review{padding:3px;width:100%}.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error,.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message{padding:0 2em 1.2em 2em;background-color:transparent;border:none;margin:0;width:100%}.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error li{list-style:none!important;margin:0}.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before,.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message::before{top:0;left:0}.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before{content:'\e016'}.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error li{margin:0 0 0 8px}.wcf-embed-checkout-form .woocommerce #order_review .wcf-custom-coupon-field input[type=text]{font-weight:400}.wcf-embed-checkout-form .wcf-custom-coupon-field{clear:left;-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-bottom:15px;margin-top:25px;border-top:1px solid #dcdcdc;border-bottom:1px solid #dcdcdc;padding-top:25px;padding-bottom:25px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.wcf-embed-checkout-form #order_review .wcf-coupon-col-1{width:70%;display:inline-block;padding-right:20px}.wcf-embed-checkout-form #order_review .wcf-coupon-col-2{width:30%}.wcf-embed-checkout-form .select2-container--open,.wcf-embed-checkout-form input[type=email]:focus,.wcf-embed-checkout-form input[type=password]:focus,.wcf-embed-checkout-form input[type=tel]:focus,.wcf-embed-checkout-form input[type=text]:focus,.wcf-embed-checkout-form textarea:focus{border-color:#b3b3b3;-webkit-box-shadow:none;box-shadow:none;outline:0}.wcf-embed-checkout-form button:focus{outline:0;outline-color:none;outline-style:none;outline-width:none}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row button,.wcf-embed-checkout-form form.checkout_coupon .button{display:block;clear:both;border:none;font-size:15px;font-family:inherit;font-weight:inherit;background-color:#f16334;line-height:9px;padding:18px;margin-bottom:10px;width:100%}.wcf-embed-checkout-form .woocommerce #order_review button{border:1px solid;border-color:#f16334;background-color:#f16334;font-family:inherit;font-weight:inherit;font-size:18px;letter-spacing:.5px;width:100%;padding:16px 24px;font-size:16px;line-height:1.5;-webkit-border-radius:3px;border-radius:3px;color:#fff}.wcf-embed-checkout-form .woocommerce #order_review button.wcf-btn-small{padding:8px 6px;background-color:#c8c8c8;border:1px #c8c8c8 solid}.wcf-embed-checkout-form .woocommerce #order_review button.wcf-btn-small:hover{border-color:#f16334;background-color:#f16334}.wcf-embed-checkout-form .woocommerce #payment #place_order:hover{background-color:#f16334;border-color:#f16334;color:#fff}.wcf-embed-checkout-form .woocommerce-checkout{display:inline-block;text-align:inherit;width:100%}.wcf-embed-checkout-form .woocommerce-checkout .col2-set,.wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{display:inline-block;width:55%;float:left;padding-right:40px;margin:20px 0 0}.wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper,.wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper,.wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper,.wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{margin:0 -7px;-ms-flex-wrap:wrap;flex-wrap:wrap;-js-display:flex;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap}.wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper,.wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper{margin:0 -7px}.wcf-embed-checkout-form-two-column .woocommerce-checkout .wcf-order-wrap{display:inline-block;float:none;width:45%;border:none;background-color:inherit;padding:0 10px;-webkit-border-radius:3px;border-radius:3px}.wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{display:inline-block;font-family:inherit;font-weight:600;width:100%;margin:20px 0 0;padding:3px 3px 20px;border:none;border-bottom:none}.wcf-embed-checkout-form .woocommerce-checkout #payment{background-color:inherit;border:none;-webkit-border-radius:0;border-radius:0}.wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{padding:1em 0}.wcf-embed-checkout-form #add_payment_method #payment ul.payment_methods,.wcf-embed-checkout-form .woocommerce-cart #payment ul.payment_methods,.wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{border:none}.wcf-embed-checkout-form #payment ul.payment_methods li,.wcf-embed-checkout-form #payment ul.payment_methods li:hover{background-color:transparent}.wcf-embed-checkout-form .woocommerce form .form-row{display:block;margin-bottom:1.1em;padding:3px 7px;position:relative}.wcf-embed-checkout-form .woocommerce form .woocommerce-account-fields .form-row{padding:0}.wcf-embed-checkout-form table.shop_table{border:none;border-bottom:0;background-color:inherit;-webkit-border-radius:0;border-radius:0;font-family:inherit;font-weight:inherit;font-size:.95em;margin:0!important;border-collapse:collapse;text-align:left}.wcf-embed-checkout-form table.shop_table td strong.product-quantity{font-weight:400}.wcf-embed-checkout-form table.shop_table #shipping_method{margin:0;padding:0;list-style:none}.wcf-embed-checkout-form table.shop_table #shipping_method .amount{font-weight:400}.wcf-embed-checkout-form table.shop_table th{border:none;font-weight:400;padding:9px 0;line-height:1.2em}.wcf-embed-checkout-form table.shop_table tfoot tr:last-child .woocommerce-Price-amount{font-size:1em}.wcf-embed-checkout-form table.shop_table td,.wcf-embed-checkout-form table.shop_table td dl dd,.wcf-embed-checkout-form table.shop_table td dl dt,.wcf-embed-checkout-form table.shop_table th{background-color:transparent;border:none;padding:.6em 0;line-height:1.4em}.wcf-embed-checkout-form table.shop_table td dl dd p{margin-top:0}.wcf-embed-checkout-form table.shop_table tbody th,.wcf-embed-checkout-form table.shop_table tfoot td,.wcf-embed-checkout-form table.shop_table tfoot th{border:none;display:table-cell;font-weight:400;width:50%}.wcf-embed-checkout-form table.shop_table thead{background-color:transparent}.wcf-embed-checkout-form table.shop_table tbody{border-top:1px dashed #ccc;border-bottom:1px dashed #ccc}.wcf-embed-checkout-form table.shop_table th.product-name,.wcf-embed-checkout-form table.shop_table th.product-total{font-weight:600}.wcf-embed-checkout-form table.shop_table tfoot tr.order-total:not(.recurring-total) td,.wcf-embed-checkout-form table.shop_table tfoot tr.order-total:not(.recurring-total) th{font-weight:600;border-top:1px dashed #ccc}.wcf-embed-checkout-form table.shop_table tfoot tr.recurring-totals th{padding-top:1.8em;font-weight:600}.wcf-embed-checkout-form table.shop_table tfoot tr.recurring-total td,.wcf-embed-checkout-form table.shop_table tfoot tr.recurring-total th,.wcf-embed-checkout-form table.shop_table tfoot tr.recurring-totals th{vertical-align:top}.wcf-embed-checkout-form table.shop_table tbody tr td:nth-child(1),.wcf-embed-checkout-form table.shop_table tfoot tr td:nth-child(1),.wcf-embed-checkout-form table.shop_table thead tr th:nth-child(1){width:70%}.wcf-embed-checkout-form table.shop_table tbody tr td:nth-child(2),.wcf-embed-checkout-form table.shop_table tfoot tr td:nth-child(2),.wcf-embed-checkout-form table.shop_table thead tr th:nth-child(2){width:30%}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label,.wcf-embed-checkout-form .woocommerce-checkout .form-row label{font-size:13px;line-height:1em;letter-spacing:.3px;font-family:inherit;font-weight:inherit;margin-bottom:8px}.wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields label,.wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields label{display:inherit}.wcf-embed-checkout-form .woocommerce .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text{line-height:20px;text-transform:none}.wcf-embed-checkout-form #payment .woocommerce-privacy-policy-text p{font-family:inherit;font-weight:inherit;font-size:11px;color:#777;margin-top:0;text-align:justify}.wcf-embed-checkout-form #payment .wc_payment_methods .payment_box p{margin:0}.wcf-embed-checkout-form .woocommerce a{color:#f16334;background-color:transparent;text-decoration:none}.wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message,.wcf-embed-checkout-form .woocommerce .woocommerce-error,.wcf-embed-checkout-form .woocommerce .woocommerce-info,.wcf-embed-checkout-form .woocommerce .woocommerce-message,.wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{padding:1em 2em .4em 2em;border-top:none;background-color:inherit;font-size:14px;font-weight:500;text-align:left;margin:0}.wcf-embed-checkout-form .woocommerce-info::before,.wcf-embed-checkout-form .woocommerce-message::before{left:.1em;color:#f16334}.wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error,.wcf-embed-checkout-form .woocommerce .woocommerce-error,.wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{background-color:#fff6f6;border:dashed 1px #a00;padding:25px 25px 20px;color:#a00;margin:1rem 0 1rem;font-size:14px;width:100%}.wcf-embed-checkout-form .woocommerce .woocommerce-error::before{content:''}.wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{display:inline}.wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{margin:1em 0 1em}.wcf-embed-checkout-form .woocommerce .woocommerce-error li{list-style:disc inside!important;margin:0 0 8px}.wcf-embed-checkout-form .woocommerce .woocommerce-error li strong{font-weight:400}.wcf-embed-checkout-form .woocommerce form.checkout_coupon{border:1px solid #d3ced2;padding:30px 20px 20px;margin:2em 0;text-align:left;-webkit-border-radius:5px;border-radius:5px}.wcf-embed-checkout-form .woocommerce .checkout_coupon p{font-size:14px}.wcf-embed-checkout-form .woocommerce .checkout_coupon p{font-family:inherit;font-weight:500;margin-top:0;margin-bottom:10px}@media only screen and (max-width:768px){.wcf-embed-checkout-form form .wcf-column-33{width:100%}.wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{width:100%}.wcf-embed-checkout-form .woocommerce-checkout #order_review{width:100%}.wcf-embed-checkout-form .woocommerce-checkout .wcf-order-wrap{width:100%}.wcf-embed-checkout-form .woocommerce-checkout{display:block}.wcf-embed-checkout-form .woocommerce-checkout .col2-set,.wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{display:block;width:100%;padding-right:0;margin:20px 0 0}.wcf-embed-checkout-form form.checkout_coupon .button{font-size:12px}.wcf-bump-order-field-wrap .wcf-bump-order-label{font-size:16px}.wcf-embed-checkout-form .woocommerce .col2-set .col-1,.wcf-embed-checkout-form .woocommerce .col2-set .col-2,.wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-1,.wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-2,.wcf-embed-checkout-form .woocommerce .wcf-order-wrap,.wcf-embed-checkout-form .woocommerce-page .col2-set .col-1,.wcf-embed-checkout-form .woocommerce-page .col2-set .col-2,.wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-1,.wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-2,.wcf-embed-checkout-form .woocommerce-page .wcf-order-wrap{padding:15px 18px}.wcf-embed-checkout-form .woocommerce form .form-row-first,.wcf-embed-checkout-form .woocommerce form .form-row-last,.wcf-embed-checkout-form .woocommerce-page form .form-row-first,.wcf-embed-checkout-form .woocommerce-page form .form-row-last{width:100%}.wcf-embed-checkout-form #order_review_heading,.wcf-embed-checkout-form .woocommerce #ship-to-different-address,.wcf-embed-checkout-form .woocommerce-additional-fields>h3,.wcf-embed-checkout-form .woocommerce-billing-fields>h3{font-size:1em}}#et-info-email:before,#et-info-phone:before,#et_search_icon:before,.comment-reply-link:after,.et-cart-info span:before,.et-pb-arrow-next:before,.et-pb-arrow-prev:before,.et-social-icon a:before,.et_audio_container .mejs-playpause-button button:before,.et_audio_container .mejs-volume-button button:before,.et_overlay:before,.et_password_protected_form .et_submit_button:after,.et_pb_button:after,.et_pb_contact_reset:after,.et_pb_contact_submit:after,.et_pb_font_icon:before,.et_pb_newsletter_button:after,.et_pb_pricing_table_button:after,.et_pb_promo_button:after,.et_pb_social_icon a.icon:before,.et_pb_testimonial:before,.et_pb_toggle_title:before,.form-submit .et_pb_button:after,.mobile_menu_bar:before,.woocommerce #content input.button.alt:after,.woocommerce #content input.button:after,.woocommerce #respond input#submit.alt:after,.woocommerce #respond input#submit:after,.woocommerce a.button.alt:after,.woocommerce button.button.alt:after,.woocommerce button.button:after,.woocommerce button.single_add_to_cart_button.button:after,.woocommerce input.button.alt:after,.woocommerce input.button:after,.woocommerce-page #content input.button.alt:after,.woocommerce-page #content input.button:after,.woocommerce-page #respond input#submit.alt:after,.woocommerce-page #respond input#submit:after,.woocommerce-page a.button.alt:after,.woocommerce-page a.button:after,.woocommerce-page button.button.alt:after,.woocommerce-page button.button:after,.woocommerce-page input.button.alt:after,.woocommerce-page input.button:after,a.et_pb_more_button:after{text-shadow:0 0;font-family:none;font-weight:400;font-style:normal;font-variant:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1;text-transform:none;speak:none}.comment-reply-link:hover:after,.woocommerce #content input.button.alt:hover:after,.woocommerce #content input.button:hover:after,.woocommerce #respond input#submit.alt:hover:after,.woocommerce #respond input#submit:hover:after,.woocommerce a.button.alt:hover:after,.woocommerce a.button:hover:after,.woocommerce button.button.alt:hover:after,.woocommerce button.button:hover:after,.woocommerce input.button.alt:hover:after,.woocommerce input.button:hover:after,.woocommerce-page #content input.button.alt:hover:after,.woocommerce-page #content input.button:hover:after,.woocommerce-page #respond input#submit.alt:hover:after,.woocommerce-page #respond input#submit:hover:after,.woocommerce-page a.button.alt:hover:after,.woocommerce-page a.button:hover:after,.woocommerce-page button.button.alt:hover:after,.woocommerce-page button.button:hover:after,.woocommerce-page input.button.alt:hover:after,.woocommerce-page input.button:hover:after{opacity:0}.thrv_wrapper .wcf-embed-checkout-form div{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}PK\ *assets/min-css/optin-template-divi.min.cssnuW+A.cartflows-container .et_pb_module .wcf-optin-form,.cartflows-container .et_pb_module .wcf-optin-form *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.et_pb_module #wcf-optin-form{background:inherit;width:100%;margin:0 auto}.et_pb_module #wcf-optin-form .woocommerce-checkout{display:inline-block;text-align:inherit;width:100%}.et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set{display:block;width:100%;float:none;margin:10px 0 0 0;padding:0}.et_pb_module #wcf-optin-form .woocommerce .col2-set .col-1,.et_pb_module #wcf-optin-form .woocommerce .col2-set .col-2,.et_pb_module #wcf-optin-form .woocommerce .wcf-order-wrap,.et_pb_module #wcf-optin-form .woocommerce form.checkout_coupon,.et_pb_module #wcf-optin-form .woocommerce-checkout #order_review_heading,.et_pb_module #wcf-optin-form .woocommerce-checkout #payment,.et_pb_module #wcf-optin-form .woocommerce-checkout #your_products_heading,.et_pb_module #wcf-optin-form .woocommerce-checkout .shop_table,.et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-qty-options{width:100%}.et_pb_module #wcf-optin-form .woocommerce .col2-set .col-1,.et_pb_module #wcf-optin-form .woocommerce .col2-set .col-2,.et_pb_module #wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1,.et_pb_module #wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2{float:none;width:100%;max-width:100%;padding:0;-webkit-border-radius:0;border-radius:0;border:none;border-color:none;margin-bottom:0}.et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper,.et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper,.et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{margin:0 -7px;-ms-flex-wrap:wrap;flex-wrap:wrap;-js-display:flex;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap}.et_pb_module #wcf-optin-form .woocommerce-checkout #order_review_heading,.et_pb_module #wcf-optin-form .woocommerce-checkout #your_products_heading{display:none}.et_pb_module #wcf-optin-form #order_review_heading,.et_pb_module #wcf-optin-form .woocommerce #ship-to-different-address,.et_pb_module #wcf-optin-form .woocommerce-additional-fields>h3,.et_pb_module #wcf-optin-form .woocommerce-billing-fields>h3{display:none!important}.et_pb_module #wcf-optin-form .woocommerce form .form-row{display:block;margin-bottom:1.1em;padding:3px 7px;position:relative}.et_pb_module #wcf-optin-form .woocommerce-checkout #payment .form-row{margin:0;padding:0}.et_pb_module #wcf-optin-form .woocommerce form .form-row-first,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-first{float:left;clear:left}.et_pb_module #wcf-optin-form .woocommerce form .form-row-last,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-last{float:right;clear:right}.et_pb_module #wcf-optin-form .woocommerce form .form-row-first,.et_pb_module #wcf-optin-form .woocommerce form .form-row-last{width:50%;display:block}.et_pb_module #wcf-optin-form .woocommerce form .form-row-wide,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-wide{width:100%}.et_pb_module #wcf-optin-form .woocommerce .woocommerce-billing-fields label,.et_pb_module #wcf-optin-form .woocommerce .woocommerce-shipping-fields label{display:inherit}.et_pb_module #wcf-optin-form .woocommerce form.woocommerce-form-login .form-row label,.et_pb_module #wcf-optin-form .woocommerce-checkout .form-row label{font-size:13px;line-height:1em;letter-spacing:.3px;font-family:inherit;font-weight:inherit;margin-bottom:8px}.et_pb_module #wcf-optin-form .woocommerce #order_review .input-text,.et_pb_module #wcf-optin-form .woocommerce form .form-row input.input-text,.et_pb_module #wcf-optin-form .woocommerce form .form-row select,.et_pb_module #wcf-optin-form .woocommerce form .form-row textarea{display:block;width:100%;min-height:34px;padding:11px 12px;font-family:inherit;font-weight:inherit;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid;border-color:#d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;height:auto}.et_pb_module #wcf-optin-form .woocommerce .woocommerce-terms-and-conditions-wrapper{display:none}.et_pb_module #wcf-optin-form #order_review{padding:0;width:100%}.et_pb_module #wcf-optin-form .woocommerce-checkout #payment{background:unset;-webkit-border-radius:0;border-radius:0}.et_pb_module #wcf-optin-form .woocommerce #order_review #payment button{float:none;margin:0 auto;display:block}.et_pb_module #wcf-optin-form .woocommerce #order_review button{border:1px solid;border-color:#f16334;background-color:#f16334;font-family:inherit;font-weight:inherit;font-size:18px;letter-spacing:.5px;width:100%;padding:16px 24px;font-size:16px;line-height:1.5;-webkit-border-radius:3px;border-radius:3px;color:#fff}@media only screen and (max-width:768px){.et_pb_module #wcf-optin-form .woocommerce form .form-row-first,.et_pb_module #wcf-optin-form .woocommerce form .form-row-last,.et_pb_module #wcf-optin-form .woocommerce form .form-row-wide,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-first,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-last,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-wide{width:100%}}PK\z;';'-assets/min-css/checkout-template-divi.min.cssnuW+A.et_pb_module #wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single,.et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required{border-color:#e2401c!important}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .col2-set,.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{display:inline-block;width:55%;float:left;padding-right:40px;margin:50px 0 0}.et_pb_module #wcf-embed-checkout-form .select2-container--default .select2-selection--single,.et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row select,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea{display:block;width:100%;min-height:34px;padding:11px 12px;font-family:inherit;font-weight:inherit;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid #d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none}.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row{margin-bottom:1.1em;padding:3px 3px 0 3px}.et_pb_module #wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label,.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .form-row label{font-size:13px;line-height:1em;letter-spacing:.3px;font-family:inherit;font-weight:inherit;margin-bottom:8px}.cartflows-canvas #page-container{padding-top:0!important}.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-info,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{color:inherit!important}.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{background-color:#fff6f6!important;border:dashed 1px #a00!important;padding:25px 25px 20px!important;color:#a00!important;margin:1rem 0 1rem!important;font-size:14px!important}.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error li,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error li,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error li{font-weight:400!important}.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error li strong{font-weight:400}.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{content:"\e600";margin:0;color:#f16334}.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox],.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio],.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]{border:1px solid #b4b9be;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 4px 0 0;outline:0;padding:0!important;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-appearance:none;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:focus,.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:focus,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:focus{border-color:#f16334;-webkit-box-shadow:0 0 2px rgba(241,99,52,.8);box-shadow:0 0 2px rgba(241,99,52,.8)}.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before{background-color:#f16334;-webkit-border-radius:50px;border-radius:50px;content:"\2022";font-size:24px;height:6px;line-height:16px;margin:4px;text-indent:-9999px;width:6px}.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before,.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{display:inline-block;float:left;font:normal 15px/1 cartflows-icon;speak:none;vertical-align:middle;width:6px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.et_pb_module #wcf-embed-checkout-form #order_review_heading,.et_pb_module #wcf-embed-checkout-form .woocommerce #ship-to-different-address,.et_pb_module #wcf-embed-checkout-form .woocommerce-additional-fields>h3,.et_pb_module #wcf-embed-checkout-form .woocommerce-billing-fields>h3{font-family:inherit;font-weight:600;font-size:20px;margin:0 0 25px 0}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{display:inline-block!important;font-family:inherit;font-weight:600;width:45%;margin:50px 0 0;padding:0 10px 20px;border:none;border-bottom:none}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{padding:1em 0;margin:0}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #add_payment_method #payment ul.payment_methods li,.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li{line-height:2;text-align:left;margin:0;list-style:none;font-weight:inherit}.et_pb_module #wcf-embed-checkout-form #payment .woocommerce-privacy-policy-text p{font-family:inherit;font-weight:inherit;color:#444;margin-top:0;margin-bottom:1.5em}.et_pb_module #wcf-embed-checkout-form .woocommerce .shop_table #shipping_method li{list-style:none}.et_pb_module #wcf-embed-checkout-form .woocommerce a{color:#f16334;text-decoration:none}.et_pb_module #wcf-embed-checkout-form .wcf-custom-coupon-field{-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-bottom:25px;margin-top:25px;border-top:1px solid #dcdcdc;padding-top:25px}.et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error,.et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message{color:inherit!important;border:none!important;background-color:transparent!important;padding:0 2em 1.2em 2em!important;font-size:14px!important;margin:0!important}.et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before,.et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message::before{display:block!important}.et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce .col2-set,.et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce .wcf-col2-set{display:block;margin-top:10px;padding-right:0;width:100%}.et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce-checkout #order_review_heading{display:block!important;margin:20px 0 0;width:100%}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-wrap{display:block;float:none;margin:1em auto 1em;overflow:hidden}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1{background:#f1f1f1;border-style:none;border-width:2px;border-color:red;-webkit-border-radius:3px;border-radius:3px;display:inline-block}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2{border:2px red dashed;-webkit-border-radius:3px;border-radius:3px}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-field-wrap{border-style:none;border-width:2px;border-color:red;padding:20px 25px;margin:0;font-size:1.1em;display:block;background:#ddd}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-content-container{padding:25px 0}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-offer{padding:0 25px 10px;font-size:1.2em}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-desc{padding:0 25px}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-offer{padding:20px 25px;font-size:1.1em;font-weight:600}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-desc{padding:0 25px 20px}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-field-wrap{border-top:2px red dashed;padding:15px 25px;margin:0;font-size:1.1em;display:block}.et_pb_module #wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single,.et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required{border-color:#e2401c}@media only screen and (max-width:768px){.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .col2-set,.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{display:block;float:none;padding-right:0;width:100%}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{display:block!important;float:none;width:100%}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review{display:block;float:none;width:100%}}@media (max-width:767px){.et_pb_module #wcf-embed-checkout-form .woocommerce .form-row{width:100%!important}}PK\ە.*assets/min-css/cartflows-normalize.min.cssnuW+Ahtml{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}h1{font-size:2em;margin:.67em 0}hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:700}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}body,button,input,optgroup,select,textarea{color:#404040;font-family:sans-serif;font-size:15px;line-height:1.5}h1,h2,h3,h4,h5,h6{clear:both}p{margin-bottom:1.5em}cite,dfn,em,i{font-style:italic}blockquote{margin:0 1.5em}address{margin:0 0 1.5em}pre{background:#eee;font-family:"Courier 10 Pitch",Courier,monospace;font-size:15px;font-size:.9375rem;line-height:1.6;margin-bottom:1.6em;max-width:100%;overflow:auto;padding:1.6em}code,kbd,tt,var{font-family:Monaco,Consolas,"Andale Mono","DejaVu Sans Mono",monospace;font-size:15px;font-size:.9375rem}abbr,acronym{border-bottom:1px dotted #666;cursor:help}ins,mark{background:#fff9c0;text-decoration:none}big{font-size:125%}html{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*,:after,:before{-webkit-box-sizing:inherit;-moz-box-sizing:inherit;box-sizing:inherit}body{background:#fff}hr{background-color:#ccc;border:0;height:1px;margin-bottom:1.5em}ol,ul{margin:0 0 1.5em 3em}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-left:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}img{height:auto;max-width:100%}figure{margin:1em 0}table{margin:0 0 1.5em;width:100%}button,input[type=button],input[type=reset],input[type=submit]{border:1px solid;border-color:#ccc #ccc #bbb;-webkit-border-radius:3px;border-radius:3px;background:#e6e6e6;color:rgba(0,0,0,.8);font-size:12px;font-size:.75rem;line-height:1;padding:.6em 1em .4em}button:hover,input[type=button]:hover,input[type=reset]:hover,input[type=submit]:hover{border-color:#ccc #bbb #aaa}button:active,button:focus,input[type=button]:active,input[type=button]:focus,input[type=reset]:active,input[type=reset]:focus,input[type=submit]:active,input[type=submit]:focus{border-color:#aaa #bbb #bbb}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=range],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],textarea{color:#666;border:1px solid #ccc;-webkit-border-radius:3px;border-radius:3px;padding:3px}input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=range]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,textarea:focus{color:#111}select{border:1px solid #ccc}textarea{width:100%}a{color:#4169e1}a:active,a:hover{outline:0}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#f1f1f1;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 2px 2px rgba(0,0,0,.6);box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#21759b;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}#content[tabindex="-1"]:focus{outline:0}.widget{margin:0 0 1.5em}.widget select{max-width:100%}embed,iframe,object{max-width:100%}PK\(xgg,assets/min-css/checkout-template-rtl.min.cssnuW+A.cartflows-container .wcf-embed-checkout-form,.cartflows-container .wcf-embed-checkout-form *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.wcf-embed-checkout-form .wc-backward{display:none!important}.wcf-embed-checkout-form .woocommerce form .form-row-first,.wcf-embed-checkout-form .woocommerce form .form-row-last,.wcf-embed-checkout-form .woocommerce-page form .form-row-first,.wcf-embed-checkout-form .woocommerce-page form .form-row-last{width:50%;display:block}.wcf-embed-checkout-form .woocommerce form .form-row-full,.wcf-embed-checkout-form .woocommerce-page form .form-row-full{width:100%;clear:both}.wcf-embed-checkout-form form .form-row-wide{width:100%}.wcf-embed-checkout-form form .wcf-column-33{width:33.33%}.wcf-embed-checkout-form .woocommerce form .form-row-first,.woocommerce-page form .form-row-first{float:right;clear:right}.wcf-embed-checkout-form .woocommerce form .form-row-last,.woocommerce-page form .form-row-last{float:left;clear:left}.wcf-embed-checkout-form .woocommerce form .form-row .required{color:red;font-weight:700;border:0!important;text-decoration:none}.wcf-embed-checkout-form .woocommerce .woocommerce-checkout .product-name .remove{font-family:cartflows-icon;display:inline-block;font-size:10px;border:1px #4d5763 solid;-webkit-border-radius:50%;border-radius:50%;padding:1px;color:#4d5763!important;line-height:1;margin-left:5px;text-align:center;font-weight:100;width:14px;height:14px;background-color:#fff}.wcf-embed-checkout-form .woocommerce .woocommerce-checkout .product-name .remove:hover{color:#f1653c!important;border:1px #f1653c solid;background-color:#fff}.wcf-embed-checkout-form form .form-row-first.form-row-one{clear:both}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login{display:none}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row{margin-bottom:15px}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .clear{clear:none}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label{margin:0;line-height:1em;padding-top:0;position:relative;top:0}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .login-form-actions{-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-bottom:0}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .lost_password,.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .remember_me{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;font-family:inherit;font-size:13px}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me label{margin-bottom:0;vertical-align:text-top}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me input,.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me span{vertical-align:middle}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .lost_password{text-align:left;margin-top:0;margin-bottom:0}.wcf-embed-checkout-form .woocommerce .blockUI.blockOverlay{font-size:15px}.wcf-embed-checkout-form .woocommerce form .form-row.mt20{margin-top:20px}.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid .select2-container,.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid input.input-text,.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid select{border-width:1px;border-color:#e2401c}.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated .select2-container,.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated input.input-text,.wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated select{border-width:1px}.wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single,.wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required,.wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required,.wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required{border-color:#e2401c}.wcf-embed-checkout-form .woocommerce form .form-row input.field-validated{border-right-width:2px;border-right-color:#69bf29}.wcf-embed-checkout-form .wcf-checkout-header-image{text-align:center}.wcf-embed-checkout-form .woocommerce #payment [type=radio]:checked+label,.wcf-embed-checkout-form .woocommerce #payment [type=radio]:not(:checked)+label{padding:0}.wcf-embed-checkout-form .woocommerce #payment input[type=radio]{-webkit-border-radius:50%;border-radius:50%;margin-left:4px;line-height:10px}.wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before,.wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:checked:before,.wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type=checkbox]:checked:before,.wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{content:"\e600";margin:0;color:#f16334}.wcf-embed-checkout-form .woocommerce #payment input[type=checkbox],.wcf-embed-checkout-form .woocommerce #payment input[type=radio],.wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox],.wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type=checkbox],.wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]{border:1px solid #b4b9be;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 0 0 4px;outline:0;padding:0!important;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-appearance:none;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}.wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:focus,.wcf-embed-checkout-form .woocommerce #payment input[type=radio]:focus,.wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:focus,.wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type=checkbox]:focus,.wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:focus{border-color:#f16334;-webkit-box-shadow:0 0 2px rgba(241,99,52,.8);box-shadow:0 0 2px rgba(241,99,52,.8)}.wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before{background-color:#f16334;-webkit-border-radius:50px;border-radius:50px;content:"\2022";font-size:24px;height:6px;line-height:16px;margin:4px;text-indent:-9999px;width:6px}.wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before,.wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before,.wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:before,.wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type=checkbox]:checked:before,.wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{display:inline-block;float:right;font:normal 15px/1 cartflows-icon;speak:none;vertical-align:middle;width:6px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li input[type=checkbox]{min-width:16px}.wcf-embed-checkout-form .woocommerce .col2-set .col-1,.wcf-embed-checkout-form .woocommerce .col2-set .col-2,.wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-1,.wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-2,.wcf-embed-checkout-form .woocommerce-page .col2-set .col-1,.wcf-embed-checkout-form .woocommerce-page .col2-set .col-2,.wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-1,.wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-2{float:none;width:100%;max-width:100%;padding:0;-webkit-border-radius:0;border-radius:0;border:none;border-color:none;margin-bottom:0}.wcf-embed-checkout-form #order_review_heading,.wcf-embed-checkout-form .woocommerce #ship-to-different-address,.wcf-embed-checkout-form .woocommerce-additional-fields>h3,.wcf-embed-checkout-form .woocommerce-billing-fields>h3{font-family:inherit;font-weight:600;font-size:20px;margin:0 0 25px 0;padding:0;width:100%}.wcf-embed-checkout-form .woocommerce-checkout #payment{background:unset;-webkit-border-radius:0;border-radius:0}.wcf-embed-checkout-form .woocommerce-checkout #payment .form-row{margin:0;padding:0}.wcf-embed-checkout-form .woocommerce-checkout #payment .form-row label.checkbox{display:block;margin-bottom:1.1em}.wcf-embed-checkout-form .woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:none;margin-right:10px}.wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 .5em}.wcf-embed-checkout-form .woocommerce-checkout #payment fieldset .form-row .wcf-embed-checkout-form .woocommerce-checkout #payment fieldset p{margin-bottom:10px}.wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box{background-color:#eaeaea;font-family:inherit;font-weight:inherit;margin-bottom:.5em}.wcf-embed-checkout-form #add_payment_method #payment div.payment_box::before,.wcf-embed-checkout-form .woocommerce-cart #payment div.payment_box::before,.wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid;border-left-color:transparent;border-right-color:transparent;border-top-color:transparent;border-bottom-color:#eaeaea;position:absolute;top:-.75em;right:0;margin:-1em 2em 0 0}.wcf-embed-checkout-form .select2-container--default .select2-selection--single{display:block;width:100%;min-height:34px;height:auto;padding:11px 12px;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid;border-color:#d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;outline:0}.wcf-embed-checkout-form .select2-container--default .select2-selection--single .select2-selection__rendered{color:#666;line-height:19px;min-height:19px;overflow:visible;padding-right:0}.select2-results__option[data-selected],.wcf-embed-checkout-form .select2-results__option[aria-selected]{font-size:14px}.wcf-embed-checkout-form .select2-container--default .select2-selection--single .select2-selection__arrow{height:100%}.select2-dropdown{border:1px solid #d4d4d4}.wcf-embed-checkout-form .woocommerce #order_review .input-text,.wcf-embed-checkout-form .woocommerce form .form-row input.input-text,.wcf-embed-checkout-form .woocommerce form .form-row select,.wcf-embed-checkout-form .woocommerce form .form-row textarea{display:block;width:100%;min-height:34px;padding:11px 12px;font-family:inherit;font-weight:inherit;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid;border-color:#d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;height:auto}.wcf-embed-checkout-form #order_review{padding:3px;width:100%}.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error,.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message{padding:0 2em 1.2em 2em;background-color:transparent;border:none;margin:0;width:100%}.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error li{list-style:none!important;margin:0}.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before,.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message::before{top:0;right:0}.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before{content:'\e016'}.wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error li{margin:0 8px 0 0}.wcf-embed-checkout-form .woocommerce #order_review .wcf-custom-coupon-field input[type=text]{font-weight:400}.wcf-embed-checkout-form .wcf-custom-coupon-field{clear:right;-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-bottom:15px;margin-top:25px;border-top:1px solid #dcdcdc;border-bottom:1px solid #dcdcdc;padding-top:25px;padding-bottom:25px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.wcf-embed-checkout-form #order_review .wcf-coupon-col-1{width:70%;display:inline-block;padding-left:20px}.wcf-embed-checkout-form #order_review .wcf-coupon-col-2{width:30%}.wcf-embed-checkout-form .select2-container--open,.wcf-embed-checkout-form input[type=email]:focus,.wcf-embed-checkout-form input[type=password]:focus,.wcf-embed-checkout-form input[type=tel]:focus,.wcf-embed-checkout-form input[type=text]:focus,.wcf-embed-checkout-form textarea:focus{border-color:#b3b3b3;-webkit-box-shadow:none;box-shadow:none;outline:0}.wcf-embed-checkout-form button:focus{outline:0;outline-color:none;outline-style:none;outline-width:none}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row button,.wcf-embed-checkout-form form.checkout_coupon .button{display:block;clear:both;border:none;font-size:15px;font-family:inherit;font-weight:inherit;background-color:#f16334;line-height:9px;padding:18px;margin-bottom:10px;width:100%}.wcf-embed-checkout-form .woocommerce #order_review button{border:1px solid;border-color:#f16334;background-color:#f16334;font-family:inherit;font-weight:inherit;font-size:18px;letter-spacing:.5px;width:100%;padding:16px 24px;font-size:16px;line-height:1.5;-webkit-border-radius:3px;border-radius:3px;color:#fff}.wcf-embed-checkout-form .woocommerce #order_review button.wcf-btn-small{padding:8px 6px;background-color:#c8c8c8;border:1px #c8c8c8 solid}.wcf-embed-checkout-form .woocommerce #order_review button.wcf-btn-small:hover{border-color:#f16334;background-color:#f16334}.wcf-embed-checkout-form .woocommerce #payment #place_order:hover{background-color:#f16334;border-color:#f16334;color:#fff}.wcf-embed-checkout-form .woocommerce-checkout{display:inline-block;text-align:inherit;width:100%}.wcf-embed-checkout-form .woocommerce-checkout .col2-set,.wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{display:inline-block;width:55%;float:right;padding-left:40px;margin:20px 0 0}.wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper,.wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper,.wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper,.wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{margin:0 -7px;-ms-flex-wrap:wrap;flex-wrap:wrap;-js-display:flex;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap}.wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper,.wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper{margin:0 -7px}.wcf-embed-checkout-form-two-column .woocommerce-checkout .wcf-order-wrap{display:inline-block;float:none;width:45%;border:none;background-color:inherit;padding:0 10px;-webkit-border-radius:3px;border-radius:3px}.wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{display:inline-block;font-family:inherit;font-weight:600;width:100%;margin:20px 0 0;padding:3px 3px 20px;border:none;border-bottom:none}.wcf-embed-checkout-form .woocommerce-checkout #payment{background-color:inherit;border:none;-webkit-border-radius:0;border-radius:0}.wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{padding:1em 0}.wcf-embed-checkout-form #add_payment_method #payment ul.payment_methods,.wcf-embed-checkout-form .woocommerce-cart #payment ul.payment_methods,.wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{border:none}.wcf-embed-checkout-form #payment ul.payment_methods li,.wcf-embed-checkout-form #payment ul.payment_methods li:hover{background-color:transparent}.wcf-embed-checkout-form .woocommerce form .form-row{display:block;margin-bottom:1.1em;padding:3px 7px;position:relative}.wcf-embed-checkout-form .woocommerce form .woocommerce-account-fields .form-row{padding:0}.wcf-embed-checkout-form table.shop_table{border:none;border-bottom:0;background-color:inherit;-webkit-border-radius:0;border-radius:0;font-family:inherit;font-weight:inherit;font-size:.95em;margin:0!important;border-collapse:collapse;text-align:right}.wcf-embed-checkout-form table.shop_table td strong.product-quantity{font-weight:400}.wcf-embed-checkout-form table.shop_table #shipping_method{margin:0;padding:0;list-style:none}.wcf-embed-checkout-form table.shop_table #shipping_method .amount{font-weight:400}.wcf-embed-checkout-form table.shop_table th{border:none;font-weight:400;padding:9px 0;line-height:1.2em}.wcf-embed-checkout-form table.shop_table tfoot tr:last-child .woocommerce-Price-amount{font-size:1em}.wcf-embed-checkout-form table.shop_table td,.wcf-embed-checkout-form table.shop_table td dl dd,.wcf-embed-checkout-form table.shop_table td dl dt,.wcf-embed-checkout-form table.shop_table th{background-color:transparent;border:none;padding:.6em 0;line-height:1.4em}.wcf-embed-checkout-form table.shop_table td dl dd p{margin-top:0}.wcf-embed-checkout-form table.shop_table tbody th,.wcf-embed-checkout-form table.shop_table tfoot td,.wcf-embed-checkout-form table.shop_table tfoot th{border:none;display:table-cell;font-weight:400;width:50%}.wcf-embed-checkout-form table.shop_table thead{background-color:transparent}.wcf-embed-checkout-form table.shop_table tbody{border-top:1px dashed #ccc;border-bottom:1px dashed #ccc}.wcf-embed-checkout-form table.shop_table th.product-name,.wcf-embed-checkout-form table.shop_table th.product-total{font-weight:600}.wcf-embed-checkout-form table.shop_table tfoot tr.order-total:not(.recurring-total) td,.wcf-embed-checkout-form table.shop_table tfoot tr.order-total:not(.recurring-total) th{font-weight:600;border-top:1px dashed #ccc}.wcf-embed-checkout-form table.shop_table tfoot tr.recurring-totals th{padding-top:1.8em;font-weight:600}.wcf-embed-checkout-form table.shop_table tfoot tr.recurring-total td,.wcf-embed-checkout-form table.shop_table tfoot tr.recurring-total th,.wcf-embed-checkout-form table.shop_table tfoot tr.recurring-totals th{vertical-align:top}.wcf-embed-checkout-form table.shop_table tbody tr td:nth-child(1),.wcf-embed-checkout-form table.shop_table tfoot tr td:nth-child(1),.wcf-embed-checkout-form table.shop_table thead tr th:nth-child(1){width:70%}.wcf-embed-checkout-form table.shop_table tbody tr td:nth-child(2),.wcf-embed-checkout-form table.shop_table tfoot tr td:nth-child(2),.wcf-embed-checkout-form table.shop_table thead tr th:nth-child(2){width:30%}.wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label,.wcf-embed-checkout-form .woocommerce-checkout .form-row label{font-size:13px;line-height:1em;letter-spacing:.3px;font-family:inherit;font-weight:inherit;margin-bottom:8px}.wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields label,.wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields label{display:inherit}.wcf-embed-checkout-form .woocommerce .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text{line-height:20px;text-transform:none}.wcf-embed-checkout-form #payment .woocommerce-privacy-policy-text p{font-family:inherit;font-weight:inherit;font-size:11px;color:#777;margin-top:0;text-align:justify}.wcf-embed-checkout-form #payment .wc_payment_methods .payment_box p{margin:0}.wcf-embed-checkout-form .woocommerce a{color:#f16334;background-color:transparent;text-decoration:none}.wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message,.wcf-embed-checkout-form .woocommerce .woocommerce-error,.wcf-embed-checkout-form .woocommerce .woocommerce-info,.wcf-embed-checkout-form .woocommerce .woocommerce-message,.wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{padding:1em 2em .4em 2em;border-top:none;background-color:inherit;font-size:14px;font-weight:500;text-align:right;margin:0}.wcf-embed-checkout-form .woocommerce-info::before,.wcf-embed-checkout-form .woocommerce-message::before{right:.1em;color:#f16334}.wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error,.wcf-embed-checkout-form .woocommerce .woocommerce-error,.wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{background-color:#fff6f6;border:dashed 1px #a00;padding:25px 25px 20px;color:#a00;margin:1rem 0 1rem;font-size:14px;width:100%}.wcf-embed-checkout-form .woocommerce .woocommerce-error::before{content:''}.wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{display:inline}.wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{margin:1em 0 1em}.wcf-embed-checkout-form .woocommerce .woocommerce-error li{list-style:disc inside!important;margin:0 0 8px}.wcf-embed-checkout-form .woocommerce .woocommerce-error li strong{font-weight:400}.wcf-embed-checkout-form .woocommerce form.checkout_coupon{border:1px solid #d3ced2;padding:30px 20px 20px;margin:2em 0;text-align:right;-webkit-border-radius:5px;border-radius:5px}.wcf-embed-checkout-form .woocommerce .checkout_coupon p{font-size:14px}.wcf-embed-checkout-form .woocommerce .checkout_coupon p{font-family:inherit;font-weight:500;margin-top:0;margin-bottom:10px}@media only screen and (max-width:768px){.wcf-embed-checkout-form form .wcf-column-33{width:100%}.wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{width:100%}.wcf-embed-checkout-form .woocommerce-checkout #order_review{width:100%}.wcf-embed-checkout-form .woocommerce-checkout .wcf-order-wrap{width:100%}.wcf-embed-checkout-form .woocommerce-checkout{display:block}.wcf-embed-checkout-form .woocommerce-checkout .col2-set,.wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{display:block;width:100%;padding-left:0;margin:20px 0 0}.wcf-embed-checkout-form form.checkout_coupon .button{font-size:12px}.wcf-bump-order-field-wrap .wcf-bump-order-label{font-size:16px}.wcf-embed-checkout-form .woocommerce .col2-set .col-1,.wcf-embed-checkout-form .woocommerce .col2-set .col-2,.wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-1,.wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-2,.wcf-embed-checkout-form .woocommerce .wcf-order-wrap,.wcf-embed-checkout-form .woocommerce-page .col2-set .col-1,.wcf-embed-checkout-form .woocommerce-page .col2-set .col-2,.wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-1,.wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-2,.wcf-embed-checkout-form .woocommerce-page .wcf-order-wrap{padding:15px 18px}.wcf-embed-checkout-form .woocommerce form .form-row-first,.wcf-embed-checkout-form .woocommerce form .form-row-last,.wcf-embed-checkout-form .woocommerce-page form .form-row-first,.wcf-embed-checkout-form .woocommerce-page form .form-row-last{width:100%}.wcf-embed-checkout-form #order_review_heading,.wcf-embed-checkout-form .woocommerce #ship-to-different-address,.wcf-embed-checkout-form .woocommerce-additional-fields>h3,.wcf-embed-checkout-form .woocommerce-billing-fields>h3{font-size:1em}}#et-info-email:before,#et-info-phone:before,#et_search_icon:before,.comment-reply-link:after,.et-cart-info span:before,.et-pb-arrow-next:before,.et-pb-arrow-prev:before,.et-social-icon a:before,.et_audio_container .mejs-playpause-button button:before,.et_audio_container .mejs-volume-button button:before,.et_overlay:before,.et_password_protected_form .et_submit_button:after,.et_pb_button:after,.et_pb_contact_reset:after,.et_pb_contact_submit:after,.et_pb_font_icon:before,.et_pb_newsletter_button:after,.et_pb_pricing_table_button:after,.et_pb_promo_button:after,.et_pb_social_icon a.icon:before,.et_pb_testimonial:before,.et_pb_toggle_title:before,.form-submit .et_pb_button:after,.mobile_menu_bar:before,.woocommerce #content input.button.alt:after,.woocommerce #content input.button:after,.woocommerce #respond input#submit.alt:after,.woocommerce #respond input#submit:after,.woocommerce a.button.alt:after,.woocommerce button.button.alt:after,.woocommerce button.button:after,.woocommerce button.single_add_to_cart_button.button:after,.woocommerce input.button.alt:after,.woocommerce input.button:after,.woocommerce-page #content input.button.alt:after,.woocommerce-page #content input.button:after,.woocommerce-page #respond input#submit.alt:after,.woocommerce-page #respond input#submit:after,.woocommerce-page a.button.alt:after,.woocommerce-page a.button:after,.woocommerce-page button.button.alt:after,.woocommerce-page button.button:after,.woocommerce-page input.button.alt:after,.woocommerce-page input.button:after,a.et_pb_more_button:after{text-shadow:0 0;font-family:none;font-weight:400;font-style:normal;font-variant:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1;text-transform:none;speak:none}.comment-reply-link:hover:after,.woocommerce #content input.button.alt:hover:after,.woocommerce #content input.button:hover:after,.woocommerce #respond input#submit.alt:hover:after,.woocommerce #respond input#submit:hover:after,.woocommerce a.button.alt:hover:after,.woocommerce a.button:hover:after,.woocommerce button.button.alt:hover:after,.woocommerce button.button:hover:after,.woocommerce input.button.alt:hover:after,.woocommerce input.button:hover:after,.woocommerce-page #content input.button.alt:hover:after,.woocommerce-page #content input.button:hover:after,.woocommerce-page #respond input#submit.alt:hover:after,.woocommerce-page #respond input#submit:hover:after,.woocommerce-page a.button.alt:hover:after,.woocommerce-page a.button:hover:after,.woocommerce-page button.button.alt:hover:after,.woocommerce-page button.button:hover:after,.woocommerce-page input.button.alt:hover:after,.woocommerce-page input.button:hover:after{opacity:0}.thrv_wrapper .wcf-embed-checkout-form div{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}PK\c+??assets/min-css/import.min.cssnuW+A.no-elementor-notice{border-left:none;background:0 0;border:none;-webkit-box-shadow:none;box-shadow:none;padding-left:0}.no-elementor-notice span{color:#f16334;font-size:18px;vertical-align:middle}.site-preview{background:#c5c5c5;display:block;overflow:hidden;position:relative;-webkit-backface-visibility:hidden}.template.importing .site-preview:after,.template:hover .site-preview:after{opacity:.3}.template.importing .site-preview,.template:hover .site-preview{background:#fff;cursor:pointer}.template .site-preview:after{content:"";background:#fff;opacity:0;top:0;content:"";display:block;top:0;position:absolute;padding-top:66.66666%;-webkit-transition:opacity .2s ease-in-out;transition:opacity .2s ease-in-out;left:0;right:0;bottom:0}.template .notice{padding:.6em;background:rgba(0,0,0,.8);color:#fff;font-weight:400;border:none;font-size:13px;text-decoration:none;position:absolute;width:100%;vertical-align:middle;bottom:0;margin:0;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);right:0;left:0;z-index:4;text-align:center;-webkit-border-radius:3px;border-radius:0;-webkit-transition:opacity .1s ease-in-out;transition:opacity .1s ease-in-out;-webkit-font-smoothing:antialiased}.template .notice a{color:#f16334}.template .notice p{padding:0;margin:0}#wcf_create_notice{display:none}.preview:focus,.preview:hover{color:#fff;-webkit-box-shadow:none;box-shadow:none}.preview{text-decoration:none;opacity:0;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:22%;left:22%;z-index:4;background:#23282d;background:rgba(0,0,0,.7);color:#fff;font-size:13px;text-shadow:0 1px 0 rgba(0,0,0,.6);-webkit-font-smoothing:antialiased;font-weight:600;padding:10px 12px;text-align:center;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:opacity .1s ease-in-out;transition:opacity .1s ease-in-out}.template-id-container{font-size:15px;font-weight:600;margin:0;padding:10px;-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,.1);box-shadow:inset 0 1px 0 rgba(0,0,0,.1);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;background:#fff;background:rgba(255,255,255,.65);position:relative}.template-actions{opacity:0;-webkit-transition:opacity .1s ease-in-out;transition:opacity .1s ease-in-out;position:absolute;bottom:0;right:0;top:0;padding:5px 5px 0 5px;background:rgba(244,244,244,.7);border-left:1px solid rgba(0,0,0,.05)}.template.importing .preview,.template.importing .template-actions,.template:hover .preview,.template:hover .template-actions,.wcf-step-content .template-actions{opacity:1}.wcf-remote-list .template{position:relative;overflow:hidden}.wcf-remote-list h3{margin-bottom:1em;margin-top:0;font-size:15px;font-weight:600;margin:0;padding:0;text-align:left}.wcf-remote-list img{max-width:100%;vertical-align:middle}.wcf-remote-list *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#cartflows-steps-list img{width:100%}#cartflows-steps-list .title{font-weight:700;color:#474747;line-height:2;background:#f7f7f7;padding:.5em 1em}#cartflows-steps-list .image-wrap{-webkit-background-size:cover;background-size:cover;overflow:hidden}#cartflows-steps .close{display:inline-block;padding:2em;cursor:pointer}.template-message-block{text-align:center;margin:0 auto;padding:4em 0}.templator #TB_ajaxContent{width:100%!important}.template-message-block .description{font-style:normal}.template-message-block .spinner{float:none;margin:0}.cartflows-steps-popup{position:fixed;left:0;right:0;top:0;bottom:0;z-index:99999;background:#fff;overflow-y:scroll}.cartflows-steps-popup .notice{max-width:700px;margin:0 auto}.cartflows-load-steps-library .dashicons{height:auto;width:auto;line-height:normal;margin:0 5px 0 0;vertical-align:initial;font-size:100%}.cartflows-load-steps .dashicons{vertical-align:text-bottom}#TB_window{width:100%!important;margin:0 auto!important;text-align:center!important;position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important}#TB_iframeContent{width:100%!important;height:100%!important}@media only screen and (min-device-width :320px) and (max-device-width :1024px){#TB_iframeContent-wrapper{position:fixed;right:0;bottom:50px;left:0;top:0;overflow-y:scroll;-webkit-overflow-scrolling:touch}}#TB_window #TB_ajaxWindowTitle{font-size:1.2rem;display:inline-block;width:auto;padding:0}#TB_window #TB_closeWindowButton{position:relative}.tb-close-icon:before{vertical-align:middle}#TB_window{text-align:center}#TB_iframeContent.tablet{width:768px!important;height:1024px!important;background:#111;padding:40px 10px 70px;-webkit-border-radius:30px;border-radius:30px}#TB_iframeContent.tablet.landscape{width:1024px!important}#TB_iframeContent.mobile{width:360px!important;height:640px!important;background:#111;padding:40px 10px 70px;-webkit-border-radius:30px;border-radius:30px}#TB_iframeContent.mobile.landscape{width:360px!important}#TB_closeAjaxWindow{float:right}#TB_window.thickbox-loading{margin:0!important}div#TB_window{background-color:#fff}#TB_window #TB_title{color:#0a0c0d;text-align:left;bottom:0;-webkit-box-shadow:none;box-shadow:none;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;padding:1em 1em 1em 1.5em}@media all and (min-width:769px){#TB_window #TB_title{-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}}#TB_window.mobile,#TB_window.tablet{overflow-y:scroll}.top #TB_iframeContent-wrapper{bottom:0;top:80px}#TB_window.top #TB_title{top:0}#TB_window #TB_closeWindowButton:focus .tb-close-icon{-webkit-box-shadow:none;box-shadow:none;color:#666}@media all and (max-width:768px){#TB_closeAjaxWindow{padding-right:0}#TB_window #TB_closeWindowButton,#TB_window .tb-close-icon{width:80px}}.responsive-view .dashicons{color:#ddd}.responsive-view .active{color:#111}.responsive-view a:focus{outline:0;-webkit-box-shadow:none;box-shadow:none}#TB_window.mobile #TB_iframeContent,#TB_window.tablet #TB_iframeContent{margin-bottom:50px;margin-top:50px}.responsive-view a{color:#666;cursor:pointer;display:inline-block;padding:1em;vertical-align:middle;text-decoration:none}#TB_closeAjaxWindow .tb-close-icon{position:relative}.site-loading{display:none;position:absolute;left:50%;top:50%;text-align:center;color:#555;-webkit-transform:translate(-50%,-40%);-ms-transform:translate(-50%,-40%);transform:translate(-50%,-40%)}.top .site-loading{top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.site-loading h3{font-size:33px;font-weight:600;margin:0 0 .8em 0}.site-loading p{margin:0}.cartflows-thickbox-loading .site-loading{display:block}.cartflows-thickbox-loading #TB_iframeContent,.cartflows-thickbox-loading #TB_iframeContent-wrapper{display:none}.wcf-remote-list:after,.wcf-remote-list:before{content:"";display:table}.wcf-remote-list::after{content:"";display:table;clear:both}.wcf-template-header .filter-count{line-height:normal}#wcf-page-builders{display:none}#wcf-remote-flow-filters>div,#wcf-remote-step-filters>div{display:inline-block}.wcf-template-header .filter-links{margin:0;padding:0}.wcf-template-header li:focus{outline:0}.wcf-template-header .filter-links li{margin:0;display:inline-block}.wcf-template-header .filter-links li a:focus,.wcf-template-header .filter-links li a:hove{outline:0;-webkit-box-shadow:none;box-shadow:none}.wcf-template-header .filter-links li .current{color:#000;border-bottom:2px solid #f16334;font-weight:600}.wcf-flow-search-input{border:none;-webkit-box-shadow:none;box-shadow:none;border-bottom:1px solid #eee;line-height:1.8}.wcf-search-form{margin-right:2em;padding-right:0;text-align:right;margin-top:1em;margin-bottom:1em;position:relative}.wcf-template-notice{display:none}#wcf-start-from-scratch{text-align:center}#wcf-start-from-scratch .inner{background:0 0;-webkit-box-shadow:none;box-shadow:none;width:94%;margin:0 auto;float:none;position:absolute;top:40%}#wcf-scratch-steps-categories{display:inline-block}#wcf-scratch-steps-categories select{-webkit-border-radius:0;border-radius:0;height:29px;border:1px solid;border-color:#9e9e9e;border-width:1px;-webkit-box-shadow:none;box-shadow:none;padding:2px 2px 2px 6px;line-height:25px;width:155px}#wcf-start-from-scratch .description{margin-bottom:2em}#wcf-remote-step-importer .wcf-search-form{display:none}.wcf-search-form .wcf-flow-search-input{border:none;-webkit-box-shadow:none;box-shadow:none;border-bottom:1px solid #eee;line-height:1.8;background:0 0;border-bottom:1px solid #ccc;font-size:1em}.wcf-search-form .wcf-flow-search-input:focus{-webkit-box-shadow:none;box-shadow:none;border-color:#ccc}.cartflows-preview-flow-steps li{display:inline-block;margin:0 1em;position:relative}.cartflows-flow-import-blank.updating-message:before{vertical-align:text-bottom}#wpwrap .cartflows-step-loading h2,#wpwrap .template-message-block h2{font-size:1.5em;margin:0 0 .5em 0;padding:8px 12px;line-height:1.4}#wpwrap .cartflows-step-loading p,#wpwrap .template-message-block p{font-size:1.2em}#wpwrap .cartflows-step-loading .spinner{vertical-align:initial}.wcf-flow-type{position:absolute;right:0;top:0;padding:3px 10px;color:#fff}.wcf-flow-type.pro{background:#f06262}.wcf-templates-popup-overlay{position:fixed;height:100%;width:100%;top:0;left:0;background:rgba(0,0,0,.7);-webkit-transition:opacity .5s;transition:opacity .5s;visibility:hidden;opacity:0;z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:none;transition:none}.wcf-templates-popup-overlay.open{visibility:visible;opacity:1;z-index:9999}.wcf-templates-popup-content{max-width:1200px;background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;top:40%;left:50%;-webkit-transform:translate(-50%,-35%);-ms-transform:translate(-50%,-35%);transform:translate(-50%,-35%);width:70%;min-height:85%;max-height:85%;height:85%;overflow:hidden}.wcf-templates-popup-content .inner{background:#fff;position:relative;padding:8px 8px 0 8px;display:block;float:left;margin:15px;text-align:center;-webkit-box-shadow:0 0 5px 1px rgba(204,204,204,.3);box-shadow:0 0 5px 1px rgba(204,204,204,.3)}.wcf-templates-popup-content .wcf-templates-wrap{height:100%}@media only screen and (max-width:480px){.wcf-templates-popup-content{width:90%}.wcf-template-header{display:block!important;padding:15px 15px 0 15px!important}.wcf-popup-close-wrap{position:absolute;top:10px;right:5px}}@media only screen and (min-width:768px){.wcf-templates-popup-content .inner{width:-webkit-calc(25% - 30px);width:calc(25% - 30px)}}html.wcf-popup-open{overflow:hidden}.wcf-button-wrap{margin-top:0;position:absolute;top:10px;left:110px}.wcf-steps-loading #wcf-remote-step-list{display:none!important}#wcf-remote-flow-actions{min-height:52px;max-height:55px}#wcf-remote-content{background-color:#f5f5f5;overflow-y:auto;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:-webkit-calc(100% - 55px);height:calc(100% - 55px);min-height:-webkit-calc(100% - 55px);min-height:calc(100% - 55px);max-height:-webkit-calc(100% - 55px);max-height:calc(100% - 55px);padding:20px 20px 20px 20px;clear:both}#wcf-remote-content #wcf-start-from-scratch h1{font-size:23px;font-weight:400;margin:0 0 1em 0;padding:9px 0 4px;line-height:29px}.wcf-template-list-wrap .template-name{margin:0;text-align:left;font-size:13px}.wcf-template-list-wrap img{width:100%;vertical-align:middle}.wcf-templates-popup-content .template{margin:0;position:relative;overflow:hidden}.wcf-tab.nav-tabs{overflow:hidden;margin:0}.wcf-template-header{-moz-box-align:center;align-items:center;background:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.2);box-shadow:0 0 8px rgba(0,0,0,.2);-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;-moz-box-pack:justify;justify-content:space-between;padding:0 15px;min-height:50px}.wcf-search-form:after{content:"\f179";display:inline-block;font-family:dashicons;text-decoration:inherit;font-weight:400;font-style:normal;text-align:center;-webkit-transition:color .1s ease-in 0;transition:color .1s ease-in 0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;right:.5em;top:.5em;color:#81868a}.wcf-template-logo-wrap{font-size:16px;font-weight:600;text-align:center}.wcf-template-logo-wrap .wcf-cartflows-logo-img{vertical-align:middle}.wcf-tab.nav-tabs:before{display:table;content:""}.wcf-tab.nav-tabs:after{clear:both}.wcf-tab.nav-tabs>li{display:inline-block;padding:15px 0;margin:0;font-weight:400}.wcf-tab.nav-tabs>li.active{border-bottom:3px solid #f16334;font-weight:600}.wcf-template-header .filter-links li>a{border-color:transparent;margin:0}.wcf-tab.nav-tabs>li:active,.wcf-tab.nav-tabs>li:focus,.wcf-tab.nav-tabs>li>a:focus,.wcf-template-header .filter-links>li:active,.wcf-template-header .filter-links>li:focus .wcf-template-header .filter-links>li:active,.wcf-template-header .filter-links>li>a:focus,.wcf-template-header .filter-links>li>a:hover{outline:0;-webkit-box-shadow:none;box-shadow:none}.wcf-tab.nav-tabs>li>a,.wcf-template-header .filter-links>li>a,.wcf-template-header .filter-links>li>a:focus,.wcf-template-header .filter-links>li>a:hover{padding:15px;color:#555;text-decoration:none}.wcf-nav-section-content{display:none}.wcf-nav-section-content.active{display:block;overflow:hidden}.wcf-popup-close-wrap{width:35px;text-align:center;border-left:1px #eee solid}.wcf-popup-close-wrap .close-icon{cursor:pointer}.wcf-popup-close-wrap .wcf-cartflow-icons{pointer-events:none;font-size:20px;height:20px;width:20px;line-height:20px;opacity:.7}.wcf-popup-close-wrap .close-icon:hover .wcf-cartflow-icons{opacity:1}.wcf-templates-popup-content .spinner{position:absolute;top:50%;left:50%;bottom:0;right:0;max-width:100%;max-height:100%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:99999}.wcf-templates-popup-content .wcf-template-header .wcf-tab-wrapper{margin:0 auto}#wcf-upcoming-page-builders .description{font-size:1rem;margin:4em 0 0 0;text-align:center}.flow-type-filter-links{display:none}#wcf-remote-filters{padding:0 15px}#wcf-remote-filters a{text-decoration:none}#wcf-remote-filters .filter-links li:focus,#wcf-remote-filters a:focus{outline:0;-webkit-box-shadow:none;box-shadow:none}#wcf-remote-filters .filter-links li a{border-bottom:none}#wcf-remote-filters .filter-links li:first-child a{margin-left:0}#wcf-remote-filters .filter-links li:last-child a{margin-right:0}#wcf-remote-filters .filter-links li .current,#wcf-remote-filters .filter-links li a:focus,#wcf-remote-filters .filter-links li a:hover{color:#f16334}.wrap .wcf-page-builder-notice .notice{margin:5px 15px}#wcf-api-notice-block{text-align:center;margin-top:5em}.wcf-templates-popup-overlay a{-webkit-transition:none;transition:none}.wcf-notice-wrap .notice{display:inline-block}.wcf-learn-how i{font-size:1rem;vertical-align:middle}.wcf-learn-how a{text-decoration:none}#wcf-remote-content .wcf-install-plugin::focus{border-color:none;-webkit-box-shadow:none;box-shadow:none}#wcf-remote-content .wcf-install-plugin.updating-message{background:0 0;padding:0;font-size:1rem;-webkit-box-shadow:none;box-shadow:none;border:none;margin:0 0 0 3px}.wcf-page-builder-message{margin:5em auto 0 auto;width:700px}.wcf-page-builder-message p{font-size:1rem}.wcf-page-builder-message i{font-size:1rem;vertical-align:middle}.wcf-page-builder-message a{text-decoration:none;margin:1.5em 0 0 0}.cartflows-ie .postbox{padding:1em}.cartflows-ie{padding-top:2em;padding-right:2em}.admin_page_flow_exporter .notice,.admin_page_flow_importer .notice{margin:1em 0 0 0}.cartflows-website-unreachable{padding:1em 2em}.wcf-notice-wrap{margin-top:20px;font-size:15px;color:red}.wcf-activate-wc{text-decoration:none}.wcf-activate-wc.button{border:none;-webkit-box-shadow:none;box-shadow:none}.wcf-hidden{display:none}PK\(assets/min-css/frontend-divi-rtl.min.cssnuW+A.et_pb_module #wcf-thankyou-wrap{padding:0;margin:0 auto;width:100%;max-width:55em;font-size:13px}.et_pb_module #wcf-thankyou-wrap a{color:inherit;padding:0;border:none;font-size:inherit}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::after,.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::before{content:' ';display:table}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::after{clear:both}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details,.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li{list-style:none;line-height:1}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li{display:inline-block;border-left:1px dashed #ccc;padding:.5em 0 .5em 1em;margin:.5em 0 .5em .5em;list-style-type:none}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li:first-child{padding-right:0}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li:last-child{border-left:0;padding-left:0}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li strong{display:block;margin-top:.7em}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-bacs-bank-details,.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details,.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-details,.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-downloads,.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details{margin:0 0 2em;-webkit-border-radius:3px;border-radius:3px;width:100%;display:block}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-bacs-bank-details ul.bacs_details{padding:0}.woocommerce-order-details table.shop_table,.woocommerce-order-downloads table.shop_table{border:none;border-bottom:0;background-color:inherit;-webkit-border-radius:0;border-radius:0;font-family:inherit;font-weight:inherit;font-size:.95em;margin:0!important;border-collapse:collapse;text-align:right}.woocommerce-order-details table.shop_table #shipping_method{margin:0;padding:0;list-style:none}.woocommerce-order-details table.shop_table th,.woocommerce-order-downloads table.shop_table th{border:none;font-weight:600;padding:9px 0;line-height:1.2em}.woocommerce-order-details table.shop_table tfoot tr:last-child .woocommerce-Price-amount{font-size:1em}.woocommerce-order-details table.shop_table td,.woocommerce-order-details table.shop_table th{padding:.6em 0;line-height:1.4em;border:none}.woocommerce-order-details table.shop_table tbody th,.woocommerce-order-details table.shop_table tfoot td,.woocommerce-order-details table.shop_table tfoot th{font-weight:400;border:none}.woocommerce-order-details table.shop_table tbody{border-top:1px dashed #ccc;border-bottom:1px dashed #ccc}.woocommerce-order-details table.shop_table th.product-name,.woocommerce-order-details table.shop_table th.product-total{font-weight:600}.woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) td,.woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) th{font-weight:600;border-top:1px dashed #ccc}.woocommerce-order-details table.shop_table tfoot tr.recurring-totals th{padding-top:1.8em;font-weight:600}.woocommerce-order-details table.shop_table tfoot tr.recurring-total td,.woocommerce-order-details table.shop_table tfoot tr.recurring-total th,.woocommerce-order-details table.shop_table tfoot tr.recurring-totals th{vertical-align:top}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set{-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-1{margin-left:2%}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-1,.et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-2{width:49%;display:inline-block}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details address{border-left-width:1px;border-bottom-width:1px;-webkit-border-radius:0;border-radius:0;font-style:normal}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details address p{margin:0}PK\(kk2assets/min-css/checkout-template-the-seven.min.cssnuW+A.wf-container>*,body,body.page,button,input,optgroup,select,textarea{font-family:normal 1rem/2 sans-serif,Helvetica,Arial,Verdana,sans-serif;font-size:inherit}.wcf-embed-checkout-form-one-column #customer_details{width:100%}.wcf-embed-checkout-form-two-column #customer_details{width:55%}.wpcf7-number,input[type=date],input[type=email],input[type=number],input[type=password],input[type=range],input[type=search],input[type=tel],input[type=text],input[type=url],select{height:auto}#ship-to-different-address{font:inherit}#ship-to-different-address label,.create-account label.checkbox span{font-size:inherit;line-height:inherit}.order_details .product-name,.order_details .product-name a,.woocommerce-checkout-review-order .product-name,.woocommerce-checkout-review-order .product-name a{font:inherit;font-size:inherit;color:inherit}.order_details .about_paypal,.order_details .cart-subtotal th,.order_details .order-total th,.order_details .product-quantity,.order_details .product-total,.order_details .product-total .woocommerce-Price-amount,.order_details .shipping th,.order_details tfoot th,.woocommerce-checkout-review-order .about_paypal,.woocommerce-checkout-review-order .cart-subtotal th,.woocommerce-checkout-review-order .order-total th,.woocommerce-checkout-review-order .product-quantity,.woocommerce-checkout-review-order .product-total,.woocommerce-checkout-review-order .product-total .woocommerce-Price-amount,.woocommerce-checkout-review-order .shipping th,.woocommerce-checkout-review-order tfoot th{color:inherit}#shipping_method label,.payment_methods label{color:inherit;font-size:inherit;line-height:inherit}.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-checkbox-text,.woocommerce-terms-and-conditions-text{font-size:inherit;line-height:inherit}.woocommerce-error .woocommerce-error-text,.woocommerce-error .woocommerce-info-text,.woocommerce-error .woocommerce-message-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-info .woocommerce-error-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-info .woocommerce-info-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-info .woocommerce-message-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-message .woocommerce-error-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-message .woocommerce-info-text,div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content)>.woocommerce-message .woocommerce-message-text{font:inherit}.checkout .woocommerce-NoticeGroup .woocommerce-error .woocommerce-error-text{margin:0;padding-left:0}table.shop_table tbody tr td,table.shop_table tbody tr th,table.shop_table thead tr td,table.shop_table thead tr th{border:none;font-weight:400;width:50%}@media screen and (max-width:990px){#customer_details{width:100%}.mt20{margin-top:10px!important}}@media only screen and (max-width:768px){#customer_details{width:100%}.mt20{margin-top:10px!important}}@media screen and (max-width:600px){#customer_details{width:100%}table.shop_table tbody tr{padding:0}.shop_table tr{border-top:inherit;-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-flow:inherit;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-flow:inherit;flex-flow:inherit}.shop_table tr.cart_item td.product-name{-webkit-box-align:baseline;-webkit-align-items:baseline;-moz-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-flow:inherit;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-flow:inherit;flex-flow:inherit;text-align:left}.shop_table thead{display:block}}PK\-KvYY#assets/min-css/frontend-rtl.min.cssnuW+A@font-face{font-family:cartflows-icon;src:url(../fonts/cartflows-icon.eot?81m15v);src:url(../fonts/cartflows-icon.eot?81m15v#iefix) format('embedded-opentype'),url(../fonts/cartflows-icon.ttf?81m15v) format('truetype'),url(../fonts/cartflows-icon.woff?81m15v) format('woff'),url(../fonts/cartflows-icon.svg?81m15v#cartflows-icon) format('svg');font-weight:400;font-style:normal}.cartflows-icon{font-family:cartflows-icon!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.cartflows-icon-close:before{content:"\e602";font-family:cartflows-icon}.cartflows-icon-cross:before{content:"\e601"}.cartflows-icon-check:before{content:"\e600"}.cartflows-icon-arrow-thin-right:before{content:"\e901"}.alignleft{display:inline;float:right;margin-left:1.5em}.alignright{display:inline;float:left;margin-right:1.5em}.aligncenter{clear:both;display:block;margin-right:auto;margin-left:auto}.clear:after,.clear:before{content:"";display:table;table-layout:fixed}.clear:after{clear:both}.wcf-button{display:inline-block;padding:12px 24px;background:#ccc;text-decoration:none;margin:5px}body.cartflows-default{background-color:#f5f5f5}.cartflows-default .cartflows-container{max-width:1200px;width:100%;padding:0 20px;margin:60px auto}.cartflows-default .cartflows-primary{background-color:#fff;padding:70px;overflow:hidden;max-width:100%}@media (max-width:768px){.cartflows-default .cartflows-container{padding:0;margin:0}.cartflows-default .cartflows-primary{padding:20px 30px}}@media (max-width:544px){.cartflows-default .cartflows-primary{padding:20px 15px}}.wcf-preview-mode{background:#f16334;position:fixed;bottom:0;right:0;width:100%;height:2.6em;color:#fff;text-align:center;font-size:14px;line-height:2.6em;pointer-events:all;z-index:9999999}.wcf-preview-mode a{color:#fff}@media only screen and (max-width:768px){.wcf-preview-mode{font-size:13px;line-height:18px;padding:4px 10px;height:auto}}.wcf-footer-primary .wcf-footer-content p{margin:1.5em 0;text-align:center}.wcf-thankyou-wrap{padding:0;margin:0 auto;width:100%;max-width:55em;font-size:13px}.woocommerce-order ul.order_details::after,.woocommerce-order ul.order_details::before{content:' ';display:table}.woocommerce-order ul.order_details::after{clear:both}.woocommerce-order ul.order_details,.woocommerce-order ul.order_details li{list-style:none;line-height:1}.woocommerce-order ul.order_details li{display:inline-block;border-left:1px dashed #ccc;padding:.5em 0 .5em 1em;margin:.5em 0 .5em .5em;list-style-type:none}.woocommerce-order ul.order_details li:first-child{padding-right:0}.woocommerce-order ul.order_details li:last-child{border-left:0;padding-left:0}.woocommerce-order ul.order_details li strong{display:block;margin-top:.7em}.woocommerce-order .woocommerce-bacs-bank-details,.woocommerce-order .woocommerce-customer-details,.woocommerce-order .woocommerce-order-details,.woocommerce-order .woocommerce-order-downloads,.woocommerce-order ul.order_details{margin:0 0 2em;-webkit-border-radius:3px;border-radius:3px;width:100%;display:block}.woocommerce-order .woocommerce-bacs-bank-details ul.bacs_details{padding:0}.woocommerce-order .woocommerce-bacs-bank-details,.woocommerce-order .woocommerce-customer-details,.woocommerce-order .woocommerce-order-details,.woocommerce-order .woocommerce-order-downloads,.woocommerce-order ul.order_details{background:#f1f1f1;padding:1.5em 2.5em}.woocommerce-order .woocommerce-order-downloads__title,.woocommerce-order .woocommerce-thankyou-order-received,.woocommerce-order h2.wc-bacs-bank-details-heading,.woocommerce-order h2.woocommerce-column__title,.woocommerce-order h2.woocommerce-order-details__title{padding:.8em 0;margin:0 0 .5em;font-size:1.5em;font-weight:600;color:#404040}.woocommerce-order .woocommerce-thankyou-order-received{margin:0 0 1.5em;padding:0 .5em;text-align:center}.woocommerce-order-details table.shop_table,.woocommerce-order-downloads table.shop_table{border:none;border-bottom:0;background-color:inherit;-webkit-border-radius:0;border-radius:0;font-family:inherit;font-weight:inherit;font-size:.95em;margin:0!important;border-collapse:collapse;text-align:right}.woocommerce-order-details table.shop_table #shipping_method{margin:0;padding:0;list-style:none}.woocommerce-order-details table.shop_table th,.woocommerce-order-downloads table.shop_table th{border:none;font-weight:600;padding:9px 0;line-height:1.2em}.woocommerce-order-details table.shop_table tfoot tr:last-child .woocommerce-Price-amount{font-size:1em}.woocommerce-order-details table.shop_table td,.woocommerce-order-details table.shop_table th{padding:.6em 0;line-height:1.4em;border:none}.woocommerce-order-details table.shop_table tbody th,.woocommerce-order-details table.shop_table tfoot td,.woocommerce-order-details table.shop_table tfoot th{font-weight:400;border:none}.woocommerce-order-details table.shop_table tbody{border-top:1px dashed #ccc;border-bottom:1px dashed #ccc}.woocommerce-order-details table.shop_table th.product-name,.woocommerce-order-details table.shop_table th.product-total{font-weight:600}.woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) td,.woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) th{font-weight:600;border-top:1px dashed #ccc}.woocommerce-order-details table.shop_table tfoot tr.recurring-totals th{padding-top:1.8em;font-weight:600}.woocommerce-order-details table.shop_table tfoot tr.recurring-total td,.woocommerce-order-details table.shop_table tfoot tr.recurring-total th,.woocommerce-order-details table.shop_table tfoot tr.recurring-totals th{vertical-align:top}.woocommerce-order .wcf-col2-set{-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.woocommerce-order .wcf-col2-set .wcf-col-1{margin-left:2%}.woocommerce-order .wcf-col2-set .wcf-col-1,.woocommerce-order .wcf-col2-set .wcf-col-2{width:49%;display:inline-block}.woocommerce-order .woocommerce-customer-details address{border-left-width:1px;border-bottom-width:1px;-webkit-border-radius:0;border-radius:0;font-style:normal}.woocommerce-order .woocommerce-customer-details address p{margin:0}@media only screen and (max-width:768px){.woocommerce-order .woocommerce-thankyou-order-received{margin:0 0 1em}.woocommerce-order .woocommerce-thankyou-order-received,.woocommerce-order h2.woocommerce-column__title,.woocommerce-order h2.woocommerce-order-details__title{padding:.5em 0;font-size:1.5em}.woocommerce-order .woocommerce-customer-details,.woocommerce-order .woocommerce-order-details,.woocommerce-order ul.order_details{padding:1.5em 2em}.woocommerce-order .woocommerce-order-downloads{overflow-x:auto}.woocommerce-order-downloads table.shop_table td,.woocommerce-order-downloads table.shop_table th{padding:.5em .8em}.woocommerce-order ul.order_details li{display:block;width:100%;border-left:none;padding:.5em 0 1em 1em;border-bottom:1px dashed #ccc}.woocommerce-order ul.order_details li:last-child{border:none}.woocommerce-order .wcf-col2-set{display:block}.woocommerce-order .wcf-col2-set .wcf-col-1,.woocommerce-order .wcf-col2-set .wcf-col-2{width:100%;display:block}}PK\֞bb1assets/min-css/checkout-template-flatsome.min.cssnuW+A.absolute-footer,html{background-color:unset;font-family:inherit}body{color:#404040;font-family:inherit;line-height:1.5}b,strong{font-weight:700}.woocommerce-billing-fields{padding-top:0;border-top:unset}.button,button,fieldset,input,select,textarea{margin-bottom:inherit}.wcf-embed-checkout-form .woocommerce #order_review .input-text,.wcf-embed-checkout-form .woocommerce form .form-row input.input-text,.wcf-embed-checkout-form .woocommerce form .form-row select,.wcf-embed-checkout-form .woocommerce form .form-row textarea{height:auto}#ship-to-different-address label{font-weight:inherit}.shop_table tfoot th,td,th{color:inherit;font-size:inherit;letter-spacing:inherit;text-transform:inherit;text-align:inherit}span.amount{white-space:inherit;color:inherit;font-weight:inherit}.cart_totals tbody tr td,.shop_table tfoot tr td,.shop_table thead tr th:last-of-type,.shop_table tr td:last-of-type,td.product-total{text-align:inherit}.shipping__table--multiple td,.shipping__table--multiple th{display:table-cell;width:50%}.shipping__table--multiple{display:block;text-align:inherit}tr.shipping input:checked+label{font-weight:400}.widget_shopping_cart_content .blockUI.blockOverlay::before,.woocommerce-checkout-review-order .blockUI.blockOverlay::before{border-top:inherit!important;border-right:inherit!important;border-bottom:inherit!important;border-left:inherit!important}label,legend{color:inherit;font-weight:inherit;font-size:inherit}.payment_methods p{font-size:inherit}.payment_methods li+li{padding-top:0;border-top:unset}.wcf-embed-checkout-form .woocommerce-privacy-policy-text{font-size:inherit}.wcf-embed-checkout-form .woocommerce-privacy-policy-text p{color:#444;font-family:inherit;font-weight:inherit;margin-top:1rem}.form-row .select2-container{margin-bottom:inherit}@media only screen and (max-width:768px){#billing_address_2_field>label{opacity:1;overflow:visible}}PK\M " .assets/min-css/optin-template-divi-rtl.min.cssnuW+A.cartflows-container .et_pb_module .wcf-optin-form,.cartflows-container .et_pb_module .wcf-optin-form *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.et_pb_module #wcf-optin-form{background:inherit;width:100%;margin:0 auto}.et_pb_module #wcf-optin-form .woocommerce-checkout{display:inline-block;text-align:inherit;width:100%}.et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set{display:block;width:100%;float:none;margin:10px 0 0 0;padding:0}.et_pb_module #wcf-optin-form .woocommerce .col2-set .col-1,.et_pb_module #wcf-optin-form .woocommerce .col2-set .col-2,.et_pb_module #wcf-optin-form .woocommerce .wcf-order-wrap,.et_pb_module #wcf-optin-form .woocommerce form.checkout_coupon,.et_pb_module #wcf-optin-form .woocommerce-checkout #order_review_heading,.et_pb_module #wcf-optin-form .woocommerce-checkout #payment,.et_pb_module #wcf-optin-form .woocommerce-checkout #your_products_heading,.et_pb_module #wcf-optin-form .woocommerce-checkout .shop_table,.et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-qty-options{width:100%}.et_pb_module #wcf-optin-form .woocommerce .col2-set .col-1,.et_pb_module #wcf-optin-form .woocommerce .col2-set .col-2,.et_pb_module #wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1,.et_pb_module #wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2{float:none;width:100%;max-width:100%;padding:0;-webkit-border-radius:0;border-radius:0;border:none;border-color:none;margin-bottom:0}.et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper,.et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper,.et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{margin:0 -7px;-ms-flex-wrap:wrap;flex-wrap:wrap;-js-display:flex;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap}.et_pb_module #wcf-optin-form .woocommerce-checkout #order_review_heading,.et_pb_module #wcf-optin-form .woocommerce-checkout #your_products_heading{display:none}.et_pb_module #wcf-optin-form #order_review_heading,.et_pb_module #wcf-optin-form .woocommerce #ship-to-different-address,.et_pb_module #wcf-optin-form .woocommerce-additional-fields>h3,.et_pb_module #wcf-optin-form .woocommerce-billing-fields>h3{display:none!important}.et_pb_module #wcf-optin-form .woocommerce form .form-row{display:block;margin-bottom:1.1em;padding:3px 7px;position:relative}.et_pb_module #wcf-optin-form .woocommerce-checkout #payment .form-row{margin:0;padding:0}.et_pb_module #wcf-optin-form .woocommerce form .form-row-first,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-first{float:right;clear:right}.et_pb_module #wcf-optin-form .woocommerce form .form-row-last,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-last{float:left;clear:left}.et_pb_module #wcf-optin-form .woocommerce form .form-row-first,.et_pb_module #wcf-optin-form .woocommerce form .form-row-last{width:50%;display:block}.et_pb_module #wcf-optin-form .woocommerce form .form-row-wide,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-wide{width:100%}.et_pb_module #wcf-optin-form .woocommerce .woocommerce-billing-fields label,.et_pb_module #wcf-optin-form .woocommerce .woocommerce-shipping-fields label{display:inherit}.et_pb_module #wcf-optin-form .woocommerce form.woocommerce-form-login .form-row label,.et_pb_module #wcf-optin-form .woocommerce-checkout .form-row label{font-size:13px;line-height:1em;letter-spacing:.3px;font-family:inherit;font-weight:inherit;margin-bottom:8px}.et_pb_module #wcf-optin-form .woocommerce #order_review .input-text,.et_pb_module #wcf-optin-form .woocommerce form .form-row input.input-text,.et_pb_module #wcf-optin-form .woocommerce form .form-row select,.et_pb_module #wcf-optin-form .woocommerce form .form-row textarea{display:block;width:100%;min-height:34px;padding:11px 12px;font-family:inherit;font-weight:inherit;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid;border-color:#d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;height:auto}.et_pb_module #wcf-optin-form .woocommerce .woocommerce-terms-and-conditions-wrapper{display:none}.et_pb_module #wcf-optin-form #order_review{padding:0;width:100%}.et_pb_module #wcf-optin-form .woocommerce-checkout #payment{background:unset;-webkit-border-radius:0;border-radius:0}.et_pb_module #wcf-optin-form .woocommerce #order_review #payment button{float:none;margin:0 auto;display:block}.et_pb_module #wcf-optin-form .woocommerce #order_review button{border:1px solid;border-color:#f16334;background-color:#f16334;font-family:inherit;font-weight:inherit;font-size:18px;letter-spacing:.5px;width:100%;padding:16px 24px;font-size:16px;line-height:1.5;-webkit-border-radius:3px;border-radius:3px;color:#fff}@media only screen and (max-width:768px){.et_pb_module #wcf-optin-form .woocommerce form .form-row-first,.et_pb_module #wcf-optin-form .woocommerce form .form-row-last,.et_pb_module #wcf-optin-form .woocommerce form .form-row-wide,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-first,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-last,.et_pb_module #wcf-optin-form .woocommerce-page form .form-row-wide{width:100%}}PK\OK;';'1assets/min-css/checkout-template-divi-rtl.min.cssnuW+A.et_pb_module #wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single,.et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required{border-color:#e2401c!important}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .col2-set,.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{display:inline-block;width:55%;float:right;padding-left:40px;margin:50px 0 0}.et_pb_module #wcf-embed-checkout-form .select2-container--default .select2-selection--single,.et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row select,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea{display:block;width:100%;min-height:34px;padding:11px 12px;font-family:inherit;font-weight:inherit;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid #d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none}.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row{margin-bottom:1.1em;padding:3px 3px 0 3px}.et_pb_module #wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label,.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .form-row label{font-size:13px;line-height:1em;letter-spacing:.3px;font-family:inherit;font-weight:inherit;margin-bottom:8px}.cartflows-canvas #page-container{padding-top:0!important}.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-info,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{color:inherit!important}.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{background-color:#fff6f6!important;border:dashed 1px #a00!important;padding:25px 25px 20px!important;color:#a00!important;margin:1rem 0 1rem!important;font-size:14px!important}.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error li,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error li,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error li{font-weight:400!important}.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error li strong{font-weight:400}.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{content:"\e600";margin:0;color:#f16334}.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox],.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio],.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]{border:1px solid #b4b9be;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 0 0 4px;outline:0;padding:0!important;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-appearance:none;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:focus,.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:focus,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:focus{border-color:#f16334;-webkit-box-shadow:0 0 2px rgba(241,99,52,.8);box-shadow:0 0 2px rgba(241,99,52,.8)}.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before{background-color:#f16334;-webkit-border-radius:50px;border-radius:50px;content:"\2022";font-size:24px;height:6px;line-height:16px;margin:4px;text-indent:-9999px;width:6px}.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before,.et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before,.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{display:inline-block;float:right;font:normal 15px/1 cartflows-icon;speak:none;vertical-align:middle;width:6px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.et_pb_module #wcf-embed-checkout-form #order_review_heading,.et_pb_module #wcf-embed-checkout-form .woocommerce #ship-to-different-address,.et_pb_module #wcf-embed-checkout-form .woocommerce-additional-fields>h3,.et_pb_module #wcf-embed-checkout-form .woocommerce-billing-fields>h3{font-family:inherit;font-weight:600;font-size:20px;margin:0 0 25px 0}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{display:inline-block!important;font-family:inherit;font-weight:600;width:45%;margin:50px 0 0;padding:0 10px 20px;border:none;border-bottom:none}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{padding:1em 0;margin:0}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #add_payment_method #payment ul.payment_methods li,.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li{line-height:2;text-align:right;margin:0;list-style:none;font-weight:inherit}.et_pb_module #wcf-embed-checkout-form #payment .woocommerce-privacy-policy-text p{font-family:inherit;font-weight:inherit;color:#444;margin-top:0;margin-bottom:1.5em}.et_pb_module #wcf-embed-checkout-form .woocommerce .shop_table #shipping_method li{list-style:none}.et_pb_module #wcf-embed-checkout-form .woocommerce a{color:#f16334;text-decoration:none}.et_pb_module #wcf-embed-checkout-form .wcf-custom-coupon-field{-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-bottom:25px;margin-top:25px;border-top:1px solid #dcdcdc;padding-top:25px}.et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error,.et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message{color:inherit!important;border:none!important;background-color:transparent!important;padding:0 2em 1.2em 2em!important;font-size:14px!important;margin:0!important}.et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before,.et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message::before{display:block!important}.et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce .col2-set,.et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce .wcf-col2-set{display:block;margin-top:10px;padding-left:0;width:100%}.et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce-checkout #order_review_heading{display:block!important;margin:20px 0 0;width:100%}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-wrap{display:block;float:none;margin:1em auto 1em;overflow:hidden}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1{background:#f1f1f1;border-style:none;border-width:2px;border-color:red;-webkit-border-radius:3px;border-radius:3px;display:inline-block}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2{border:2px red dashed;-webkit-border-radius:3px;border-radius:3px}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-field-wrap{border-style:none;border-width:2px;border-color:red;padding:20px 25px;margin:0;font-size:1.1em;display:block;background:#ddd}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-content-container{padding:25px 0}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-offer{padding:0 25px 10px;font-size:1.2em}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-desc{padding:0 25px}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-offer{padding:20px 25px;font-size:1.1em;font-weight:600}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-desc{padding:0 25px 20px}.et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-field-wrap{border-top:2px red dashed;padding:15px 25px;margin:0;font-size:1.1em;display:block}.et_pb_module #wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single,.et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required,.et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required{border-color:#e2401c}@media only screen and (max-width:768px){.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .col2-set,.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{display:block;float:none;padding-left:0;width:100%}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{display:block!important;float:none;width:100%}.et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review{display:block;float:none;width:100%}}@media (max-width:767px){.et_pb_module #wcf-embed-checkout-form .woocommerce .form-row{width:100%!important}}PK\?.assets/min-css/cartflows-normalize-rtl.min.cssnuW+Ahtml{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}h1{font-size:2em;margin:.67em 0}hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:700}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}body,button,input,optgroup,select,textarea{color:#404040;font-family:sans-serif;font-size:15px;line-height:1.5}h1,h2,h3,h4,h5,h6{clear:both}p{margin-bottom:1.5em}cite,dfn,em,i{font-style:italic}blockquote{margin:0 1.5em}address{margin:0 0 1.5em}pre{background:#eee;font-family:"Courier 10 Pitch",Courier,monospace;font-size:15px;font-size:.9375rem;line-height:1.6;margin-bottom:1.6em;max-width:100%;overflow:auto;padding:1.6em}code,kbd,tt,var{font-family:Monaco,Consolas,"Andale Mono","DejaVu Sans Mono",monospace;font-size:15px;font-size:.9375rem}abbr,acronym{border-bottom:1px dotted #666;cursor:help}ins,mark{background:#fff9c0;text-decoration:none}big{font-size:125%}html{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*,:after,:before{-webkit-box-sizing:inherit;-moz-box-sizing:inherit;box-sizing:inherit}body{background:#fff}hr{background-color:#ccc;border:0;height:1px;margin-bottom:1.5em}ol,ul{margin:0 3em 1.5em 0}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-right:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}img{height:auto;max-width:100%}figure{margin:1em 0}table{margin:0 0 1.5em;width:100%}button,input[type=button],input[type=reset],input[type=submit]{border:1px solid;border-color:#ccc #ccc #bbb;-webkit-border-radius:3px;border-radius:3px;background:#e6e6e6;color:rgba(0,0,0,.8);font-size:12px;font-size:.75rem;line-height:1;padding:.6em 1em .4em}button:hover,input[type=button]:hover,input[type=reset]:hover,input[type=submit]:hover{border-color:#ccc #bbb #aaa}button:active,button:focus,input[type=button]:active,input[type=button]:focus,input[type=reset]:active,input[type=reset]:focus,input[type=submit]:active,input[type=submit]:focus{border-color:#aaa #bbb #bbb}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=range],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],textarea{color:#666;border:1px solid #ccc;-webkit-border-radius:3px;border-radius:3px;padding:3px}input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=range]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,textarea:focus{color:#111}select{border:1px solid #ccc}textarea{width:100%}a{color:#4169e1}a:active,a:hover{outline:0}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#f1f1f1;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 2px 2px rgba(0,0,0,.6);box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#21759b;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}#content[tabindex="-1"]:focus{outline:0}.widget{margin:0 0 1.5em}.widget select{max-width:100%}embed,iframe,object{max-width:100%}PK\1$assets/min-css/frontend-divi.min.cssnuW+A.et_pb_module #wcf-thankyou-wrap{padding:0;margin:0 auto;width:100%;max-width:55em;font-size:13px}.et_pb_module #wcf-thankyou-wrap a{color:inherit;padding:0;border:none;font-size:inherit}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::after,.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::before{content:' ';display:table}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::after{clear:both}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details,.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li{list-style:none;line-height:1}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li{display:inline-block;border-right:1px dashed #ccc;padding:.5em 1em .5em 0;margin:.5em .5em .5em 0;list-style-type:none}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li:first-child{padding-left:0}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li:last-child{border-right:0;padding-right:0}.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li strong{display:block;margin-top:.7em}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-bacs-bank-details,.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details,.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-details,.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-downloads,.et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details{margin:0 0 2em;-webkit-border-radius:3px;border-radius:3px;width:100%;display:block}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-bacs-bank-details ul.bacs_details{padding:0}.woocommerce-order-details table.shop_table,.woocommerce-order-downloads table.shop_table{border:none;border-bottom:0;background-color:inherit;-webkit-border-radius:0;border-radius:0;font-family:inherit;font-weight:inherit;font-size:.95em;margin:0!important;border-collapse:collapse;text-align:left}.woocommerce-order-details table.shop_table #shipping_method{margin:0;padding:0;list-style:none}.woocommerce-order-details table.shop_table th,.woocommerce-order-downloads table.shop_table th{border:none;font-weight:600;padding:9px 0;line-height:1.2em}.woocommerce-order-details table.shop_table tfoot tr:last-child .woocommerce-Price-amount{font-size:1em}.woocommerce-order-details table.shop_table td,.woocommerce-order-details table.shop_table th{padding:.6em 0;line-height:1.4em;border:none}.woocommerce-order-details table.shop_table tbody th,.woocommerce-order-details table.shop_table tfoot td,.woocommerce-order-details table.shop_table tfoot th{font-weight:400;border:none}.woocommerce-order-details table.shop_table tbody{border-top:1px dashed #ccc;border-bottom:1px dashed #ccc}.woocommerce-order-details table.shop_table th.product-name,.woocommerce-order-details table.shop_table th.product-total{font-weight:600}.woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) td,.woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) th{font-weight:600;border-top:1px dashed #ccc}.woocommerce-order-details table.shop_table tfoot tr.recurring-totals th{padding-top:1.8em;font-weight:600}.woocommerce-order-details table.shop_table tfoot tr.recurring-total td,.woocommerce-order-details table.shop_table tfoot tr.recurring-total th,.woocommerce-order-details table.shop_table tfoot tr.recurring-totals th{vertical-align:top}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set{-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-1{margin-right:2%}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-1,.et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-2{width:49%;display:inline-block}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details address{border-right-width:1px;border-bottom-width:1px;-webkit-border-radius:0;border-radius:0;font-style:normal}.et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details address p{margin:0}PK\NDND)assets/min-css/optin-template-rtl.min.cssnuW+A.elementor-editor-active .wcf-optin-form .woocommerce #order_review #payment #place_order{pointer-events:none!important}.cartflows-container .wcf-optin-form,.cartflows-container .wcf-optin-form *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.wcf-optin-form .wc-backward{display:none!important}.wcf-optin-form .woocommerce form .form-row-first,.wcf-optin-form .woocommerce form .form-row-last{width:50%;display:block}.wcf-optin-form .woocommerce form .form-row-full{width:100%;clear:both}.wcf-optin-form form .form-row-wide{width:100%}.wcf-optin-form .woocommerce form .form-row-first,.woocommerce-page form .form-row-first{float:right;clear:right}.wcf-optin-form .woocommerce form .form-row-last,.woocommerce-page form .form-row-last{float:left;clear:left}.wcf-optin-form .woocommerce form .form-row .required{color:red;font-weight:700;border:0!important;text-decoration:none}.wcf-optin-form form .form-row-first.form-row-one{clear:both}.wcf-optin-form .woocommerce form.woocommerce-form-login{display:none}.wcf-optin-form .woocommerce .blockUI.blockOverlay{font-size:15px}.wcf-optin-form .woocommerce form .form-row.woocommerce-invalid .select2-container,.wcf-optin-form .woocommerce form .form-row.woocommerce-invalid input.input-text,.wcf-optin-form .woocommerce form .form-row.woocommerce-invalid select{border-width:1px;border-color:#e2401c}.wcf-optin-form .woocommerce form .form-row.woocommerce-validated .select2-container,.wcf-optin-form .woocommerce form .form-row.woocommerce-validated input.input-text,.wcf-optin-form .woocommerce form .form-row.woocommerce-validated select{border-width:1px}.wcf-optin-form .select2-container--default.field-required .select2-selection--single,.wcf-optin-form .woocommerce #order_review .input-text.field-required,.wcf-optin-form .woocommerce form .form-row input.input-text.field-required,.wcf-optin-form .woocommerce form .form-row textarea.input-text.field-required{border-color:#e2401c}.wcf-optin-form .woocommerce form .form-row input.field-validated{border-right-width:2px;border-right-color:#69bf29}.wcf-optin-form .woocommerce #payment [type=radio]:checked+label,.wcf-optin-form .woocommerce #payment [type=radio]:not(:checked)+label{padding:0}.wcf-optin-form .woocommerce #payment input[type=radio]{-webkit-border-radius:50%;border-radius:50%;margin-left:4px;line-height:10px}.wcf-optin-form .woocommerce #payment input[type=checkbox]:checked:before,.wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:checked:before,.wcf-optin-form .woocommerce .woocommerce-billing-fields [type=checkbox]:checked:before,.wcf-optin-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{content:"\e600";margin:0;color:#f16334}.wcf-optin-form .woocommerce #payment input[type=checkbox],.wcf-optin-form .woocommerce #payment input[type=radio],.wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox],.wcf-optin-form .woocommerce .woocommerce-billing-fields [type=checkbox],.wcf-optin-form .woocommerce .woocommerce-shipping-fields [type=checkbox]{border:1px solid #b4b9be;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 0 0 4px;outline:0;padding:0!important;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-appearance:none;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}.wcf-optin-form .woocommerce #payment input[type=checkbox]:focus,.wcf-optin-form .woocommerce #payment input[type=radio]:focus,.wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:focus,.wcf-optin-form .woocommerce .woocommerce-billing-fields [type=checkbox]:focus,.wcf-optin-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:focus{border-color:#f16334;-webkit-box-shadow:0 0 2px rgba(241,99,52,.8);box-shadow:0 0 2px rgba(241,99,52,.8)}.wcf-optin-form .woocommerce #payment input[type=radio]:checked:before{background-color:#f16334;-webkit-border-radius:50px;border-radius:50px;content:"\2022";font-size:24px;height:6px;line-height:16px;margin:4px;text-indent:-9999px;width:6px}.wcf-optin-form .woocommerce #payment input[type=checkbox]:checked:before,.wcf-optin-form .woocommerce #payment input[type=radio]:checked:before,.wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:before,.wcf-optin-form .woocommerce .woocommerce-billing-fields [type=checkbox]:checked:before,.wcf-optin-form .woocommerce .woocommerce-shipping-fields [type=checkbox]:checked:before{display:inline-block;float:right;font:normal 15px/1 cartflows-icon;speak:none;vertical-align:middle;width:6px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wcf-optin-form .woocommerce-checkout #payment ul.payment_methods li input[type=checkbox]{min-width:16px}.wcf-optin-form .woocommerce .col2-set .col-1,.wcf-optin-form .woocommerce .col2-set .col-2,.wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1,.wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2{float:none;width:100%;max-width:100%;padding:0;-webkit-border-radius:0;border-radius:0;border:none;border-color:none;margin-bottom:0}.wcf-optin-form #order_review_heading,.wcf-optin-form .woocommerce #ship-to-different-address,.wcf-optin-form .woocommerce-additional-fields>h3,.wcf-optin-form .woocommerce-billing-fields>h3{display:none}.wcf-optin-form .woocommerce-checkout #payment{background:unset;-webkit-border-radius:0;border-radius:0}.wcf-optin-form .woocommerce-checkout #payment .form-row{margin:0;padding:0}.wcf-optin-form .woocommerce-checkout #payment .form-row label.checkbox{display:block;margin-bottom:1.1em}.wcf-optin-form .woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:none;margin-right:10px}.wcf-optin-form .woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 .5em}.wcf-optin-form .woocommerce-checkout #payment fieldset .form-row .wcf-optin-form .woocommerce-checkout #payment fieldset p{margin-bottom:10px}.wcf-optin-form .woocommerce-checkout #payment div.payment_box{background-color:#eaeaea;font-family:inherit;font-weight:inherit;margin-bottom:.5em}.wcf-optin-form #add_payment_method #payment div.payment_box::before,.wcf-optin-form .woocommerce-cart #payment div.payment_box::before,.wcf-optin-form .woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid;border-left-color:transparent;border-right-color:transparent;border-top-color:transparent;border-bottom-color:#eaeaea;position:absolute;top:-.75em;right:0;margin:-1em 2em 0 0}.wcf-optin-form .select2-container--default .select2-selection--single{display:block;width:100%;min-height:34px;height:auto;padding:11px 12px;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid;border-color:#d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;outline:0}.wcf-optin-form .select2-container--default .select2-selection--single .select2-selection__rendered{color:#666;line-height:26px;min-height:26px;overflow:visible;padding-right:0}.select2-results__option[data-selected],.wcf-optin-form .select2-results__option[aria-selected]{font-size:14px}.wcf-optin-form .select2-container--default .select2-selection--single .select2-selection__arrow{height:100%}.select2-dropdown{border:1px solid #d4d4d4}.wcf-optin-form .woocommerce #order_review .input-text,.wcf-optin-form .woocommerce form .form-row input.input-text,.wcf-optin-form .woocommerce form .form-row select,.wcf-optin-form .woocommerce form .form-row textarea{display:block;width:100%;min-height:34px;padding:11px 12px;font-family:inherit;font-weight:inherit;font-size:14px;line-height:1.42857143!important;color:#555;background-color:#fff;background-image:none;border:1px solid;border-color:#d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;height:auto}.wcf-optin-form #order_review{padding:0;width:100%}.wcf-optin-form .select2-container--open,.wcf-optin-form input[type=email]:focus,.wcf-optin-form input[type=password]:focus,.wcf-optin-form input[type=tel]:focus,.wcf-optin-form input[type=text]:focus,.wcf-optin-form textarea:focus{border-color:#b3b3b3;-webkit-box-shadow:none;box-shadow:none;outline:0}.wcf-optin-form button:focus{outline:0;outline-color:none;outline-style:none;outline-width:none}.wcf-optin-form .woocommerce form.woocommerce-form-login .form-row button,.wcf-optin-form form.checkout_coupon .button{display:block;clear:both;border:none;font-size:15px;font-family:inherit;font-weight:inherit;background-color:#f16334;line-height:9px;padding:18px;margin-bottom:10px;width:100%}.wcf-optin-form .woocommerce #order_review #payment button{float:none;margin:0 auto;display:block}.wcf-optin-form .woocommerce #order_review button{border:1px solid;border-color:#f16334;background-color:#f16334;font-family:inherit;font-weight:inherit;font-size:18px;letter-spacing:.5px;width:100%;padding:16px 24px;font-size:16px;line-height:1.5;-webkit-border-radius:3px;border-radius:3px;color:#fff}.wcf-optin-form .woocommerce #order_review button.wcf-btn-small{padding:8px 6px;background-color:#c8c8c8;border:1px #c8c8c8 solid}.wcf-optin-form .woocommerce #order_review button.wcf-btn-small:hover{border-color:#f16334;background-color:#f16334}.wcf-optin-form .woocommerce #payment #place_order:hover{background-color:#f16334;border-color:#f16334;color:#fff}.wcf-optin-form .woocommerce-additional-fields,.wcf-optin-form .woocommerce-form-coupon-toggle,.wcf-optin-form table.shop_table.woocommerce-checkout-review-order-table{display:none!important}.wcf-optin-form .woocommerce-checkout{display:inline-block;text-align:inherit;width:100%}.wcf-optin-form .woocommerce-checkout .wcf-col2-set{display:block;width:100%;float:none;margin:10px 0 0 0;padding:0}.wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper,.wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{margin:0 -7px;-ms-flex-wrap:wrap;flex-wrap:wrap;-js-display:flex;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap}.wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper{margin:0 -7px}.wcf-optin-form .woocommerce form .form-row{display:block;margin-bottom:1.1em;padding:3px 7px;position:relative}.wcf-optin-form .woocommerce form .woocommerce-account-fields{display:none}.wcf-optin-form .woocommerce form .woocommerce-account-fields .form-row{padding:0}.wcf-optin-form .woocommerce form.woocommerce-form-login .form-row label,.wcf-optin-form .woocommerce-checkout .form-row label{font-size:13px;line-height:1em;letter-spacing:.3px;font-family:inherit;font-weight:inherit;margin-bottom:8px}.wcf-optin-form .woocommerce .woocommerce-billing-fields label,.wcf-optin-form .woocommerce .woocommerce-shipping-fields label{display:inherit}.wcf-optin-form .woocommerce .woocommerce-terms-and-conditions-wrapper{display:none}.wcf-optin-form .woocommerce a{color:#f16334;background-color:transparent;text-decoration:none}.wcf-optin-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message,.wcf-optin-form .woocommerce .woocommerce-error,.wcf-optin-form .woocommerce .woocommerce-info,.wcf-optin-form .woocommerce .woocommerce-message,.wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{padding:1em 2em .4em 2em;border-top:none;background-color:inherit;font-size:14px;font-weight:500;text-align:right;margin:0}.wcf-optin-form .woocommerce-info::before,.wcf-optin-form .woocommerce-message::before{right:.1em;color:#f16334}.wcf-optin-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error,.wcf-optin-form .woocommerce .woocommerce-error,.wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{background-color:#fff6f6;border:dashed 1px #a00;padding:25px 25px 20px;color:#a00;margin:1rem 0 1rem;font-size:14px;width:100%}.wcf-optin-form .woocommerce .woocommerce-error::before{content:''}.wcf-optin-form .woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{display:inline}.wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{margin:1em 0 1em}.wcf-optin-form .woocommerce .woocommerce-error li{list-style:disc inside!important;margin:0 0 8px}.wcf-optin-form .woocommerce .woocommerce-error li strong{font-weight:400}.wcf-optin-form .woocommerce form.checkout_coupon{border:1px solid #d3ced2;padding:30px 20px 20px;margin:2em 0;text-align:right;-webkit-border-radius:5px;border-radius:5px}.wcf-optin-form .woocommerce .checkout_coupon p{font-size:14px}.wcf-optin-form .woocommerce .checkout_coupon p{font-family:inherit;font-weight:500;margin-top:0;margin-bottom:10px}.wcf-optin-form-one-column{background:inherit;width:100%;margin:0 auto}.wcf-optin-form-one-column .woocommerce .col2-set .col-1,.wcf-optin-form-one-column .woocommerce .col2-set .col-2,.wcf-optin-form-one-column .woocommerce .wcf-order-wrap,.wcf-optin-form-one-column .woocommerce form.checkout_coupon,.wcf-optin-form-one-column .woocommerce-checkout #order_review_heading,.wcf-optin-form-one-column .woocommerce-checkout #payment,.wcf-optin-form-one-column .woocommerce-checkout #your_products_heading,.wcf-optin-form-one-column .woocommerce-checkout .shop_table,.wcf-optin-form-one-column .woocommerce-checkout .wcf-qty-options{width:100%}.wcf-optin-form-one-column input[type=email],.wcf-optin-form-one-column input[type=password],.wcf-optin-form-one-column input[type=tel],.wcf-optin-form-one-column input[type=text],.wcf-optin-form-one-column select,.wcf-optin-form-one-column textarea{display:block;width:100%;min-height:40px;padding:11px 12px;font-family:inherit;font-weight:inherit;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #d4d4d4;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:none;box-shadow:none}.wcf-optin-form-one-column .woocommerce-checkout #order_review_heading,.wcf-optin-form-one-column .woocommerce-checkout #your_products_heading{margin:20px 0 0}.wcf-optin-form-one-column .woocommerce-checkout #order_review{width:100%}@media only screen and (max-width:768px){.wcf-optin-form form.checkout_coupon .button{font-size:12px}.wcf-optin-form .woocommerce .col2-set .col-1,.wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1,.wcf-optin-form .woocommerce .wcf-order-wrap{padding:15px 0}.wcf-optin-form .woocommerce .col2-set .col-2,.wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2{padding:0}.wcf-optin-form .woocommerce form .form-row-first,.wcf-optin-form .woocommerce form .form-row-last{width:100%}.wcf-optin-form #order_review_heading,.wcf-optin-form .woocommerce #ship-to-different-address,.wcf-optin-form .woocommerce-additional-fields>h3,.wcf-optin-form .woocommerce-billing-fields>h3{font-size:1em}}#et-info-email:before,#et-info-phone:before,#et_search_icon:before,.comment-reply-link:after,.et-cart-info span:before,.et-pb-arrow-next:before,.et-pb-arrow-prev:before,.et-social-icon a:before,.et_audio_container .mejs-playpause-button button:before,.et_audio_container .mejs-volume-button button:before,.et_overlay:before,.et_password_protected_form .et_submit_button:after,.et_pb_button:after,.et_pb_contact_reset:after,.et_pb_contact_submit:after,.et_pb_font_icon:before,.et_pb_newsletter_button:after,.et_pb_pricing_table_button:after,.et_pb_promo_button:after,.et_pb_social_icon a.icon:before,.et_pb_testimonial:before,.et_pb_toggle_title:before,.form-submit .et_pb_button:after,.mobile_menu_bar:before,.woocommerce #content input.button.alt:after,.woocommerce #content input.button:after,.woocommerce #respond input#submit.alt:after,.woocommerce #respond input#submit:after,.woocommerce a.button.alt:after,.woocommerce button.button.alt:after,.woocommerce button.button:after,.woocommerce button.single_add_to_cart_button.button:after,.woocommerce input.button.alt:after,.woocommerce input.button:after,.woocommerce-page #content input.button.alt:after,.woocommerce-page #content input.button:after,.woocommerce-page #respond input#submit.alt:after,.woocommerce-page #respond input#submit:after,.woocommerce-page a.button.alt:after,.woocommerce-page a.button:after,.woocommerce-page button.button.alt:after,.woocommerce-page button.button:after,.woocommerce-page input.button.alt:after,.woocommerce-page input.button:after,a.et_pb_more_button:after{text-shadow:0 0;font-family:none;font-weight:400;font-style:normal;font-variant:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1;text-transform:none;speak:none}.comment-reply-link:hover:after,.woocommerce #content input.button.alt:hover:after,.woocommerce #content input.button:hover:after,.woocommerce #respond input#submit.alt:hover:after,.woocommerce #respond input#submit:hover:after,.woocommerce a.button.alt:hover:after,.woocommerce a.button:hover:after,.woocommerce button.button.alt:hover:after,.woocommerce button.button:hover:after,.woocommerce input.button.alt:hover:after,.woocommerce input.button:hover:after{opacity:0}.thrv_wrapper .wcf-optin-form div{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}PK\3??!assets/min-css/import-rtl.min.cssnuW+A.no-elementor-notice{border-right:none;background:0 0;border:none;-webkit-box-shadow:none;box-shadow:none;padding-right:0}.no-elementor-notice span{color:#f16334;font-size:18px;vertical-align:middle}.site-preview{background:#c5c5c5;display:block;overflow:hidden;position:relative;-webkit-backface-visibility:hidden}.template.importing .site-preview:after,.template:hover .site-preview:after{opacity:.3}.template.importing .site-preview,.template:hover .site-preview{background:#fff;cursor:pointer}.template .site-preview:after{content:"";background:#fff;opacity:0;top:0;content:"";display:block;top:0;position:absolute;padding-top:66.66666%;-webkit-transition:opacity .2s ease-in-out;transition:opacity .2s ease-in-out;right:0;left:0;bottom:0}.template .notice{padding:.6em;background:rgba(0,0,0,.8);color:#fff;font-weight:400;border:none;font-size:13px;text-decoration:none;position:absolute;width:100%;vertical-align:middle;bottom:0;margin:0;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);left:0;right:0;z-index:4;text-align:center;-webkit-border-radius:3px;border-radius:0;-webkit-transition:opacity .1s ease-in-out;transition:opacity .1s ease-in-out;-webkit-font-smoothing:antialiased}.template .notice a{color:#f16334}.template .notice p{padding:0;margin:0}#wcf_create_notice{display:none}.preview:focus,.preview:hover{color:#fff;-webkit-box-shadow:none;box-shadow:none}.preview{text-decoration:none;opacity:0;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:22%;right:22%;z-index:4;background:#23282d;background:rgba(0,0,0,.7);color:#fff;font-size:13px;text-shadow:0 1px 0 rgba(0,0,0,.6);-webkit-font-smoothing:antialiased;font-weight:600;padding:10px 12px;text-align:center;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:opacity .1s ease-in-out;transition:opacity .1s ease-in-out}.template-id-container{font-size:15px;font-weight:600;margin:0;padding:10px;-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,.1);box-shadow:inset 0 1px 0 rgba(0,0,0,.1);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;background:#fff;background:rgba(255,255,255,.65);position:relative}.template-actions{opacity:0;-webkit-transition:opacity .1s ease-in-out;transition:opacity .1s ease-in-out;position:absolute;bottom:0;left:0;top:0;padding:5px 5px 0 5px;background:rgba(244,244,244,.7);border-right:1px solid rgba(0,0,0,.05)}.template.importing .preview,.template.importing .template-actions,.template:hover .preview,.template:hover .template-actions,.wcf-step-content .template-actions{opacity:1}.wcf-remote-list .template{position:relative;overflow:hidden}.wcf-remote-list h3{margin-bottom:1em;margin-top:0;font-size:15px;font-weight:600;margin:0;padding:0;text-align:right}.wcf-remote-list img{max-width:100%;vertical-align:middle}.wcf-remote-list *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#cartflows-steps-list img{width:100%}#cartflows-steps-list .title{font-weight:700;color:#474747;line-height:2;background:#f7f7f7;padding:.5em 1em}#cartflows-steps-list .image-wrap{-webkit-background-size:cover;background-size:cover;overflow:hidden}#cartflows-steps .close{display:inline-block;padding:2em;cursor:pointer}.template-message-block{text-align:center;margin:0 auto;padding:4em 0}.templator #TB_ajaxContent{width:100%!important}.template-message-block .description{font-style:normal}.template-message-block .spinner{float:none;margin:0}.cartflows-steps-popup{position:fixed;right:0;left:0;top:0;bottom:0;z-index:99999;background:#fff;overflow-y:scroll}.cartflows-steps-popup .notice{max-width:700px;margin:0 auto}.cartflows-load-steps-library .dashicons{height:auto;width:auto;line-height:normal;margin:0 0 0 5px;vertical-align:initial;font-size:100%}.cartflows-load-steps .dashicons{vertical-align:text-bottom}#TB_window{width:100%!important;margin:0 auto!important;text-align:center!important;position:fixed!important;top:0!important;right:0!important;left:0!important;bottom:0!important}#TB_iframeContent{width:100%!important;height:100%!important}@media only screen and (min-device-width :320px) and (max-device-width :1024px){#TB_iframeContent-wrapper{position:fixed;left:0;bottom:50px;right:0;top:0;overflow-y:scroll;-webkit-overflow-scrolling:touch}}#TB_window #TB_ajaxWindowTitle{font-size:1.2rem;display:inline-block;width:auto;padding:0}#TB_window #TB_closeWindowButton{position:relative}.tb-close-icon:before{vertical-align:middle}#TB_window{text-align:center}#TB_iframeContent.tablet{width:768px!important;height:1024px!important;background:#111;padding:40px 10px 70px;-webkit-border-radius:30px;border-radius:30px}#TB_iframeContent.tablet.landscape{width:1024px!important}#TB_iframeContent.mobile{width:360px!important;height:640px!important;background:#111;padding:40px 10px 70px;-webkit-border-radius:30px;border-radius:30px}#TB_iframeContent.mobile.landscape{width:360px!important}#TB_closeAjaxWindow{float:left}#TB_window.thickbox-loading{margin:0!important}div#TB_window{background-color:#fff}#TB_window #TB_title{color:#0a0c0d;text-align:right;bottom:0;-webkit-box-shadow:none;box-shadow:none;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;padding:1em 1.5em 1em 1em}@media all and (min-width:769px){#TB_window #TB_title{-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}}#TB_window.mobile,#TB_window.tablet{overflow-y:scroll}.top #TB_iframeContent-wrapper{bottom:0;top:80px}#TB_window.top #TB_title{top:0}#TB_window #TB_closeWindowButton:focus .tb-close-icon{-webkit-box-shadow:none;box-shadow:none;color:#666}@media all and (max-width:768px){#TB_closeAjaxWindow{padding-left:0}#TB_window #TB_closeWindowButton,#TB_window .tb-close-icon{width:80px}}.responsive-view .dashicons{color:#ddd}.responsive-view .active{color:#111}.responsive-view a:focus{outline:0;-webkit-box-shadow:none;box-shadow:none}#TB_window.mobile #TB_iframeContent,#TB_window.tablet #TB_iframeContent{margin-bottom:50px;margin-top:50px}.responsive-view a{color:#666;cursor:pointer;display:inline-block;padding:1em;vertical-align:middle;text-decoration:none}#TB_closeAjaxWindow .tb-close-icon{position:relative}.site-loading{display:none;position:absolute;right:50%;top:50%;text-align:center;color:#555;-webkit-transform:translate(50%,-40%);-ms-transform:translate(50%,-40%);transform:translate(50%,-40%)}.top .site-loading{top:50%;-webkit-transform:translate(50%,-50%);-ms-transform:translate(50%,-50%);transform:translate(50%,-50%)}.site-loading h3{font-size:33px;font-weight:600;margin:0 0 .8em 0}.site-loading p{margin:0}.cartflows-thickbox-loading .site-loading{display:block}.cartflows-thickbox-loading #TB_iframeContent,.cartflows-thickbox-loading #TB_iframeContent-wrapper{display:none}.wcf-remote-list:after,.wcf-remote-list:before{content:"";display:table}.wcf-remote-list::after{content:"";display:table;clear:both}.wcf-template-header .filter-count{line-height:normal}#wcf-page-builders{display:none}#wcf-remote-flow-filters>div,#wcf-remote-step-filters>div{display:inline-block}.wcf-template-header .filter-links{margin:0;padding:0}.wcf-template-header li:focus{outline:0}.wcf-template-header .filter-links li{margin:0;display:inline-block}.wcf-template-header .filter-links li a:focus,.wcf-template-header .filter-links li a:hove{outline:0;-webkit-box-shadow:none;box-shadow:none}.wcf-template-header .filter-links li .current{color:#000;border-bottom:2px solid #f16334;font-weight:600}.wcf-flow-search-input{border:none;-webkit-box-shadow:none;box-shadow:none;border-bottom:1px solid #eee;line-height:1.8}.wcf-search-form{margin-left:2em;padding-left:0;text-align:left;margin-top:1em;margin-bottom:1em;position:relative}.wcf-template-notice{display:none}#wcf-start-from-scratch{text-align:center}#wcf-start-from-scratch .inner{background:0 0;-webkit-box-shadow:none;box-shadow:none;width:94%;margin:0 auto;float:none;position:absolute;top:40%}#wcf-scratch-steps-categories{display:inline-block}#wcf-scratch-steps-categories select{-webkit-border-radius:0;border-radius:0;height:29px;border:1px solid;border-color:#9e9e9e;border-width:1px;-webkit-box-shadow:none;box-shadow:none;padding:2px 6px 2px 2px;line-height:25px;width:155px}#wcf-start-from-scratch .description{margin-bottom:2em}#wcf-remote-step-importer .wcf-search-form{display:none}.wcf-search-form .wcf-flow-search-input{border:none;-webkit-box-shadow:none;box-shadow:none;border-bottom:1px solid #eee;line-height:1.8;background:0 0;border-bottom:1px solid #ccc;font-size:1em}.wcf-search-form .wcf-flow-search-input:focus{-webkit-box-shadow:none;box-shadow:none;border-color:#ccc}.cartflows-preview-flow-steps li{display:inline-block;margin:0 1em;position:relative}.cartflows-flow-import-blank.updating-message:before{vertical-align:text-bottom}#wpwrap .cartflows-step-loading h2,#wpwrap .template-message-block h2{font-size:1.5em;margin:0 0 .5em 0;padding:8px 12px;line-height:1.4}#wpwrap .cartflows-step-loading p,#wpwrap .template-message-block p{font-size:1.2em}#wpwrap .cartflows-step-loading .spinner{vertical-align:initial}.wcf-flow-type{position:absolute;left:0;top:0;padding:3px 10px;color:#fff}.wcf-flow-type.pro{background:#f06262}.wcf-templates-popup-overlay{position:fixed;height:100%;width:100%;top:0;right:0;background:rgba(0,0,0,.7);-webkit-transition:opacity .5s;transition:opacity .5s;visibility:hidden;opacity:0;z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:none;transition:none}.wcf-templates-popup-overlay.open{visibility:visible;opacity:1;z-index:9999}.wcf-templates-popup-content{max-width:1200px;background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;top:40%;right:50%;-webkit-transform:translate(50%,-35%);-ms-transform:translate(50%,-35%);transform:translate(50%,-35%);width:70%;min-height:85%;max-height:85%;height:85%;overflow:hidden}.wcf-templates-popup-content .inner{background:#fff;position:relative;padding:8px 8px 0 8px;display:block;float:right;margin:15px;text-align:center;-webkit-box-shadow:0 0 5px 1px rgba(204,204,204,.3);box-shadow:0 0 5px 1px rgba(204,204,204,.3)}.wcf-templates-popup-content .wcf-templates-wrap{height:100%}@media only screen and (max-width:480px){.wcf-templates-popup-content{width:90%}.wcf-template-header{display:block!important;padding:15px 15px 0 15px!important}.wcf-popup-close-wrap{position:absolute;top:10px;left:5px}}@media only screen and (min-width:768px){.wcf-templates-popup-content .inner{width:-webkit-calc(25% - 30px);width:calc(25% - 30px)}}html.wcf-popup-open{overflow:hidden}.wcf-button-wrap{margin-top:0;position:absolute;top:10px;right:110px}.wcf-steps-loading #wcf-remote-step-list{display:none!important}#wcf-remote-flow-actions{min-height:52px;max-height:55px}#wcf-remote-content{background-color:#f5f5f5;overflow-y:auto;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:-webkit-calc(100% - 55px);height:calc(100% - 55px);min-height:-webkit-calc(100% - 55px);min-height:calc(100% - 55px);max-height:-webkit-calc(100% - 55px);max-height:calc(100% - 55px);padding:20px 20px 20px 20px;clear:both}#wcf-remote-content #wcf-start-from-scratch h1{font-size:23px;font-weight:400;margin:0 0 1em 0;padding:9px 0 4px;line-height:29px}.wcf-template-list-wrap .template-name{margin:0;text-align:right;font-size:13px}.wcf-template-list-wrap img{width:100%;vertical-align:middle}.wcf-templates-popup-content .template{margin:0;position:relative;overflow:hidden}.wcf-tab.nav-tabs{overflow:hidden;margin:0}.wcf-template-header{-moz-box-align:center;align-items:center;background:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.2);box-shadow:0 0 8px rgba(0,0,0,.2);-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;-moz-box-pack:justify;justify-content:space-between;padding:0 15px;min-height:50px}.wcf-search-form:after{content:"\f179";display:inline-block;font-family:dashicons;text-decoration:inherit;font-weight:400;font-style:normal;text-align:center;-webkit-transition:color .1s ease-in 0;transition:color .1s ease-in 0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;left:.5em;top:.5em;color:#81868a}.wcf-template-logo-wrap{font-size:16px;font-weight:600;text-align:center}.wcf-template-logo-wrap .wcf-cartflows-logo-img{vertical-align:middle}.wcf-tab.nav-tabs:before{display:table;content:""}.wcf-tab.nav-tabs:after{clear:both}.wcf-tab.nav-tabs>li{display:inline-block;padding:15px 0;margin:0;font-weight:400}.wcf-tab.nav-tabs>li.active{border-bottom:3px solid #f16334;font-weight:600}.wcf-template-header .filter-links li>a{border-color:transparent;margin:0}.wcf-tab.nav-tabs>li:active,.wcf-tab.nav-tabs>li:focus,.wcf-tab.nav-tabs>li>a:focus,.wcf-template-header .filter-links>li:active,.wcf-template-header .filter-links>li:focus .wcf-template-header .filter-links>li:active,.wcf-template-header .filter-links>li>a:focus,.wcf-template-header .filter-links>li>a:hover{outline:0;-webkit-box-shadow:none;box-shadow:none}.wcf-tab.nav-tabs>li>a,.wcf-template-header .filter-links>li>a,.wcf-template-header .filter-links>li>a:focus,.wcf-template-header .filter-links>li>a:hover{padding:15px;color:#555;text-decoration:none}.wcf-nav-section-content{display:none}.wcf-nav-section-content.active{display:block;overflow:hidden}.wcf-popup-close-wrap{width:35px;text-align:center;border-right:1px #eee solid}.wcf-popup-close-wrap .close-icon{cursor:pointer}.wcf-popup-close-wrap .wcf-cartflow-icons{pointer-events:none;font-size:20px;height:20px;width:20px;line-height:20px;opacity:.7}.wcf-popup-close-wrap .close-icon:hover .wcf-cartflow-icons{opacity:1}.wcf-templates-popup-content .spinner{position:absolute;top:50%;right:50%;bottom:0;left:0;max-width:100%;max-height:100%;-webkit-transform:translate(50%,-50%);-ms-transform:translate(50%,-50%);transform:translate(50%,-50%);z-index:99999}.wcf-templates-popup-content .wcf-template-header .wcf-tab-wrapper{margin:0 auto}#wcf-upcoming-page-builders .description{font-size:1rem;margin:4em 0 0 0;text-align:center}.flow-type-filter-links{display:none}#wcf-remote-filters{padding:0 15px}#wcf-remote-filters a{text-decoration:none}#wcf-remote-filters .filter-links li:focus,#wcf-remote-filters a:focus{outline:0;-webkit-box-shadow:none;box-shadow:none}#wcf-remote-filters .filter-links li a{border-bottom:none}#wcf-remote-filters .filter-links li:first-child a{margin-right:0}#wcf-remote-filters .filter-links li:last-child a{margin-left:0}#wcf-remote-filters .filter-links li .current,#wcf-remote-filters .filter-links li a:focus,#wcf-remote-filters .filter-links li a:hover{color:#f16334}.wrap .wcf-page-builder-notice .notice{margin:5px 15px}#wcf-api-notice-block{text-align:center;margin-top:5em}.wcf-templates-popup-overlay a{-webkit-transition:none;transition:none}.wcf-notice-wrap .notice{display:inline-block}.wcf-learn-how i{font-size:1rem;vertical-align:middle}.wcf-learn-how a{text-decoration:none}#wcf-remote-content .wcf-install-plugin::focus{border-color:none;-webkit-box-shadow:none;box-shadow:none}#wcf-remote-content .wcf-install-plugin.updating-message{background:0 0;padding:0;font-size:1rem;-webkit-box-shadow:none;box-shadow:none;border:none;margin:0 3px 0 0}.wcf-page-builder-message{margin:5em auto 0 auto;width:700px}.wcf-page-builder-message p{font-size:1rem}.wcf-page-builder-message i{font-size:1rem;vertical-align:middle}.wcf-page-builder-message a{text-decoration:none;margin:1.5em 0 0 0}.cartflows-ie .postbox{padding:1em}.cartflows-ie{padding-top:2em;padding-left:2em}.admin_page_flow_exporter .notice,.admin_page_flow_importer .notice{margin:1em 0 0 0}.cartflows-website-unreachable{padding:1em 2em}.wcf-notice-wrap{margin-top:20px;font-size:15px;color:red}.wcf-activate-wc{text-decoration:none}.wcf-activate-wc.button{border:none;-webkit-box-shadow:none;box-shadow:none}.wcf-hidden{display:none}PK\h\\assets/min-css/frontend.min.cssnuW+A@font-face{font-family:cartflows-icon;src:url(../fonts/cartflows-icon.eot?81m15v);src:url(../fonts/cartflows-icon.eot?81m15v#iefix) format('embedded-opentype'),url(../fonts/cartflows-icon.ttf?81m15v) format('truetype'),url(../fonts/cartflows-icon.woff?81m15v) format('woff'),url(../fonts/cartflows-icon.svg?81m15v#cartflows-icon) format('svg');font-weight:400;font-style:normal}.cartflows-icon{font-family:cartflows-icon!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.cartflows-icon-close:before{content:"\e602";font-family:cartflows-icon}.cartflows-icon-cross:before{content:"\e601"}.cartflows-icon-check:before{content:"\e600"}.cartflows-icon-arrow-thin-right:before{content:"\e901"}.alignleft{display:inline;float:left;margin-right:1.5em}.alignright{display:inline;float:right;margin-left:1.5em}.aligncenter{clear:both;display:block;margin-left:auto;margin-right:auto}.clear:after,.clear:before{content:"";display:table;table-layout:fixed}.clear:after{clear:both}.wcf-button{display:inline-block;padding:12px 24px;background:#ccc;text-decoration:none;margin:5px}body.cartflows-default{background-color:#f5f5f5}.cartflows-default .cartflows-container{max-width:1200px;width:100%;padding:0 20px;margin:60px auto}.cartflows-default .cartflows-primary{background-color:#fff;padding:70px;overflow:hidden;max-width:100%}@media (max-width:768px){.cartflows-default .cartflows-container{padding:0;margin:0}.cartflows-default .cartflows-primary{padding:20px 30px}}@media (max-width:544px){.cartflows-default .cartflows-primary{padding:20px 15px}}.wcf-preview-mode{background:#f16334;position:fixed;bottom:0;left:0;width:100%;height:2.6em;color:#fff;text-align:center;font-size:14px;line-height:2.6em;pointer-events:all;z-index:9999999}.wcf-preview-mode a{color:#fff}@media only screen and (max-width:768px){.wcf-preview-mode{font-size:13px;line-height:18px;padding:4px 10px;height:auto}}.wcf-footer-primary .wcf-footer-content p{margin:1.5em 0;text-align:center}.wcf-thankyou-wrap{padding:0;margin:0 auto;width:100%;max-width:55em;font-size:13px}.woocommerce-order ul.order_details::after,.woocommerce-order ul.order_details::before{content:' ';display:table}.woocommerce-order ul.order_details::after{clear:both}.woocommerce-order ul.order_details,.woocommerce-order ul.order_details li{list-style:none;line-height:1}.woocommerce-order ul.order_details li{display:inline-block;border-right:1px dashed #ccc;padding:.5em 1em .5em 0;margin:.5em .5em .5em 0;list-style-type:none}.woocommerce-order ul.order_details li:first-child{padding-left:0}.woocommerce-order ul.order_details li:last-child{border-right:0;padding-right:0}.woocommerce-order ul.order_details li strong{display:block;margin-top:.7em}.woocommerce-order .woocommerce-bacs-bank-details,.woocommerce-order .woocommerce-customer-details,.woocommerce-order .woocommerce-order-details,.woocommerce-order .woocommerce-order-downloads,.woocommerce-order ul.order_details{margin:0 0 2em;-webkit-border-radius:3px;border-radius:3px;width:100%;display:block}.woocommerce-order .woocommerce-bacs-bank-details ul.bacs_details{padding:0}.woocommerce-order .woocommerce-bacs-bank-details,.woocommerce-order .woocommerce-customer-details,.woocommerce-order .woocommerce-order-details,.woocommerce-order .woocommerce-order-downloads,.woocommerce-order ul.order_details{background:#f1f1f1;padding:1.5em 2.5em}.woocommerce-order .woocommerce-order-downloads__title,.woocommerce-order .woocommerce-thankyou-order-received,.woocommerce-order h2.wc-bacs-bank-details-heading,.woocommerce-order h2.woocommerce-column__title,.woocommerce-order h2.woocommerce-order-details__title{padding:.8em 0;margin:0 0 .5em;font-size:1.5em;font-weight:600;color:#404040}.woocommerce-order .woocommerce-thankyou-order-received{margin:0 0 1.5em;padding:0 .5em;text-align:center}.woocommerce-order-details table.shop_table,.woocommerce-order-downloads table.shop_table{border:none;border-bottom:0;background-color:inherit;-webkit-border-radius:0;border-radius:0;font-family:inherit;font-weight:inherit;font-size:.95em;margin:0!important;border-collapse:collapse;text-align:left}.woocommerce-order-details table.shop_table #shipping_method{margin:0;padding:0;list-style:none}.woocommerce-order-details table.shop_table th,.woocommerce-order-downloads table.shop_table th{border:none;font-weight:600;padding:9px 0;line-height:1.2em}.woocommerce-order-details table.shop_table tfoot tr:last-child .woocommerce-Price-amount{font-size:1em}.woocommerce-order-details table.shop_table td,.woocommerce-order-details table.shop_table th{padding:.6em 0;line-height:1.4em;border:none}.woocommerce-order-details table.shop_table tbody th,.woocommerce-order-details table.shop_table tfoot td,.woocommerce-order-details table.shop_table tfoot th{font-weight:400;border:none}.woocommerce-order-details table.shop_table tbody{border-top:1px dashed #ccc;border-bottom:1px dashed #ccc}.woocommerce-order-details table.shop_table th.product-name,.woocommerce-order-details table.shop_table th.product-total{font-weight:600}.woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) td,.woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) th{font-weight:600;border-top:1px dashed #ccc}.woocommerce-order-details table.shop_table tfoot tr.recurring-totals th{padding-top:1.8em;font-weight:600}.woocommerce-order-details table.shop_table tfoot tr.recurring-total td,.woocommerce-order-details table.shop_table tfoot tr.recurring-total th,.woocommerce-order-details table.shop_table tfoot tr.recurring-totals th{vertical-align:top}.woocommerce-order .wcf-col2-set{-js-display:flex;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.woocommerce-order .wcf-col2-set .wcf-col-1{margin-right:2%}.woocommerce-order .wcf-col2-set .wcf-col-1,.woocommerce-order .wcf-col2-set .wcf-col-2{width:49%;display:inline-block}.woocommerce-order .woocommerce-customer-details address{border-right-width:1px;border-bottom-width:1px;-webkit-border-radius:0;border-radius:0;font-style:normal}.woocommerce-order .woocommerce-customer-details address p{margin:0}@media only screen and (max-width:768px){.woocommerce-order .woocommerce-thankyou-order-received{margin:0 0 1em}.woocommerce-order .woocommerce-thankyou-order-received,.woocommerce-order h2.woocommerce-column__title,.woocommerce-order h2.woocommerce-order-details__title{padding:.5em 0;font-size:1.5em}.woocommerce-order .woocommerce-customer-details,.woocommerce-order .woocommerce-order-details,.woocommerce-order ul.order_details{padding:1.5em 2em}.woocommerce-order .woocommerce-order-downloads{overflow-x:auto}.woocommerce-order-downloads table.shop_table td,.woocommerce-order-downloads table.shop_table th{padding:.5em .8em}.woocommerce-order ul.order_details li{display:block;width:100%;border-right:none;padding:.5em 1em 1em 0;border-bottom:1px dashed #ccc}.woocommerce-order ul.order_details li:last-child{border:none}.woocommerce-order .wcf-col2-set{display:block}.woocommerce-order .wcf-col2-set .wcf-col-1,.woocommerce-order .wcf-col2-set .wcf-col-2{width:100%;display:block}}PK\p-FTT!assets/css/optin-template-rtl.cssnuW+A/** * ************** * Login & Coupon Field Layout * ************** */ /* Editor CSS */ .elementor-editor-active .wcf-optin-form .woocommerce #order_review #payment #place_order { pointer-events: none !important; } .cartflows-container .wcf-optin-form, .cartflows-container .wcf-optin-form * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .wcf-optin-form .wc-backward { display: none !important; } .wcf-optin-form .woocommerce form .form-row-first, .wcf-optin-form .woocommerce form .form-row-last{ width: 50%; display: block; } .wcf-optin-form .woocommerce form .form-row-full{ width: 100%; clear: both; } .wcf-optin-form form .form-row-wide{ width: 100%; } /* To test divi and all */ .wcf-optin-form .woocommerce form .form-row-first, .woocommerce-page form .form-row-first{ float: right; clear: right; } .wcf-optin-form .woocommerce form .form-row-last, .woocommerce-page form .form-row-last{ float: left; clear: left; } .wcf-optin-form .woocommerce form .form-row .required{ color: red; font-weight: 700; border: 0!important; text-decoration: none; } /* To test divi and all */ .wcf-optin-form form .form-row-first.form-row-one{ clear: both; } .wcf-optin-form .woocommerce form.woocommerce-form-login{ display: none; } /** * ************** * Common Classes * ************** */ .wcf-optin-form .woocommerce .blockUI.blockOverlay { font-size: 15px; } .wcf-optin-form .woocommerce form .form-row.woocommerce-invalid .select2-container, .wcf-optin-form .woocommerce form .form-row.woocommerce-invalid input.input-text, .wcf-optin-form .woocommerce form .form-row.woocommerce-invalid select{ border-width: 1px; border-color: #e2401c; } .wcf-optin-form .woocommerce form .form-row.woocommerce-validated .select2-container, .wcf-optin-form .woocommerce form .form-row.woocommerce-validated input.input-text, .wcf-optin-form .woocommerce form .form-row.woocommerce-validated select{ border-width: 1px; } .wcf-optin-form .select2-container--default.field-required .select2-selection--single, .wcf-optin-form .woocommerce form .form-row input.input-text.field-required, .wcf-optin-form .woocommerce form .form-row textarea.input-text.field-required, .wcf-optin-form .woocommerce #order_review .input-text.field-required{ border-color: #e2401c; } .wcf-optin-form .woocommerce form .form-row input.field-validated{ border-right-width: 2px; border-right-color: #69bf29; } /** * ************ * Main Layout * ************ */ /** * ************************ * Radio Button & Checkbox * ************************ */ .wcf-optin-form .woocommerce #payment [type='radio']:checked + label, .wcf-optin-form .woocommerce #payment [type='radio']:not(:checked) + label{ padding: 0px; } .wcf-optin-form .woocommerce #payment input[type=radio]{ -webkit-border-radius: 50%; border-radius: 50%; margin-left: 4px; line-height: 10px; } .wcf-optin-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:checked:before, .wcf-optin-form .woocommerce #payment input[type=checkbox]:checked:before, .wcf-optin-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before, .wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:checked:before{ content: "\e600"; margin: 0; color: #F16334; } .wcf-optin-form .woocommerce .woocommerce-billing-fields [type="checkbox"], .wcf-optin-form .woocommerce #payment input[type=checkbox], .wcf-optin-form .woocommerce .woocommerce-shipping-fields [type="checkbox"], .wcf-optin-form .woocommerce #payment input[type=radio], .wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]{ border: 1px solid #b4b9be; background: #fff; color: #555; clear: none; cursor: pointer; display: inline-block; line-height: 0; height: 16px; margin: -4px 0 0 4px; outline: 0; padding: 0!important; text-align: center; vertical-align: middle; width: 16px; min-width: 16px; -webkit-appearance: none; -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1); box-shadow: inset 0 1px 2px rgba(0,0,0,.1); -webkit-transition: .05s border-color ease-in-out; transition: .05s border-color ease-in-out; } .wcf-optin-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:focus, .wcf-optin-form .woocommerce #payment input[type=checkbox]:focus, .wcf-optin-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:focus, .wcf-optin-form .woocommerce #payment input[type=radio]:focus, .wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:focus{ border-color: #F16334; -webkit-box-shadow: 0 0 2px rgba(241, 99, 52,.8); box-shadow: 0 0 2px rgba(241, 99, 52,.8); } .wcf-optin-form .woocommerce #payment input[type=radio]:checked:before{ background-color: #F16334; -webkit-border-radius: 50px; border-radius: 50px; content: "\2022"; font-size: 24px; height: 6px; line-height: 16px; margin: 4px; text-indent: -9999px; width: 6px; } .wcf-optin-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:checked:before, .wcf-optin-form .woocommerce #payment input[type=checkbox]:checked:before, .wcf-optin-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before, .wcf-optin-form .woocommerce #payment input[type=radio]:checked:before, .wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:before{ display: inline-block; float: right; font: normal 15px/1 cartflows-icon; speak: none; vertical-align: middle; width: 6px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .wcf-optin-form .woocommerce-checkout #payment ul.payment_methods li input[type=checkbox]{ min-width: 16px; } .wcf-optin-form .woocommerce .col2-set .col-1, .wcf-optin-form .woocommerce .col2-set .col-2, .wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1, .wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2 { float: none; width: 100%; max-width: 100%; padding: 0px; -webkit-border-radius: 0px; border-radius: 0px; border: none; border-color: none; margin-bottom: 0px; } .wcf-optin-form .woocommerce-additional-fields > h3, .wcf-optin-form .woocommerce-billing-fields > h3, .wcf-optin-form #order_review_heading, .wcf-optin-form .woocommerce #ship-to-different-address { display: none; } .wcf-optin-form .woocommerce-checkout #payment { background: unset; -webkit-border-radius: 0; border-radius: 0; } .wcf-optin-form .woocommerce-checkout #payment .form-row { margin: 0; padding: 0; } .wcf-optin-form .woocommerce-checkout #payment .form-row label.checkbox{ display: block; margin-bottom: 1.1em; } .wcf-optin-form .woocommerce-checkout #payment .payment_method_paypal .about_paypal{ float: none; margin-right: 10px; } .wcf-optin-form .woocommerce-checkout #payment div.payment_box .form-row{ margin: 0 0 0.5em; } .wcf-optin-form .woocommerce-checkout #payment fieldset .form-row .wcf-optin-form .woocommerce-checkout #payment fieldset p{ margin-bottom: 10px; } .wcf-optin-form .woocommerce-checkout #payment div.payment_box{ background-color: #eaeaea; font-family: inherit; font-weight:inherit; margin-bottom: 0.5em; } .wcf-optin-form #add_payment_method #payment div.payment_box::before, .wcf-optin-form .woocommerce-cart #payment div.payment_box::before, .wcf-optin-form .woocommerce-checkout #payment div.payment_box::before{ content: ''; display: block; border: 1em solid; border-left-color: transparent; border-right-color: transparent; border-top-color: transparent; border-bottom-color: #eaeaea; position: absolute; top: -.75em; right: 0; margin: -1em 2em 0 0; } /* Fields */ .wcf-optin-form .select2-container--default .select2-selection--single { display: block; width: 100%; min-height: 34px; height: auto; padding: 11px 12px; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid; border-color: #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; outline: none; } .wcf-optin-form .select2-container--default .select2-selection--single .select2-selection__rendered { color: #666; line-height: 26px; min-height: 26px; overflow: visible; padding-right: 0; } .wcf-optin-form .select2-results__option[aria-selected], .select2-results__option[data-selected]{ font-size: 14px; } .wcf-optin-form .select2-container--default .select2-selection--single .select2-selection__arrow { height: 100%; } .select2-dropdown{ border: 1px solid #d4d4d4; } .wcf-optin-form .woocommerce form .form-row input.input-text, .wcf-optin-form .woocommerce form .form-row textarea, .wcf-optin-form .woocommerce form .form-row select, .wcf-optin-form .woocommerce #order_review .input-text{ display: block; width: 100%; min-height: 34px; padding: 11px 12px; font-family: inherit; font-weight:inherit; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid; border-color: #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; height: auto; } .wcf-optin-form #order_review{ padding: 0; width: 100%; } .wcf-optin-form input[type="text"]:focus, .wcf-optin-form input[type="email"]:focus, .wcf-optin-form input[type="password"]:focus, .wcf-optin-form input[type="tel"]:focus, .wcf-optin-form textarea:focus, .wcf-optin-form .select2-container--open { border-color: #b3b3b3; -webkit-box-shadow: none; box-shadow: none; outline: none; } .wcf-optin-form button:focus { outline: none; outline-color: none; outline-style: none; outline-width: none; } .wcf-optin-form .woocommerce form.woocommerce-form-login .form-row button, .wcf-optin-form form.checkout_coupon .button { display: block; clear: both; border: none; font-size: 15px; font-family: inherit; font-weight: inherit; background-color: #F16334; line-height: 9px; padding: 18px; margin-bottom: 10px; width: 100%; } .wcf-optin-form .woocommerce #order_review #payment button { float: none; margin: 0 auto; display: block; } .wcf-optin-form .woocommerce #order_review button { border: 1px solid; border-color: #F16334; background-color: #F16334; font-family: inherit; font-weight:inherit; font-size: 18px; letter-spacing: 0.5px; width: 100%; padding: 16px 24px; font-size: 16px; line-height: 1.5; -webkit-border-radius: 3px; border-radius: 3px; color: #fff; } .wcf-optin-form .woocommerce #order_review button.wcf-btn-small { padding: 8px 6px; background-color: #c8c8c8; border: 1px #c8c8c8 solid; } .wcf-optin-form .woocommerce #order_review button.wcf-btn-small:hover{ border-color: #F16334; background-color: #F16334; } .wcf-optin-form .woocommerce #payment #place_order:hover { background-color: #F16334; border-color: #F16334; color: #fff; } /** * *********************** * New checkout style * *********************** */ .wcf-optin-form .woocommerce-form-coupon-toggle, .wcf-optin-form .woocommerce-additional-fields, .wcf-optin-form table.shop_table.woocommerce-checkout-review-order-table { display: none !important; } .wcf-optin-form .woocommerce-checkout{ display: inline-block; text-align: inherit; width: 100%; } .wcf-optin-form .woocommerce-checkout .wcf-col2-set{ display: block; width: 100%; float: none; margin: 10px 0 0 0; padding: 0px; } .wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper, .wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{ margin: 0 -7px; -ms-flex-wrap: wrap; flex-wrap: wrap; -js-display: flex; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; display: -webkit-flex; /* Safari 6.1+, firefox, chrome */ flex-wrap: wrap; -webkit-flex-wrap: wrap; /* Safari 6.1+, firefox, chrome*/ } .wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper{ margin: 0px -7px; } .wcf-optin-form .woocommerce form .form-row{ display: block; margin-bottom: 1.1em; padding: 3px 7px; position: relative; } .wcf-optin-form .woocommerce form .woocommerce-account-fields { display: none; } .wcf-optin-form .woocommerce form .woocommerce-account-fields .form-row{ padding: 0px; } .wcf-optin-form .woocommerce form.woocommerce-form-login .form-row label, .wcf-optin-form .woocommerce-checkout .form-row label{ font-size: 13px; line-height: 1em; letter-spacing: 0.3px; font-family: inherit; font-weight:inherit; margin-bottom: 8px; } .wcf-optin-form .woocommerce .woocommerce-billing-fields label, .wcf-optin-form .woocommerce .woocommerce-shipping-fields label{ display: inherit; } .wcf-optin-form .woocommerce .woocommerce-terms-and-conditions-wrapper { display: none; } .wcf-optin-form .woocommerce a{ color: #F16334; background-color: transparent; text-decoration: none; } .wcf-optin-form .woocommerce .woocommerce-info, .wcf-optin-form .woocommerce .woocommerce-error, .wcf-optin-form .woocommerce .woocommerce-message, .wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message, .wcf-optin-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message{ padding: 1em 2.0em 0.4em 2em; border-top:none; background-color: inherit; font-size: 14px; font-weight: 500; text-align: right; margin:0px; } .wcf-optin-form .woocommerce-info::before, .wcf-optin-form .woocommerce-message::before{ right: 0.1em; color: #F16334; } .wcf-optin-form .woocommerce .woocommerce-error, .wcf-optin-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error, .wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{ background-color: #fff6f6; border: dashed 1px #a00; padding: 25px 25px 20px; color: #a00; margin: 1rem 0 1rem; font-size: 14px; width: 100%; } .wcf-optin-form .woocommerce .woocommerce-error::before { content: ''; } .wcf-optin-form .woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{ display: inline; } .wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{ margin:1em 0 1em; } .wcf-optin-form .woocommerce .woocommerce-error li{ list-style: disc inside !important; margin: 0 0 8px; } .wcf-optin-form .woocommerce .woocommerce-error li strong{ font-weight: 400; } .wcf-optin-form .woocommerce form.checkout_coupon{ border: 1px solid #d3ced2; padding: 30px 20px 20px; margin: 2em 0; text-align: right; -webkit-border-radius: 5px; border-radius: 5px; } .wcf-optin-form .woocommerce .checkout_coupon p{ font-size: 14px; } .wcf-optin-form .woocommerce .checkout_coupon p{ font-family: inherit; font-weight: 500; margin-top: 0; margin-bottom: 10px; } /** * ********************** * One Column Layout * ********************** */ .wcf-optin-form-one-column{ background: inherit; width: 100%; margin:0 auto; } .wcf-optin-form-one-column .woocommerce .col2-set .col-1, .wcf-optin-form-one-column .woocommerce .col2-set .col-2, .wcf-optin-form-one-column .woocommerce-checkout .shop_table, .wcf-optin-form-one-column .woocommerce-checkout .wcf-qty-options, .wcf-optin-form-one-column .woocommerce-checkout #order_review_heading, .wcf-optin-form-one-column .woocommerce-checkout #your_products_heading, .wcf-optin-form-one-column .woocommerce-checkout #payment, .wcf-optin-form-one-column .woocommerce form.checkout_coupon, .wcf-optin-form-one-column .woocommerce .wcf-order-wrap{ width: 100%; } .wcf-optin-form-one-column input[type="text"], .wcf-optin-form-one-column input[type="email"], .wcf-optin-form-one-column input[type="password"], .wcf-optin-form-one-column input[type="tel"], .wcf-optin-form-one-column textarea, .wcf-optin-form-one-column select { display: block; width: 100%; min-height: 40px; padding: 11px 12px; font-family: inherit; font-weight:inherit; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; background-image: none; border: 1px solid #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; } .wcf-optin-form-one-column .woocommerce-checkout #order_review_heading, .wcf-optin-form-one-column .woocommerce-checkout #your_products_heading{ margin:20px 0 0; } .wcf-optin-form-one-column .woocommerce-checkout #order_review{ width: 100%; } @media only screen and (max-width: 768px) { .wcf-optin-form form.checkout_coupon .button{ font-size: 12px; } /* Added for pro support */ .wcf-optin-form .woocommerce .col2-set .col-1, .wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1, .wcf-optin-form .woocommerce .wcf-order-wrap { padding: 15px 0; } .wcf-optin-form .woocommerce .col2-set .col-2, .wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2 { padding: 0; } .wcf-optin-form .woocommerce form .form-row-first, .wcf-optin-form .woocommerce form .form-row-last { width: 100%; } .wcf-optin-form .woocommerce-additional-fields > h3, .wcf-optin-form .woocommerce-billing-fields > h3, .wcf-optin-form #order_review_heading, .wcf-optin-form .woocommerce #ship-to-different-address{ font-size: 1.0em; } } /** * ********************** * Divi Css Overrite * ********************** */ #et-info-email:before, #et-info-phone:before, #et_search_icon:before, .comment-reply-link:after, .et-cart-info span:before, .et-pb-arrow-next:before, .et-pb-arrow-prev:before, .et-social-icon a:before, .et_audio_container .mejs-playpause-button button:before, .et_audio_container .mejs-volume-button button:before, .et_overlay:before, .et_password_protected_form .et_submit_button:after, .et_pb_button:after, .et_pb_contact_reset:after, .et_pb_contact_submit:after, .et_pb_font_icon:before, .et_pb_newsletter_button:after, .et_pb_pricing_table_button:after, .et_pb_promo_button:after, .et_pb_social_icon a.icon:before, .et_pb_testimonial:before, .et_pb_toggle_title:before, .form-submit .et_pb_button:after, .mobile_menu_bar:before, .woocommerce #content input.button.alt:after, .woocommerce #content input.button:after, .woocommerce #respond input#submit.alt:after, .woocommerce #respond input#submit:after, .woocommerce a.button.alt:after, .woocommerce button.button.alt:after, .woocommerce button.button:after, .woocommerce button.single_add_to_cart_button.button:after, .woocommerce input.button.alt:after, .woocommerce input.button:after, .woocommerce-page #content input.button.alt:after, .woocommerce-page #content input.button:after, .woocommerce-page #respond input#submit.alt:after, .woocommerce-page #respond input#submit:after, .woocommerce-page a.button.alt:after, .woocommerce-page a.button:after, .woocommerce-page button.button.alt:after, .woocommerce-page button.button:after, .woocommerce-page input.button.alt:after, .woocommerce-page input.button:after, a.et_pb_more_button:after{ text-shadow: 0 0; font-family: none; font-weight: 400; font-style: normal; font-variant: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; line-height: 1; text-transform: none; speak: none; } .comment-reply-link:hover:after, .woocommerce #content input.button.alt:hover:after, .woocommerce #content input.button:hover:after, .woocommerce #respond input#submit.alt:hover:after, .woocommerce #respond input#submit:hover:after, .woocommerce a.button.alt:hover:after, .woocommerce a.button:hover:after, .woocommerce button.button.alt:hover:after, .woocommerce button.button:hover:after, .woocommerce input.button.alt:hover:after, .woocommerce input.button:hover:after { opacity: 0; } /** * ************************** * Thrive Compatibility css * ************************** */ .thrv_wrapper .wcf-optin-form div{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } PK\- q.assets/css/checkout-template-the-seven-rtl.cssnuW+A/** * ************************* * This css is loaded when when the The7 theme is enabled. * Just to correct layout of the page. * ************************* */ /* Basic */ body, button, input, select, optgroup, textarea, body.page, .wf-container > *{ font-family: normal 1rem / 2 "sans-serif", Helvetica, Arial, Verdana, sans-serif ; font-size: inherit; } .wcf-embed-checkout-form-one-column #customer_details{ width: 100%; } .wcf-embed-checkout-form-two-column #customer_details{ width: 55%; } input[type="text"], input[type="search"], input[type="tel"], input[type="url"], input[type="email"], input[type="number"], input[type="date"], input[type="range"], input[type="password"], select, .wpcf7-number{ height: auto; } #ship-to-different-address{ font: inherit; } #ship-to-different-address label, .create-account label.checkbox span{ font-size: inherit; line-height: inherit; } .woocommerce-checkout-review-order .product-name, .woocommerce-checkout-review-order .product-name a, .order_details .product-name, .order_details .product-name a{ font: inherit; font-size: inherit; color: inherit; } .woocommerce-checkout-review-order .product-quantity, .woocommerce-checkout-review-order .product-total, .woocommerce-checkout-review-order .cart-subtotal th, .woocommerce-checkout-review-order .order-total th, .woocommerce-checkout-review-order .shipping th, .woocommerce-checkout-review-order .about_paypal, .woocommerce-checkout-review-order .product-total .woocommerce-Price-amount, .woocommerce-checkout-review-order tfoot th, .order_details .product-quantity, .order_details .product-total, .order_details .cart-subtotal th, .order_details .order-total th, .order_details .shipping th, .order_details .about_paypal, .order_details .product-total .woocommerce-Price-amount, .order_details tfoot th{ color: inherit; } #shipping_method label, .payment_methods label{ color: inherit; font-size: inherit; line-height: inherit; } .woocommerce-terms-and-conditions-text, .woocommerce-terms-and-conditions-checkbox-text, .woocommerce-privacy-policy-text{ font-size: inherit; line-height: inherit; } div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-message .woocommerce-message-text, div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-message .woocommerce-info-text, div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-message .woocommerce-error-text, .woocommerce-error .woocommerce-message-text, .woocommerce-error .woocommerce-info-text, .woocommerce-error .woocommerce-error-text, div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-info .woocommerce-message-text, div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-info .woocommerce-info-text, div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-info .woocommerce-error-text{ font: inherit; } .checkout .woocommerce-NoticeGroup .woocommerce-error .woocommerce-error-text{ margin: 0px; padding-right: 0px; } table.shop_table thead tr th, table.shop_table thead tr td, table.shop_table tbody tr th, table.shop_table tbody tr td{ border: none; font-weight: normal; width: 50%; } @media screen and (max-width: 990px){ #customer_details{ width: 100%; } .mt20{ margin-top: 10px!important; } } @media only screen and (max-width: 768px){ #customer_details{ width: 100%; } .mt20{ margin-top: 10px!important; } } @media screen and (max-width: 600px){ #customer_details{ width: 100%; } table.shop_table tbody tr{ padding: 0px; } .shop_table tr { border-top: inherit; -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-flow: inherit; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: inherit; flex-flow: inherit; } .shop_table tr.cart_item td.product-name{ -webkit-box-align: baseline; -webkit-align-items: baseline; -moz-box-align: baseline; -ms-flex-align: baseline; align-items: baseline; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-flow: inherit; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: inherit; flex-flow: inherit; text-align: right; } .shop_table thead{ display: block; } }PK\Zgp11)assets/css/checkout-template-divi-rtl.cssnuW+A.et_pb_module #wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required, .et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required { border-color: #e2401c !important; } /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .col2-set, /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{ display: inline-block; width: 55%; float: right; padding-left: 40px; margin: 50px 0 0; } .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row select, .et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text, .et_pb_module #wcf-embed-checkout-form .select2-container--default .select2-selection--single{ display: block; width: 100%; min-height: 34px; padding: 11px 12px; font-family: inherit; font-weight:inherit; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; } .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row{ margin-bottom: 1.1em; padding: 3px 3px 0 3px; } .et_pb_module #wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label, .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .form-row label{ font-size: 13px; line-height: 1em; letter-spacing: 0.3px; font-family: inherit; font-weight: inherit; /*text-transform: capitalize;*/ margin-bottom: 8px; } .cartflows-canvas #page-container{ padding-top:0px !important; } .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-info, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message{ color: inherit !important; } .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{ background-color: #fff6f6 !important; border: dashed 1px #a00 !important; padding: 25px 25px 20px !important; color: #a00 !important; margin: 1rem 0 1rem !important; font-size: 14px !important; } .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error li, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error li, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error li{ font-weight: 400 !important; } .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error li strong{ font-weight: 400; } /*.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:not(:checked){ color: #666; cursor: pointer; display: inline; line-height: 20px; margin-right: 10px; position: relative; padding-left: 28px; }*/ .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before{ content: "\e600"; margin: 0px; color: #F16334; } .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox], .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"], .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]{ border: 1px solid #b4b9be; background: #fff; color: #555; clear: none; cursor: pointer; display: inline-block; line-height: 0; height: 16px; margin: -4px 0 0 4px; outline: 0; padding: 0!important; text-align: center; vertical-align: middle; width: 16px; min-width: 16px; -webkit-appearance: none; -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1); box-shadow: inset 0 1px 2px rgba(0,0,0,.1); -webkit-transition: .05s border-color ease-in-out; transition: .05s border-color ease-in-out; } .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:focus, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:focus, .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:focus{ border-color: #F16334; -webkit-box-shadow: 0 0 2px rgba(241, 99, 52,.8); box-shadow: 0 0 2px rgba(241, 99, 52,.8); } .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before{ background-color: #F16334; -webkit-border-radius: 50px; border-radius: 50px; content: "\2022"; font-size: 24px; height: 6px; line-height: 16px; margin: 4px; text-indent: -9999px; width: 6px; } .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before, .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before{ display: inline-block; float: right; font: normal 15px/1 cartflows-icon; speak: none; vertical-align: middle; width: 6px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .et_pb_module #wcf-embed-checkout-form .woocommerce-additional-fields > h3, .et_pb_module #wcf-embed-checkout-form .woocommerce-billing-fields > h3, .et_pb_module #wcf-embed-checkout-form #order_review_heading, .et_pb_module #wcf-embed-checkout-form .woocommerce #ship-to-different-address{ font-family: inherit; font-weight: 600; font-size: 20px; /*text-transform: capitalize;*/ margin: 0 0 25px 0; } .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{ display: inline-block !important; font-family: inherit; font-weight: 600; width: 45%; margin: 50px 0 0; padding: 0px 10px 20px; border: none; border-bottom: none; } .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{ padding: 1em 0px; margin:0; } .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #add_payment_method #payment ul.payment_methods li, .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li{ line-height: 2; text-align: right; margin: 0; list-style: none; font-weight: inherit; } .et_pb_module #wcf-embed-checkout-form #payment .woocommerce-privacy-policy-text p{ font-family: inherit; font-weight: inherit; color: #444; margin-top: 0; margin-bottom: 1.5em; } .et_pb_module #wcf-embed-checkout-form .woocommerce .shop_table #shipping_method li{ list-style: none; } .et_pb_module #wcf-embed-checkout-form .woocommerce a{ color: #F16334; text-decoration: none; } .et_pb_module #wcf-embed-checkout-form .wcf-custom-coupon-field{ -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; margin-bottom: 25px; margin-top: 25px; border-top: 1px solid #dcdcdc; padding-top: 25px; } .et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message, .et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error{ color: inherit !important; border: none !important; background-color: transparent !important; padding: 0em 2em 1.2em 2em !important; font-size: 14px !important; margin: 0px !important; } .et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message::before, .et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before{ display: block !important; } /* One Column */ /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce .col2-set, /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce .wcf-col2-set{ display: block; margin-top: 10px; padding-left: 0px; width: 100%; } .et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce-checkout #order_review_heading{ display: block !important; margin: 20px 0 0; width: 100%; } /** * ************************************** * Bump Order Start * ************************************** */ .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-wrap { display: block; float: none; margin: 1em auto 1em; overflow: hidden; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 { background: #f1f1f1; border-style: none; border-width: 2px; border-color: red; -webkit-border-radius: 3px; border-radius: 3px; display: inline-block; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 { border: 2px red dashed; -webkit-border-radius: 3px; border-radius: 3px; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-field-wrap { border-style: none; border-width: 2px; border-color: red; padding: 20px 25px; margin: 0; font-size: 1.1em; display: block; background: #dddddd; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-content-container { padding: 25px 0; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-offer { padding: 0 25px 10px; font-size: 1.2em; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-desc { padding: 0 25px; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-offer { padding: 20px 25px; font-size: 1.1em; font-weight: 600; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-desc { padding: 0 25px 20px; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-field-wrap { border-top: 2px red dashed; padding: 15px 25px; margin: 0; font-size: 1.1em; display: block; } /** * ************************************** * Bump Order End * ************************************** */ .et_pb_module #wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required, .et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required{ border-color: #e2401c; } @media only screen and (max-width: 768px) { /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .col2-set, /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{ display: block; float: none; padding-left: 0px; width: 100%; } .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{ display: block !important; float: none; width: 100%; } .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review{ display: block; float: none; width: 100%; } } @media (max-width: 767px){ .et_pb_module #wcf-embed-checkout-form .woocommerce .form-row { width: 100% !important; } }PK\[:$assets/css/checkout-template-rtl.cssnuW+A/** * ************** * Login & Coupon Field Layout * ************** */ .cartflows-container .wcf-embed-checkout-form, .cartflows-container .wcf-embed-checkout-form * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .wcf-embed-checkout-form .wc-backward { display: none !important; } .wcf-embed-checkout-form .woocommerce form .form-row-first, .wcf-embed-checkout-form .woocommerce form .form-row-last, .wcf-embed-checkout-form .woocommerce-page form .form-row-first, .wcf-embed-checkout-form .woocommerce-page form .form-row-last{ width: 50%; display: block; } .wcf-embed-checkout-form .woocommerce form .form-row-full, .wcf-embed-checkout-form .woocommerce-page form .form-row-full{ width: 100%; clear: both; } .wcf-embed-checkout-form form .form-row-wide{ width: 100%; } .wcf-embed-checkout-form form .wcf-column-33{ width: 33.33%; } /* To test divi and all */ .wcf-embed-checkout-form .woocommerce form .form-row-first, .woocommerce-page form .form-row-first{ float: right; clear: right; } .wcf-embed-checkout-form .woocommerce form .form-row-last, .woocommerce-page form .form-row-last{ float: left; clear: left; } .wcf-embed-checkout-form .woocommerce form .form-row .required{ color: red; font-weight: 700; border: 0!important; text-decoration: none; } /* #wcf-embed-checkout-form .woocommerce .product-name a.remove:hover{ color:red !important; } */ .wcf-embed-checkout-form .woocommerce .woocommerce-checkout .product-name .remove{ font-family: 'cartflows-icon'; display: inline-block; font-size: 10px; border: 1px #4d5763 solid; -webkit-border-radius: 50%; border-radius: 50%; padding: 1px; color: #4d5763 !important; /* opacity: 0.6; */ line-height: 1; margin-left: 5px; text-align: center; font-weight: 100; width: 14px; height: 14px; background-color: #fff; } .wcf-embed-checkout-form .woocommerce .woocommerce-checkout .product-name .remove:hover{ color: #f1653c !important; border: 1px #f1653c solid; background-color: #fff; } /* To test divi and all */ .wcf-embed-checkout-form form .form-row-first.form-row-one{ clear: both; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login{ display: none; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row{ margin-bottom: 15px; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .clear{ clear: none; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label{ margin: 0; line-height: 1em; padding-top: 0; position: relative; top: 0; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .login-form-actions{ -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; margin-bottom: 0px; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .remember_me, .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .lost_password{ -webkit-box-flex: 1; -webkit-flex: 1; -moz-box-flex: 1; -ms-flex: 1; flex: 1; font-family: inherit; font-size: 13px; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me label{ margin-bottom: 0px; vertical-align: text-top; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me input, .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me span{ vertical-align: middle; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .lost_password{ text-align: left; margin-top: 0px; margin-bottom: 0px; } /** * ************** * Common Classes * ************** */ .wcf-embed-checkout-form .woocommerce .blockUI.blockOverlay { font-size: 15px; } .wcf-embed-checkout-form .woocommerce form .form-row.mt20{ margin-top: 20px ; } .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid .select2-container, .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid input.input-text, .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid select{ border-width: 1px; border-color: #e2401c; } .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated .select2-container, .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated input.input-text, .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated select{ border-width: 1px; /*border-color: #69bf29;*/ } .wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single, .wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required, .wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required, .wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required{ border-color: #e2401c; } .wcf-embed-checkout-form .woocommerce form .form-row input.field-validated{ border-right-width: 2px; border-right-color: #69bf29; } /** * ************ * Main Layout * ************ */ .wcf-embed-checkout-form .wcf-checkout-header-image{ text-align: center; } /** * ************************ * Radio Button & Checkbox * ************************ */ .wcf-embed-checkout-form .woocommerce #payment [type='radio']:checked + label, .wcf-embed-checkout-form .woocommerce #payment [type='radio']:not(:checked) + label{ padding: 0px; } .wcf-embed-checkout-form .woocommerce #payment input[type=radio]{ -webkit-border-radius: 50%; border-radius: 50%; margin-left: 4px; line-height: 10px; } .wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:checked:before, .wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before, .wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before, .wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:checked:before{ content: "\e600"; margin: 0; color: #F16334; } .wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type="checkbox"], .wcf-embed-checkout-form .woocommerce #payment input[type=checkbox], .wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"], .wcf-embed-checkout-form .woocommerce #payment input[type=radio], .wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]{ border: 1px solid #b4b9be; background: #fff; color: #555; clear: none; cursor: pointer; display: inline-block; line-height: 0; height: 16px; margin: -4px 0 0 4px; outline: 0; padding: 0!important; text-align: center; vertical-align: middle; width: 16px; min-width: 16px; -webkit-appearance: none; -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1); box-shadow: inset 0 1px 2px rgba(0,0,0,.1); -webkit-transition: .05s border-color ease-in-out; transition: .05s border-color ease-in-out; } .wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:focus, .wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:focus, .wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:focus, .wcf-embed-checkout-form .woocommerce #payment input[type=radio]:focus, .wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:focus{ border-color: #F16334; -webkit-box-shadow: 0 0 2px rgba(241, 99, 52,.8); box-shadow: 0 0 2px rgba(241, 99, 52,.8); } .wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before{ background-color: #F16334; -webkit-border-radius: 50px; border-radius: 50px; content: "\2022"; font-size: 24px; height: 6px; line-height: 16px; margin: 4px; text-indent: -9999px; width: 6px; } .wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:checked:before, .wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before, .wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before, .wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before, .wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:before{ display: inline-block; float: right; font: normal 15px/1 cartflows-icon; speak: none; vertical-align: middle; width: 6px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li input[type=checkbox]{ min-width: 16px; } /* Added for pro support */ .wcf-embed-checkout-form .woocommerce .col2-set .col-1, .wcf-embed-checkout-form .woocommerce .col2-set .col-2, .wcf-embed-checkout-form .woocommerce-page .col2-set .col-1, .wcf-embed-checkout-form .woocommerce-page .col2-set .col-2, /* Added for pro support */ .wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-1, .wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-2, .wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-1, .wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-2 { float: none; width: 100%; max-width: 100%; padding: 0px; -webkit-border-radius: 0px; border-radius: 0px; border: none; border-color: none; margin-bottom: 0px; } .wcf-embed-checkout-form .woocommerce-additional-fields > h3, .wcf-embed-checkout-form .woocommerce-billing-fields > h3, .wcf-embed-checkout-form #order_review_heading, .wcf-embed-checkout-form .woocommerce #ship-to-different-address { font-family: inherit; font-weight: 600; font-size: 20px; /*text-transform: capitalize;*/ margin:0 0 25px 0; padding: 0px; width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout #payment { background: unset; -webkit-border-radius: 0; border-radius: 0; } .wcf-embed-checkout-form .woocommerce-checkout #payment .form-row { margin: 0; padding: 0; } .wcf-embed-checkout-form .woocommerce-checkout #payment .form-row label.checkbox{ display: block; margin-bottom: 1.1em; } .wcf-embed-checkout-form .woocommerce-checkout #payment .payment_method_paypal .about_paypal{ float: none; margin-right: 10px; } .wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box .form-row{ margin: 0 0 0.5em; } .wcf-embed-checkout-form .woocommerce-checkout #payment fieldset .form-row .wcf-embed-checkout-form .woocommerce-checkout #payment fieldset p{ margin-bottom: 10px; } .wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box{ background-color: #eaeaea; font-family: inherit; font-weight:inherit; margin-bottom: 0.5em; } .wcf-embed-checkout-form #add_payment_method #payment div.payment_box::before, .wcf-embed-checkout-form .woocommerce-cart #payment div.payment_box::before, .wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box::before{ content: ''; display: block; border: 1em solid; border-left-color: transparent; border-right-color: transparent; border-top-color: transparent; border-bottom-color: #eaeaea; position: absolute; top: -.75em; right: 0; margin: -1em 2em 0 0; } /* Fields */ .wcf-embed-checkout-form .select2-container--default .select2-selection--single { display: block; width: 100%; min-height: 34px; height: auto; padding: 11px 12px; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid; border-color: #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; outline: none; } .wcf-embed-checkout-form .select2-container--default .select2-selection--single .select2-selection__rendered { color: #666; line-height: 19px; min-height: 19px; overflow: visible; padding-right: 0; } .wcf-embed-checkout-form .select2-results__option[aria-selected], .select2-results__option[data-selected]{ font-size: 14px; } .wcf-embed-checkout-form .select2-container--default .select2-selection--single .select2-selection__arrow { height: 100%; } .select2-dropdown{ border: 1px solid #d4d4d4; } .wcf-embed-checkout-form .woocommerce form .form-row input.input-text, .wcf-embed-checkout-form .woocommerce form .form-row textarea, .wcf-embed-checkout-form .woocommerce form .form-row select, .wcf-embed-checkout-form .woocommerce #order_review .input-text{ display: block; width: 100%; min-height: 34px; padding: 11px 12px; font-family: inherit; font-weight:inherit; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid; border-color: #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; height: auto; } .wcf-embed-checkout-form #order_review{ padding: 3px; width: 100%; } .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message, .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error{ padding: 0em 2em 1.2em 2em; background-color: transparent; border: none; margin: 0px; width: 100%; } .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error li{ list-style:none !important; margin: 0px; } .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message::before, .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before{ top: 0px; right: 0px; } .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before{ content: '\e016'; } .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error li{ margin: 0px 8px 0 0px; } .wcf-embed-checkout-form .woocommerce #order_review .wcf-custom-coupon-field input[type="text"]{ font-weight: normal; } .wcf-embed-checkout-form .wcf-custom-coupon-field { clear: right; -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; margin-bottom: 15px; margin-top: 25px; border-top: 1px solid #dcdcdc; border-bottom: 1px solid #dcdcdc; padding-top: 25px; padding-bottom: 25px; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .wcf-embed-checkout-form #order_review .wcf-coupon-col-1 { width: 70%; display: inline-block; padding-left: 20px; } .wcf-embed-checkout-form #order_review .wcf-coupon-col-2 { width: 30%; } .wcf-embed-checkout-form input[type="text"]:focus, .wcf-embed-checkout-form input[type="email"]:focus, .wcf-embed-checkout-form input[type="password"]:focus, .wcf-embed-checkout-form input[type="tel"]:focus, .wcf-embed-checkout-form textarea:focus, .wcf-embed-checkout-form .select2-container--open { border-color: #b3b3b3; -webkit-box-shadow: none; box-shadow: none; outline: none; } .wcf-embed-checkout-form button:focus { outline: none; outline-color: none; outline-style: none; outline-width: none; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row button, .wcf-embed-checkout-form form.checkout_coupon .button { display: block; clear: both; border: none; font-size: 15px; font-family: inherit; font-weight: inherit; background-color: #F16334; line-height: 9px; padding: 18px; margin-bottom: 10px; width: 100%; } .wcf-embed-checkout-form .woocommerce #order_review button { border: 1px solid; border-color: #F16334; background-color: #F16334; font-family: inherit; font-weight:inherit; font-size: 18px; letter-spacing: 0.5px; width: 100%; padding: 16px 24px; font-size: 16px; line-height: 1.5; -webkit-border-radius: 3px; border-radius: 3px; color: #fff; } .wcf-embed-checkout-form .woocommerce #order_review button.wcf-btn-small { padding: 8px 6px; background-color: #c8c8c8; border: 1px #c8c8c8 solid; } .wcf-embed-checkout-form .woocommerce #order_review button.wcf-btn-small:hover{ border-color: #F16334; background-color: #F16334; } .wcf-embed-checkout-form .woocommerce #payment #place_order:hover { background-color: #F16334; border-color: #F16334; color: #fff; } /** * *********************** * New checkout style * *********************** */ .wcf-embed-checkout-form .woocommerce-checkout{ display: inline-block; text-align: inherit; width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout .col2-set, .wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{ display: inline-block; width: 55%; float: right; padding-left: 40px; margin:20px 0 0; } /*Added for pro support */ .wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper, .wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper, /*Added for pro support */ .wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper, .wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{ margin: 0 -7px; -ms-flex-wrap: wrap; flex-wrap: wrap; -js-display: flex; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; display: -webkit-flex; /* Safari 6.1+, firefox, chrome */ flex-wrap: wrap; -webkit-flex-wrap: wrap; /* Safari 6.1+, firefox, chrome*/ } .wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper, .wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper{ margin: 0px -7px; } .wcf-embed-checkout-form-two-column .woocommerce-checkout .wcf-order-wrap{ display: inline-block; float: none; width: 45%; border: none; background-color: inherit/*#F6F6F6*/; padding: 0 10px; -webkit-border-radius: 3px; border-radius: 3px; } .wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{ display: inline-block; font-family: inherit; font-weight: 600; width: 100%; margin:20px 0 0; padding: 3px 3px 20px; border: none; border-bottom: none; } .wcf-embed-checkout-form .woocommerce-checkout #payment{ background-color: inherit; border:none; /*border-top: 1px solid;*/ -webkit-border-radius: 0px; border-radius: 0px; /*border-color: #dcdcdc;*/ /*padding-top: 20px;*/ } .wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{ padding: 1em 0px; } .wcf-embed-checkout-form #add_payment_method #payment ul.payment_methods, .wcf-embed-checkout-form .woocommerce-cart #payment ul.payment_methods, .wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{ border: none; } .wcf-embed-checkout-form #payment ul.payment_methods li, .wcf-embed-checkout-form #payment ul.payment_methods li:hover{ background-color: transparent; } /*.wcf-embed-checkout-form .woocommerce form .form-row-wide, .woocommerce-page form .form-row-wide{ clear: both; }*/ .wcf-embed-checkout-form .woocommerce form .form-row{ display: block; margin-bottom: 1.1em; padding: 3px 7px; position: relative; } .wcf-embed-checkout-form .woocommerce form .woocommerce-account-fields .form-row{ padding: 0px; } .wcf-embed-checkout-form table.shop_table { border:none; border-bottom: 0; background-color: inherit; -webkit-border-radius: 0; border-radius: 0; font-family: inherit; font-weight:inherit; font-size: 0.95em; margin: 0 0 0px 0 !important; border-collapse: collapse; text-align: right; } .wcf-embed-checkout-form table.shop_table td strong.product-quantity{ font-weight: normal; } .wcf-embed-checkout-form table.shop_table #shipping_method{ margin: 0; padding: 0; list-style: none; } .wcf-embed-checkout-form table.shop_table #shipping_method .amount{ font-weight: normal; } .wcf-embed-checkout-form table.shop_table th{ border: none; font-weight: 400; padding: 9px 0px; line-height: 1.2em; } .wcf-embed-checkout-form table.shop_table tfoot tr:last-child .woocommerce-Price-amount { font-size: 1em; } .wcf-embed-checkout-form table.shop_table td, .wcf-embed-checkout-form table.shop_table th, .wcf-embed-checkout-form table.shop_table td dl dt, .wcf-embed-checkout-form table.shop_table td dl dd { background-color: transparent; border: none; padding: 0.6em 0; line-height: 1.4em; } .wcf-embed-checkout-form table.shop_table td dl dd p{ margin-top: 0; } .wcf-embed-checkout-form table.shop_table tbody th, .wcf-embed-checkout-form table.shop_table tfoot td, .wcf-embed-checkout-form table.shop_table tfoot th { border: none; display: table-cell; font-weight: normal; width: 50%; } .wcf-embed-checkout-form table.shop_table thead{ background-color: transparent; } .wcf-embed-checkout-form table.shop_table tbody { border-top: 1px dashed #cccccc; border-bottom: 1px dashed #cccccc; } .wcf-embed-checkout-form table.shop_table th.product-name, .wcf-embed-checkout-form table.shop_table th.product-total{ font-weight: 600; } .wcf-embed-checkout-form table.shop_table tfoot tr.order-total:not(.recurring-total) th, .wcf-embed-checkout-form table.shop_table tfoot tr.order-total:not(.recurring-total) td { font-weight: 600; border-top: 1px dashed #cccccc; } .wcf-embed-checkout-form table.shop_table tfoot tr.recurring-totals th { padding-top: 1.8em; font-weight: 600; } .wcf-embed-checkout-form table.shop_table tfoot tr.recurring-totals th, .wcf-embed-checkout-form table.shop_table tfoot tr.recurring-total th, .wcf-embed-checkout-form table.shop_table tfoot tr.recurring-total td { vertical-align: top; } .wcf-embed-checkout-form table.shop_table thead tr th:nth-child(1), .wcf-embed-checkout-form table.shop_table tbody tr td:nth-child(1), .wcf-embed-checkout-form table.shop_table tfoot tr td:nth-child(1){ width: 70%; } .wcf-embed-checkout-form table.shop_table thead tr th:nth-child(2), .wcf-embed-checkout-form table.shop_table tbody tr td:nth-child(2), .wcf-embed-checkout-form table.shop_table tfoot tr td:nth-child(2){ width: 30%; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label, .wcf-embed-checkout-form .woocommerce-checkout .form-row label{ font-size: 13px; line-height: 1em; letter-spacing: 0.3px; font-family: inherit; font-weight:inherit; /*text-transform: capitalize;*/ margin-bottom: 8px; } .wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields label, .wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields label{ display: inherit; } .wcf-embed-checkout-form .woocommerce .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text{ line-height: 20px; text-transform: none; } .wcf-embed-checkout-form #payment .woocommerce-privacy-policy-text p{ font-family: inherit; font-weight:inherit; font-size: 11px; color: #777; margin-top: 0; text-align: justify; } .wcf-embed-checkout-form #payment .wc_payment_methods .payment_box p{ margin: 0; } .wcf-embed-checkout-form .woocommerce a{ color: #F16334; background-color: transparent; text-decoration: none; } .wcf-embed-checkout-form .woocommerce .woocommerce-info, .wcf-embed-checkout-form .woocommerce .woocommerce-error, .wcf-embed-checkout-form .woocommerce .woocommerce-message, .wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message, .wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message{ padding: 1em 2.0em 0.4em 2em; border-top:none; background-color: inherit; font-size: 14px; font-weight: 500; text-align: right; margin:0px; } .wcf-embed-checkout-form .woocommerce-info::before, .wcf-embed-checkout-form .woocommerce-message::before{ right: 0.1em; color: #F16334; } .wcf-embed-checkout-form .woocommerce .woocommerce-error, .wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error, .wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{ background-color: #fff6f6; border: dashed 1px #a00; padding: 25px 25px 20px; color: #a00; margin: 1rem 0 1rem; font-size: 14px; width: 100%; } .wcf-embed-checkout-form .woocommerce .woocommerce-error::before { content: ''; } .wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{ display: inline; } .wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{ margin:1em 0 1em; } .wcf-embed-checkout-form .woocommerce .woocommerce-error li{ list-style: disc inside !important; margin: 0 0 8px; } .wcf-embed-checkout-form .woocommerce .woocommerce-error li strong{ font-weight: 400; } .wcf-embed-checkout-form .woocommerce form.checkout_coupon{ border: 1px solid #d3ced2; padding: 30px 20px 20px; margin: 2em 0; text-align: right; -webkit-border-radius: 5px; border-radius: 5px; } .wcf-embed-checkout-form .woocommerce .checkout_coupon p{ font-size: 14px; } .wcf-embed-checkout-form .woocommerce .checkout_coupon p{ font-family: inherit; font-weight: 500; margin-top: 0; margin-bottom: 10px; } @media only screen and (max-width: 768px) { .wcf-embed-checkout-form form .wcf-column-33{ width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{ width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout #order_review{ width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout .wcf-order-wrap{ width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout{ display: block; } .wcf-embed-checkout-form .woocommerce-checkout .col2-set, .wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{ display: block; width: 100%; padding-left: 0; margin: 20px 0 0; } .wcf-embed-checkout-form form.checkout_coupon .button{ font-size: 12px; } .wcf-bump-order-field-wrap .wcf-bump-order-label{ font-size: 16px; } /* Added for pro support */ .wcf-embed-checkout-form .woocommerce .col2-set .col-1, .wcf-embed-checkout-form .woocommerce .col2-set .col-2, .wcf-embed-checkout-form .woocommerce-page .col2-set .col-1, .wcf-embed-checkout-form .woocommerce-page .col2-set .col-2, /* Added for pro support */ .wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-1, .wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-2, .wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-1, .wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-2, .wcf-embed-checkout-form .woocommerce .wcf-order-wrap, .wcf-embed-checkout-form .woocommerce-page .wcf-order-wrap{ padding: 15px 18px; } .wcf-embed-checkout-form .woocommerce form .form-row-first, .wcf-embed-checkout-form .woocommerce form .form-row-last, .wcf-embed-checkout-form .woocommerce-page form .form-row-first, .wcf-embed-checkout-form .woocommerce-page form .form-row-last{ width: 100%; } /*.wcf-embed-checkout-form .woocommerce form .form-row-first, .wcf-embed-checkout-form .woocommerce-page form .form-row-first{ margin-right: 4%; }*/ .wcf-embed-checkout-form .woocommerce-additional-fields > h3, .wcf-embed-checkout-form .woocommerce-billing-fields > h3, .wcf-embed-checkout-form #order_review_heading, .wcf-embed-checkout-form .woocommerce #ship-to-different-address{ font-size: 1.0em; } } /** * ********************** * Divi Css Overrite * ********************** */ #et-info-email:before, #et-info-phone:before, #et_search_icon:before, .comment-reply-link:after, .et-cart-info span:before, .et-pb-arrow-next:before, .et-pb-arrow-prev:before, .et-social-icon a:before, .et_audio_container .mejs-playpause-button button:before, .et_audio_container .mejs-volume-button button:before, .et_overlay:before, .et_password_protected_form .et_submit_button:after, .et_pb_button:after, .et_pb_contact_reset:after, .et_pb_contact_submit:after, .et_pb_font_icon:before, .et_pb_newsletter_button:after, .et_pb_pricing_table_button:after, .et_pb_promo_button:after, .et_pb_social_icon a.icon:before, .et_pb_testimonial:before, .et_pb_toggle_title:before, .form-submit .et_pb_button:after, .mobile_menu_bar:before, .woocommerce #content input.button.alt:after, .woocommerce #content input.button:after, .woocommerce #respond input#submit.alt:after, .woocommerce #respond input#submit:after, .woocommerce a.button.alt:after, .woocommerce button.button.alt:after, .woocommerce button.button:after, .woocommerce button.single_add_to_cart_button.button:after, .woocommerce input.button.alt:after, .woocommerce input.button:after, .woocommerce-page #content input.button.alt:after, .woocommerce-page #content input.button:after, .woocommerce-page #respond input#submit.alt:after, .woocommerce-page #respond input#submit:after, .woocommerce-page a.button.alt:after, .woocommerce-page a.button:after, .woocommerce-page button.button.alt:after, .woocommerce-page button.button:after, .woocommerce-page input.button.alt:after, .woocommerce-page input.button:after, a.et_pb_more_button:after{ text-shadow: 0 0; font-family: none; font-weight: 400; font-style: normal; font-variant: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; line-height: 1; text-transform: none; speak: none; } .comment-reply-link:hover:after, .woocommerce #content input.button.alt:hover:after, .woocommerce #content input.button:hover:after, .woocommerce #respond input#submit.alt:hover:after, .woocommerce #respond input#submit:hover:after, .woocommerce a.button.alt:hover:after, .woocommerce a.button:hover:after, .woocommerce button.button.alt:hover:after, .woocommerce button.button:hover:after, .woocommerce input.button.alt:hover:after, .woocommerce input.button:hover:after, .woocommerce-page #content input.button.alt:hover:after, .woocommerce-page #content input.button:hover:after, .woocommerce-page #respond input#submit.alt:hover:after, .woocommerce-page #respond input#submit:hover:after, .woocommerce-page a.button.alt:hover:after, .woocommerce-page a.button:hover:after, .woocommerce-page button.button.alt:hover:after, .woocommerce-page button.button:hover:after, .woocommerce-page input.button.alt:hover:after, .woocommerce-page input.button:hover:after{ opacity: 0; } /** * ************************** * Thrive Compatibility css * ************************** */ .thrv_wrapper .wcf-embed-checkout-form div{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } PK\{, , -assets/css/checkout-template-flatsome-rtl.cssnuW+A/** * ************************* * This css is loaded when when the flatsome theme is enabled. * Just to add correct the layout of the page. * ************************* */ /* Basic */ .absolute-footer, html{ background-color: unset; font-family: inherit; } body{ color: #404040; font-family: inherit; line-height: 1.5; } b, strong{ font-weight: bold; } .woocommerce-billing-fields{ padding-top: 0; border-top: unset; } .button, button, input, textarea, select, fieldset{ margin-bottom:inherit; } .wcf-embed-checkout-form .woocommerce form .form-row input.input-text, .wcf-embed-checkout-form .woocommerce form .form-row textarea, .wcf-embed-checkout-form .woocommerce form .form-row select, .wcf-embed-checkout-form .woocommerce #order_review .input-text{ height: auto; } #ship-to-different-address label{ font-weight: inherit; } .shop_table tfoot th, th, td{ color: inherit; font-size: inherit; letter-spacing: inherit; text-transform: inherit; text-align: inherit; } span.amount{ white-space: inherit; color: inherit; font-weight: inherit; } td.product-total, .shop_table tfoot tr td, .cart_totals tbody tr td, .shop_table thead tr th:last-of-type, .shop_table tr td:last-of-type{ text-align: inherit; } .shipping__table--multiple th, .shipping__table--multiple td{ display: table-cell; width: 50%; } .shipping__table--multiple{ display: block; text-align: inherit; } tr.shipping input:checked+label{ font-weight: normal; } .widget_shopping_cart_content .blockUI.blockOverlay::before, .woocommerce-checkout-review-order .blockUI.blockOverlay::before{ border-top: inherit !important; border-left: inherit !important; border-bottom: inherit !important; border-right: inherit !important; } label, legend{ color: inherit; font-weight: inherit; font-size: inherit; } .payment_methods p{ font-size: inherit; } .payment_methods li+li { padding-top: 0; border-top: unset; } .wcf-embed-checkout-form .woocommerce-privacy-policy-text{ font-size: inherit; } .wcf-embed-checkout-form .woocommerce-privacy-policy-text p{ color: #444; font-family: inherit; font-weight: inherit; margin-top: 1rem; } .form-row .select2-container{ margin-bottom: inherit; } @media only screen and (max-width: 768px) { #billing_address_2_field>label{ opacity: 1; overflow: visible; } }PK\n((assets/css/frontend.cssnuW+A/* Addition ========================================================================== */ @font-face { font-family: 'cartflows-icon'; src: url('../fonts/cartflows-icon.eot?81m15v'); src: url('../fonts/cartflows-icon.eot?81m15v#iefix') format('embedded-opentype'), url('../fonts/cartflows-icon.ttf?81m15v') format('truetype'), url('../fonts/cartflows-icon.woff?81m15v') format('woff'), url('../fonts/cartflows-icon.svg?81m15v#cartflows-icon') format('svg'); font-weight: normal; font-style: normal; } .cartflows-icon { /* use !important to prevent issues with browser extensions that change fonts */ font-family: 'cartflows-icon' !important; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; /* Better Font Rendering =========== */ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .cartflows-icon-close:before { content: "\e602"; font-family: 'cartflows-icon'; } .cartflows-icon-cross:before { content: "\e601"; } .cartflows-icon-check:before { content: "\e600"; } .cartflows-icon-arrow-thin-right:before { content: "\e901"; } /*-------------------------------------------------------------- # Alignments --------------------------------------------------------------*/ .alignleft { display: inline; float: left; margin-right: 1.5em; } .alignright { display: inline; float: right; margin-left: 1.5em; } .aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; } /*-------------------------------------------------------------- # Clearings --------------------------------------------------------------*/ .clear:before, .clear:after { content: ""; display: table; table-layout: fixed; } .clear:after { clear: both; } /*-------------------------------------------------------------- # Content --------------------------------------------------------------*/ /* Common Button */ .wcf-button { display: inline-block; padding: 12px 24px; background: #ccc; text-decoration: none; margin: 5px; } /*-------------------------------------------------------------- # Template CSS ---------------------------------------------------------------*/ body.cartflows-default { background-color: #f5f5f5; } .cartflows-default .cartflows-container { max-width: 1200px; width: 100%; padding: 0 20px; margin: 60px auto; } .cartflows-default .cartflows-primary { background-color: #fff; padding: 70px; overflow: hidden; max-width: 100%; } @media (max-width: 768px) { .cartflows-default .cartflows-container { padding: 0; margin: 0; } .cartflows-default .cartflows-primary { padding: 20px 30px; } } @media (max-width: 544px) { .cartflows-default .cartflows-primary { padding: 20px 15px; } } /*-------------------------------------------------------------- # Preview Mode ---------------------------------------------------------------*/ .wcf-preview-mode { background: #f16334; position: fixed; bottom: 0; left: 0; width: 100%; height: 2.6em; color: #fff; text-align: center; font-size: 14px; line-height: 2.6em; pointer-events: all; z-index: 9999999; } .wcf-preview-mode a{ color: #fff; } @media only screen and (max-width: 768px) { .wcf-preview-mode { font-size: 13px; line-height: 18px; padding: 4px 10px; height: auto; } } /** * ***************** * Cartflows Footer * ***************** */ .wcf-footer-primary .wcf-footer-content p{ margin: 1.5em 0; text-align: center; } /** * **************** * Thank You page * **************** */ .wcf-thankyou-wrap { padding: 0; margin: 0 auto; width: 100%; max-width: 55em; font-size: 13px; } /* Order Details - ThankYou page */ .woocommerce-order ul.order_details::before, .woocommerce-order ul.order_details::after { content: ' '; display: table; } .woocommerce-order ul.order_details::after { clear: both; } .woocommerce-order ul.order_details, .woocommerce-order ul.order_details li { list-style: none; line-height: 1; } .woocommerce-order ul.order_details li { display: inline-block; border-right: 1px dashed #cccccc; padding: 0.5em 1em 0.5em 0; margin: 0.5em 0.5em 0.5em 0; list-style-type: none; } .woocommerce-order ul.order_details li:first-child { padding-left: 0; } .woocommerce-order ul.order_details li:last-child { border-right:0px; padding-right: 0; } .woocommerce-order ul.order_details li strong { display: block; margin-top: 0.7em; } .woocommerce-order ul.order_details, .woocommerce-order .woocommerce-customer-details, .woocommerce-order .woocommerce-order-details, .woocommerce-order .woocommerce-order-downloads, .woocommerce-order .woocommerce-bacs-bank-details { margin: 0 0 2em; -webkit-border-radius: 3px; border-radius: 3px; width: 100%; display: block; } .woocommerce-order .woocommerce-bacs-bank-details ul.bacs_details{ padding: 0px; } /* Section Background & Padding */ .woocommerce-order ul.order_details, .woocommerce-order .woocommerce-customer-details, .woocommerce-order .woocommerce-order-details, .woocommerce-order .woocommerce-order-downloads, .woocommerce-order .woocommerce-bacs-bank-details { background: #f1f1f1; padding: 1.5em 2.5em; } .woocommerce-order h2.woocommerce-column__title, .woocommerce-order h2.woocommerce-order-details__title, .woocommerce-order .woocommerce-thankyou-order-received, .woocommerce-order .woocommerce-order-downloads__title, .woocommerce-order h2.wc-bacs-bank-details-heading { padding: 0.8em 0; margin: 0 0 0.5em; font-size: 1.5em; font-weight: 600; color: #404040; } .woocommerce-order .woocommerce-thankyou-order-received { margin: 0 0 1.5em; padding: 0 0.5em; text-align: center; } /* Order Details Form */ .woocommerce-order-details table.shop_table, .woocommerce-order-downloads table.shop_table { border:none; border-bottom: 0; background-color: inherit; -webkit-border-radius: 0; border-radius: 0; font-family: inherit; font-weight:inherit; font-size: 0.95em; margin: 0 0 0px 0 !important; border-collapse: collapse; text-align: left; } .woocommerce-order-details table.shop_table #shipping_method{ margin: 0; padding: 0; list-style: none; } .woocommerce-order-details table.shop_table th, .woocommerce-order-downloads table.shop_table th{ border: none; font-weight: 600; padding: 9px 0px; line-height: 1.2em; } .woocommerce-order-details table.shop_table tfoot tr:last-child .woocommerce-Price-amount { font-size: 1em; } .woocommerce-order-details table.shop_table td, .woocommerce-order-details table.shop_table th { padding: 0.6em 0; line-height: 1.4em; border: none; } .woocommerce-order-details table.shop_table tbody th, .woocommerce-order-details table.shop_table tfoot td, .woocommerce-order-details table.shop_table tfoot th { font-weight: normal; border: none; } .woocommerce-order-details table.shop_table tbody { border-top: 1px dashed #cccccc; border-bottom: 1px dashed #cccccc; } .woocommerce-order-details table.shop_table th.product-name, .woocommerce-order-details table.shop_table th.product-total{ font-weight: 600; } .woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) th, .woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) td { font-weight: 600; border-top: 1px dashed #cccccc; } .woocommerce-order-details table.shop_table tfoot tr.recurring-totals th { padding-top: 1.8em; font-weight: 600; } .woocommerce-order-details table.shop_table tfoot tr.recurring-totals th, .woocommerce-order-details table.shop_table tfoot tr.recurring-total th, .woocommerce-order-details table.shop_table tfoot tr.recurring-total td { vertical-align: top; } /**/ .woocommerce-order .wcf-col2-set{ -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; } .woocommerce-order .wcf-col2-set .wcf-col-1{ margin-right: 2%; } .woocommerce-order .wcf-col2-set .wcf-col-1, .woocommerce-order .wcf-col2-set .wcf-col-2 { width: 49%; display: inline-block; } .woocommerce-order .woocommerce-customer-details address { border-right-width: 1px; border-bottom-width: 1px; -webkit-border-radius: 0; border-radius: 0; font-style: normal; } .woocommerce-order .woocommerce-customer-details address p{ margin: 0; } @media only screen and (max-width: 768px){ .woocommerce-order .woocommerce-thankyou-order-received { margin: 0 0 1em; } .woocommerce-order h2.woocommerce-column__title, .woocommerce-order h2.woocommerce-order-details__title, .woocommerce-order .woocommerce-thankyou-order-received { padding: 0.5em 0; font-size: 1.5em; } .woocommerce-order ul.order_details, .woocommerce-order .woocommerce-customer-details, .woocommerce-order .woocommerce-order-details { padding: 1.5em 2em; } .woocommerce-order .woocommerce-order-downloads{ overflow-x: auto; } .woocommerce-order-downloads table.shop_table td, .woocommerce-order-downloads table.shop_table th{ padding: 0.5em 0.8em; } .woocommerce-order ul.order_details li{ display: block; width: 100%; border-right: none; padding: 0.5em 1em 1em 0; border-bottom: 1px dashed #cccccc; } .woocommerce-order ul.order_details li:last-child { border: none; } .woocommerce-order .wcf-col2-set{ display: block; } .woocommerce-order .wcf-col2-set .wcf-col-1, .woocommerce-order .wcf-col2-set .wcf-col-2{ width: 100%; display: block; } } PK\yӡZZassets/css/import.cssnuW+A.no-elementor-notice{ border-left: none; background: transparent; border: none; -webkit-box-shadow: none; box-shadow: none; padding-left: 0; } .no-elementor-notice span{ color: #f16334; font-size: 18px; vertical-align: middle; } .site-preview { background: #c5c5c5; display: block; overflow: hidden; position: relative; -webkit-backface-visibility: hidden; } .template.importing .site-preview:after, .template:hover .site-preview:after { opacity: 0.3; } .template.importing .site-preview, .template:hover .site-preview { background: #fff; cursor: pointer; } .template .site-preview:after { content: ""; background: #fff; opacity: 0; top: 0; content: ""; display: block; top: 0; position: absolute; padding-top: 66.66666%; -webkit-transition: opacity 0.2s ease-in-out; transition: opacity 0.2s ease-in-out; left: 0; right: 0; bottom: 0; } .template .notice { padding: .6em; background: rgba(0,0,0,.8); color: #fff; font-weight: 400; border: none; font-size: 13px; text-decoration: none; position: absolute; width: 100%; /* height: 100%; */ vertical-align: middle; bottom: 0%; margin: 0px; -webkit-transform: translateY(0%); -ms-transform: translateY(0%); transform: translateY(0%); right: 0%; left: 0%; z-index: 4; text-align: center; -webkit-border-radius: 3px; border-radius: 0px; -webkit-transition: opacity .1s ease-in-out; transition: opacity .1s ease-in-out; -webkit-font-smoothing: antialiased; } .template .notice a{ color: #f16334; } .template .notice p{ padding: 0px; margin: 0px; } #wcf_create_notice{ display: none; } .preview:focus, .preview:hover { color: #fff; -webkit-box-shadow: none; box-shadow: none; } .preview { text-decoration: none; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; opacity: 0; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); right: 22%; left: 22%; z-index: 4; background: #23282d; background: rgba(0,0,0,.7); color: #fff; font-size: 13px; text-shadow: 0 1px 0 rgba(0,0,0,.6); -webkit-font-smoothing: antialiased; font-weight: 600; padding: 10px 12px; text-align: center; -webkit-border-radius: 3px; border-radius: 3px; -webkit-transition: opacity .1s ease-in-out; transition: opacity .1s ease-in-out; } .template-id-container { font-size: 15px; font-weight: 600; margin: 0; padding: 10px; -webkit-box-shadow: inset 0 1px 0 rgba(0,0,0,0.1); box-shadow: inset 0 1px 0 rgba(0,0,0,0.1); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; background: #fff; background: rgba(255,255,255,0.65); position: relative; } .template-actions { -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; opacity: 0; -webkit-transition: opacity 0.1s ease-in-out; transition: opacity 0.1s ease-in-out; position: absolute; bottom: 0; right: 0; top: 0; padding: 5px 5px 0 5px; background: rgba(244, 244, 244, 0.7); border-left: 1px solid rgba(0,0,0,0.05); } .wcf-step-content .template-actions, .template.importing .template-actions, .template.importing .preview, .template:hover .template-actions, .template:hover .preview { -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; opacity: 1; } .wcf-remote-list .template { /*margin: 15px;*/ position: relative; overflow: hidden; /*box-shadow: 0 0 5px 1px rgba(204, 204, 204, 0.3);*/ } .wcf-remote-list h3 { margin-bottom: 1em; margin-top: 0; font-size: 15px; font-weight: 600; margin: 0; padding: 0; text-align: left; } .wcf-remote-list img { max-width: 100%; vertical-align: middle; } .wcf-remote-list * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } /*** ------- **/ #cartflows-steps-list img { width: 100%; } #cartflows-steps-list .title { font-weight: bold; color: #474747; line-height: 2; background: #f7f7f7; padding: 0.5em 1em; } #cartflows-steps-list .image-wrap { -webkit-background-size: cover; background-size: cover; overflow: hidden; } #cartflows-steps .close { display: inline-block; padding: 2em; cursor: pointer; } /** * Intro */ .template-message-block { text-align: center; margin: 0 auto; padding: 4em 0; } .templator #TB_ajaxContent { width: 100% !important; } .template-message-block .description { font-style: normal; } .template-message-block .spinner { float: none; margin: 0; } .cartflows-steps-popup { position: fixed; left: 0; right: 0; top: 0; bottom: 0; z-index: 99999; background: #fff; overflow-y: scroll; } .cartflows-steps-popup .notice { max-width: 700px; margin: 0 auto; } body.cartflows-popup-is-open { /*overflow: hidden;*/ } .cartflows-load-steps-library .dashicons { height: auto; width: auto; line-height: normal; margin: 0 5px 0 0px; vertical-align: initial; font-size: 100%; } .cartflows-load-steps .dashicons { vertical-align: text-bottom; } /** * Preview */ /** * Full Width */ #TB_window { width: 100% !important; margin: 0em auto !important; text-align: center !important; position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important; } #TB_iframeContent { width: 100% !important; height: 100% !important; } /* For general iPad layouts */ @media only screen and (min-device-width : 320px) and (max-device-width : 1024px) { #TB_iframeContent-wrapper { position: fixed; right: 0; bottom: 50px; left: 0; top: 0; overflow-y: scroll; -webkit-overflow-scrolling: touch; } } #TB_window #TB_ajaxWindowTitle { font-size: 1.2rem; display: inline-block; width: auto; padding: 0; } #TB_window #TB_closeWindowButton { position: relative; } .tb-close-icon:before { vertical-align: middle; } /** * Popup */ #TB_window { text-align: center; } #TB_iframeContent.tablet { width: 768px !important; height: 1024px !important; background: #111; padding: 40px 10px 70px; -webkit-border-radius: 30px; border-radius: 30px; } #TB_iframeContent.tablet.landscape { width: 1024px !important; } #TB_iframeContent.mobile { width: 360px !important; height: 640px !important; background: #111; padding: 40px 10px 70px; -webkit-border-radius: 30px; border-radius: 30px; } #TB_iframeContent.mobile.landscape { width: 360px !important; } #TB_closeAjaxWindow { float: right; } /** * Dark Theme */ #TB_window.thickbox-loading { margin: 0 !important; } div#TB_window { background-color: #fff; } #TB_window #TB_title { color: #0a0c0d; text-align: left; bottom: 0; -webkit-box-shadow: none; box-shadow: none; -webkit-box-pack: justify; -webkit-justify-content: space-between; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -webkit-align-items: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; padding: 1em 1em 1em 1.5em; } @media all and (min-width: 769px) { #TB_window #TB_title { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; } } #TB_window.tablet, #TB_window.mobile { overflow-y: scroll; } .top #TB_iframeContent-wrapper { bottom: 0; top: 80px; } #TB_window.top #TB_title { top: 0; } #TB_window #TB_closeWindowButton:focus .tb-close-icon { -webkit-box-shadow: none; box-shadow: none; color: #666; } @media all and (max-width: 768px) { #TB_closeAjaxWindow { padding-right: 0; } #TB_window .tb-close-icon, #TB_window #TB_closeWindowButton { width: 80px; } } /** * Loading */ .responsive-view .dashicons { color: #dddddd; } .responsive-view .active { color: #111111; } .responsive-view a:focus { outline: none; -webkit-box-shadow: none; box-shadow: none; } #TB_window.tablet #TB_iframeContent, #TB_window.mobile #TB_iframeContent { margin-bottom: 50px; margin-top: 50px; } .responsive-view a { color: #666; cursor: pointer; display: inline-block; padding: 1em; vertical-align: middle; text-decoration: none; } #TB_closeAjaxWindow .tb-close-icon { position: relative; } .site-loading { display: none; position: absolute; left: 50%; top: 50%; text-align: center; color: #555; -webkit-transform: translate(-50%, -40%); -ms-transform: translate(-50%, -40%); transform: translate(-50%, -40%); } .top .site-loading { top: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .site-loading h3 { font-size: 33px; font-weight: 600; margin: 0 0 .8em 0; } .site-loading p { margin: 0; } .cartflows-thickbox-loading .site-loading { display: block; } .cartflows-thickbox-loading #TB_iframeContent, .cartflows-thickbox-loading #TB_iframeContent-wrapper { display: none; } /** * Filters */ .wcf-remote-list:after, .wcf-remote-list:before { content: ""; display: table; } .wcf-remote-list::after { content: ""; display: table; clear: both; } .wcf-template-header .filter-count { line-height: normal; } #wcf-page-builders { display: none; } #wcf-remote-flow-filters > div, #wcf-remote-step-filters > div { display: inline-block; } .wcf-template-header .filter-links { margin: 0; padding: 0; } .wcf-template-header li:focus { outline: none; } .wcf-template-header .filter-links li { margin: 0; display: inline-block; } .wcf-template-header .filter-links li a:hove, .wcf-template-header .filter-links li a:focus { outline: none; -webkit-box-shadow: none; box-shadow: none; } .wcf-template-header .filter-links li .current { color: #000; border-bottom: 2px solid #f16334; font-weight: 600; } .wcf-flow-search-input { border: none; -webkit-box-shadow: none; box-shadow: none; border-bottom: 1px solid #eee; line-height: 1.8; } .wcf-search-form { margin-right: 2em; padding-right: 0; text-align: right; margin-top: 1em; margin-bottom: 1em; position: relative; } .wcf-template-notice { display: none; } #wcf-start-from-scratch { text-align: center; } #wcf-start-from-scratch .inner { background: transparent; -webkit-box-shadow: none; box-shadow: none; width: 94%; margin: 0 auto; float: none; position: absolute; top: 40%; } #wcf-scratch-steps-categories { display: inline-block; } #wcf-scratch-steps-categories select{ -webkit-border-radius: 0; border-radius: 0; height: 29px; border: 1px solid; border-color: #9e9e9e; border-width: 1px; -webkit-box-shadow: none; box-shadow: none; padding: 2px 2px 2px 6px; line-height: 25px; width: 155px; } #wcf-start-from-scratch .description { margin-bottom: 2em; } #wcf-remote-step-importer .wcf-search-form { display: none; } .wcf-search-form .wcf-flow-search-input { border: none; -webkit-box-shadow: none; box-shadow: none; border-bottom: 1px solid #eee; line-height: 1.8; background: transparent; border-bottom: 1px solid #ccc; font-size: 1em; } .wcf-search-form .wcf-flow-search-input:focus { -webkit-box-shadow: none; box-shadow: none; border-color: #ccc; } .cartflows-preview-flow-steps li { display: inline-block; margin: 0px 1em; position: relative; } .cartflows-flow-import-blank.updating-message:before { vertical-align: text-bottom; } #wpwrap .cartflows-step-loading h2, #wpwrap .template-message-block h2 { font-size: 1.5em; margin: 0 0 0.5em 0; padding: 8px 12px; line-height: 1.4; } #wpwrap .template-message-block p, #wpwrap .cartflows-step-loading p { font-size: 1.2em; } #wpwrap .cartflows-step-loading .spinner { vertical-align: initial; } .wcf-flow-type { position: absolute; right: 0; top: 0; padding: 3px 10px; color: #fff; } .wcf-flow-type.pro { background: #f06262; } .wcf-templates-popup-overlay { position: fixed; height: 100%; width: 100%; top: 0; left: 0; background: rgba(0, 0, 0, 0.7); -webkit-transition: opacity 500ms; transition: opacity 500ms; visibility: hidden; opacity: 0; z-index: 9999; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-transition: none; transition: none; } .wcf-templates-popup-overlay.open{ visibility: visible; opacity: 1; z-index: 9999; } .wcf-templates-popup-content { max-width: 1200px; background-color: #fff; position: absolute; -webkit-border-radius: 3px; border-radius: 3px; top: 40%; left: 50%; -webkit-transform: translate(-50%, -35%); -ms-transform: translate(-50%, -35%); transform: translate(-50%, -35%); width: 70%; min-height: 85%; max-height: 85%; height: 85%; overflow: hidden; } .wcf-templates-popup-content .inner{ background: #fff; position: relative; padding:8px 8px 0 8px; display: block; float: left; margin: 15px; text-align: center; -webkit-box-shadow: 0 0 5px 1px rgba(204, 204, 204, 0.3); box-shadow: 0 0 5px 1px rgba(204, 204, 204, 0.3); } .wcf-templates-popup-content .wcf-templates-wrap { height: 100%; } @media only screen and (max-width: 480px) { .wcf-templates-popup-content{ width: 90%; } .wcf-template-header{ display: block !important; padding: 15px 15px 0 15px !important; } .wcf-popup-close-wrap{ position: absolute; top: 10px; right: 5px; } } @media only screen and (min-width: 768px) { .wcf-templates-popup-content .inner{ width: -webkit-calc(25% - 30px); width: calc(25% - 30px); } } html.wcf-popup-open{ overflow: hidden; } .wcf-button-wrap{ margin-top: 0; position: absolute; top: 10px; left: 110px; } .wcf-steps-loading #wcf-remote-step-list { display: none !important; } #wcf-remote-flow-actions { min-height: 52px; max-height: 55px; } #wcf-remote-content { background-color: #f5f5f5; overflow-y: auto; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; height: -webkit-calc( 100% - 55px ); height: calc( 100% - 55px ); min-height: -webkit-calc( 100% - 55px ); min-height: calc( 100% - 55px ); max-height: -webkit-calc( 100% - 55px ); max-height: calc( 100% - 55px ); padding: 20px 20px 20px 20px; clear: both; } #wcf-remote-content #wcf-start-from-scratch h1{ font-size: 23px; font-weight: 400; margin: 0 0 1em 0; padding: 9px 0 4px; line-height: 29px; } .wcf-template-list-wrap .template-name { margin: 0; text-align: left; font-size: 13px; } .wcf-template-list-wrap img{ width: 100%; vertical-align: middle; } .wcf-templates-popup-content .template{ margin: 0px; position: relative; overflow: hidden; /*box-shadow: 0 0 5px 1px rgba(204, 204, 204, 0.3);*/ } .wcf-tab.nav-tabs{ overflow: hidden; margin: 0; } .wcf-template-header { -moz-box-align: center; align-items: center; background: #fff; -webkit-box-shadow: 0 0 8px rgba(0,0,0,.2); box-shadow: 0 0 8px rgba(0,0,0,.2); -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; -moz-box-pack: justify; justify-content: space-between; padding: 0 15px; min-height: 50px; } .wcf-search-form:after { content: "\f179"; display: inline-block; font-family: dashicons; text-decoration: inherit; font-weight: normal; font-style: normal; text-align: center; -webkit-transition: color .1s ease-in 0; transition: color .1s ease-in 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; position: absolute; right: 0.5em; top: .5em; color: #81868a; } .wcf-template-logo-wrap{ font-size: 16px; font-weight: 600; text-align: center; } .wcf-template-logo-wrap .wcf-cartflows-logo-img{ vertical-align: middle; } .wcf-tab.nav-tabs:before{ display: table; content: ""; } .wcf-tab.nav-tabs:after{ clear: both; } .wcf-tab.nav-tabs > li{ display: inline-block; padding: 15px 0px; margin: 0; font-weight: 400; } .wcf-tab.nav-tabs > li.active{ border-bottom: 3px solid #f16334; font-weight: 600; } .wcf-template-header .filter-links li > a { border-color: transparent; margin: 0; } .wcf-template-header .filter-links > li:focus .wcf-template-header .filter-links > li:active, .wcf-template-header .filter-links > li:active, .wcf-template-header .filter-links > li > a:hover, .wcf-template-header .filter-links > li > a:focus, .wcf-tab.nav-tabs > li:focus, .wcf-tab.nav-tabs > li:active, .wcf-tab.nav-tabs > li > a:focus, .wcf-tab.nav-tabs > li > a:focus{ outline: none; -webkit-box-shadow: none; box-shadow: none; } .wcf-template-header .filter-links > li > a:hover, .wcf-template-header .filter-links > li > a:focus, .wcf-template-header .filter-links > li > a, .wcf-tab.nav-tabs > li > a{ padding: 15px; color: #555; text-decoration: none; } .wcf-nav-section-content{ display: none; } .wcf-nav-section-content.active{ display: block; overflow: hidden; } .wcf-popup-close-wrap{ width: 35px; text-align: center; border-left: 1px #eee solid; } .wcf-popup-close-wrap .close-icon{ cursor: pointer; } .wcf-popup-close-wrap .wcf-cartflow-icons{ pointer-events: none; font-size: 20px; height: 20px; width: 20px; line-height: 20px; opacity: 0.7; } .wcf-popup-close-wrap .close-icon:hover .wcf-cartflow-icons{ opacity: 1; } .wcf-templates-popup-content .spinner{ position: absolute; top: 50%; left: 50%; bottom: 0; right: 0; max-width: 100%; max-height: 100%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); z-index: 99999; } /** * ****************** Import popup css * ****************** */ .wcf-templates-popup-content .wcf-template-header .wcf-tab-wrapper{ margin: 0 auto; } /*#wcf-upcoming-page-builders { overflow-y: auto; max-height: 450px; padding: 20px 20px 20px 20px; clear: both; }*/ /*#wcf-upcoming-page-builders h3 { font-size: 2em; }*/ /*#wcf-upcoming-page-builders .inner { position: absolute; top: 40%; left: 50%; transform: translate(-50%,-40%); width: auto; }*/ #wcf-upcoming-page-builders .description { font-size: 1rem; margin: 4em 0 0 0; text-align: center; } /*#wcf-categories { border-left: 1px #ddd dashed; display: inline-block; margin-left: 1em; padding-left: 1em; vertical-align: baseline; }*/ .flow-type-filter-links { display: none; } #wcf-remote-filters { padding: 0 15px; } #wcf-remote-filters a { text-decoration: none; } #wcf-remote-filters a:focus, #wcf-remote-filters .filter-links li:focus { outline: none; -webkit-box-shadow: none; box-shadow: none; } #wcf-remote-filters .filter-links li a { border-bottom: none; } #wcf-remote-filters .filter-links li:first-child a { margin-left: 0; } #wcf-remote-filters .filter-links li:last-child a { margin-right: 0; } #wcf-remote-filters .filter-links li a:focus, #wcf-remote-filters .filter-links li a:hover, #wcf-remote-filters .filter-links li .current { color: #f16334; } .wrap .wcf-page-builder-notice .notice { margin: 5px 15px; } #wcf-api-notice-block { text-align: center; margin-top: 5em; } .wcf-templates-popup-overlay a { -webkit-transition: none; transition: none; } .wcf-notice-wrap .notice { display: inline-block; } .wcf-learn-how i { font-size: 1rem; vertical-align: middle; } .wcf-learn-how a { text-decoration: none; } #wcf-remote-content .wcf-install-plugin::focus { border-color: none; -webkit-box-shadow: none; box-shadow: none; } #wcf-remote-content .wcf-install-plugin.updating-message { background: none; padding: 0; font-size: 1rem; -webkit-box-shadow: none; box-shadow: none; border: none; margin: 0 0 0 3px; } .wcf-page-builder-message { margin: 5em auto 0 auto; width: 700px; } .wcf-page-builder-message p { font-size: 1rem; } .wcf-page-builder-message i { font-size: 1rem; vertical-align: middle; } .wcf-page-builder-message a { text-decoration: none; margin: 1.5em 0 0 0; } .cartflows-ie .postbox { padding: 1em; } .cartflows-ie { padding-top: 2em; padding-right: 2em; } .admin_page_flow_exporter .notice, .admin_page_flow_importer .notice { margin: 1em 0 0 0; } .cartflows-website-unreachable { padding: 1em 2em; } .wcf-notice-wrap{ margin-top: 20px; font-size: 15px; color: #ff0000; } .wcf-activate-wc{ text-decoration: none; } .wcf-activate-wc.button{ border: none; -webkit-box-shadow: none; box-shadow: none; } .wcf-hidden{ display: none; } PK\"Passets/css/frontend-divi.cssnuW+A/* Only Divi compatibility */ .et_pb_module #wcf-thankyou-wrap { padding: 0; margin: 0 auto; width: 100%; max-width: 55em; font-size: 13px; } .et_pb_module #wcf-thankyou-wrap a { color: inherit; padding: 0px; border: none; font-size: inherit; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::before, .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::after { content: ' '; display: table; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::after { clear: both; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li { list-style: none; line-height: 1; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li { display: inline-block; border-right: 1px dashed #cccccc; padding: 0.5em 1em 0.5em 0; margin: 0.5em 0.5em 0.5em 0; list-style-type: none; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li:first-child { padding-left: 0; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li:last-child { border-right:0px; padding-right: 0; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li strong { display: block; margin-top: 0.7em; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-downloads, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-bacs-bank-details { margin: 0 0 2em; -webkit-border-radius: 3px; border-radius: 3px; width: 100%; display: block; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-bacs-bank-details ul.bacs_details{ padding: 0px; } /* Section Background & Padding .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-downloads, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-bacs-bank-details { background: #f1f1f1; padding: 1.5em 2.5em; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order h2.woocommerce-column__title, .et_pb_module #wcf-thankyou-wrap .woocommerce-order h2.woocommerce-order-details__title, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-thankyou-order-received, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-downloads__title, .et_pb_module #wcf-thankyou-wrap .woocommerce-order h2.wc-bacs-bank-details-heading { padding: 0.8em 0; margin: 0 0 0.5em; font-size: 1.5em; font-weight: 600; color: #404040; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-thankyou-order-received { margin: 0 0 1.5em; padding: 0 0.5em; text-align: center; } /* Order Details Form */ .woocommerce-order-details table.shop_table, .woocommerce-order-downloads table.shop_table { border:none; border-bottom: 0; background-color: inherit; -webkit-border-radius: 0; border-radius: 0; font-family: inherit; font-weight:inherit; font-size: 0.95em; margin: 0 0 0px 0 !important; border-collapse: collapse; text-align: left; } .woocommerce-order-details table.shop_table #shipping_method{ margin: 0; padding: 0; list-style: none; } .woocommerce-order-details table.shop_table th, .woocommerce-order-downloads table.shop_table th{ border: none; font-weight: 600; padding: 9px 0px; line-height: 1.2em; } .woocommerce-order-details table.shop_table tfoot tr:last-child .woocommerce-Price-amount { font-size: 1em; } .woocommerce-order-details table.shop_table td, .woocommerce-order-details table.shop_table th { padding: 0.6em 0; line-height: 1.4em; border: none; } .woocommerce-order-details table.shop_table tbody th, .woocommerce-order-details table.shop_table tfoot td, .woocommerce-order-details table.shop_table tfoot th { font-weight: normal; border: none; } .woocommerce-order-details table.shop_table tbody { border-top: 1px dashed #cccccc; border-bottom: 1px dashed #cccccc; } .woocommerce-order-details table.shop_table th.product-name, .woocommerce-order-details table.shop_table th.product-total{ font-weight: 600; } .woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) th, .woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) td { font-weight: 600; border-top: 1px dashed #cccccc; } .woocommerce-order-details table.shop_table tfoot tr.recurring-totals th { padding-top: 1.8em; font-weight: 600; } .woocommerce-order-details table.shop_table tfoot tr.recurring-totals th, .woocommerce-order-details table.shop_table tfoot tr.recurring-total th, .woocommerce-order-details table.shop_table tfoot tr.recurring-total td { vertical-align: top; } /**/ .et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set{ -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-1{ margin-right: 2%; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-1, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-2 { width: 49%; display: inline-block; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details address { border-right-width: 1px; border-bottom-width: 1px; -webkit-border-radius: 0; border-radius: 0; font-style: normal; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details address p{ margin: 0; }PK\W)@;4;4&assets/css/cartflows-normalize-rtl.cssnuW+A/** * 1. Correct the line height in all browsers. * 2. Prevent adjustments of font size after orientation changes in iOS. */ html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ } /** * Remove the margin in all browsers. */ body { margin: 0; } /** * Correct the font size and margin on `h1` elements within `section` and * `article` contexts in Chrome, Firefox, and Safari. */ h1 { font-size: 2em; margin: 0.67em 0; } /* Grouping content ========================================================================== */ /** * 1. Add the correct box sizing in Firefox. * 2. Show the overflow in Edge and IE. */ hr { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /* Text-level semantics ========================================================================== */ /** * Remove the gray background on active links in IE 10. */ a { background-color: transparent; } /** * 1. Remove the bottom border in Chrome 57- * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */ abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ -webkit-text-decoration: underline dotted; -moz-text-decoration: underline dotted; text-decoration: underline dotted; /* 2 */ } /** * Add the correct font weight in Chrome, Edge, and Safari. */ b, strong { font-weight: bold; } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /** * Add the correct font size in all browsers. */ small { font-size: 80%; } /** * Prevent `sub` and `sup` elements from affecting the line height in * all browsers. */ sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } /* Embedded content ========================================================================== */ /** * Remove the border on images inside links in IE 10. */ img { border-style: none; } /* Forms ========================================================================== */ /** * 1. Change the font styles in all browsers. * 2. Remove the margin in Firefox and Safari. */ button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ } /** * Show the overflow in IE. * 1. Show the overflow in Edge. */ button, input { /* 1 */ overflow: visible; } /** * Remove the inheritance of text transform in Edge, Firefox, and IE. * 1. Remove the inheritance of text transform in Firefox. */ button, select { /* 1 */ text-transform: none; } /** * Correct the inability to style clickable types in iOS and Safari. */ button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; } /** * Remove the inner border and padding in Firefox. */ button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; } /** * Restore the focus styles unset by the previous rule. */ button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; } /** * Correct the padding in Firefox. */ fieldset { padding: 0.35em 0.75em 0.625em; } /** * 1. Correct the text wrapping in Edge and IE. * 2. Correct the color inheritance from `fieldset` elements in IE. * 3. Remove the padding so developers are not caught out when they zero out * `fieldset` elements in all browsers. */ legend { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ } /** * Add the correct vertical alignment in Chrome, Firefox, and Opera. */ progress { vertical-align: baseline; } /** * Remove the default vertical scrollbar in IE 10+. */ textarea { overflow: auto; } /** * 1. Add the correct box sizing in IE 10. * 2. Remove the padding in IE 10. */ [type="checkbox"], [type="radio"] { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ } /** * Correct the cursor style of increment and decrement buttons in Chrome. */ [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } /** * 1. Correct the odd appearance in Chrome and Safari. * 2. Correct the outline style in Safari. */ [type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ } /** * Remove the inner padding in Chrome and Safari on macOS. */ [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /** * 1. Correct the inability to style clickable types in iOS and Safari. * 2. Change font properties to `inherit` in Safari. */ ::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ } /* Interactive ========================================================================== */ /* * Add the correct display in Edge, IE 10+, and Firefox. */ details { display: block; } /* * Add the correct display in all browsers. */ summary { display: list-item; } /* Misc ========================================================================== */ /** * Add the correct display in IE 10+. */ template { display: none; } /** * Add the correct display in IE 10. */ [hidden] { display: none; } /*-------------------------------------------------------------- # Typography --------------------------------------------------------------*/ body, button, input, select, optgroup, textarea { color: #404040; font-family: sans-serif; font-size: 15px; /*font-size: 1rem;*/ line-height: 1.5; } h1, h2, h3, h4, h5, h6 { clear: both; } p { margin-bottom: 1.5em; } dfn, cite, em, i { font-style: italic; } blockquote { margin: 0 1.5em; } address { margin: 0 0 1.5em; } pre { background: #eee; font-family: "Courier 10 Pitch", Courier, monospace; font-size: 15px; font-size: 0.9375rem; line-height: 1.6; margin-bottom: 1.6em; max-width: 100%; overflow: auto; padding: 1.6em; } code, kbd, tt, var { font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; font-size: 15px; font-size: 0.9375rem; } abbr, acronym { border-bottom: 1px dotted #666; cursor: help; } mark, ins { background: #fff9c0; text-decoration: none; } big { font-size: 125%; } /*-------------------------------------------------------------- # Elements --------------------------------------------------------------*/ html { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } *, *:before, *:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */ -webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit; } body { background: #fff; /* Fallback for when there is no custom background color defined. */ } hr { background-color: #ccc; border: 0; height: 1px; margin-bottom: 1.5em; } ul, ol { margin: 0 3em 1.5em 0; } ul { list-style: disc; } ol { list-style: decimal; } li > ul, li > ol { margin-bottom: 0; margin-right: 1.5em; } dt { font-weight: bold; } dd { margin: 0 1.5em 1.5em; } img { height: auto; /* Make sure images are scaled correctly. */ max-width: 100%; /* Adhere to container width. */ } figure { margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */ } table { margin: 0 0 1.5em; width: 100%; } /*-------------------------------------------------------------- # Forms --------------------------------------------------------------*/ button, input[type="button"], input[type="reset"], input[type="submit"] { border: 1px solid; border-color: #ccc #ccc #bbb; -webkit-border-radius: 3px; border-radius: 3px; background: #e6e6e6; color: rgba(0, 0, 0, 0.8); font-size: 12px; font-size: 0.75rem; line-height: 1; padding: .6em 1em .4em; } button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { border-color: #ccc #bbb #aaa; } button:active, button:focus, input[type="button"]:active, input[type="button"]:focus, input[type="reset"]:active, input[type="reset"]:focus, input[type="submit"]:active, input[type="submit"]:focus { border-color: #aaa #bbb #bbb; } input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea { color: #666; border: 1px solid #ccc; -webkit-border-radius: 3px; border-radius: 3px; padding: 3px; } input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="range"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="time"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="color"]:focus, textarea:focus { color: #111; } select { border: 1px solid #ccc; } textarea { width: 100%; } /*-------------------------------------------------------------- # Navigation --------------------------------------------------------------*/ /*-------------------------------------------------------------- ## Links --------------------------------------------------------------*/ a { color: royalblue; } /*a:visited { color: purple; }*/ /*a:hover, a:focus, a:active { color: midnightblue; } a:focus { outline: thin dotted; }*/ a:hover, a:active { outline: 0; } /*-------------------------------------------------------------- # Accessibility --------------------------------------------------------------*/ /* Text meant only for screen readers. */ .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */ } .screen-reader-text:focus { background-color: #f1f1f1; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); clip: auto !important; -webkit-clip-path: none; clip-path: none; color: #21759b; display: block; font-size: 14px; font-size: 0.875rem; font-weight: bold; height: auto; right: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; /* Above WP toolbar. */ } /* Do not show the outline on the skip link target. */ #content[tabindex="-1"]:focus { outline: 0; } /*-------------------------------------------------------------- # Widgets --------------------------------------------------------------*/ .widget { margin: 0 0 1.5em; /* Make sure select elements fit in widgets. */ } .widget select { max-width: 100%; } /*-------------------------------------------------------------- # Media --------------------------------------------------------------*/ /* Make sure embeds and iframes fit their containers. */ embed, iframe, object { max-width: 100%; }PK\5ZZassets/css/import-rtl.cssnuW+A.no-elementor-notice{ border-right: none; background: transparent; border: none; -webkit-box-shadow: none; box-shadow: none; padding-right: 0; } .no-elementor-notice span{ color: #f16334; font-size: 18px; vertical-align: middle; } .site-preview { background: #c5c5c5; display: block; overflow: hidden; position: relative; -webkit-backface-visibility: hidden; } .template.importing .site-preview:after, .template:hover .site-preview:after { opacity: 0.3; } .template.importing .site-preview, .template:hover .site-preview { background: #fff; cursor: pointer; } .template .site-preview:after { content: ""; background: #fff; opacity: 0; top: 0; content: ""; display: block; top: 0; position: absolute; padding-top: 66.66666%; -webkit-transition: opacity 0.2s ease-in-out; transition: opacity 0.2s ease-in-out; right: 0; left: 0; bottom: 0; } .template .notice { padding: .6em; background: rgba(0,0,0,.8); color: #fff; font-weight: 400; border: none; font-size: 13px; text-decoration: none; position: absolute; width: 100%; /* height: 100%; */ vertical-align: middle; bottom: 0%; margin: 0px; -webkit-transform: translateY(0%); -ms-transform: translateY(0%); transform: translateY(0%); left: 0%; right: 0%; z-index: 4; text-align: center; -webkit-border-radius: 3px; border-radius: 0px; -webkit-transition: opacity .1s ease-in-out; transition: opacity .1s ease-in-out; -webkit-font-smoothing: antialiased; } .template .notice a{ color: #f16334; } .template .notice p{ padding: 0px; margin: 0px; } #wcf_create_notice{ display: none; } .preview:focus, .preview:hover { color: #fff; -webkit-box-shadow: none; box-shadow: none; } .preview { text-decoration: none; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; opacity: 0; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); left: 22%; right: 22%; z-index: 4; background: #23282d; background: rgba(0,0,0,.7); color: #fff; font-size: 13px; text-shadow: 0 1px 0 rgba(0,0,0,.6); -webkit-font-smoothing: antialiased; font-weight: 600; padding: 10px 12px; text-align: center; -webkit-border-radius: 3px; border-radius: 3px; -webkit-transition: opacity .1s ease-in-out; transition: opacity .1s ease-in-out; } .template-id-container { font-size: 15px; font-weight: 600; margin: 0; padding: 10px; -webkit-box-shadow: inset 0 1px 0 rgba(0,0,0,0.1); box-shadow: inset 0 1px 0 rgba(0,0,0,0.1); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; background: #fff; background: rgba(255,255,255,0.65); position: relative; } .template-actions { -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; opacity: 0; -webkit-transition: opacity 0.1s ease-in-out; transition: opacity 0.1s ease-in-out; position: absolute; bottom: 0; left: 0; top: 0; padding: 5px 5px 0 5px; background: rgba(244, 244, 244, 0.7); border-right: 1px solid rgba(0,0,0,0.05); } .wcf-step-content .template-actions, .template.importing .template-actions, .template.importing .preview, .template:hover .template-actions, .template:hover .preview { -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; opacity: 1; } .wcf-remote-list .template { /*margin: 15px;*/ position: relative; overflow: hidden; /*box-shadow: 0 0 5px 1px rgba(204, 204, 204, 0.3);*/ } .wcf-remote-list h3 { margin-bottom: 1em; margin-top: 0; font-size: 15px; font-weight: 600; margin: 0; padding: 0; text-align: right; } .wcf-remote-list img { max-width: 100%; vertical-align: middle; } .wcf-remote-list * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } /*** ------- **/ #cartflows-steps-list img { width: 100%; } #cartflows-steps-list .title { font-weight: bold; color: #474747; line-height: 2; background: #f7f7f7; padding: 0.5em 1em; } #cartflows-steps-list .image-wrap { -webkit-background-size: cover; background-size: cover; overflow: hidden; } #cartflows-steps .close { display: inline-block; padding: 2em; cursor: pointer; } /** * Intro */ .template-message-block { text-align: center; margin: 0 auto; padding: 4em 0; } .templator #TB_ajaxContent { width: 100% !important; } .template-message-block .description { font-style: normal; } .template-message-block .spinner { float: none; margin: 0; } .cartflows-steps-popup { position: fixed; right: 0; left: 0; top: 0; bottom: 0; z-index: 99999; background: #fff; overflow-y: scroll; } .cartflows-steps-popup .notice { max-width: 700px; margin: 0 auto; } body.cartflows-popup-is-open { /*overflow: hidden;*/ } .cartflows-load-steps-library .dashicons { height: auto; width: auto; line-height: normal; margin: 0 0px 0 5px; vertical-align: initial; font-size: 100%; } .cartflows-load-steps .dashicons { vertical-align: text-bottom; } /** * Preview */ /** * Full Width */ #TB_window { width: 100% !important; margin: 0em auto !important; text-align: center !important; position: fixed !important; top: 0 !important; right: 0 !important; left: 0 !important; bottom: 0 !important; } #TB_iframeContent { width: 100% !important; height: 100% !important; } /* For general iPad layouts */ @media only screen and (min-device-width : 320px) and (max-device-width : 1024px) { #TB_iframeContent-wrapper { position: fixed; left: 0; bottom: 50px; right: 0; top: 0; overflow-y: scroll; -webkit-overflow-scrolling: touch; } } #TB_window #TB_ajaxWindowTitle { font-size: 1.2rem; display: inline-block; width: auto; padding: 0; } #TB_window #TB_closeWindowButton { position: relative; } .tb-close-icon:before { vertical-align: middle; } /** * Popup */ #TB_window { text-align: center; } #TB_iframeContent.tablet { width: 768px !important; height: 1024px !important; background: #111; padding: 40px 10px 70px; -webkit-border-radius: 30px; border-radius: 30px; } #TB_iframeContent.tablet.landscape { width: 1024px !important; } #TB_iframeContent.mobile { width: 360px !important; height: 640px !important; background: #111; padding: 40px 10px 70px; -webkit-border-radius: 30px; border-radius: 30px; } #TB_iframeContent.mobile.landscape { width: 360px !important; } #TB_closeAjaxWindow { float: left; } /** * Dark Theme */ #TB_window.thickbox-loading { margin: 0 !important; } div#TB_window { background-color: #fff; } #TB_window #TB_title { color: #0a0c0d; text-align: right; bottom: 0; -webkit-box-shadow: none; box-shadow: none; -webkit-box-pack: justify; -webkit-justify-content: space-between; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -webkit-align-items: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; padding: 1em 1.5em 1em 1em; } @media all and (min-width: 769px) { #TB_window #TB_title { -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; } } #TB_window.tablet, #TB_window.mobile { overflow-y: scroll; } .top #TB_iframeContent-wrapper { bottom: 0; top: 80px; } #TB_window.top #TB_title { top: 0; } #TB_window #TB_closeWindowButton:focus .tb-close-icon { -webkit-box-shadow: none; box-shadow: none; color: #666; } @media all and (max-width: 768px) { #TB_closeAjaxWindow { padding-left: 0; } #TB_window .tb-close-icon, #TB_window #TB_closeWindowButton { width: 80px; } } /** * Loading */ .responsive-view .dashicons { color: #dddddd; } .responsive-view .active { color: #111111; } .responsive-view a:focus { outline: none; -webkit-box-shadow: none; box-shadow: none; } #TB_window.tablet #TB_iframeContent, #TB_window.mobile #TB_iframeContent { margin-bottom: 50px; margin-top: 50px; } .responsive-view a { color: #666; cursor: pointer; display: inline-block; padding: 1em; vertical-align: middle; text-decoration: none; } #TB_closeAjaxWindow .tb-close-icon { position: relative; } .site-loading { display: none; position: absolute; right: 50%; top: 50%; text-align: center; color: #555; -webkit-transform: translate(50%, -40%); -ms-transform: translate(50%, -40%); transform: translate(50%, -40%); } .top .site-loading { top: 50%; -webkit-transform: translate(50%, -50%); -ms-transform: translate(50%, -50%); transform: translate(50%, -50%); } .site-loading h3 { font-size: 33px; font-weight: 600; margin: 0 0 .8em 0; } .site-loading p { margin: 0; } .cartflows-thickbox-loading .site-loading { display: block; } .cartflows-thickbox-loading #TB_iframeContent, .cartflows-thickbox-loading #TB_iframeContent-wrapper { display: none; } /** * Filters */ .wcf-remote-list:after, .wcf-remote-list:before { content: ""; display: table; } .wcf-remote-list::after { content: ""; display: table; clear: both; } .wcf-template-header .filter-count { line-height: normal; } #wcf-page-builders { display: none; } #wcf-remote-flow-filters > div, #wcf-remote-step-filters > div { display: inline-block; } .wcf-template-header .filter-links { margin: 0; padding: 0; } .wcf-template-header li:focus { outline: none; } .wcf-template-header .filter-links li { margin: 0; display: inline-block; } .wcf-template-header .filter-links li a:hove, .wcf-template-header .filter-links li a:focus { outline: none; -webkit-box-shadow: none; box-shadow: none; } .wcf-template-header .filter-links li .current { color: #000; border-bottom: 2px solid #f16334; font-weight: 600; } .wcf-flow-search-input { border: none; -webkit-box-shadow: none; box-shadow: none; border-bottom: 1px solid #eee; line-height: 1.8; } .wcf-search-form { margin-left: 2em; padding-left: 0; text-align: left; margin-top: 1em; margin-bottom: 1em; position: relative; } .wcf-template-notice { display: none; } #wcf-start-from-scratch { text-align: center; } #wcf-start-from-scratch .inner { background: transparent; -webkit-box-shadow: none; box-shadow: none; width: 94%; margin: 0 auto; float: none; position: absolute; top: 40%; } #wcf-scratch-steps-categories { display: inline-block; } #wcf-scratch-steps-categories select{ -webkit-border-radius: 0; border-radius: 0; height: 29px; border: 1px solid; border-color: #9e9e9e; border-width: 1px; -webkit-box-shadow: none; box-shadow: none; padding: 2px 6px 2px 2px; line-height: 25px; width: 155px; } #wcf-start-from-scratch .description { margin-bottom: 2em; } #wcf-remote-step-importer .wcf-search-form { display: none; } .wcf-search-form .wcf-flow-search-input { border: none; -webkit-box-shadow: none; box-shadow: none; border-bottom: 1px solid #eee; line-height: 1.8; background: transparent; border-bottom: 1px solid #ccc; font-size: 1em; } .wcf-search-form .wcf-flow-search-input:focus { -webkit-box-shadow: none; box-shadow: none; border-color: #ccc; } .cartflows-preview-flow-steps li { display: inline-block; margin: 0px 1em; position: relative; } .cartflows-flow-import-blank.updating-message:before { vertical-align: text-bottom; } #wpwrap .cartflows-step-loading h2, #wpwrap .template-message-block h2 { font-size: 1.5em; margin: 0 0 0.5em 0; padding: 8px 12px; line-height: 1.4; } #wpwrap .template-message-block p, #wpwrap .cartflows-step-loading p { font-size: 1.2em; } #wpwrap .cartflows-step-loading .spinner { vertical-align: initial; } .wcf-flow-type { position: absolute; left: 0; top: 0; padding: 3px 10px; color: #fff; } .wcf-flow-type.pro { background: #f06262; } .wcf-templates-popup-overlay { position: fixed; height: 100%; width: 100%; top: 0; right: 0; background: rgba(0, 0, 0, 0.7); -webkit-transition: opacity 500ms; transition: opacity 500ms; visibility: hidden; opacity: 0; z-index: 9999; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-transition: none; transition: none; } .wcf-templates-popup-overlay.open{ visibility: visible; opacity: 1; z-index: 9999; } .wcf-templates-popup-content { max-width: 1200px; background-color: #fff; position: absolute; -webkit-border-radius: 3px; border-radius: 3px; top: 40%; right: 50%; -webkit-transform: translate(50%, -35%); -ms-transform: translate(50%, -35%); transform: translate(50%, -35%); width: 70%; min-height: 85%; max-height: 85%; height: 85%; overflow: hidden; } .wcf-templates-popup-content .inner{ background: #fff; position: relative; padding:8px 8px 0 8px; display: block; float: right; margin: 15px; text-align: center; -webkit-box-shadow: 0 0 5px 1px rgba(204, 204, 204, 0.3); box-shadow: 0 0 5px 1px rgba(204, 204, 204, 0.3); } .wcf-templates-popup-content .wcf-templates-wrap { height: 100%; } @media only screen and (max-width: 480px) { .wcf-templates-popup-content{ width: 90%; } .wcf-template-header{ display: block !important; padding: 15px 15px 0 15px !important; } .wcf-popup-close-wrap{ position: absolute; top: 10px; left: 5px; } } @media only screen and (min-width: 768px) { .wcf-templates-popup-content .inner{ width: -webkit-calc(25% - 30px); width: calc(25% - 30px); } } html.wcf-popup-open{ overflow: hidden; } .wcf-button-wrap{ margin-top: 0; position: absolute; top: 10px; right: 110px; } .wcf-steps-loading #wcf-remote-step-list { display: none !important; } #wcf-remote-flow-actions { min-height: 52px; max-height: 55px; } #wcf-remote-content { background-color: #f5f5f5; overflow-y: auto; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; height: -webkit-calc( 100% - 55px ); height: calc( 100% - 55px ); min-height: -webkit-calc( 100% - 55px ); min-height: calc( 100% - 55px ); max-height: -webkit-calc( 100% - 55px ); max-height: calc( 100% - 55px ); padding: 20px 20px 20px 20px; clear: both; } #wcf-remote-content #wcf-start-from-scratch h1{ font-size: 23px; font-weight: 400; margin: 0 0 1em 0; padding: 9px 0 4px; line-height: 29px; } .wcf-template-list-wrap .template-name { margin: 0; text-align: right; font-size: 13px; } .wcf-template-list-wrap img{ width: 100%; vertical-align: middle; } .wcf-templates-popup-content .template{ margin: 0px; position: relative; overflow: hidden; /*box-shadow: 0 0 5px 1px rgba(204, 204, 204, 0.3);*/ } .wcf-tab.nav-tabs{ overflow: hidden; margin: 0; } .wcf-template-header { -moz-box-align: center; align-items: center; background: #fff; -webkit-box-shadow: 0 0 8px rgba(0,0,0,.2); box-shadow: 0 0 8px rgba(0,0,0,.2); -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; -moz-box-pack: justify; justify-content: space-between; padding: 0 15px; min-height: 50px; } .wcf-search-form:after { content: "\f179"; display: inline-block; font-family: dashicons; text-decoration: inherit; font-weight: normal; font-style: normal; text-align: center; -webkit-transition: color .1s ease-in 0; transition: color .1s ease-in 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; position: absolute; left: 0.5em; top: .5em; color: #81868a; } .wcf-template-logo-wrap{ font-size: 16px; font-weight: 600; text-align: center; } .wcf-template-logo-wrap .wcf-cartflows-logo-img{ vertical-align: middle; } .wcf-tab.nav-tabs:before{ display: table; content: ""; } .wcf-tab.nav-tabs:after{ clear: both; } .wcf-tab.nav-tabs > li{ display: inline-block; padding: 15px 0px; margin: 0; font-weight: 400; } .wcf-tab.nav-tabs > li.active{ border-bottom: 3px solid #f16334; font-weight: 600; } .wcf-template-header .filter-links li > a { border-color: transparent; margin: 0; } .wcf-template-header .filter-links > li:focus .wcf-template-header .filter-links > li:active, .wcf-template-header .filter-links > li:active, .wcf-template-header .filter-links > li > a:hover, .wcf-template-header .filter-links > li > a:focus, .wcf-tab.nav-tabs > li:focus, .wcf-tab.nav-tabs > li:active, .wcf-tab.nav-tabs > li > a:focus, .wcf-tab.nav-tabs > li > a:focus{ outline: none; -webkit-box-shadow: none; box-shadow: none; } .wcf-template-header .filter-links > li > a:hover, .wcf-template-header .filter-links > li > a:focus, .wcf-template-header .filter-links > li > a, .wcf-tab.nav-tabs > li > a{ padding: 15px; color: #555; text-decoration: none; } .wcf-nav-section-content{ display: none; } .wcf-nav-section-content.active{ display: block; overflow: hidden; } .wcf-popup-close-wrap{ width: 35px; text-align: center; border-right: 1px #eee solid; } .wcf-popup-close-wrap .close-icon{ cursor: pointer; } .wcf-popup-close-wrap .wcf-cartflow-icons{ pointer-events: none; font-size: 20px; height: 20px; width: 20px; line-height: 20px; opacity: 0.7; } .wcf-popup-close-wrap .close-icon:hover .wcf-cartflow-icons{ opacity: 1; } .wcf-templates-popup-content .spinner{ position: absolute; top: 50%; right: 50%; bottom: 0; left: 0; max-width: 100%; max-height: 100%; -webkit-transform: translate(50%, -50%); -ms-transform: translate(50%, -50%); transform: translate(50%, -50%); z-index: 99999; } /** * ****************** Import popup css * ****************** */ .wcf-templates-popup-content .wcf-template-header .wcf-tab-wrapper{ margin: 0 auto; } /*#wcf-upcoming-page-builders { overflow-y: auto; max-height: 450px; padding: 20px 20px 20px 20px; clear: both; }*/ /*#wcf-upcoming-page-builders h3 { font-size: 2em; }*/ /*#wcf-upcoming-page-builders .inner { position: absolute; top: 40%; left: 50%; transform: translate(-50%,-40%); width: auto; }*/ #wcf-upcoming-page-builders .description { font-size: 1rem; margin: 4em 0 0 0; text-align: center; } /*#wcf-categories { border-left: 1px #ddd dashed; display: inline-block; margin-left: 1em; padding-left: 1em; vertical-align: baseline; }*/ .flow-type-filter-links { display: none; } #wcf-remote-filters { padding: 0 15px; } #wcf-remote-filters a { text-decoration: none; } #wcf-remote-filters a:focus, #wcf-remote-filters .filter-links li:focus { outline: none; -webkit-box-shadow: none; box-shadow: none; } #wcf-remote-filters .filter-links li a { border-bottom: none; } #wcf-remote-filters .filter-links li:first-child a { margin-right: 0; } #wcf-remote-filters .filter-links li:last-child a { margin-left: 0; } #wcf-remote-filters .filter-links li a:focus, #wcf-remote-filters .filter-links li a:hover, #wcf-remote-filters .filter-links li .current { color: #f16334; } .wrap .wcf-page-builder-notice .notice { margin: 5px 15px; } #wcf-api-notice-block { text-align: center; margin-top: 5em; } .wcf-templates-popup-overlay a { -webkit-transition: none; transition: none; } .wcf-notice-wrap .notice { display: inline-block; } .wcf-learn-how i { font-size: 1rem; vertical-align: middle; } .wcf-learn-how a { text-decoration: none; } #wcf-remote-content .wcf-install-plugin::focus { border-color: none; -webkit-box-shadow: none; box-shadow: none; } #wcf-remote-content .wcf-install-plugin.updating-message { background: none; padding: 0; font-size: 1rem; -webkit-box-shadow: none; box-shadow: none; border: none; margin: 0 3px 0 0; } .wcf-page-builder-message { margin: 5em auto 0 auto; width: 700px; } .wcf-page-builder-message p { font-size: 1rem; } .wcf-page-builder-message i { font-size: 1rem; vertical-align: middle; } .wcf-page-builder-message a { text-decoration: none; margin: 1.5em 0 0 0; } .cartflows-ie .postbox { padding: 1em; } .cartflows-ie { padding-top: 2em; padding-left: 2em; } .admin_page_flow_exporter .notice, .admin_page_flow_importer .notice { margin: 1em 0 0 0; } .cartflows-website-unreachable { padding: 1em 2em; } .wcf-notice-wrap{ margin-top: 20px; font-size: 15px; color: #ff0000; } .wcf-activate-wc{ text-decoration: none; } .wcf-activate-wc.button{ border: none; -webkit-box-shadow: none; box-shadow: none; } .wcf-hidden{ display: none; } PK\fq*assets/css/checkout-template-the-seven.cssnuW+A/** * ************************* * This css is loaded when when the The7 theme is enabled. * Just to correct layout of the page. * ************************* */ /* Basic */ body, button, input, select, optgroup, textarea, body.page, .wf-container > *{ font-family: normal 1rem / 2 "sans-serif", Helvetica, Arial, Verdana, sans-serif ; font-size: inherit; } .wcf-embed-checkout-form-one-column #customer_details{ width: 100%; } .wcf-embed-checkout-form-two-column #customer_details{ width: 55%; } input[type="text"], input[type="search"], input[type="tel"], input[type="url"], input[type="email"], input[type="number"], input[type="date"], input[type="range"], input[type="password"], select, .wpcf7-number{ height: auto; } #ship-to-different-address{ font: inherit; } #ship-to-different-address label, .create-account label.checkbox span{ font-size: inherit; line-height: inherit; } .woocommerce-checkout-review-order .product-name, .woocommerce-checkout-review-order .product-name a, .order_details .product-name, .order_details .product-name a{ font: inherit; font-size: inherit; color: inherit; } .woocommerce-checkout-review-order .product-quantity, .woocommerce-checkout-review-order .product-total, .woocommerce-checkout-review-order .cart-subtotal th, .woocommerce-checkout-review-order .order-total th, .woocommerce-checkout-review-order .shipping th, .woocommerce-checkout-review-order .about_paypal, .woocommerce-checkout-review-order .product-total .woocommerce-Price-amount, .woocommerce-checkout-review-order tfoot th, .order_details .product-quantity, .order_details .product-total, .order_details .cart-subtotal th, .order_details .order-total th, .order_details .shipping th, .order_details .about_paypal, .order_details .product-total .woocommerce-Price-amount, .order_details tfoot th{ color: inherit; } #shipping_method label, .payment_methods label{ color: inherit; font-size: inherit; line-height: inherit; } .woocommerce-terms-and-conditions-text, .woocommerce-terms-and-conditions-checkbox-text, .woocommerce-privacy-policy-text{ font-size: inherit; line-height: inherit; } div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-message .woocommerce-message-text, div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-message .woocommerce-info-text, div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-message .woocommerce-error-text, .woocommerce-error .woocommerce-message-text, .woocommerce-error .woocommerce-info-text, .woocommerce-error .woocommerce-error-text, div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-info .woocommerce-message-text, div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-info .woocommerce-info-text, div:not(.wc-coupon-wrap):not(.wc-login-wrap):not(.woocommerce-MyAccount-content) > .woocommerce-info .woocommerce-error-text{ font: inherit; } .checkout .woocommerce-NoticeGroup .woocommerce-error .woocommerce-error-text{ margin: 0px; padding-left: 0px; } table.shop_table thead tr th, table.shop_table thead tr td, table.shop_table tbody tr th, table.shop_table tbody tr td{ border: none; font-weight: normal; width: 50%; } @media screen and (max-width: 990px){ #customer_details{ width: 100%; } .mt20{ margin-top: 10px!important; } } @media only screen and (max-width: 768px){ #customer_details{ width: 100%; } .mt20{ margin-top: 10px!important; } } @media screen and (max-width: 600px){ #customer_details{ width: 100%; } table.shop_table tbody tr{ padding: 0px; } .shop_table tr { border-top: inherit; -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-flow: inherit; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: inherit; flex-flow: inherit; } .shop_table tr.cart_item td.product-name{ -webkit-box-align: baseline; -webkit-align-items: baseline; -moz-box-align: baseline; -ms-flex-align: baseline; align-items: baseline; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-flow: inherit; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: inherit; flex-flow: inherit; text-align: left; } .shop_table thead{ display: block; } }PK\@"assets/css/optin-template-divi.cssnuW+A/* * Optin Page CSS for DIVI */ .cartflows-container .et_pb_module .wcf-optin-form, .cartflows-container .et_pb_module .wcf-optin-form * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .et_pb_module #wcf-optin-form { background: inherit; width: 100%; margin: 0 auto; } .et_pb_module #wcf-optin-form .woocommerce-checkout { display: inline-block; text-align: inherit; width: 100%; } .et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set { display: block; width: 100%; float: none; margin: 10px 0 0 0; padding: 0px; } .et_pb_module #wcf-optin-form .woocommerce .col2-set .col-1, .et_pb_module #wcf-optin-form .woocommerce .col2-set .col-2, .et_pb_module #wcf-optin-form .woocommerce-checkout .shop_table, .et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-qty-options, .et_pb_module #wcf-optin-form .woocommerce-checkout #order_review_heading, .et_pb_module #wcf-optin-form .woocommerce-checkout #your_products_heading, .et_pb_module #wcf-optin-form .woocommerce-checkout #payment, .et_pb_module #wcf-optin-form .woocommerce form.checkout_coupon, .et_pb_module #wcf-optin-form .woocommerce .wcf-order-wrap { width: 100%; } .et_pb_module #wcf-optin-form .woocommerce .col2-set .col-1, .et_pb_module #wcf-optin-form .woocommerce .col2-set .col-2, .et_pb_module #wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1, .et_pb_module #wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2 { float: none; width: 100%; max-width: 100%; padding: 0px; -webkit-border-radius: 0px; border-radius: 0px; border: none; border-color: none; margin-bottom: 0px; } .et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper, .et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper, .et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper { margin: 0 -7px; -ms-flex-wrap: wrap; flex-wrap: wrap; -js-display: flex; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; display: -webkit-flex; flex-wrap: wrap; -webkit-flex-wrap: wrap; } /* Headings */ .et_pb_module #wcf-optin-form .woocommerce-checkout #order_review_heading, .et_pb_module #wcf-optin-form .woocommerce-checkout #your_products_heading { display: none; } .et_pb_module #wcf-optin-form .woocommerce-additional-fields > h3, .et_pb_module #wcf-optin-form .woocommerce-billing-fields > h3, .et_pb_module #wcf-optin-form #order_review_heading, .et_pb_module #wcf-optin-form .woocommerce #ship-to-different-address { display: none !important; } /* Headings */ /* Row */ .et_pb_module #wcf-optin-form .woocommerce form .form-row { display: block; margin-bottom: 1.1em; padding: 3px 7px; position: relative; } .et_pb_module #wcf-optin-form .woocommerce-checkout #payment .form-row { margin: 0; padding: 0; } .et_pb_module #wcf-optin-form .woocommerce form .form-row-first, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-first { float: left; clear: left; } .et_pb_module #wcf-optin-form .woocommerce form .form-row-last, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-last { float: right; clear: right; } .et_pb_module #wcf-optin-form .woocommerce form .form-row-first, .et_pb_module #wcf-optin-form .woocommerce form .form-row-last { width: 50%; display: block; } .et_pb_module #wcf-optin-form .woocommerce form .form-row-wide, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-wide { width: 100%; } /* Row */ /* Label */ .et_pb_module #wcf-optin-form .woocommerce .woocommerce-billing-fields label, .et_pb_module #wcf-optin-form .woocommerce .woocommerce-shipping-fields label { display: inherit; } .et_pb_module #wcf-optin-form .woocommerce form.woocommerce-form-login .form-row label, .et_pb_module #wcf-optin-form .woocommerce-checkout .form-row label { font-size: 13px; line-height: 1em; letter-spacing: 0.3px; font-family: inherit; font-weight: inherit; margin-bottom: 8px; } /* Label */ /* Fields */ .et_pb_module #wcf-optin-form .woocommerce form .form-row input.input-text, .et_pb_module #wcf-optin-form .woocommerce form .form-row textarea, .et_pb_module #wcf-optin-form .woocommerce form .form-row select, .et_pb_module #wcf-optin-form .woocommerce #order_review .input-text { display: block; width: 100%; min-height: 34px; padding: 11px 12px; font-family: inherit; font-weight: inherit; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid; border-color: #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; height: auto; } /*.et_pb_module #wcf-optin-form input[type="text"], .et_pb_module #wcf-optin-form input[type="email"], .et_pb_module #wcf-optin-form input[type="password"], .et_pb_module #wcf-optin-form input[type="tel"], .et_pb_module #wcf-optin-form textarea, .et_pb_module #wcf-optin-form select { display: block; width: 100%; min-height: 40px; padding: 11px 12px; font-family: inherit; font-weight: inherit; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; background-image: none; border: 1px solid #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; }*/ /* Fields */ /* Checkboxes*/ .et_pb_module #wcf-optin-form .woocommerce .woocommerce-terms-and-conditions-wrapper { display: none; } /* Checkboxes*/ /* Buttons */ .et_pb_module #wcf-optin-form #order_review { padding: 0; width: 100%; } .et_pb_module #wcf-optin-form .woocommerce-checkout #payment { background: unset; -webkit-border-radius: 0; border-radius: 0; } .et_pb_module #wcf-optin-form .woocommerce #order_review #payment button { float: none; margin: 0 auto; display: block; } .et_pb_module #wcf-optin-form .woocommerce #order_review button { border: 1px solid; border-color: #F16334; background-color: #F16334; font-family: inherit; font-weight: inherit; font-size: 18px; letter-spacing: 0.5px; width: 100%; padding: 16px 24px; font-size: 16px; line-height: 1.5; -webkit-border-radius: 3px; border-radius: 3px; color: #fff; } /* Buttons /* * Media CSS. */ @media only screen and (max-width: 768px) { .et_pb_module #wcf-optin-form .woocommerce form .form-row-first, .et_pb_module #wcf-optin-form .woocommerce form .form-row-last, .et_pb_module #wcf-optin-form .woocommerce form .form-row-wide, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-first, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-last, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-wide{ width: 100%; } } /* * Media CSS. */PK\ƪ, , )assets/css/checkout-template-flatsome.cssnuW+A/** * ************************* * This css is loaded when when the flatsome theme is enabled. * Just to add correct the layout of the page. * ************************* */ /* Basic */ .absolute-footer, html{ background-color: unset; font-family: inherit; } body{ color: #404040; font-family: inherit; line-height: 1.5; } b, strong{ font-weight: bold; } .woocommerce-billing-fields{ padding-top: 0; border-top: unset; } .button, button, input, textarea, select, fieldset{ margin-bottom:inherit; } .wcf-embed-checkout-form .woocommerce form .form-row input.input-text, .wcf-embed-checkout-form .woocommerce form .form-row textarea, .wcf-embed-checkout-form .woocommerce form .form-row select, .wcf-embed-checkout-form .woocommerce #order_review .input-text{ height: auto; } #ship-to-different-address label{ font-weight: inherit; } .shop_table tfoot th, th, td{ color: inherit; font-size: inherit; letter-spacing: inherit; text-transform: inherit; text-align: inherit; } span.amount{ white-space: inherit; color: inherit; font-weight: inherit; } td.product-total, .shop_table tfoot tr td, .cart_totals tbody tr td, .shop_table thead tr th:last-of-type, .shop_table tr td:last-of-type{ text-align: inherit; } .shipping__table--multiple th, .shipping__table--multiple td{ display: table-cell; width: 50%; } .shipping__table--multiple{ display: block; text-align: inherit; } tr.shipping input:checked+label{ font-weight: normal; } .widget_shopping_cart_content .blockUI.blockOverlay::before, .woocommerce-checkout-review-order .blockUI.blockOverlay::before{ border-top: inherit !important; border-right: inherit !important; border-bottom: inherit !important; border-left: inherit !important; } label, legend{ color: inherit; font-weight: inherit; font-size: inherit; } .payment_methods p{ font-size: inherit; } .payment_methods li+li { padding-top: 0; border-top: unset; } .wcf-embed-checkout-form .woocommerce-privacy-policy-text{ font-size: inherit; } .wcf-embed-checkout-form .woocommerce-privacy-policy-text p{ color: #444; font-family: inherit; font-weight: inherit; margin-top: 1rem; } .form-row .select2-container{ margin-bottom: inherit; } @media only screen and (max-width: 768px) { #billing_address_2_field>label{ opacity: 1; overflow: visible; } }PK\;j|9494"assets/css/cartflows-normalize.cssnuW+A/** * 1. Correct the line height in all browsers. * 2. Prevent adjustments of font size after orientation changes in iOS. */ html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ } /** * Remove the margin in all browsers. */ body { margin: 0; } /** * Correct the font size and margin on `h1` elements within `section` and * `article` contexts in Chrome, Firefox, and Safari. */ h1 { font-size: 2em; margin: 0.67em 0; } /* Grouping content ========================================================================== */ /** * 1. Add the correct box sizing in Firefox. * 2. Show the overflow in Edge and IE. */ hr { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /* Text-level semantics ========================================================================== */ /** * Remove the gray background on active links in IE 10. */ a { background-color: transparent; } /** * 1. Remove the bottom border in Chrome 57- * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */ abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ -webkit-text-decoration: underline dotted; -moz-text-decoration: underline dotted; text-decoration: underline dotted; /* 2 */ } /** * Add the correct font weight in Chrome, Edge, and Safari. */ b, strong { font-weight: bold; } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /** * Add the correct font size in all browsers. */ small { font-size: 80%; } /** * Prevent `sub` and `sup` elements from affecting the line height in * all browsers. */ sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } /* Embedded content ========================================================================== */ /** * Remove the border on images inside links in IE 10. */ img { border-style: none; } /* Forms ========================================================================== */ /** * 1. Change the font styles in all browsers. * 2. Remove the margin in Firefox and Safari. */ button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ } /** * Show the overflow in IE. * 1. Show the overflow in Edge. */ button, input { /* 1 */ overflow: visible; } /** * Remove the inheritance of text transform in Edge, Firefox, and IE. * 1. Remove the inheritance of text transform in Firefox. */ button, select { /* 1 */ text-transform: none; } /** * Correct the inability to style clickable types in iOS and Safari. */ button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; } /** * Remove the inner border and padding in Firefox. */ button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; } /** * Restore the focus styles unset by the previous rule. */ button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; } /** * Correct the padding in Firefox. */ fieldset { padding: 0.35em 0.75em 0.625em; } /** * 1. Correct the text wrapping in Edge and IE. * 2. Correct the color inheritance from `fieldset` elements in IE. * 3. Remove the padding so developers are not caught out when they zero out * `fieldset` elements in all browsers. */ legend { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ } /** * Add the correct vertical alignment in Chrome, Firefox, and Opera. */ progress { vertical-align: baseline; } /** * Remove the default vertical scrollbar in IE 10+. */ textarea { overflow: auto; } /** * 1. Add the correct box sizing in IE 10. * 2. Remove the padding in IE 10. */ [type="checkbox"], [type="radio"] { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ } /** * Correct the cursor style of increment and decrement buttons in Chrome. */ [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } /** * 1. Correct the odd appearance in Chrome and Safari. * 2. Correct the outline style in Safari. */ [type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ } /** * Remove the inner padding in Chrome and Safari on macOS. */ [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /** * 1. Correct the inability to style clickable types in iOS and Safari. * 2. Change font properties to `inherit` in Safari. */ ::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ } /* Interactive ========================================================================== */ /* * Add the correct display in Edge, IE 10+, and Firefox. */ details { display: block; } /* * Add the correct display in all browsers. */ summary { display: list-item; } /* Misc ========================================================================== */ /** * Add the correct display in IE 10+. */ template { display: none; } /** * Add the correct display in IE 10. */ [hidden] { display: none; } /*-------------------------------------------------------------- # Typography --------------------------------------------------------------*/ body, button, input, select, optgroup, textarea { color: #404040; font-family: sans-serif; font-size: 15px; /*font-size: 1rem;*/ line-height: 1.5; } h1, h2, h3, h4, h5, h6 { clear: both; } p { margin-bottom: 1.5em; } dfn, cite, em, i { font-style: italic; } blockquote { margin: 0 1.5em; } address { margin: 0 0 1.5em; } pre { background: #eee; font-family: "Courier 10 Pitch", Courier, monospace; font-size: 15px; font-size: 0.9375rem; line-height: 1.6; margin-bottom: 1.6em; max-width: 100%; overflow: auto; padding: 1.6em; } code, kbd, tt, var { font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; font-size: 15px; font-size: 0.9375rem; } abbr, acronym { border-bottom: 1px dotted #666; cursor: help; } mark, ins { background: #fff9c0; text-decoration: none; } big { font-size: 125%; } /*-------------------------------------------------------------- # Elements --------------------------------------------------------------*/ html { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } *, *:before, *:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */ -webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit; } body { background: #fff; /* Fallback for when there is no custom background color defined. */ } hr { background-color: #ccc; border: 0; height: 1px; margin-bottom: 1.5em; } ul, ol { margin: 0 0 1.5em 3em; } ul { list-style: disc; } ol { list-style: decimal; } li > ul, li > ol { margin-bottom: 0; margin-left: 1.5em; } dt { font-weight: bold; } dd { margin: 0 1.5em 1.5em; } img { height: auto; /* Make sure images are scaled correctly. */ max-width: 100%; /* Adhere to container width. */ } figure { margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */ } table { margin: 0 0 1.5em; width: 100%; } /*-------------------------------------------------------------- # Forms --------------------------------------------------------------*/ button, input[type="button"], input[type="reset"], input[type="submit"] { border: 1px solid; border-color: #ccc #ccc #bbb; -webkit-border-radius: 3px; border-radius: 3px; background: #e6e6e6; color: rgba(0, 0, 0, 0.8); font-size: 12px; font-size: 0.75rem; line-height: 1; padding: .6em 1em .4em; } button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { border-color: #ccc #bbb #aaa; } button:active, button:focus, input[type="button"]:active, input[type="button"]:focus, input[type="reset"]:active, input[type="reset"]:focus, input[type="submit"]:active, input[type="submit"]:focus { border-color: #aaa #bbb #bbb; } input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea { color: #666; border: 1px solid #ccc; -webkit-border-radius: 3px; border-radius: 3px; padding: 3px; } input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="range"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="time"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="color"]:focus, textarea:focus { color: #111; } select { border: 1px solid #ccc; } textarea { width: 100%; } /*-------------------------------------------------------------- # Navigation --------------------------------------------------------------*/ /*-------------------------------------------------------------- ## Links --------------------------------------------------------------*/ a { color: royalblue; } /*a:visited { color: purple; }*/ /*a:hover, a:focus, a:active { color: midnightblue; } a:focus { outline: thin dotted; }*/ a:hover, a:active { outline: 0; } /*-------------------------------------------------------------- # Accessibility --------------------------------------------------------------*/ /* Text meant only for screen readers. */ .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */ } .screen-reader-text:focus { background-color: #f1f1f1; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); clip: auto !important; -webkit-clip-path: none; clip-path: none; color: #21759b; display: block; font-size: 14px; font-size: 0.875rem; font-weight: bold; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; /* Above WP toolbar. */ } /* Do not show the outline on the skip link target. */ #content[tabindex="-1"]:focus { outline: 0; } /*-------------------------------------------------------------- # Widgets --------------------------------------------------------------*/ .widget { margin: 0 0 1.5em; /* Make sure select elements fit in widgets. */ } .widget select { max-width: 100%; } /*-------------------------------------------------------------- # Media --------------------------------------------------------------*/ /* Make sure embeds and iframes fit their containers. */ embed, iframe, object { max-width: 100%; }PK\- &assets/css/optin-template-divi-rtl.cssnuW+A/* * Optin Page CSS for DIVI */ .cartflows-container .et_pb_module .wcf-optin-form, .cartflows-container .et_pb_module .wcf-optin-form * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .et_pb_module #wcf-optin-form { background: inherit; width: 100%; margin: 0 auto; } .et_pb_module #wcf-optin-form .woocommerce-checkout { display: inline-block; text-align: inherit; width: 100%; } .et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set { display: block; width: 100%; float: none; margin: 10px 0 0 0; padding: 0px; } .et_pb_module #wcf-optin-form .woocommerce .col2-set .col-1, .et_pb_module #wcf-optin-form .woocommerce .col2-set .col-2, .et_pb_module #wcf-optin-form .woocommerce-checkout .shop_table, .et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-qty-options, .et_pb_module #wcf-optin-form .woocommerce-checkout #order_review_heading, .et_pb_module #wcf-optin-form .woocommerce-checkout #your_products_heading, .et_pb_module #wcf-optin-form .woocommerce-checkout #payment, .et_pb_module #wcf-optin-form .woocommerce form.checkout_coupon, .et_pb_module #wcf-optin-form .woocommerce .wcf-order-wrap { width: 100%; } .et_pb_module #wcf-optin-form .woocommerce .col2-set .col-1, .et_pb_module #wcf-optin-form .woocommerce .col2-set .col-2, .et_pb_module #wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1, .et_pb_module #wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2 { float: none; width: 100%; max-width: 100%; padding: 0px; -webkit-border-radius: 0px; border-radius: 0px; border: none; border-color: none; margin-bottom: 0px; } .et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper, .et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper, .et_pb_module #wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper { margin: 0 -7px; -ms-flex-wrap: wrap; flex-wrap: wrap; -js-display: flex; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; display: -webkit-flex; flex-wrap: wrap; -webkit-flex-wrap: wrap; } /* Headings */ .et_pb_module #wcf-optin-form .woocommerce-checkout #order_review_heading, .et_pb_module #wcf-optin-form .woocommerce-checkout #your_products_heading { display: none; } .et_pb_module #wcf-optin-form .woocommerce-additional-fields > h3, .et_pb_module #wcf-optin-form .woocommerce-billing-fields > h3, .et_pb_module #wcf-optin-form #order_review_heading, .et_pb_module #wcf-optin-form .woocommerce #ship-to-different-address { display: none !important; } /* Headings */ /* Row */ .et_pb_module #wcf-optin-form .woocommerce form .form-row { display: block; margin-bottom: 1.1em; padding: 3px 7px; position: relative; } .et_pb_module #wcf-optin-form .woocommerce-checkout #payment .form-row { margin: 0; padding: 0; } .et_pb_module #wcf-optin-form .woocommerce form .form-row-first, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-first { float: right; clear: right; } .et_pb_module #wcf-optin-form .woocommerce form .form-row-last, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-last { float: left; clear: left; } .et_pb_module #wcf-optin-form .woocommerce form .form-row-first, .et_pb_module #wcf-optin-form .woocommerce form .form-row-last { width: 50%; display: block; } .et_pb_module #wcf-optin-form .woocommerce form .form-row-wide, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-wide { width: 100%; } /* Row */ /* Label */ .et_pb_module #wcf-optin-form .woocommerce .woocommerce-billing-fields label, .et_pb_module #wcf-optin-form .woocommerce .woocommerce-shipping-fields label { display: inherit; } .et_pb_module #wcf-optin-form .woocommerce form.woocommerce-form-login .form-row label, .et_pb_module #wcf-optin-form .woocommerce-checkout .form-row label { font-size: 13px; line-height: 1em; letter-spacing: 0.3px; font-family: inherit; font-weight: inherit; margin-bottom: 8px; } /* Label */ /* Fields */ .et_pb_module #wcf-optin-form .woocommerce form .form-row input.input-text, .et_pb_module #wcf-optin-form .woocommerce form .form-row textarea, .et_pb_module #wcf-optin-form .woocommerce form .form-row select, .et_pb_module #wcf-optin-form .woocommerce #order_review .input-text { display: block; width: 100%; min-height: 34px; padding: 11px 12px; font-family: inherit; font-weight: inherit; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid; border-color: #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; height: auto; } /*.et_pb_module #wcf-optin-form input[type="text"], .et_pb_module #wcf-optin-form input[type="email"], .et_pb_module #wcf-optin-form input[type="password"], .et_pb_module #wcf-optin-form input[type="tel"], .et_pb_module #wcf-optin-form textarea, .et_pb_module #wcf-optin-form select { display: block; width: 100%; min-height: 40px; padding: 11px 12px; font-family: inherit; font-weight: inherit; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; background-image: none; border: 1px solid #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; }*/ /* Fields */ /* Checkboxes*/ .et_pb_module #wcf-optin-form .woocommerce .woocommerce-terms-and-conditions-wrapper { display: none; } /* Checkboxes*/ /* Buttons */ .et_pb_module #wcf-optin-form #order_review { padding: 0; width: 100%; } .et_pb_module #wcf-optin-form .woocommerce-checkout #payment { background: unset; -webkit-border-radius: 0; border-radius: 0; } .et_pb_module #wcf-optin-form .woocommerce #order_review #payment button { float: none; margin: 0 auto; display: block; } .et_pb_module #wcf-optin-form .woocommerce #order_review button { border: 1px solid; border-color: #F16334; background-color: #F16334; font-family: inherit; font-weight: inherit; font-size: 18px; letter-spacing: 0.5px; width: 100%; padding: 16px 24px; font-size: 16px; line-height: 1.5; -webkit-border-radius: 3px; border-radius: 3px; color: #fff; } /* Buttons /* * Media CSS. */ @media only screen and (max-width: 768px) { .et_pb_module #wcf-optin-form .woocommerce form .form-row-first, .et_pb_module #wcf-optin-form .woocommerce form .form-row-last, .et_pb_module #wcf-optin-form .woocommerce form .form-row-wide, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-first, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-last, .et_pb_module #wcf-optin-form .woocommerce-page form .form-row-wide{ width: 100%; } } /* * Media CSS. */PK\1I assets/css/checkout-template.cssnuW+A/** * ************** * Login & Coupon Field Layout * ************** */ .cartflows-container .wcf-embed-checkout-form, .cartflows-container .wcf-embed-checkout-form * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .wcf-embed-checkout-form .wc-backward { display: none !important; } .wcf-embed-checkout-form .woocommerce form .form-row-first, .wcf-embed-checkout-form .woocommerce form .form-row-last, .wcf-embed-checkout-form .woocommerce-page form .form-row-first, .wcf-embed-checkout-form .woocommerce-page form .form-row-last{ width: 50%; display: block; } .wcf-embed-checkout-form .woocommerce form .form-row-full, .wcf-embed-checkout-form .woocommerce-page form .form-row-full{ width: 100%; clear: both; } .wcf-embed-checkout-form form .form-row-wide{ width: 100%; } .wcf-embed-checkout-form form .wcf-column-33{ width: 33.33%; } /* To test divi and all */ .wcf-embed-checkout-form .woocommerce form .form-row-first, .woocommerce-page form .form-row-first{ float: left; clear: left; } .wcf-embed-checkout-form .woocommerce form .form-row-last, .woocommerce-page form .form-row-last{ float: right; clear: right; } .wcf-embed-checkout-form .woocommerce form .form-row .required{ color: red; font-weight: 700; border: 0!important; text-decoration: none; } /* #wcf-embed-checkout-form .woocommerce .product-name a.remove:hover{ color:red !important; } */ .wcf-embed-checkout-form .woocommerce .woocommerce-checkout .product-name .remove{ font-family: 'cartflows-icon'; display: inline-block; font-size: 10px; border: 1px #4d5763 solid; -webkit-border-radius: 50%; border-radius: 50%; padding: 1px; color: #4d5763 !important; /* opacity: 0.6; */ line-height: 1; margin-right: 5px; text-align: center; font-weight: 100; width: 14px; height: 14px; background-color: #fff; } .wcf-embed-checkout-form .woocommerce .woocommerce-checkout .product-name .remove:hover{ color: #f1653c !important; border: 1px #f1653c solid; background-color: #fff; } /* To test divi and all */ .wcf-embed-checkout-form form .form-row-first.form-row-one{ clear: both; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login{ display: none; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row{ margin-bottom: 15px; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .clear{ clear: none; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label{ margin: 0; line-height: 1em; padding-top: 0; position: relative; top: 0; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .login-form-actions{ -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; margin-bottom: 0px; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .remember_me, .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .lost_password{ -webkit-box-flex: 1; -webkit-flex: 1; -moz-box-flex: 1; -ms-flex: 1; flex: 1; font-family: inherit; font-size: 13px; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me label{ margin-bottom: 0px; vertical-align: text-top; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me input, .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row .remember_me span{ vertical-align: middle; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .lost_password{ text-align: right; margin-top: 0px; margin-bottom: 0px; } /** * ************** * Common Classes * ************** */ .wcf-embed-checkout-form .woocommerce .blockUI.blockOverlay { font-size: 15px; } .wcf-embed-checkout-form .woocommerce form .form-row.mt20{ margin-top: 20px ; } .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid .select2-container, .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid input.input-text, .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid select{ border-width: 1px; border-color: #e2401c; } .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated .select2-container, .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated input.input-text, .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-validated select{ border-width: 1px; /*border-color: #69bf29;*/ } .wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single, .wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required, .wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required, .wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required{ border-color: #e2401c; } .wcf-embed-checkout-form .woocommerce form .form-row input.field-validated{ border-left-width: 2px; border-left-color: #69bf29; } /** * ************ * Main Layout * ************ */ .wcf-embed-checkout-form .wcf-checkout-header-image{ text-align: center; } /** * ************************ * Radio Button & Checkbox * ************************ */ .wcf-embed-checkout-form .woocommerce #payment [type='radio']:checked + label, .wcf-embed-checkout-form .woocommerce #payment [type='radio']:not(:checked) + label{ padding: 0px; } .wcf-embed-checkout-form .woocommerce #payment input[type=radio]{ -webkit-border-radius: 50%; border-radius: 50%; margin-right: 4px; line-height: 10px; } .wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:checked:before, .wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before, .wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before, .wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:checked:before{ content: "\e600"; margin: 0; color: #F16334; } .wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type="checkbox"], .wcf-embed-checkout-form .woocommerce #payment input[type=checkbox], .wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"], .wcf-embed-checkout-form .woocommerce #payment input[type=radio], .wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]{ border: 1px solid #b4b9be; background: #fff; color: #555; clear: none; cursor: pointer; display: inline-block; line-height: 0; height: 16px; margin: -4px 4px 0 0; outline: 0; padding: 0!important; text-align: center; vertical-align: middle; width: 16px; min-width: 16px; -webkit-appearance: none; -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1); box-shadow: inset 0 1px 2px rgba(0,0,0,.1); -webkit-transition: .05s border-color ease-in-out; transition: .05s border-color ease-in-out; } .wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:focus, .wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:focus, .wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:focus, .wcf-embed-checkout-form .woocommerce #payment input[type=radio]:focus, .wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:focus{ border-color: #F16334; -webkit-box-shadow: 0 0 2px rgba(241, 99, 52,.8); box-shadow: 0 0 2px rgba(241, 99, 52,.8); } .wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before{ background-color: #F16334; -webkit-border-radius: 50px; border-radius: 50px; content: "\2022"; font-size: 24px; height: 6px; line-height: 16px; margin: 4px; text-indent: -9999px; width: 6px; } .wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:checked:before, .wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before, .wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before, .wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before, .wcf-embed-checkout-form .woocommerce .woocommerce-account-fields input[type=checkbox]:before{ display: inline-block; float: left; font: normal 15px/1 cartflows-icon; speak: none; vertical-align: middle; width: 6px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li input[type=checkbox]{ min-width: 16px; } /* Added for pro support */ .wcf-embed-checkout-form .woocommerce .col2-set .col-1, .wcf-embed-checkout-form .woocommerce .col2-set .col-2, .wcf-embed-checkout-form .woocommerce-page .col2-set .col-1, .wcf-embed-checkout-form .woocommerce-page .col2-set .col-2, /* Added for pro support */ .wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-1, .wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-2, .wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-1, .wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-2 { float: none; width: 100%; max-width: 100%; padding: 0px; -webkit-border-radius: 0px; border-radius: 0px; border: none; border-color: none; margin-bottom: 0px; } .wcf-embed-checkout-form .woocommerce-additional-fields > h3, .wcf-embed-checkout-form .woocommerce-billing-fields > h3, .wcf-embed-checkout-form #order_review_heading, .wcf-embed-checkout-form .woocommerce #ship-to-different-address { font-family: inherit; font-weight: 600; font-size: 20px; /*text-transform: capitalize;*/ margin:0 0 25px 0; padding: 0px; width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout #payment { background: unset; -webkit-border-radius: 0; border-radius: 0; } .wcf-embed-checkout-form .woocommerce-checkout #payment .form-row { margin: 0; padding: 0; } .wcf-embed-checkout-form .woocommerce-checkout #payment .form-row label.checkbox{ display: block; margin-bottom: 1.1em; } .wcf-embed-checkout-form .woocommerce-checkout #payment .payment_method_paypal .about_paypal{ float: none; margin-left: 10px; } .wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box .form-row{ margin: 0 0 0.5em; } .wcf-embed-checkout-form .woocommerce-checkout #payment fieldset .form-row .wcf-embed-checkout-form .woocommerce-checkout #payment fieldset p{ margin-bottom: 10px; } .wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box{ background-color: #eaeaea; font-family: inherit; font-weight:inherit; margin-bottom: 0.5em; } .wcf-embed-checkout-form #add_payment_method #payment div.payment_box::before, .wcf-embed-checkout-form .woocommerce-cart #payment div.payment_box::before, .wcf-embed-checkout-form .woocommerce-checkout #payment div.payment_box::before{ content: ''; display: block; border: 1em solid; border-right-color: transparent; border-left-color: transparent; border-top-color: transparent; border-bottom-color: #eaeaea; position: absolute; top: -.75em; left: 0; margin: -1em 0 0 2em; } /* Fields */ .wcf-embed-checkout-form .select2-container--default .select2-selection--single { display: block; width: 100%; min-height: 34px; height: auto; padding: 11px 12px; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid; border-color: #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; outline: none; } .wcf-embed-checkout-form .select2-container--default .select2-selection--single .select2-selection__rendered { color: #666; line-height: 19px; min-height: 19px; overflow: visible; padding-left: 0; } .wcf-embed-checkout-form .select2-results__option[aria-selected], .select2-results__option[data-selected]{ font-size: 14px; } .wcf-embed-checkout-form .select2-container--default .select2-selection--single .select2-selection__arrow { height: 100%; } .select2-dropdown{ border: 1px solid #d4d4d4; } .wcf-embed-checkout-form .woocommerce form .form-row input.input-text, .wcf-embed-checkout-form .woocommerce form .form-row textarea, .wcf-embed-checkout-form .woocommerce form .form-row select, .wcf-embed-checkout-form .woocommerce #order_review .input-text{ display: block; width: 100%; min-height: 34px; padding: 11px 12px; font-family: inherit; font-weight:inherit; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid; border-color: #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; height: auto; } .wcf-embed-checkout-form #order_review{ padding: 3px; width: 100%; } .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message, .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error{ padding: 0em 2em 1.2em 2em; background-color: transparent; border: none; margin: 0px; width: 100%; } .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error li{ list-style:none !important; margin: 0px; } .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message::before, .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before{ top: 0px; left: 0px; } .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before{ content: '\e016'; } .wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error li{ margin: 0px 0px 0 8px; } .wcf-embed-checkout-form .woocommerce #order_review .wcf-custom-coupon-field input[type="text"]{ font-weight: normal; } .wcf-embed-checkout-form .wcf-custom-coupon-field { clear: left; -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; margin-bottom: 15px; margin-top: 25px; border-top: 1px solid #dcdcdc; border-bottom: 1px solid #dcdcdc; padding-top: 25px; padding-bottom: 25px; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .wcf-embed-checkout-form #order_review .wcf-coupon-col-1 { width: 70%; display: inline-block; padding-right: 20px; } .wcf-embed-checkout-form #order_review .wcf-coupon-col-2 { width: 30%; } .wcf-embed-checkout-form input[type="text"]:focus, .wcf-embed-checkout-form input[type="email"]:focus, .wcf-embed-checkout-form input[type="password"]:focus, .wcf-embed-checkout-form input[type="tel"]:focus, .wcf-embed-checkout-form textarea:focus, .wcf-embed-checkout-form .select2-container--open { border-color: #b3b3b3; -webkit-box-shadow: none; box-shadow: none; outline: none; } .wcf-embed-checkout-form button:focus { outline: none; outline-color: none; outline-style: none; outline-width: none; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row button, .wcf-embed-checkout-form form.checkout_coupon .button { display: block; clear: both; border: none; font-size: 15px; font-family: inherit; font-weight: inherit; background-color: #F16334; line-height: 9px; padding: 18px; margin-bottom: 10px; width: 100%; } .wcf-embed-checkout-form .woocommerce #order_review button { border: 1px solid; border-color: #F16334; background-color: #F16334; font-family: inherit; font-weight:inherit; font-size: 18px; letter-spacing: 0.5px; width: 100%; padding: 16px 24px; font-size: 16px; line-height: 1.5; -webkit-border-radius: 3px; border-radius: 3px; color: #fff; } .wcf-embed-checkout-form .woocommerce #order_review button.wcf-btn-small { padding: 8px 6px; background-color: #c8c8c8; border: 1px #c8c8c8 solid; } .wcf-embed-checkout-form .woocommerce #order_review button.wcf-btn-small:hover{ border-color: #F16334; background-color: #F16334; } .wcf-embed-checkout-form .woocommerce #payment #place_order:hover { background-color: #F16334; border-color: #F16334; color: #fff; } /** * *********************** * New checkout style * *********************** */ .wcf-embed-checkout-form .woocommerce-checkout{ display: inline-block; text-align: inherit; width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout .col2-set, .wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{ display: inline-block; width: 55%; float: left; padding-right: 40px; margin:20px 0 0; } /*Added for pro support */ .wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper, .wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper, /*Added for pro support */ .wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper, .wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{ margin: 0 -7px; -ms-flex-wrap: wrap; flex-wrap: wrap; -js-display: flex; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; display: -webkit-flex; /* Safari 6.1+, firefox, chrome */ flex-wrap: wrap; -webkit-flex-wrap: wrap; /* Safari 6.1+, firefox, chrome*/ } .wcf-embed-checkout-form .woocommerce-checkout .col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper, .wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper{ margin: 0px -7px; } .wcf-embed-checkout-form-two-column .woocommerce-checkout .wcf-order-wrap{ display: inline-block; float: none; width: 45%; border: none; background-color: inherit/*#F6F6F6*/; padding: 0 10px; -webkit-border-radius: 3px; border-radius: 3px; } .wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{ display: inline-block; font-family: inherit; font-weight: 600; width: 100%; margin:20px 0 0; padding: 3px 3px 20px; border: none; border-bottom: none; } .wcf-embed-checkout-form .woocommerce-checkout #payment{ background-color: inherit; border:none; /*border-top: 1px solid;*/ -webkit-border-radius: 0px; border-radius: 0px; /*border-color: #dcdcdc;*/ /*padding-top: 20px;*/ } .wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{ padding: 1em 0px; } .wcf-embed-checkout-form #add_payment_method #payment ul.payment_methods, .wcf-embed-checkout-form .woocommerce-cart #payment ul.payment_methods, .wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{ border: none; } .wcf-embed-checkout-form #payment ul.payment_methods li, .wcf-embed-checkout-form #payment ul.payment_methods li:hover{ background-color: transparent; } /*.wcf-embed-checkout-form .woocommerce form .form-row-wide, .woocommerce-page form .form-row-wide{ clear: both; }*/ .wcf-embed-checkout-form .woocommerce form .form-row{ display: block; margin-bottom: 1.1em; padding: 3px 7px; position: relative; } .wcf-embed-checkout-form .woocommerce form .woocommerce-account-fields .form-row{ padding: 0px; } .wcf-embed-checkout-form table.shop_table { border:none; border-bottom: 0; background-color: inherit; -webkit-border-radius: 0; border-radius: 0; font-family: inherit; font-weight:inherit; font-size: 0.95em; margin: 0 0 0px 0 !important; border-collapse: collapse; text-align: left; } .wcf-embed-checkout-form table.shop_table td strong.product-quantity{ font-weight: normal; } .wcf-embed-checkout-form table.shop_table #shipping_method{ margin: 0; padding: 0; list-style: none; } .wcf-embed-checkout-form table.shop_table #shipping_method .amount{ font-weight: normal; } .wcf-embed-checkout-form table.shop_table th{ border: none; font-weight: 400; padding: 9px 0px; line-height: 1.2em; } .wcf-embed-checkout-form table.shop_table tfoot tr:last-child .woocommerce-Price-amount { font-size: 1em; } .wcf-embed-checkout-form table.shop_table td, .wcf-embed-checkout-form table.shop_table th, .wcf-embed-checkout-form table.shop_table td dl dt, .wcf-embed-checkout-form table.shop_table td dl dd { background-color: transparent; border: none; padding: 0.6em 0; line-height: 1.4em; } .wcf-embed-checkout-form table.shop_table td dl dd p{ margin-top: 0; } .wcf-embed-checkout-form table.shop_table tbody th, .wcf-embed-checkout-form table.shop_table tfoot td, .wcf-embed-checkout-form table.shop_table tfoot th { border: none; display: table-cell; font-weight: normal; width: 50%; } .wcf-embed-checkout-form table.shop_table thead{ background-color: transparent; } .wcf-embed-checkout-form table.shop_table tbody { border-top: 1px dashed #cccccc; border-bottom: 1px dashed #cccccc; } .wcf-embed-checkout-form table.shop_table th.product-name, .wcf-embed-checkout-form table.shop_table th.product-total{ font-weight: 600; } .wcf-embed-checkout-form table.shop_table tfoot tr.order-total:not(.recurring-total) th, .wcf-embed-checkout-form table.shop_table tfoot tr.order-total:not(.recurring-total) td { font-weight: 600; border-top: 1px dashed #cccccc; } .wcf-embed-checkout-form table.shop_table tfoot tr.recurring-totals th { padding-top: 1.8em; font-weight: 600; } .wcf-embed-checkout-form table.shop_table tfoot tr.recurring-totals th, .wcf-embed-checkout-form table.shop_table tfoot tr.recurring-total th, .wcf-embed-checkout-form table.shop_table tfoot tr.recurring-total td { vertical-align: top; } .wcf-embed-checkout-form table.shop_table thead tr th:nth-child(1), .wcf-embed-checkout-form table.shop_table tbody tr td:nth-child(1), .wcf-embed-checkout-form table.shop_table tfoot tr td:nth-child(1){ width: 70%; } .wcf-embed-checkout-form table.shop_table thead tr th:nth-child(2), .wcf-embed-checkout-form table.shop_table tbody tr td:nth-child(2), .wcf-embed-checkout-form table.shop_table tfoot tr td:nth-child(2){ width: 30%; } .wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label, .wcf-embed-checkout-form .woocommerce-checkout .form-row label{ font-size: 13px; line-height: 1em; letter-spacing: 0.3px; font-family: inherit; font-weight:inherit; /*text-transform: capitalize;*/ margin-bottom: 8px; } .wcf-embed-checkout-form .woocommerce .woocommerce-billing-fields label, .wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields label{ display: inherit; } .wcf-embed-checkout-form .woocommerce .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text{ line-height: 20px; text-transform: none; } .wcf-embed-checkout-form #payment .woocommerce-privacy-policy-text p{ font-family: inherit; font-weight:inherit; font-size: 11px; color: #777; margin-top: 0; text-align: justify; } .wcf-embed-checkout-form #payment .wc_payment_methods .payment_box p{ margin: 0; } .wcf-embed-checkout-form .woocommerce a{ color: #F16334; background-color: transparent; text-decoration: none; } .wcf-embed-checkout-form .woocommerce .woocommerce-info, .wcf-embed-checkout-form .woocommerce .woocommerce-error, .wcf-embed-checkout-form .woocommerce .woocommerce-message, .wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message, .wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message{ padding: 1em 2em 0.4em 2.0em; border-top:none; background-color: inherit; font-size: 14px; font-weight: 500; text-align: left; margin:0px; } .wcf-embed-checkout-form .woocommerce-info::before, .wcf-embed-checkout-form .woocommerce-message::before{ left: 0.1em; color: #F16334; } .wcf-embed-checkout-form .woocommerce .woocommerce-error, .wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error, .wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{ background-color: #fff6f6; border: dashed 1px #a00; padding: 25px 25px 20px; color: #a00; margin: 1rem 0 1rem; font-size: 14px; width: 100%; } .wcf-embed-checkout-form .woocommerce .woocommerce-error::before { content: ''; } .wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{ display: inline; } .wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{ margin:1em 0 1em; } .wcf-embed-checkout-form .woocommerce .woocommerce-error li{ list-style: disc inside !important; margin: 0 0 8px; } .wcf-embed-checkout-form .woocommerce .woocommerce-error li strong{ font-weight: 400; } .wcf-embed-checkout-form .woocommerce form.checkout_coupon{ border: 1px solid #d3ced2; padding: 30px 20px 20px; margin: 2em 0; text-align: left; -webkit-border-radius: 5px; border-radius: 5px; } .wcf-embed-checkout-form .woocommerce .checkout_coupon p{ font-size: 14px; } .wcf-embed-checkout-form .woocommerce .checkout_coupon p{ font-family: inherit; font-weight: 500; margin-top: 0; margin-bottom: 10px; } @media only screen and (max-width: 768px) { .wcf-embed-checkout-form form .wcf-column-33{ width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{ width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout #order_review{ width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout .wcf-order-wrap{ width: 100%; } .wcf-embed-checkout-form .woocommerce-checkout{ display: block; } .wcf-embed-checkout-form .woocommerce-checkout .col2-set, .wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{ display: block; width: 100%; padding-right: 0; margin: 20px 0 0; } .wcf-embed-checkout-form form.checkout_coupon .button{ font-size: 12px; } .wcf-bump-order-field-wrap .wcf-bump-order-label{ font-size: 16px; } /* Added for pro support */ .wcf-embed-checkout-form .woocommerce .col2-set .col-1, .wcf-embed-checkout-form .woocommerce .col2-set .col-2, .wcf-embed-checkout-form .woocommerce-page .col2-set .col-1, .wcf-embed-checkout-form .woocommerce-page .col2-set .col-2, /* Added for pro support */ .wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-1, .wcf-embed-checkout-form .woocommerce .wcf-col2-set .wcf-col-2, .wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-1, .wcf-embed-checkout-form .woocommerce-page .wcf-col2-set .wcf-col-2, .wcf-embed-checkout-form .woocommerce .wcf-order-wrap, .wcf-embed-checkout-form .woocommerce-page .wcf-order-wrap{ padding: 15px 18px; } .wcf-embed-checkout-form .woocommerce form .form-row-first, .wcf-embed-checkout-form .woocommerce form .form-row-last, .wcf-embed-checkout-form .woocommerce-page form .form-row-first, .wcf-embed-checkout-form .woocommerce-page form .form-row-last{ width: 100%; } /*.wcf-embed-checkout-form .woocommerce form .form-row-first, .wcf-embed-checkout-form .woocommerce-page form .form-row-first{ margin-right: 4%; }*/ .wcf-embed-checkout-form .woocommerce-additional-fields > h3, .wcf-embed-checkout-form .woocommerce-billing-fields > h3, .wcf-embed-checkout-form #order_review_heading, .wcf-embed-checkout-form .woocommerce #ship-to-different-address{ font-size: 1.0em; } } /** * ********************** * Divi Css Overrite * ********************** */ #et-info-email:before, #et-info-phone:before, #et_search_icon:before, .comment-reply-link:after, .et-cart-info span:before, .et-pb-arrow-next:before, .et-pb-arrow-prev:before, .et-social-icon a:before, .et_audio_container .mejs-playpause-button button:before, .et_audio_container .mejs-volume-button button:before, .et_overlay:before, .et_password_protected_form .et_submit_button:after, .et_pb_button:after, .et_pb_contact_reset:after, .et_pb_contact_submit:after, .et_pb_font_icon:before, .et_pb_newsletter_button:after, .et_pb_pricing_table_button:after, .et_pb_promo_button:after, .et_pb_social_icon a.icon:before, .et_pb_testimonial:before, .et_pb_toggle_title:before, .form-submit .et_pb_button:after, .mobile_menu_bar:before, .woocommerce #content input.button.alt:after, .woocommerce #content input.button:after, .woocommerce #respond input#submit.alt:after, .woocommerce #respond input#submit:after, .woocommerce a.button.alt:after, .woocommerce button.button.alt:after, .woocommerce button.button:after, .woocommerce button.single_add_to_cart_button.button:after, .woocommerce input.button.alt:after, .woocommerce input.button:after, .woocommerce-page #content input.button.alt:after, .woocommerce-page #content input.button:after, .woocommerce-page #respond input#submit.alt:after, .woocommerce-page #respond input#submit:after, .woocommerce-page a.button.alt:after, .woocommerce-page a.button:after, .woocommerce-page button.button.alt:after, .woocommerce-page button.button:after, .woocommerce-page input.button.alt:after, .woocommerce-page input.button:after, a.et_pb_more_button:after{ text-shadow: 0 0; font-family: none; font-weight: 400; font-style: normal; font-variant: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; line-height: 1; text-transform: none; speak: none; } .comment-reply-link:hover:after, .woocommerce #content input.button.alt:hover:after, .woocommerce #content input.button:hover:after, .woocommerce #respond input#submit.alt:hover:after, .woocommerce #respond input#submit:hover:after, .woocommerce a.button.alt:hover:after, .woocommerce a.button:hover:after, .woocommerce button.button.alt:hover:after, .woocommerce button.button:hover:after, .woocommerce input.button.alt:hover:after, .woocommerce input.button:hover:after, .woocommerce-page #content input.button.alt:hover:after, .woocommerce-page #content input.button:hover:after, .woocommerce-page #respond input#submit.alt:hover:after, .woocommerce-page #respond input#submit:hover:after, .woocommerce-page a.button.alt:hover:after, .woocommerce-page a.button:hover:after, .woocommerce-page button.button.alt:hover:after, .woocommerce-page button.button:hover:after, .woocommerce-page input.button.alt:hover:after, .woocommerce-page input.button:hover:after{ opacity: 0; } /** * ************************** * Thrive Compatibility css * ************************** */ .thrv_wrapper .wcf-embed-checkout-form div{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } PK\Gs11%assets/css/checkout-template-divi.cssnuW+A.et_pb_module #wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required, .et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required { border-color: #e2401c !important; } /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .col2-set, /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{ display: inline-block; width: 55%; float: left; padding-right: 40px; margin: 50px 0 0; } .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row select, .et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text, .et_pb_module #wcf-embed-checkout-form .select2-container--default .select2-selection--single{ display: block; width: 100%; min-height: 34px; padding: 11px 12px; font-family: inherit; font-weight:inherit; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; } .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row{ margin-bottom: 1.1em; padding: 3px 3px 0 3px; } .et_pb_module #wcf-embed-checkout-form .woocommerce form.woocommerce-form-login .form-row label, .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .form-row label{ font-size: 13px; line-height: 1em; letter-spacing: 0.3px; font-family: inherit; font-weight: inherit; /*text-transform: capitalize;*/ margin-bottom: 8px; } .cartflows-canvas #page-container{ padding-top:0px !important; } .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-info, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message{ color: inherit !important; } .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{ background-color: #fff6f6 !important; border: dashed 1px #a00 !important; padding: 25px 25px 20px !important; color: #a00 !important; margin: 1rem 0 1rem !important; font-size: 14px !important; } .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error li, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error li, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error li{ font-weight: 400 !important; } .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-error li strong{ font-weight: 400; } /*.et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:not(:checked){ color: #666; cursor: pointer; display: inline; line-height: 20px; margin-right: 10px; position: relative; padding-left: 28px; }*/ .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before{ content: "\e600"; margin: 0px; color: #F16334; } .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox], .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"], .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]{ border: 1px solid #b4b9be; background: #fff; color: #555; clear: none; cursor: pointer; display: inline-block; line-height: 0; height: 16px; margin: -4px 4px 0 0; outline: 0; padding: 0!important; text-align: center; vertical-align: middle; width: 16px; min-width: 16px; -webkit-appearance: none; -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1); box-shadow: inset 0 1px 2px rgba(0,0,0,.1); -webkit-transition: .05s border-color ease-in-out; transition: .05s border-color ease-in-out; } .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:focus, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:focus, .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:focus{ border-color: #F16334; -webkit-box-shadow: 0 0 2px rgba(241, 99, 52,.8); box-shadow: 0 0 2px rgba(241, 99, 52,.8); } .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before{ background-color: #F16334; -webkit-border-radius: 50px; border-radius: 50px; content: "\2022"; font-size: 24px; height: 6px; line-height: 16px; margin: 4px; text-indent: -9999px; width: 6px; } .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=checkbox]:checked:before, .et_pb_module #wcf-embed-checkout-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before, .et_pb_module #wcf-embed-checkout-form .woocommerce #payment input[type=radio]:checked:before{ display: inline-block; float: left; font: normal 15px/1 cartflows-icon; speak: none; vertical-align: middle; width: 6px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .et_pb_module #wcf-embed-checkout-form .woocommerce-additional-fields > h3, .et_pb_module #wcf-embed-checkout-form .woocommerce-billing-fields > h3, .et_pb_module #wcf-embed-checkout-form #order_review_heading, .et_pb_module #wcf-embed-checkout-form .woocommerce #ship-to-different-address{ font-family: inherit; font-weight: 600; font-size: 20px; /*text-transform: capitalize;*/ margin: 0 0 25px 0; } .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{ display: inline-block !important; font-family: inherit; font-weight: 600; width: 45%; margin: 50px 0 0; padding: 0px 10px 20px; border: none; border-bottom: none; } .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{ padding: 1em 0px; margin:0; } .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #add_payment_method #payment ul.payment_methods li, .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods li{ line-height: 2; text-align: left; margin: 0; list-style: none; font-weight: inherit; } .et_pb_module #wcf-embed-checkout-form #payment .woocommerce-privacy-policy-text p{ font-family: inherit; font-weight: inherit; color: #444; margin-top: 0; margin-bottom: 1.5em; } .et_pb_module #wcf-embed-checkout-form .woocommerce .shop_table #shipping_method li{ list-style: none; } .et_pb_module #wcf-embed-checkout-form .woocommerce a{ color: #F16334; text-decoration: none; } .et_pb_module #wcf-embed-checkout-form .wcf-custom-coupon-field{ -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; margin-bottom: 25px; margin-top: 25px; border-top: 1px solid #dcdcdc; padding-top: 25px; } .et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message, .et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error{ color: inherit !important; border: none !important; background-color: transparent !important; padding: 0em 2em 1.2em 2em !important; font-size: 14px !important; margin: 0px !important; } .et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-message::before, .et_pb_module #wcf-embed-checkout-form .woocommerce .wcf-custom-coupon-field .woocommerce-error::before{ display: block !important; } /* One Column */ /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce .col2-set, /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce .wcf-col2-set{ display: block; margin-top: 10px; padding-right: 0px; width: 100%; } .et_pb_module #wcf-embed-checkout-form.wcf-embed-checkout-form-one-column .woocommerce-checkout #order_review_heading{ display: block !important; margin: 20px 0 0; width: 100%; } /** * ************************************** * Bump Order Start * ************************************** */ .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-wrap { display: block; float: none; margin: 1em auto 1em; overflow: hidden; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 { background: #f1f1f1; border-style: none; border-width: 2px; border-color: red; -webkit-border-radius: 3px; border-radius: 3px; display: inline-block; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 { border: 2px red dashed; -webkit-border-radius: 3px; border-radius: 3px; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-field-wrap { border-style: none; border-width: 2px; border-color: red; padding: 20px 25px; margin: 0; font-size: 1.1em; display: block; background: #dddddd; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-content-container { padding: 25px 0; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-offer { padding: 0 25px 10px; font-size: 1.2em; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-1 .wcf-bump-order-desc { padding: 0 25px; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-offer { padding: 20px 25px; font-size: 1.1em; font-weight: 600; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-desc { padding: 0 25px 20px; } .et_pb_module #wcf-embed-checkout-form .wcf-bump-order-style-2 .wcf-bump-order-field-wrap { border-top: 2px red dashed; padding: 15px 25px; margin: 0; font-size: 1.1em; display: block; } /** * ************************************** * Bump Order End * ************************************** */ .et_pb_module #wcf-embed-checkout-form .select2-container--default.field-required .select2-selection--single, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row input.input-text.field-required, .et_pb_module #wcf-embed-checkout-form .woocommerce form .form-row textarea.input-text.field-required, .et_pb_module #wcf-embed-checkout-form .woocommerce #order_review .input-text.field-required{ border-color: #e2401c; } @media only screen and (max-width: 768px) { /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .col2-set, /* Added to for Pro Support */ .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout .wcf-col2-set{ display: block; float: none; padding-right: 0px; width: 100%; } .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review_heading{ display: block !important; float: none; width: 100%; } .et_pb_module #wcf-embed-checkout-form .woocommerce-checkout #order_review{ display: block; float: none; width: 100%; } } @media (max-width: 767px){ .et_pb_module #wcf-embed-checkout-form .woocommerce .form-row { width: 100% !important; } }PK\ 4((assets/css/frontend-rtl.cssnuW+A/* Addition ========================================================================== */ @font-face { font-family: 'cartflows-icon'; src: url('../fonts/cartflows-icon.eot?81m15v'); src: url('../fonts/cartflows-icon.eot?81m15v#iefix') format('embedded-opentype'), url('../fonts/cartflows-icon.ttf?81m15v') format('truetype'), url('../fonts/cartflows-icon.woff?81m15v') format('woff'), url('../fonts/cartflows-icon.svg?81m15v#cartflows-icon') format('svg'); font-weight: normal; font-style: normal; } .cartflows-icon { /* use !important to prevent issues with browser extensions that change fonts */ font-family: 'cartflows-icon' !important; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; /* Better Font Rendering =========== */ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .cartflows-icon-close:before { content: "\e602"; font-family: 'cartflows-icon'; } .cartflows-icon-cross:before { content: "\e601"; } .cartflows-icon-check:before { content: "\e600"; } .cartflows-icon-arrow-thin-right:before { content: "\e901"; } /*-------------------------------------------------------------- # Alignments --------------------------------------------------------------*/ .alignleft { display: inline; float: right; margin-left: 1.5em; } .alignright { display: inline; float: left; margin-right: 1.5em; } .aligncenter { clear: both; display: block; margin-right: auto; margin-left: auto; } /*-------------------------------------------------------------- # Clearings --------------------------------------------------------------*/ .clear:before, .clear:after { content: ""; display: table; table-layout: fixed; } .clear:after { clear: both; } /*-------------------------------------------------------------- # Content --------------------------------------------------------------*/ /* Common Button */ .wcf-button { display: inline-block; padding: 12px 24px; background: #ccc; text-decoration: none; margin: 5px; } /*-------------------------------------------------------------- # Template CSS ---------------------------------------------------------------*/ body.cartflows-default { background-color: #f5f5f5; } .cartflows-default .cartflows-container { max-width: 1200px; width: 100%; padding: 0 20px; margin: 60px auto; } .cartflows-default .cartflows-primary { background-color: #fff; padding: 70px; overflow: hidden; max-width: 100%; } @media (max-width: 768px) { .cartflows-default .cartflows-container { padding: 0; margin: 0; } .cartflows-default .cartflows-primary { padding: 20px 30px; } } @media (max-width: 544px) { .cartflows-default .cartflows-primary { padding: 20px 15px; } } /*-------------------------------------------------------------- # Preview Mode ---------------------------------------------------------------*/ .wcf-preview-mode { background: #f16334; position: fixed; bottom: 0; right: 0; width: 100%; height: 2.6em; color: #fff; text-align: center; font-size: 14px; line-height: 2.6em; pointer-events: all; z-index: 9999999; } .wcf-preview-mode a{ color: #fff; } @media only screen and (max-width: 768px) { .wcf-preview-mode { font-size: 13px; line-height: 18px; padding: 4px 10px; height: auto; } } /** * ***************** * Cartflows Footer * ***************** */ .wcf-footer-primary .wcf-footer-content p{ margin: 1.5em 0; text-align: center; } /** * **************** * Thank You page * **************** */ .wcf-thankyou-wrap { padding: 0; margin: 0 auto; width: 100%; max-width: 55em; font-size: 13px; } /* Order Details - ThankYou page */ .woocommerce-order ul.order_details::before, .woocommerce-order ul.order_details::after { content: ' '; display: table; } .woocommerce-order ul.order_details::after { clear: both; } .woocommerce-order ul.order_details, .woocommerce-order ul.order_details li { list-style: none; line-height: 1; } .woocommerce-order ul.order_details li { display: inline-block; border-left: 1px dashed #cccccc; padding: 0.5em 0 0.5em 1em; margin: 0.5em 0 0.5em 0.5em; list-style-type: none; } .woocommerce-order ul.order_details li:first-child { padding-right: 0; } .woocommerce-order ul.order_details li:last-child { border-left:0px; padding-left: 0; } .woocommerce-order ul.order_details li strong { display: block; margin-top: 0.7em; } .woocommerce-order ul.order_details, .woocommerce-order .woocommerce-customer-details, .woocommerce-order .woocommerce-order-details, .woocommerce-order .woocommerce-order-downloads, .woocommerce-order .woocommerce-bacs-bank-details { margin: 0 0 2em; -webkit-border-radius: 3px; border-radius: 3px; width: 100%; display: block; } .woocommerce-order .woocommerce-bacs-bank-details ul.bacs_details{ padding: 0px; } /* Section Background & Padding */ .woocommerce-order ul.order_details, .woocommerce-order .woocommerce-customer-details, .woocommerce-order .woocommerce-order-details, .woocommerce-order .woocommerce-order-downloads, .woocommerce-order .woocommerce-bacs-bank-details { background: #f1f1f1; padding: 1.5em 2.5em; } .woocommerce-order h2.woocommerce-column__title, .woocommerce-order h2.woocommerce-order-details__title, .woocommerce-order .woocommerce-thankyou-order-received, .woocommerce-order .woocommerce-order-downloads__title, .woocommerce-order h2.wc-bacs-bank-details-heading { padding: 0.8em 0; margin: 0 0 0.5em; font-size: 1.5em; font-weight: 600; color: #404040; } .woocommerce-order .woocommerce-thankyou-order-received { margin: 0 0 1.5em; padding: 0 0.5em; text-align: center; } /* Order Details Form */ .woocommerce-order-details table.shop_table, .woocommerce-order-downloads table.shop_table { border:none; border-bottom: 0; background-color: inherit; -webkit-border-radius: 0; border-radius: 0; font-family: inherit; font-weight:inherit; font-size: 0.95em; margin: 0 0 0px 0 !important; border-collapse: collapse; text-align: right; } .woocommerce-order-details table.shop_table #shipping_method{ margin: 0; padding: 0; list-style: none; } .woocommerce-order-details table.shop_table th, .woocommerce-order-downloads table.shop_table th{ border: none; font-weight: 600; padding: 9px 0px; line-height: 1.2em; } .woocommerce-order-details table.shop_table tfoot tr:last-child .woocommerce-Price-amount { font-size: 1em; } .woocommerce-order-details table.shop_table td, .woocommerce-order-details table.shop_table th { padding: 0.6em 0; line-height: 1.4em; border: none; } .woocommerce-order-details table.shop_table tbody th, .woocommerce-order-details table.shop_table tfoot td, .woocommerce-order-details table.shop_table tfoot th { font-weight: normal; border: none; } .woocommerce-order-details table.shop_table tbody { border-top: 1px dashed #cccccc; border-bottom: 1px dashed #cccccc; } .woocommerce-order-details table.shop_table th.product-name, .woocommerce-order-details table.shop_table th.product-total{ font-weight: 600; } .woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) th, .woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) td { font-weight: 600; border-top: 1px dashed #cccccc; } .woocommerce-order-details table.shop_table tfoot tr.recurring-totals th { padding-top: 1.8em; font-weight: 600; } .woocommerce-order-details table.shop_table tfoot tr.recurring-totals th, .woocommerce-order-details table.shop_table tfoot tr.recurring-total th, .woocommerce-order-details table.shop_table tfoot tr.recurring-total td { vertical-align: top; } /**/ .woocommerce-order .wcf-col2-set{ -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; } .woocommerce-order .wcf-col2-set .wcf-col-1{ margin-left: 2%; } .woocommerce-order .wcf-col2-set .wcf-col-1, .woocommerce-order .wcf-col2-set .wcf-col-2 { width: 49%; display: inline-block; } .woocommerce-order .woocommerce-customer-details address { border-left-width: 1px; border-bottom-width: 1px; -webkit-border-radius: 0; border-radius: 0; font-style: normal; } .woocommerce-order .woocommerce-customer-details address p{ margin: 0; } @media only screen and (max-width: 768px){ .woocommerce-order .woocommerce-thankyou-order-received { margin: 0 0 1em; } .woocommerce-order h2.woocommerce-column__title, .woocommerce-order h2.woocommerce-order-details__title, .woocommerce-order .woocommerce-thankyou-order-received { padding: 0.5em 0; font-size: 1.5em; } .woocommerce-order ul.order_details, .woocommerce-order .woocommerce-customer-details, .woocommerce-order .woocommerce-order-details { padding: 1.5em 2em; } .woocommerce-order .woocommerce-order-downloads{ overflow-x: auto; } .woocommerce-order-downloads table.shop_table td, .woocommerce-order-downloads table.shop_table th{ padding: 0.5em 0.8em; } .woocommerce-order ul.order_details li{ display: block; width: 100%; border-left: none; padding: 0.5em 0 1em 1em; border-bottom: 1px dashed #cccccc; } .woocommerce-order ul.order_details li:last-child { border: none; } .woocommerce-order .wcf-col2-set{ display: block; } .woocommerce-order .wcf-col2-set .wcf-col-1, .woocommerce-order .wcf-col2-set .wcf-col-2{ width: 100%; display: block; } } PK\(|TTassets/css/optin-template.cssnuW+A/** * ************** * Login & Coupon Field Layout * ************** */ /* Editor CSS */ .elementor-editor-active .wcf-optin-form .woocommerce #order_review #payment #place_order { pointer-events: none !important; } .cartflows-container .wcf-optin-form, .cartflows-container .wcf-optin-form * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .wcf-optin-form .wc-backward { display: none !important; } .wcf-optin-form .woocommerce form .form-row-first, .wcf-optin-form .woocommerce form .form-row-last{ width: 50%; display: block; } .wcf-optin-form .woocommerce form .form-row-full{ width: 100%; clear: both; } .wcf-optin-form form .form-row-wide{ width: 100%; } /* To test divi and all */ .wcf-optin-form .woocommerce form .form-row-first, .woocommerce-page form .form-row-first{ float: left; clear: left; } .wcf-optin-form .woocommerce form .form-row-last, .woocommerce-page form .form-row-last{ float: right; clear: right; } .wcf-optin-form .woocommerce form .form-row .required{ color: red; font-weight: 700; border: 0!important; text-decoration: none; } /* To test divi and all */ .wcf-optin-form form .form-row-first.form-row-one{ clear: both; } .wcf-optin-form .woocommerce form.woocommerce-form-login{ display: none; } /** * ************** * Common Classes * ************** */ .wcf-optin-form .woocommerce .blockUI.blockOverlay { font-size: 15px; } .wcf-optin-form .woocommerce form .form-row.woocommerce-invalid .select2-container, .wcf-optin-form .woocommerce form .form-row.woocommerce-invalid input.input-text, .wcf-optin-form .woocommerce form .form-row.woocommerce-invalid select{ border-width: 1px; border-color: #e2401c; } .wcf-optin-form .woocommerce form .form-row.woocommerce-validated .select2-container, .wcf-optin-form .woocommerce form .form-row.woocommerce-validated input.input-text, .wcf-optin-form .woocommerce form .form-row.woocommerce-validated select{ border-width: 1px; } .wcf-optin-form .select2-container--default.field-required .select2-selection--single, .wcf-optin-form .woocommerce form .form-row input.input-text.field-required, .wcf-optin-form .woocommerce form .form-row textarea.input-text.field-required, .wcf-optin-form .woocommerce #order_review .input-text.field-required{ border-color: #e2401c; } .wcf-optin-form .woocommerce form .form-row input.field-validated{ border-left-width: 2px; border-left-color: #69bf29; } /** * ************ * Main Layout * ************ */ /** * ************************ * Radio Button & Checkbox * ************************ */ .wcf-optin-form .woocommerce #payment [type='radio']:checked + label, .wcf-optin-form .woocommerce #payment [type='radio']:not(:checked) + label{ padding: 0px; } .wcf-optin-form .woocommerce #payment input[type=radio]{ -webkit-border-radius: 50%; border-radius: 50%; margin-right: 4px; line-height: 10px; } .wcf-optin-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:checked:before, .wcf-optin-form .woocommerce #payment input[type=checkbox]:checked:before, .wcf-optin-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before, .wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:checked:before{ content: "\e600"; margin: 0; color: #F16334; } .wcf-optin-form .woocommerce .woocommerce-billing-fields [type="checkbox"], .wcf-optin-form .woocommerce #payment input[type=checkbox], .wcf-optin-form .woocommerce .woocommerce-shipping-fields [type="checkbox"], .wcf-optin-form .woocommerce #payment input[type=radio], .wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]{ border: 1px solid #b4b9be; background: #fff; color: #555; clear: none; cursor: pointer; display: inline-block; line-height: 0; height: 16px; margin: -4px 4px 0 0; outline: 0; padding: 0!important; text-align: center; vertical-align: middle; width: 16px; min-width: 16px; -webkit-appearance: none; -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1); box-shadow: inset 0 1px 2px rgba(0,0,0,.1); -webkit-transition: .05s border-color ease-in-out; transition: .05s border-color ease-in-out; } .wcf-optin-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:focus, .wcf-optin-form .woocommerce #payment input[type=checkbox]:focus, .wcf-optin-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:focus, .wcf-optin-form .woocommerce #payment input[type=radio]:focus, .wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:focus{ border-color: #F16334; -webkit-box-shadow: 0 0 2px rgba(241, 99, 52,.8); box-shadow: 0 0 2px rgba(241, 99, 52,.8); } .wcf-optin-form .woocommerce #payment input[type=radio]:checked:before{ background-color: #F16334; -webkit-border-radius: 50px; border-radius: 50px; content: "\2022"; font-size: 24px; height: 6px; line-height: 16px; margin: 4px; text-indent: -9999px; width: 6px; } .wcf-optin-form .woocommerce .woocommerce-billing-fields [type="checkbox"]:checked:before, .wcf-optin-form .woocommerce #payment input[type=checkbox]:checked:before, .wcf-optin-form .woocommerce .woocommerce-shipping-fields [type="checkbox"]:checked:before, .wcf-optin-form .woocommerce #payment input[type=radio]:checked:before, .wcf-optin-form .woocommerce .woocommerce-account-fields input[type=checkbox]:before{ display: inline-block; float: left; font: normal 15px/1 cartflows-icon; speak: none; vertical-align: middle; width: 6px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .wcf-optin-form .woocommerce-checkout #payment ul.payment_methods li input[type=checkbox]{ min-width: 16px; } .wcf-optin-form .woocommerce .col2-set .col-1, .wcf-optin-form .woocommerce .col2-set .col-2, .wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1, .wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2 { float: none; width: 100%; max-width: 100%; padding: 0px; -webkit-border-radius: 0px; border-radius: 0px; border: none; border-color: none; margin-bottom: 0px; } .wcf-optin-form .woocommerce-additional-fields > h3, .wcf-optin-form .woocommerce-billing-fields > h3, .wcf-optin-form #order_review_heading, .wcf-optin-form .woocommerce #ship-to-different-address { display: none; } .wcf-optin-form .woocommerce-checkout #payment { background: unset; -webkit-border-radius: 0; border-radius: 0; } .wcf-optin-form .woocommerce-checkout #payment .form-row { margin: 0; padding: 0; } .wcf-optin-form .woocommerce-checkout #payment .form-row label.checkbox{ display: block; margin-bottom: 1.1em; } .wcf-optin-form .woocommerce-checkout #payment .payment_method_paypal .about_paypal{ float: none; margin-left: 10px; } .wcf-optin-form .woocommerce-checkout #payment div.payment_box .form-row{ margin: 0 0 0.5em; } .wcf-optin-form .woocommerce-checkout #payment fieldset .form-row .wcf-optin-form .woocommerce-checkout #payment fieldset p{ margin-bottom: 10px; } .wcf-optin-form .woocommerce-checkout #payment div.payment_box{ background-color: #eaeaea; font-family: inherit; font-weight:inherit; margin-bottom: 0.5em; } .wcf-optin-form #add_payment_method #payment div.payment_box::before, .wcf-optin-form .woocommerce-cart #payment div.payment_box::before, .wcf-optin-form .woocommerce-checkout #payment div.payment_box::before{ content: ''; display: block; border: 1em solid; border-right-color: transparent; border-left-color: transparent; border-top-color: transparent; border-bottom-color: #eaeaea; position: absolute; top: -.75em; left: 0; margin: -1em 0 0 2em; } /* Fields */ .wcf-optin-form .select2-container--default .select2-selection--single { display: block; width: 100%; min-height: 34px; height: auto; padding: 11px 12px; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid; border-color: #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; outline: none; } .wcf-optin-form .select2-container--default .select2-selection--single .select2-selection__rendered { color: #666; line-height: 26px; min-height: 26px; overflow: visible; padding-left: 0; } .wcf-optin-form .select2-results__option[aria-selected], .select2-results__option[data-selected]{ font-size: 14px; } .wcf-optin-form .select2-container--default .select2-selection--single .select2-selection__arrow { height: 100%; } .select2-dropdown{ border: 1px solid #d4d4d4; } .wcf-optin-form .woocommerce form .form-row input.input-text, .wcf-optin-form .woocommerce form .form-row textarea, .wcf-optin-form .woocommerce form .form-row select, .wcf-optin-form .woocommerce #order_review .input-text{ display: block; width: 100%; min-height: 34px; padding: 11px 12px; font-family: inherit; font-weight:inherit; font-size: 14px; line-height: 1.42857143 !important; color: #555; background-color: #fff; background-image: none; border: 1px solid; border-color: #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; height: auto; } .wcf-optin-form #order_review{ padding: 0; width: 100%; } .wcf-optin-form input[type="text"]:focus, .wcf-optin-form input[type="email"]:focus, .wcf-optin-form input[type="password"]:focus, .wcf-optin-form input[type="tel"]:focus, .wcf-optin-form textarea:focus, .wcf-optin-form .select2-container--open { border-color: #b3b3b3; -webkit-box-shadow: none; box-shadow: none; outline: none; } .wcf-optin-form button:focus { outline: none; outline-color: none; outline-style: none; outline-width: none; } .wcf-optin-form .woocommerce form.woocommerce-form-login .form-row button, .wcf-optin-form form.checkout_coupon .button { display: block; clear: both; border: none; font-size: 15px; font-family: inherit; font-weight: inherit; background-color: #F16334; line-height: 9px; padding: 18px; margin-bottom: 10px; width: 100%; } .wcf-optin-form .woocommerce #order_review #payment button { float: none; margin: 0 auto; display: block; } .wcf-optin-form .woocommerce #order_review button { border: 1px solid; border-color: #F16334; background-color: #F16334; font-family: inherit; font-weight:inherit; font-size: 18px; letter-spacing: 0.5px; width: 100%; padding: 16px 24px; font-size: 16px; line-height: 1.5; -webkit-border-radius: 3px; border-radius: 3px; color: #fff; } .wcf-optin-form .woocommerce #order_review button.wcf-btn-small { padding: 8px 6px; background-color: #c8c8c8; border: 1px #c8c8c8 solid; } .wcf-optin-form .woocommerce #order_review button.wcf-btn-small:hover{ border-color: #F16334; background-color: #F16334; } .wcf-optin-form .woocommerce #payment #place_order:hover { background-color: #F16334; border-color: #F16334; color: #fff; } /** * *********************** * New checkout style * *********************** */ .wcf-optin-form .woocommerce-form-coupon-toggle, .wcf-optin-form .woocommerce-additional-fields, .wcf-optin-form table.shop_table.woocommerce-checkout-review-order-table { display: none !important; } .wcf-optin-form .woocommerce-checkout{ display: inline-block; text-align: inherit; width: 100%; } .wcf-optin-form .woocommerce-checkout .wcf-col2-set{ display: block; width: 100%; float: none; margin: 10px 0 0 0; padding: 0px; } .wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper, .wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{ margin: 0 -7px; -ms-flex-wrap: wrap; flex-wrap: wrap; -js-display: flex; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; display: -webkit-flex; /* Safari 6.1+, firefox, chrome */ flex-wrap: wrap; -webkit-flex-wrap: wrap; /* Safari 6.1+, firefox, chrome*/ } .wcf-optin-form .woocommerce-checkout .wcf-col2-set .woocommerce-additional-fields .woocommerce-additional-fields__field-wrapper{ margin: 0px -7px; } .wcf-optin-form .woocommerce form .form-row{ display: block; margin-bottom: 1.1em; padding: 3px 7px; position: relative; } .wcf-optin-form .woocommerce form .woocommerce-account-fields { display: none; } .wcf-optin-form .woocommerce form .woocommerce-account-fields .form-row{ padding: 0px; } .wcf-optin-form .woocommerce form.woocommerce-form-login .form-row label, .wcf-optin-form .woocommerce-checkout .form-row label{ font-size: 13px; line-height: 1em; letter-spacing: 0.3px; font-family: inherit; font-weight:inherit; margin-bottom: 8px; } .wcf-optin-form .woocommerce .woocommerce-billing-fields label, .wcf-optin-form .woocommerce .woocommerce-shipping-fields label{ display: inherit; } .wcf-optin-form .woocommerce .woocommerce-terms-and-conditions-wrapper { display: none; } .wcf-optin-form .woocommerce a{ color: #F16334; background-color: transparent; text-decoration: none; } .wcf-optin-form .woocommerce .woocommerce-info, .wcf-optin-form .woocommerce .woocommerce-error, .wcf-optin-form .woocommerce .woocommerce-message, .wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message, .wcf-optin-form .woocommerce .woocommerce-NoticeGroup .woocommerce-message{ padding: 1em 2em 0.4em 2.0em; border-top:none; background-color: inherit; font-size: 14px; font-weight: 500; text-align: left; margin:0px; } .wcf-optin-form .woocommerce-info::before, .wcf-optin-form .woocommerce-message::before{ left: 0.1em; color: #F16334; } .wcf-optin-form .woocommerce .woocommerce-error, .wcf-optin-form .woocommerce .woocommerce-NoticeGroup .woocommerce-error, .wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-error{ background-color: #fff6f6; border: dashed 1px #a00; padding: 25px 25px 20px; color: #a00; margin: 1rem 0 1rem; font-size: 14px; width: 100%; } .wcf-optin-form .woocommerce .woocommerce-error::before { content: ''; } .wcf-optin-form .woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{ display: inline; } .wcf-optin-form .woocommerce .woocommerce-notices-wrapper .woocommerce-message{ margin:1em 0 1em; } .wcf-optin-form .woocommerce .woocommerce-error li{ list-style: disc inside !important; margin: 0 0 8px; } .wcf-optin-form .woocommerce .woocommerce-error li strong{ font-weight: 400; } .wcf-optin-form .woocommerce form.checkout_coupon{ border: 1px solid #d3ced2; padding: 30px 20px 20px; margin: 2em 0; text-align: left; -webkit-border-radius: 5px; border-radius: 5px; } .wcf-optin-form .woocommerce .checkout_coupon p{ font-size: 14px; } .wcf-optin-form .woocommerce .checkout_coupon p{ font-family: inherit; font-weight: 500; margin-top: 0; margin-bottom: 10px; } /** * ********************** * One Column Layout * ********************** */ .wcf-optin-form-one-column{ background: inherit; width: 100%; margin:0 auto; } .wcf-optin-form-one-column .woocommerce .col2-set .col-1, .wcf-optin-form-one-column .woocommerce .col2-set .col-2, .wcf-optin-form-one-column .woocommerce-checkout .shop_table, .wcf-optin-form-one-column .woocommerce-checkout .wcf-qty-options, .wcf-optin-form-one-column .woocommerce-checkout #order_review_heading, .wcf-optin-form-one-column .woocommerce-checkout #your_products_heading, .wcf-optin-form-one-column .woocommerce-checkout #payment, .wcf-optin-form-one-column .woocommerce form.checkout_coupon, .wcf-optin-form-one-column .woocommerce .wcf-order-wrap{ width: 100%; } .wcf-optin-form-one-column input[type="text"], .wcf-optin-form-one-column input[type="email"], .wcf-optin-form-one-column input[type="password"], .wcf-optin-form-one-column input[type="tel"], .wcf-optin-form-one-column textarea, .wcf-optin-form-one-column select { display: block; width: 100%; min-height: 40px; padding: 11px 12px; font-family: inherit; font-weight:inherit; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; background-image: none; border: 1px solid #d4d4d4; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: none; box-shadow: none; } .wcf-optin-form-one-column .woocommerce-checkout #order_review_heading, .wcf-optin-form-one-column .woocommerce-checkout #your_products_heading{ margin:20px 0 0; } .wcf-optin-form-one-column .woocommerce-checkout #order_review{ width: 100%; } @media only screen and (max-width: 768px) { .wcf-optin-form form.checkout_coupon .button{ font-size: 12px; } /* Added for pro support */ .wcf-optin-form .woocommerce .col2-set .col-1, .wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-1, .wcf-optin-form .woocommerce .wcf-order-wrap { padding: 15px 0; } .wcf-optin-form .woocommerce .col2-set .col-2, .wcf-optin-form .woocommerce .wcf-col2-set .wcf-col-2 { padding: 0; } .wcf-optin-form .woocommerce form .form-row-first, .wcf-optin-form .woocommerce form .form-row-last { width: 100%; } .wcf-optin-form .woocommerce-additional-fields > h3, .wcf-optin-form .woocommerce-billing-fields > h3, .wcf-optin-form #order_review_heading, .wcf-optin-form .woocommerce #ship-to-different-address{ font-size: 1.0em; } } /** * ********************** * Divi Css Overrite * ********************** */ #et-info-email:before, #et-info-phone:before, #et_search_icon:before, .comment-reply-link:after, .et-cart-info span:before, .et-pb-arrow-next:before, .et-pb-arrow-prev:before, .et-social-icon a:before, .et_audio_container .mejs-playpause-button button:before, .et_audio_container .mejs-volume-button button:before, .et_overlay:before, .et_password_protected_form .et_submit_button:after, .et_pb_button:after, .et_pb_contact_reset:after, .et_pb_contact_submit:after, .et_pb_font_icon:before, .et_pb_newsletter_button:after, .et_pb_pricing_table_button:after, .et_pb_promo_button:after, .et_pb_social_icon a.icon:before, .et_pb_testimonial:before, .et_pb_toggle_title:before, .form-submit .et_pb_button:after, .mobile_menu_bar:before, .woocommerce #content input.button.alt:after, .woocommerce #content input.button:after, .woocommerce #respond input#submit.alt:after, .woocommerce #respond input#submit:after, .woocommerce a.button.alt:after, .woocommerce button.button.alt:after, .woocommerce button.button:after, .woocommerce button.single_add_to_cart_button.button:after, .woocommerce input.button.alt:after, .woocommerce input.button:after, .woocommerce-page #content input.button.alt:after, .woocommerce-page #content input.button:after, .woocommerce-page #respond input#submit.alt:after, .woocommerce-page #respond input#submit:after, .woocommerce-page a.button.alt:after, .woocommerce-page a.button:after, .woocommerce-page button.button.alt:after, .woocommerce-page button.button:after, .woocommerce-page input.button.alt:after, .woocommerce-page input.button:after, a.et_pb_more_button:after{ text-shadow: 0 0; font-family: none; font-weight: 400; font-style: normal; font-variant: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; line-height: 1; text-transform: none; speak: none; } .comment-reply-link:hover:after, .woocommerce #content input.button.alt:hover:after, .woocommerce #content input.button:hover:after, .woocommerce #respond input#submit.alt:hover:after, .woocommerce #respond input#submit:hover:after, .woocommerce a.button.alt:hover:after, .woocommerce a.button:hover:after, .woocommerce button.button.alt:hover:after, .woocommerce button.button:hover:after, .woocommerce input.button.alt:hover:after, .woocommerce input.button:hover:after { opacity: 0; } /** * ************************** * Thrive Compatibility css * ************************** */ .thrv_wrapper .wcf-optin-form div{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } PK\]S assets/css/frontend-divi-rtl.cssnuW+A/* Only Divi compatibility */ .et_pb_module #wcf-thankyou-wrap { padding: 0; margin: 0 auto; width: 100%; max-width: 55em; font-size: 13px; } .et_pb_module #wcf-thankyou-wrap a { color: inherit; padding: 0px; border: none; font-size: inherit; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::before, .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::after { content: ' '; display: table; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details::after { clear: both; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li { list-style: none; line-height: 1; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li { display: inline-block; border-left: 1px dashed #cccccc; padding: 0.5em 0 0.5em 1em; margin: 0.5em 0 0.5em 0.5em; list-style-type: none; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li:first-child { padding-right: 0; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li:last-child { border-left:0px; padding-left: 0; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details li strong { display: block; margin-top: 0.7em; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-downloads, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-bacs-bank-details { margin: 0 0 2em; -webkit-border-radius: 3px; border-radius: 3px; width: 100%; display: block; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-bacs-bank-details ul.bacs_details{ padding: 0px; } /* Section Background & Padding .et_pb_module #wcf-thankyou-wrap .woocommerce-order ul.order_details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-details, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-downloads, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-bacs-bank-details { background: #f1f1f1; padding: 1.5em 2.5em; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order h2.woocommerce-column__title, .et_pb_module #wcf-thankyou-wrap .woocommerce-order h2.woocommerce-order-details__title, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-thankyou-order-received, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-order-downloads__title, .et_pb_module #wcf-thankyou-wrap .woocommerce-order h2.wc-bacs-bank-details-heading { padding: 0.8em 0; margin: 0 0 0.5em; font-size: 1.5em; font-weight: 600; color: #404040; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-thankyou-order-received { margin: 0 0 1.5em; padding: 0 0.5em; text-align: center; } /* Order Details Form */ .woocommerce-order-details table.shop_table, .woocommerce-order-downloads table.shop_table { border:none; border-bottom: 0; background-color: inherit; -webkit-border-radius: 0; border-radius: 0; font-family: inherit; font-weight:inherit; font-size: 0.95em; margin: 0 0 0px 0 !important; border-collapse: collapse; text-align: right; } .woocommerce-order-details table.shop_table #shipping_method{ margin: 0; padding: 0; list-style: none; } .woocommerce-order-details table.shop_table th, .woocommerce-order-downloads table.shop_table th{ border: none; font-weight: 600; padding: 9px 0px; line-height: 1.2em; } .woocommerce-order-details table.shop_table tfoot tr:last-child .woocommerce-Price-amount { font-size: 1em; } .woocommerce-order-details table.shop_table td, .woocommerce-order-details table.shop_table th { padding: 0.6em 0; line-height: 1.4em; border: none; } .woocommerce-order-details table.shop_table tbody th, .woocommerce-order-details table.shop_table tfoot td, .woocommerce-order-details table.shop_table tfoot th { font-weight: normal; border: none; } .woocommerce-order-details table.shop_table tbody { border-top: 1px dashed #cccccc; border-bottom: 1px dashed #cccccc; } .woocommerce-order-details table.shop_table th.product-name, .woocommerce-order-details table.shop_table th.product-total{ font-weight: 600; } .woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) th, .woocommerce-order-details table.shop_table tfoot tr.order-total:not(.recurring-total) td { font-weight: 600; border-top: 1px dashed #cccccc; } .woocommerce-order-details table.shop_table tfoot tr.recurring-totals th { padding-top: 1.8em; font-weight: 600; } .woocommerce-order-details table.shop_table tfoot tr.recurring-totals th, .woocommerce-order-details table.shop_table tfoot tr.recurring-total th, .woocommerce-order-details table.shop_table tfoot tr.recurring-total td { vertical-align: top; } /**/ .et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set{ -js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-1{ margin-left: 2%; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-1, .et_pb_module #wcf-thankyou-wrap .woocommerce-order .wcf-col2-set .wcf-col-2 { width: 49%; display: inline-block; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details address { border-left-width: 1px; border-bottom-width: 1px; -webkit-border-radius: 0; border-radius: 0; font-style: normal; } .et_pb_module #wcf-thankyou-wrap .woocommerce-order .woocommerce-customer-details address p{ margin: 0; }PK\4ʟEEassets/js/import.jsnuW+A/** * AJAX Request Queue * * - add() * - remove() * - run() * - stop() * * @since 1.0.0 */ var CartFlowsAjaxQueue = (function() { var requests = []; return { /** * Add AJAX request * * @since 1.0.0 */ add: function(opt) { requests.push(opt); }, /** * Remove AJAX request * * @since 1.0.0 */ remove: function(opt) { if( jQuery.inArray(opt, requests) > -1 ) requests.splice($.inArray(opt, requests), 1); }, /** * Run / Process AJAX request * * @since 1.0.0 */ run: function() { var self = this, oriSuc; if( requests.length ) { oriSuc = requests[0].complete; requests[0].complete = function() { if( typeof(oriSuc) === 'function' ) oriSuc(); requests.shift(); self.run.apply(self, []); }; jQuery.ajax(requests[0]); } else { self.tid = setTimeout(function() { self.run.apply(self, []); }, 1000); } }, /** * Stop AJAX request * * @since 1.0.0 */ stop: function() { requests = []; clearTimeout(this.tid); } }; }()); (function($){ CartFlowsImport = { doc : $( document ), wrap : $( '.wcf-flow-steps-data-wrap' ), inner : $( '.wcf-flow-steps-data-wrap-importer' ), post_id : $( '#post_ID' ).val(), _ref : null, _api_step_type : {}, _api_params : {}, all_steps : 0, remaining_steps : 0, remaining_install_plugins : 0, remaining_active_plugins : 0, woo_required_steps: [ 'checkout', 'upsell', 'downsell', 'thankyou', 'optin' ], step_order: [ 'landing', 'checkout', 'upsell', 'downsell', 'thankyou', 'optin' ], new_step_names: { 'landing': 'Landing', 'checkout': 'Checkout (Woo)', 'upsell': 'Upsell (Woo)', 'downsell': 'Downsell (Woo)', 'thankyou': 'Thank You (Woo)', 'optin' : 'Optin (Woo)' }, /** * Init */ init: function() { this._bind(); if( 'other' !== CartFlowsImportVars.default_page_builder ) { if( $('.post-type-cartflows_flow').hasClass('edit-php') ) { this._process_cache_remote_flows(); } if( $('.post-type-cartflows_flow').hasClass('post-php') ) { this._process_cache_remote_steps(); } } if( $('.post-type-cartflows_flow').hasClass('edit-php') && null !== this._getParamFromURL('add-new-flow') ) { this._render_remote_flows(); } if( $('.post-type-cartflows_flow').hasClass('post-php') && null !== this._getParamFromURL('add-new-step') ) { this._render_remote_steps(); } if( this._getParamFromURL('highlight-step-id') ) { var selector = $('.wcf-step-wrap[data-id="'+this._getParamFromURL('highlight-step-id')+'"]'); if( selector.length ) { $('html, body').animate({ scrollTop: selector.offset().top }, 1500); } } if( $('.post-type-cartflows_flow').hasClass('edit-php') ) { var $product_screen = $( '.edit-php.post-type-cartflows_flow' ), $title_action = $product_screen.find( '.page-title-action:first' ); $title_action.after('Export' ); $title_action.after('Import'); } }, /** * Get URL param. */ _getParamFromURL: function(name, url) { if (!url) url = window.location.href; name = name.replace(/[\[\]]/g, "\\$&"); var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"), results = regex.exec(url); if (!results) return null; if (!results[2]) return ''; return decodeURIComponent(results[2].replace(/\+/g, " ")); }, /** * Binds events */ _bind: function() { var self = CartFlowsImport; self.doc.on('click', '.wcf-install-plugin', self._install_plugin); self.doc.on( 'cartflows-api-request-fail', self._api_request_failed ); self.doc.on('click', '#wcf-get-started-steps a, .wcf-create-from-scratch-link', self._toggle_ready_templates); self.doc.on('click', '.cartflows-flow-import-blank', self._create_default_flow); self.doc.on('click', '#wcf-remote-flow-importer .wcf-page-builder-links a', self._filterFlowPageBuilderClick); self.doc.on('click', '#wcf-remote-step-importer #wcf-categories .step-type-filter-links a', self._filterBlankStepCategoryClick ); self.doc.on('change', '#wcf-remote-step-importer #wcf-scratch-steps-categories .step-type-filter-links', self._filterBlankStepCategoryChange ); self.doc.on('click', '#wcf-get-started-steps', self._filterBlankStepCategoryChange ); self.doc.on('click', '#wcf-remote-step-importer .wcf-page-builder-links a', self._filterStepPageBuilderClick ); self.doc.on('click' , '.cartflows-step-import-blank:not(.get-pro)', self._create_blank_step); self.doc.on('click' , '#wcf-remote-step-importer .cartflows-step-import', self._process_import_step); self.doc.on('click' , '#wcf-remote-flow-importer .cartflows-step-import', self._process_import_flow); self.doc.on('click' , '.cartflows-preview-flow-step', self._preview_individual); self.doc.on( 'add_template_to_page-fail', self._add_template_to_page_fail); $( 'body' ).on('thickbox:iframe:loaded', self._previewLoaded ); // Event's for API request. $( document ).on('keyup input', '#wcf-remote-step-importer .wcf-flow-search-input', self._remote_step_search ); $( document ).on('click', '.actions a', self._previewResponsive ); $( document ).on( 'click', '.page-title-action:first', self._render_remote_flows ); $( document ).on( 'click', '.wcf-trigger-popup', self._render_remote_steps ); $( document ).on( 'click', '.wcf-templates-popup-overlay', self._close_template_popup ); $( document ).on( 'click', '.wcf-popup-close-wrap .close-icon', self._close_template_popup ); $( document ).on('wp-plugin-install-success' , self._installSuccess); $( document ).on( 'click', '.wcf-activate-wc', self._installWc ); }, _install_plugin: function( event ) { event.preventDefault(); var btn = $( this ); if( btn.hasClass('updating-message') ) { return; } $('#wcf-remote-flow-importer').addClass('request-process'); $('#wcf-remote-step-importer').addClass('request-process'); btn.addClass('updating-message button'); var page_builder_plugins = CartFlowsImportVars.required_plugins[ CartFlowsImportVars.default_page_builder ]['plugins']; $.each( page_builder_plugins, function( index, plugin ) { if( 'install' === plugin.status ) { CartFlowsImport.remaining_install_plugins++; } if( 'activate' === plugin.status ) { CartFlowsImport.remaining_active_plugins++; } }); // Have any plugin for install? if( CartFlowsImport.remaining_install_plugins ) { CartFlowsImport._install_all_plugins(); } else if( CartFlowsImport.remaining_active_plugins ) { CartFlowsImport._activate_all_plugins(); } else { if( $('#wcf-remote-flow-importer').length ) { CartFlowsImport._cache_remote_flows(); } else if( $('#wcf-remote-step-importer').length ) { CartFlowsImport._cache_remote_steps(); } } }, _install_all_plugins: function() { var page_builder_plugins = CartFlowsImportVars.required_plugins[ CartFlowsImportVars.default_page_builder ]['plugins']; $.each( page_builder_plugins, function( index, plugin ) { if( 'install' === plugin.status ) { // Add each plugin activate request in Ajax queue. // @see wp-admin/js/updates.js wp.updates.queue.push( { action: 'install-plugin', // Required action. data: { slug: plugin.slug } } ); } }); // Required to set queue. wp.updates.queueChecker(); }, _activate_all_plugins: function() { if( ! CartFlowsImport.remaining_active_plugins && ! CartFlowsImport.remaining_install_plugins ) { if( $('#wcf-remote-flow-importer').length ) { CartFlowsImport._cache_remote_flows(); } else if( $('#wcf-remote-step-importer').length ) { CartFlowsImport._cache_remote_steps(); } } else { var page_builder_plugins = CartFlowsImportVars.required_plugins[ CartFlowsImportVars.default_page_builder ]['plugins']; // Activate ALl Plugins. CartFlowsAjaxQueue.stop(); CartFlowsAjaxQueue.run(); $.each( page_builder_plugins, function( index, plugin ) { if( 'activate' === plugin.status ) { CartFlowsAjaxQueue.add({ url: CartFlowsImportVars.ajaxurl, type: 'POST', data: { action : 'cartflows_activate_plugin', plugin_init : plugin.init, security : CartFlowsImportVars.cartflows_activate_plugin_nonce }, success: function( result ) { CartFlowsImport.remaining_active_plugins--; if( ! CartFlowsImport.remaining_active_plugins && ! CartFlowsImport.remaining_install_plugins ) { if( $('#wcf-remote-flow-importer').length ) { CartFlowsImport._cache_remote_flows(); } else if( $('#wcf-remote-step-importer').length ) { CartFlowsImport._cache_remote_steps(); } } } }); } }); } }, _installSuccess: function( event, response ) { event.preventDefault(); if( 'no' === CartFlowsImportVars.is_wc_activated ) { CartFlowsImport._activateWc(); } var page_builder_plugins = CartFlowsImportVars.required_plugins[ CartFlowsImportVars.default_page_builder ]['plugins']; $.each( page_builder_plugins, function( index, plugin ) { if( 'install' === plugin.status && response.slug === plugin.slug ) { $.ajax({ url : ajaxurl, type : 'POST', data : { action : 'cartflows_activate_plugin', plugin_init : plugin.init, security : CartFlowsImportVars.cartflows_activate_plugin_nonce }, }) .done(function( request, status, XHR ) { CartFlowsImport.remaining_install_plugins--; if( ! CartFlowsImport.remaining_install_plugins ) { CartFlowsImport._activate_all_plugins(); } }); } }); }, _api_request_failed: function( event, data, jqXHR, textStatus ) { if( 'error' == textStatus ) { if( ! $('#wcf-remote-content-failed').length ) { $('#wcf-ready-templates').html( wp.template('cartflows-website-unreachable') ); } } }, _toggle_ready_templates: function( event ) { event.preventDefault(); var slug = $(this).data('slug') || ''; $('#wcf-get-started-steps').find('a').removeClass('current'); $('#wcf-get-started-steps').find('a[data-slug="'+slug+'"]').addClass('current'); if( 'canvas' == slug ) { $('#wcf-ready-templates').hide(); $('#wcf-start-from-scratch').show(); } else { $('#wcf-ready-templates').show(); $('#wcf-start-from-scratch').hide(); } if( ! $('.wcf-page-builder-notice').length && $('#wcf-remote-step-importer').length ) { CartFlowsImport._showSteps(); } }, _switch_step_tab: function( event ) { event.preventDefault();//stop browser to take action for clicked anchor //get displaying tab content jQuery selector var active_tab_selector = $('.wcf-tab > li.active > a').attr('href'); //find actived navigation and remove 'active' css var actived_nav = $('.wcf-tab > li.active'); actived_nav.removeClass('active'); //add 'active' css into clicked navigation $(this).parents('li').addClass('active'); //hide displaying tab content $(active_tab_selector).removeClass('active'); $(active_tab_selector).addClass('hide'); //show target tab content var target_tab_selector = $(this).attr('href'); $(target_tab_selector).removeClass('hide'); $(target_tab_selector).addClass('active'); }, /** * Search Site. * * Prepare Before API Request: * - Remove Inline Height * - Added 'hide-me' class to hide the 'No more sites!' string. * - Added 'loading-content' for body. * - Show spinner. */ _remote_step_search: function( event ) { event.preventDefault();//stop browser to take action for clicked anchor // Remove all filter classes. $('.step-type-filter-links').find('option').removeClass('current'); $('.step-type-filter-links').find('option:first-child').addClass('current'); window.clearTimeout(CartFlowsImport._ref); CartFlowsImport._ref = window.setTimeout(function () { CartFlowsImport._ref = null; CartFlowsImport._showSteps(); }, 500); }, /** * Responsive On Click. */ _previewResponsive: function( event ) { event.preventDefault(); var icon = $(this).find('.dashicons'); var viewClass = icon.attr('data-view') || ''; $('#TB_window').removeClass( 'desktop tablet mobile' ); $('#TB_window').addClass( viewClass ); $('.actions .dashicons').removeClass('active'); icon.addClass('active'); $('#TB_iframeContent').removeClass(); $('#TB_iframeContent').addClass( viewClass ); }, /** * On Filter Clicked */ _filterStepPageBuilderClick: function( event ) { event.preventDefault(); $(this).parents('ul').find('a').removeClass('current'); $(this).addClass('current'); var step_type = $('.step-type-filter-links .current').data('slug') || ''; if ( 'upsell' === step_type || 'downsell' === step_type ) { $( '.wcf-template-notice' ).show(); }else{ $( '.wcf-template-notice' ).hide(); } $('.wcf-page-builder-notice').html( '' ); $('#wcf-remote-step-list').html( '' ); CartFlowsImport._showSteps(); }, _filterBlankStepCategoryClick: function( event ) { event.preventDefault(); $('.wcf-page-builder-notice').html( '' ); var val = $(this).data('group') || ''; if( val ) { $('#wcf-scratch-steps-categories .step-type-filter-links').val( val ); $('#wcf-scratch-steps-categories .step-type-filter-links option').removeClass('current'); $('#wcf-scratch-steps-categories .step-type-filter-links option[data-group="'+val+'"]').addClass('current'); } $('.step-type-filter-links').find('a').removeClass('current'); $(this).addClass('current'); $step_type = $(this).data('slug'); if ( 'upsell' === $step_type || 'downsell' === $step_type ) { $( '.wcf-template-notice' ).show(); }else{ $( '.wcf-template-notice' ).hide(); } if( '' == CartFlowsImportVars._is_pro_active && ( 'upsell' == $step_type || 'downsell' == $step_type ) ) { $('.cartflows-step-import-blank').text( 'Get Pro' ); $('.cartflows-step-import-blank').attr( 'href', CartFlowsImportVars.domain_url ); $('.cartflows-step-import-blank').attr( 'target', '_blank' ); $('.cartflows-step-import-blank').addClass('get-pro'); // // $('#wcf-remote-step-list').find('.cartflows-step-import-blank').attr( 'class', 'button button-primary' ); } else { $('.cartflows-step-import-blank').text( 'Create Step' ); $('.cartflows-step-import-blank').removeClass( 'get-pro' ); $('.cartflows-step-import-blank').removeAttr( 'target' ); } $('#wcf-remote-step-list').html( '' ); CartFlowsImport._showSteps(); }, _filterBlankStepCategoryChange: function( event ) { event.preventDefault(); $(".wcf-notice-wrap").remove(); $('.cartflows-step-import-blank').css('pointer-events', 'auto').removeClass('disabled'); var val = $('.step-type-filter-links').find('option:selected').val() || ''; if( val ) { $('.step-type-filter-links').val( val ); $('.step-type-filter-links').find('a').removeClass('current'); $('.step-type-filter-links').find('a[data-group="'+val+'"]').addClass('current'); } $('.step-type-filter-links').find('option').removeClass('current'); $('.step-type-filter-links').find('option:selected').addClass('current'); $step_type = $('.step-type-filter-links').find('option:selected').data('slug'); if ( ( 'no' === CartFlowsImportVars.is_wc_installed || 'no' === CartFlowsImportVars.is_wc_activated ) && ( 'upsell' === $step_type || 'downsell' === $step_type || 'checkout' === $step_type || 'thankyou' === $step_type)) { $(".cartflows-step-import-blank").after("

    You need WooCommerce plugin installed and actived to use this product flow.

    Click here to install and activate WooCommerce

    "); $('.cartflows-step-import-blank').addClass('disabled').css('pointer-events', 'none'); return; } if ( 'upsell' === $step_type || 'downsell' === $step_type ) { $( '.wcf-template-notice' ).show(); }else{ $( '.wcf-template-notice' ).hide(); } if( '' == CartFlowsImportVars._is_pro_active && ( 'upsell' == $step_type || 'downsell' == $step_type ) ) { $('.cartflows-step-import-blank').text( 'Get Pro' ); $('.cartflows-step-import-blank').attr( 'href', CartFlowsImportVars.domain_url ); $('.cartflows-step-import-blank').attr( 'target', '_blank' ); $('.cartflows-step-import-blank').addClass('get-pro'); // // $('#wcf-remote-step-list').find('.cartflows-step-import-blank').attr( 'class', 'button button-primary' ); } else { $('.cartflows-step-import-blank').text( 'Create Step' ); $('.cartflows-step-import-blank').removeClass( 'get-pro' ); $('.cartflows-step-import-blank').removeAttr( 'target' ); } if( ! $('.wcf-page-builder-notice').length && $('#wcf-remote-step-importer').length ) { $('#wcf-remote-step-list').html( '' ); CartFlowsImport._showSteps(); } }, _showSteps: function() { // Add Params for API request. var api_params = { licence_args : CartFlowsImportVars.licence_args, per_page : 100, _fields : CartFlowsImportVars.step_fields.toString(), }; var type = $('#wcf-categories .step-type-filter-links').find('.current').data('group') || ''; var step_type = $('#wcf-categories .step-type-filter-links').find('.current').data('slug') || ''; if( '' !== type && 'all' !== type ) { api_params[ CartFlowsImportVars.step_type ] = type; } // Page Builder. var type = $('#wcf-page-builders .wcf-page-builder-links').find('.current').data('group') || ''; var step_type = $('#wcf-page-builders .wcf-page-builder-links').find('.current').data('slug') || ''; var title = $('#wcf-page-builders .wcf-page-builder-links').find('.current').data('title') || 'Page Builder'; if( '' !== type && 'all' !== type ) { api_params[ CartFlowsImportVars.step_page_builder ] = type; } // API Request. var api_post = { remote_slug : CartFlowsImportVars.step, slug : CartFlowsImportVars.step + '?' + decodeURIComponent( $.param( api_params ) ), }; CartFlowsAPI._api_request( api_post, function( data ) { data.current_step_type = step_type; if ('yes' !== CartFlowsImportVars.is_wc_activated) { $.each(data.items, function (index, value) { data.items[index].woo_required = false; if ($.inArray(value.step_type.slug, CartFlowsImport.woo_required_steps) >= 0) { data.items[index].woo_required = true; return; } }); } var template = wp.template('cartflows-steps-list'); if( parseInt( data.items_count ) ) { $('#wcf-remote-step-list').html( template( data ) ); } else { $('#wcf-remote-step-list').html( wp.template('cartflows-no-steps') ); $('.cartflows-no-steps').find( '.description' ).html( 'We are working on ready templates designed with '+title+'.
    Meanwhile you can create your own designs easily.' ); } $('.wcf-page-builder-notice').remove(); $('#wcf-remote-step-importer').removeClass('request-process'); } ); }, _apiAddParam_per_page: function() { CartFlowsImport._api_params['per_page'] = 100; }, // Add Params for API request. _apiAddParam_licence_args: function() { CartFlowsImport._api_params['licence_args'] = CartFlowsImportVars.licence_args; }, // Add 'search' _apiAddParam_search: function() { var search_val = $('.wcf-flow-search-input').val() || ''; if( '' !== search_val ) { CartFlowsImport._api_params['search'] = search_val; } }, _close_popup: function() { $('#cartflows-steps').fadeOut(); $('body').removeClass('cartflows-popup-is-open'); }, _post_auto_save: function() { var post_title = $( '#title' ); var post_prompt_text = $( '#title-prompt-text' ); var self = CartFlowsImport; if ( ! post_title.val() ) { post_title.val( 'CartFlows #' + self.post_id ); if( post_prompt_text.length ) { post_prompt_text.remove(); } } if ( wp.autosave ) { wp.autosave.server.triggerSave(); } }, _process_cache_remote_flows: function() { if( 'gutenberg' == CartFlowsImportVars.default_page_builder ) { CartFlowsImport._cache_remote_flows(); } else { var page_builder_plugins = CartFlowsImportVars.required_plugins[ CartFlowsImportVars.default_page_builder ]['plugins']; var anyInactive = true; $.each( page_builder_plugins, function( index, plugin ) { if( anyInactive ) { if( 'install' === plugin.status || 'activate' === plugin.status ) { anyInactive = false; } } }); if( false === anyInactive ) { $('.wcf-page-builder-notice').html( wp.template('cartflows-page-builder-notice') ); $('#wcf-remote-flow-list').find( '.spinner' ).remove(); } else { CartFlowsImport._cache_remote_flows(); } } }, _cache_remote_flows: function() { var self = CartFlowsImport; // Add Params for API request. var api_params = { search : CartFlowsImportVars.default_page_builder, licence_args : CartFlowsImportVars.licence_args, hide_empty : false, _fields : CartFlowsImportVars.flow_page_builder_fields.toString(), }; // API Request. var api_post = { remote_slug : CartFlowsImportVars.flow_page_builder, slug : CartFlowsImportVars.flow_page_builder + '?'+decodeURIComponent( $.param( api_params ) ), wrapper_class : 'wcf-page-builder-links filter-links', show_all : false, }; CartFlowsAPI._api_request( api_post, function( data ) { var template = wp.template('cartflows-term-filters'); $('#wcf-page-builders').html(template( data )); $('#wcf-page-builders').find('li:first a').addClass('current'); // Step 2: Categories. // Add Params for API request. var api_params = { licence_args : CartFlowsImportVars.licence_args, hide_empty : true, _fields : CartFlowsImportVars.flow_type_fields.toString(), }; // API Request. var api_post = { remote_slug : CartFlowsImportVars.flow_type, slug : CartFlowsImportVars.flow_type + '?'+decodeURIComponent( $.param( api_params ) ), wrapper_class : 'flow-type-filter-links filter-links', show_all : false, }; CartFlowsAPI._api_request( api_post, function( data ) { var template = wp.template('cartflows-term-filters'); $('#wcf-categories').html(template( data )); $('#wcf-categories').find('li:first a').addClass('current'); // Step 3: Flows. CartFlowsImport._showFlows(); } ); } ); }, _render_remote_flows: function( event ) { if( event ) { event.preventDefault(); } $("#wcf-remote-flow-importer").addClass('open'); $("html").addClass('wcf-popup-open'); }, _process_cache_remote_steps: function() { if( 'gutenberg' == CartFlowsImportVars.default_page_builder ) { CartFlowsImport._cache_remote_steps(); } else { var page_builder_plugins = CartFlowsImportVars.required_plugins[ CartFlowsImportVars.default_page_builder ]['plugins']; var anyInactive = true; $.each( page_builder_plugins, function( index, plugin ) { if( anyInactive ) { if( 'install' === plugin.status || 'activate' === plugin.status ) { anyInactive = false; } } }); if( false === anyInactive ) { $('.wcf-page-builder-notice').html( wp.template('cartflows-page-builder-notice') ); $('#wcf-remote-step-list').find( '.spinner' ).remove(); } else { CartFlowsImport._cache_remote_steps(); } } }, mapOrder: function (array, order, key) { array.sort(function (a, b) { var A = a[key], B = b[key]; if ( order.indexOf(A) === -1 ) { return 0; } if (order.indexOf(A) > order.indexOf(B)) { return 1; } else { return -1; } }); return array; }, _cache_remote_steps: function() { var self = CartFlowsImport; // Disable the button until caching the data. $( 'html' ).addClass('wcf-steps-loading'); // Add Params for API request. var api_params = { search : CartFlowsImportVars.default_page_builder, licence_args : CartFlowsImportVars.licence_args, hide_empty : false, _fields : CartFlowsImportVars.step_page_builder_fields.toString(), }; // API Request. var api_post = { remote_slug : CartFlowsImportVars.step_page_builder, slug : CartFlowsImportVars.step_page_builder + '?'+decodeURIComponent( $.param( api_params ) ), wrapper_class : 'wcf-page-builder-links filter-links', show_all : false, }; CartFlowsAPI._api_request( api_post, function( data ) { var template = wp.template('cartflows-term-filters'); $('#wcf-page-builders').html(template( data )); $('#wcf-page-builders').find('li:first a').addClass('current'); } ); // Add Params for API request. var api_params = { licence_args : CartFlowsImportVars.licence_args, _fields : CartFlowsImportVars.step_type_fields.toString(), }; // API Request. var api_post = { remote_slug : CartFlowsImportVars.step_type, slug : CartFlowsImportVars.step_type + '?'+decodeURIComponent( $.param( api_params ) ), wrapper_class : 'step-type-filter-links filter-links', show_all : false, }; CartFlowsAPI._api_request( api_post, function( data ) { data.items = CartFlowsImport.mapOrder( data.items, CartFlowsImport.step_order, 'slug' ); var step_type_response_data = data; var step_types_count = data.items_count; // Send other request for JS caching. if( data.items ) { for ( key in data.items ) { // Rename Step names on UI. data.items[ key ].name = CartFlowsImport.new_step_names[ data.items[ key ].slug ]; // Add Params for API request. var api_params = { licence_args : CartFlowsImportVars.licence_args, per_page : 100, _fields : CartFlowsImportVars.step_fields.toString(), }; api_params[ CartFlowsImportVars.step_type ] = data.items[ key ].id; // API Request. var api_post = { remote_slug : CartFlowsImportVars.step, slug : CartFlowsImportVars.step + '?' + decodeURIComponent( $.param( api_params ) ), }; CartFlowsAPI._api_request( api_post, function( data ) { var template = wp.template('cartflows-steps-list'); if( parseInt( data.items_count ) ) { $('#wcf-remote-step-list').html( template( data ) ); } else { $('#wcf-remote-step-list').html( wp.template('cartflows-no-steps') ); } step_types_count--; if( 0 == step_types_count ) { var template_dropdown = wp.template('cartflows-term-filters-dropdown'); var template = wp.template('cartflows-term-filters'); $('#wcf-categories').html(template( step_type_response_data )); $('#wcf-scratch-steps-categories').html(template_dropdown( step_type_response_data )); $('#wcf-scratch-steps-categories').find('option:first').addClass('current'); $('#wcf-categories').find('li a[data-slug=landing]').addClass('current'); $('.wcf-page-builder-notice').remove(); $('#wcf-remote-content').find( '.spinner' ).remove(); CartFlowsImport._showSteps(); $( 'html' ).removeClass('wcf-steps-loading'); } }); } } } ); }, _render_remote_steps: function( event ) { if( event ) { event.preventDefault(); } $("#wcf-remote-step-importer").addClass('open'); $("html").addClass('wcf-popup-open'); }, _categorize_data: function( items ) { var categorised_data = []; $.each( items, function( index, value ) { var step_type = value.step_type.slug; if( 'undefined' == typeof categorised_data[step_type] ) { categorised_data[step_type] = []; } categorised_data[step_type].push( value ); }); return categorised_data; }, _close_template_popup: function( event ) { if ( $( event.target ).hasClass('wcf-templates-popup-overlay') || $( event.target ).hasClass('close-icon') ) { // New step creation/importing is in process.. if( ! $( '.wcf-templates-popup-overlay' ).hasClass('request-process') ) { $("html").removeClass('wcf-popup-open'); $(".wcf-templates-popup-overlay").removeClass( 'open' ); } } }, _ajax: function( data, callback, trigger ) { var self = CartFlowsImport; $.ajax({ url : ajaxurl, type : 'POST', data : data, }) .done(function( request, status, XHR ) { var data = { request : request, status : status, XHR : XHR, }; if( callback && typeof callback == "function"){ callback( data ); } self.doc.trigger( trigger + '-done', [request, status, XHR] ); }) .fail(function( jqXHR, textStatus ) { self.doc.trigger( trigger + '-fail', [jqXHR, textStatus] ); }) .always(function() { self.doc.trigger( trigger + '-always' ); }); }, _empty: function(data) { if(typeof(data) == 'number' || typeof(data) == 'boolean') { return false; } if(typeof(data) == 'undefined' || data === null) { return true; } if(typeof(data.length) != 'undefined') { return data.length == 0; } var count = 0; for(var i in data) { if(data.hasOwnProperty(i)) { count ++; } } return count == 0; }, _preview_individual: function() { var id = $(this).data('id') || ''; var href = $(this).data('href') || ''; // Active. $('.cartflows-preview-flow-step').removeClass('active'); $('.cartflows-preview-flow-step[data-id="'+id+'"]').addClass('active'); $('#TB_window').addClass('cartflows-thickbox-loading'); $('#TB_iframeContent').removeAttr('onload'); $('#TB_iframeContent').removeAttr('src'); $('#TB_iframeContent').attr('src', href ); $('#TB_iframeContent').attr('onload', 'CartFlowsImport.showIframe()' ) }, showIframe: function() { $("#TB_load").remove(); $("#TB_window").css({'visibility':'visible'}); // $("#TB_window").css({'visibility':'visible'}).trigger( 'thickbox:iframe:loaded' ); $('#TB_window').removeClass('cartflows-thickbox-loading'); }, /** * Remove thickbox loading class * * @param object event Event object. * @return void. */ _previewLoaded: function( event ) { event.preventDefault(); $('#TB_window').removeClass('cartflows-thickbox-loading'); }, _filterFlowPageBuilderClick: function( event ) { event.preventDefault(); $(this).parents('ul').find('a').removeClass('current'); $(this).addClass('current'); $('.wcf-page-builder-notice').html( '' ); $('#wcf-remote-flow-list').html( '' ); CartFlowsImport._showFlows(); }, _showFlows: function() { // Add Params for API request. var api_params = { licence_args : CartFlowsImportVars.licence_args, _fields : CartFlowsImportVars.flow_fields.toString(), per_page : 100 }; // Page Builder. var type = $('#wcf-page-builders .wcf-page-builder-links').find('.current').data('group') || ''; var step_type = $('#wcf-page-builders .wcf-page-builder-links').find('.current').data('slug') || ''; var title = $('#wcf-page-builders .wcf-page-builder-links').find('.current').data('title') || 'Page Builder'; if( '' !== type && 'all' !== type ) { api_params[ CartFlowsImportVars.flow_page_builder ] = type; } // API Request. var api_post = { remote_slug : CartFlowsImportVars.flow, slug : CartFlowsImportVars.flow + '?' + decodeURIComponent( $.param( api_params ) ), }; CartFlowsAPI._api_request( api_post, function( data ) { if ('yes' !== CartFlowsImportVars.is_wc_activated) { $.each(data.items, function (index, value) { data.items[index].woo_required = false; $.each(value.flow_steps, function (key, value) { if ($.inArray(value.type, CartFlowsImport.woo_required_steps) >= 0) { data.items[index].woo_required = true; return; } }); }); } var template = wp.template('cartflows-flows-list'); if( parseInt( data.items_count ) ) { $('#wcf-remote-flow-list').html( template( data ) ); } else { $('#wcf-remote-flow-list').html( wp.template('cartflows-no-flows') ); // $('.cartflows-no-flows').find( '.description' ).html( 'We are working on ready templates designed with '+title+'.
    Meanwhile you can create your own designs easily.' ); } $('.wcf-page-builder-notice').remove(); $('#wcf-remote-flow-importer').removeClass('request-process'); } ); }, _create_default_flow: function( event ) { event.preventDefault(); var self = CartFlowsImport; var btn = $( this ); if( btn.hasClass('updating-message') ) { return; } $('#wcf-remote-flow-importer').addClass('request-process'); btn.addClass('updating-message').text( 'Creating Flow..' ); btn.parents('.template').addClass('importing'); var data = { action : 'cartflows_default_flow', security: cartflows_admin.cf_default_flow_nonce }; // Import Template AJAX. self._ajax( data, function( data ) { if( data.request.success ) { var flow_id = data.request.data; // Created. setTimeout(function() { btn.removeClass('updating-message').text('Flow Created! Redirecting..'); window.location = CartFlowsImportVars.admin_url + 'post.php?post='+flow_id+'&action=edit'; }, 3000); } }); }, _activate_plugin: function( plugin_init ) { var self = CartFlowsImport; var data = { action : 'cartflows_activate_plugin', plugin_init : plugin_init, security : CartFlowsImportVars.cartflows_activate_plugin_nonce }; self._ajax( data, function( data ) { }); }, _process_import_flow: function( event ) { event.preventDefault(); var btn = $( this ); if( btn.hasClass('updating-message') ) { return; } $('#wcf-remote-flow-importer').addClass('request-process'); var self = CartFlowsImport; btn.text( 'Creating Flow..' ); btn.addClass('updating-message'); btn.parents('.template').addClass('importing'); var flow_steps_string = btn.data('flow-steps') || ''; var flow_steps = ( '' !== flow_steps_string ) ? JSON.parse("[" + flow_steps_string + "]") : []; var data = { action : 'cartflows_create_flow', security: cartflows_admin.cf_create_flow_nonce }; // Import Template AJAX. self._ajax( data, function( data ) { if( data.request.success ) { var flow_id = data.request.data; if( flow_steps ) { // Activate ALl Plugins. CartFlowsAjaxQueue.stop(); CartFlowsAjaxQueue.run(); CartFlowsImport.all_steps = flow_steps.length; // Importing. btn.addClass('updating-message').text('Importing Step 1 of ' + CartFlowsImport.all_steps ); $.each(flow_steps, function(index, template_id) { CartFlowsAjaxQueue.add({ url: CartFlowsImportVars.ajaxurl, type: 'POST', data: { action : 'cartflows_import_flow_step', flow_id : flow_id, template_id : template_id, security : cartflows_admin.cf_import_flow_step_nonce }, success: function( result ) { CartFlowsImport.remaining_steps = CartFlowsImport.remaining_steps + 1; if( CartFlowsImport.remaining_steps === CartFlowsImport.all_steps ) { // Imported. btn.addClass('updating-message').text('Imported Step ' + CartFlowsImport.remaining_steps + ' of ' + CartFlowsImport.all_steps ); setTimeout(function() { btn.removeClass('updating-message').text('All Imported! Redirecting..'); window.location = CartFlowsImportVars.admin_url + 'post.php?post='+flow_id+'&action=edit'; }, 3000); } else { // Importing. btn.addClass('updating-message').text('Importing Step ' + CartFlowsImport.remaining_steps + ' of ' + CartFlowsImport.all_steps ); } }, error: function( result ) { CartFlowsImport.remaining_steps = CartFlowsImport.remaining_steps + 1; template = btn.parents('.template.importing'); template.find('.preview') .addClass('notice notice-warning') .removeClass('preview') .text( result.statusText ); if( CartFlowsImport.remaining_steps === CartFlowsImport.all_steps ) { // Imported. btn.addClass('updating-message').text('Failed ' + CartFlowsImport.remaining_steps + ' of ' + CartFlowsImport.all_steps ); setTimeout(function() { btn.removeClass('updating-message button-primary').addClass('disabled'); // location.reload(); }, 3000); } else { // Importing. btn.addClass('updating-message').text('Failed ' + CartFlowsImport.remaining_steps + ' of ' + CartFlowsImport.all_steps ); } }, fail: function( result ) { CartFlowsImport.remaining_steps = CartFlowsImport.remaining_steps + 1; if( CartFlowsImport.remaining_steps === CartFlowsImport.all_steps ) { // Imported. btn.addClass('updating-message').text('Imported ' + CartFlowsImport.remaining_steps + ' of ' + CartFlowsImport.all_steps ); setTimeout(function() { btn.removeClass('updating-message').text('All Step Imported! Reloading..'); location.reload(); }, 3000); } else { // Importing. btn.addClass('updating-message').text('Importing ' + CartFlowsImport.remaining_steps + ' of ' + CartFlowsImport.all_steps ); } } }); }); } } }); }, _handle_error: function( response ) { var btn = $( '.cartflows-step-import.updating-message' ); btn.addClass('updating-message').text( response.errorMessage ); }, _create_blank_step: function( event ) { event.preventDefault(); var btn = $(this), self = CartFlowsImport, flow_id = $("#post_ID").val(), step_slug = $('#wcf-scratch-steps-categories .step-type-filter-links .current').data('slug') || '', step_title = $('#wcf-scratch-steps-categories .step-type-filter-links .current').data('title') || '', step_type = step_slug, step_count = $('.wcf-step-wrap[data-term-slug="'+step_slug+'"]').length || 1, step_custom_title = step_title + ' ' + ( parseInt( step_count ) + 1 ); all_step_type = [ 'landing', 'checkout', 'thankyou' ]; $('#wcf-start-from-scratch .wcf-notice-wrap ').remove(); if( '' === step_type ) { $('#wcf-start-from-scratch .inner').append( '

    Please select the step type.

    ' ); return; } if ( ! CartFlowsImportVars._is_pro_active && ( 'upsell' === step_type || 'downsell' === step_type )) { return; } btn.parents('.template').addClass('importing'); if ( ! CartFlowsImportVars._is_pro_active ) { if ( jQuery.inArray( step_type, all_step_type ) != '-1' ) { var current_steps = $( '.wcf-step-wrap[data-term-slug="'+step_type+'"]'); if ( 0 < current_steps.length ) { var parent_template = btn.parents('.template.importing'); btn.removeClass('importing updating-message') .text('Import Failed!'); $('#wcf-start-from-scratch .inner').append( '

    Upgrade to Pro for adding more than one '+step_type.charAt(0).toUpperCase()+step_type.slice(1)+' step.

    ' ); return; } } } $('#wcf-remote-step-importer').addClass('request-process'); $('.cartflows-step-import').addClass('disabled'); btn.addClass('importing updating-message').text('Creating..'); // Process Import Page. if( $( 'body' ).hasClass( 'post-type-cartflows_flow' ) ) { var data = { action : 'cartflows_step_create_blank', flow_id : flow_id, step_type : step_type, step_title : step_custom_title, security : cartflows_admin.cf_step_create_blank_nonce }; // Import Template AJAX. self._ajax( data, function( data ) { var self = CartFlowsImport; var template = btn.parents('.template.importing'); if( data.request.success ) { btn.text('Created. Reloading..'); setTimeout(function() { window.location.href = window.location.href + '&highlight-step-id=' + data.request.data; }, 3000); } else { btn.removeClass('importing updating-message') .text('Creating Failed!'); $('#wcf-remote-step-importer').removeClass('request-process'); template.find('.cartflows-step-preview').append( "
    " ); template.find('.preview') .addClass('notice notice-warning') .removeClass('preview') .text( data.request.data ); } } ); } }, _process_import_step: function( event ) { event.preventDefault(); var btn = $( this ), step_slug = btn.data('slug') || '', step_count = $('.wcf-step-wrap[data-term-slug="'+step_slug+'"]').length || 1; step_title = btn.data('title') || '', step_custom_title = step_title + ' ' + ( parseInt( step_count ) + 1 ), self = CartFlowsImport; all_step_slug = [ 'landing', 'checkout', 'thankyou' ]; if ( ! CartFlowsImportVars._is_pro_active ) { if ( jQuery.inArray( step_slug, all_step_slug ) != '-1' ) { var current_step_slug = $( '.wcf-step-wrap[data-term-slug="'+step_slug+'"]'); if ( 0 < current_step_slug.length ) { var parent_template = btn.parents('.template'); btn.removeClass('importing updating-message') .text('Import Failed!'); parent_template.find('.preview').hide(); var notice_wrap = parent_template.find('#wcf_create_notice') .show(); notice_wrap.find('a') .addClass('notice notice-warning ') .text ( 'Upgrade to Pro for adding more than one '+step_slug.charAt(0).toUpperCase()+step_slug.slice(1)+' step' ); $('#wcf-remote-step-importer').removeClass('request-process'); return; } } } if( btn.hasClass('updating-message') ) { return; } $('#wcf-remote-step-importer').addClass('request-process'); var self = CartFlowsImport; btn.addClass('updating-message'); btn.parents('.template').addClass('importing'); // var plugin_slug = ''; // plugin = response.slug; // switch ( plugin ) { // case 'elementor': // plugin_slug = 'elementor/elementor.php'; // break; // case 'beaver-builder-lite-version': // plugin_slug = 'beaver-builder-lite-version/fl-builder.php'; // break; // } // self._activate_plugin( plugin_slug ); var template_id = btn.data('template-id') || ''; var flow_id = $("#post_ID").val(); var step_type = step_slug; var self = CartFlowsImport; $('.cartflows-step-import-blank').addClass('disabled'); $('.cartflows-step-import').addClass('disabled'); btn.addClass('importing updating-message').text('Importing..'); // Process Import Page. if( $( 'body' ).hasClass( 'post-type-cartflows_flow' ) ) { var data = { action : 'cartflows_step_import', flow_id : flow_id, template_id : template_id, step_title : step_custom_title, step_type : step_type, security : cartflows_admin.cf_step_import_nonce }; // Import Template AJAX. self._ajax( data, function( data ) { var self = CartFlowsImport; var template = btn.parents('.template.importing'); if( data.request.success ) { btn.text('Imported. Reloading..'); setTimeout(function() { window.location.href = window.location.href + '&highlight-step-id=' + data.request.data; }, 3000); } else { $( '.wcf-templates-popup-overlay' ).removeClass('request-process'); btn.removeClass('importing updating-message') .text('Import Failed!'); template.find('.preview') .addClass('notice notice-warning') .removeClass('preview') .text( data.request.data ); } }, 'add_template_to_page' ); } }, _add_template_to_page_fail: function( event, jqXHR, textStatus ) { event.preventDefault(); var self = CartFlowsImport, template = $('.wcf-flow-steps-data-wrap-importer .template.importing'); template.find('.cartflows-step-import') .removeClass('importing updating-message') .text('Import Failed!'); template.find('.preview') .addClass('notice notice-warning') .removeClass('preview') .text( jqXHR.responseText ); }, _activateWc: function( event ) { $.ajax({ url : ajaxurl, type : 'POST', data : { action : 'cartflows_activate_plugin', plugin_init : 'woocommerce/woocommerce.php', security : CartFlowsImportVars.cartflows_activate_plugin_nonce }, }) .done(function( request, status, XHR ) { $(".wcf-notice-wrap").addClass('wcf-hidden'); $(".cartflows-template-selector").removeAttr( 'disabled' ); CartFlowsImport.wc_installed = true; CartFlowsImportVars.is_wc_installed = 'yes'; CartFlowsImportVars.is_wc_activated = 'yes'; location.reload(true); window.location.search += '&add-new-flow'; }); }, _installWc: function( event ) { var plugin_slug = 'woocommerce'; $(this).addClass('updating-message button'); $(this).text( cartflows_admin.wc_activating_message ); if( false == cartflows_admin.wc_status.installed ) { if ( wp.updates.shouldRequestFilesystemCredentials && ! wp.updates.ajaxLocked ) { wp.updates.requestFilesystemCredentials( event ); $document.on( 'credential-modal-cancel', function() { var $message = $( '.install-now.updating-message' ); $message .removeClass( 'updating-message' ) .text( wp.updates.l10n.installNow ); wp.a11y.speak( wp.updates.l10n.updateCancel, 'polite' ); } ); } wp.updates.installPlugin( { slug: plugin_slug } ); } else { CartFlowsImport._activateWc(); } } }; /** * Initialization */ $(function(){ CartFlowsImport.init(); }); })(jQuery); PK\kRassets/js/rest-api.jsnuW+A (function($){ var CartFlowsAPILocalCache = { /** * timeout for cache in millis * @type {number} */ timeout: 300000, /** * @type {{_: number, data: {}}} **/ data: {}, /** * Remove cache * * @param {[type]} url [description] * @return {[type]} [description] */ remove: function (url) { delete CartFlowsAPILocalCache.data[url]; }, /** * Check cache * * @param {[type]} url [description] * @return {[type]} [description] */ exist: function (url) { return !! CartFlowsAPILocalCache.data[url] && ((new Date().getTime() - CartFlowsAPILocalCache.data[url]._) < CartFlowsAPILocalCache.timeout); }, /** * Get cache * * @param {[type]} url [description] * @return {[type]} [description] */ get: function (url) { return CartFlowsAPILocalCache.data[url].data; }, /** * Set cache * * @param {[type]} url [description] * @param {[type]} cachedData [description] * @param {Function} callback [description] */ set: function (url, cachedData, callback) { CartFlowsAPILocalCache.remove(url); CartFlowsAPILocalCache.data[url] = { _ : new Date().getTime(), data : cachedData }; if( callback && typeof callback == "function"){ callback( cachedData ); } } }; $.ajaxPrefilter(function (options, originalOptions, jqXHR) { if( 'brainstormforce' !== options.author ) { return; } var complete = originalOptions.complete || $.noop, url = originalOptions.url; options.beforeSend = function () { if (CartFlowsAPILocalCache.exist(url)) { var data = CartFlowsAPILocalCache.get(url); // Load from cache. CartFlowsAPI._api_cached_request( data ); return false; } return true; }; options.complete = function (XHR, status) { var data = { args : options.args, items : ( XHR.responseText ) ? JSON.parse( XHR.responseText ) : '', items_count : XHR.getResponseHeader('x-wp-total') || 0, callback : options.callback, // AJAX response. status : status, XHR : XHR, }; CartFlowsAPILocalCache.set(url, data, complete); }; }); CartFlowsAPI = { /** * Debugging. * * @param {mixed} data Mixed data. */ _log: function( data, format ) { if( CartFlowsImportVars.debug ) { if( 'table' === format ) { console.table( data ); } else { var date = new Date(); var time = date.toLocaleTimeString(); if (typeof data == 'object') { console.log('%c ' + JSON.stringify( data ) + ' ' + time, 'background: #ededed; color: #444'); } else { console.log('%c ' + data + ' ' + time, 'background: #ededed; color: #444'); } } } }, _api_url : CartFlowsImportVars.server_rest_url, _api_cached_request: function( data ) { CartFlowsAPI._log( CartFlowsAPILocalCache.data, 'table' ); CartFlowsAPI._log( 'Current time ' + new Date().getTime() ); CartFlowsAPI._log( 'Cache expired in ' + parseInt( CartFlowsAPILocalCache.timeout ) / 1000 + ' seconds.' ); if( undefined !== data.args.trigger && '' !== data.args.trigger ) { $(document).trigger( data.args.trigger, [data] ); } if( data.callback && typeof data.callback == "function"){ data.callback( data ); } }, _api_request: function( args, callback ) { // Set API Request Data. var data = { url : CartFlowsAPI._api_url + args.slug, args : args, callback : callback, author : 'brainstormforce', }; // Set headers. data.headers = CartFlowsImportVars.headers; $.ajax( data ) .done(function( items, status, XHR ) { if( 'success' === status && XHR.getResponseHeader('x-wp-total') ) { var data = { args : args, items : items, items_count : XHR.getResponseHeader('x-wp-total') || 0, callback : callback, // AJAX response. status : status, XHR : XHR, }; if( undefined !== args.trigger && '' !== args.trigger ) { $(document).trigger( args.trigger, [data] ); } } else { $(document).trigger( 'cartflows-api-request-error' ); } if( callback && typeof callback == "function"){ callback( data ); } }) .fail(function( jqXHR, textStatus ) { $(document).trigger( 'cartflows-api-request-fail', [data, jqXHR, textStatus] ); }) .always(function() { $(document).trigger( 'cartflows-api-request-always' ); }); }, }; })(jQuery);PK\\X9jjassets/js/frontend.jsnuW+A(function($){ /* It will redirect if anyone clicked on link before ready */ $(document).on( 'click', 'a[href*="wcf-next-step"]', function(e) { e.preventDefault(); if( 'undefined' !== typeof cartflows.is_pb_preview && '1' == cartflows.is_pb_preview ) { e.stopPropagation(); return; } window.location.href = cartflows.next_step; return false; }); /* Once the link is ready this will work to stop conditional propogation*/ $(document).on( 'click', '.wcf-next-step-link', function(e) { if( 'undefined' !== typeof cartflows.is_pb_preview && '1' == cartflows.is_pb_preview ) { e.preventDefault(); e.stopPropagation(); return false; } }); // Remove css when oceanwp theme is enabled. var remove_oceanwp_custom_style = function(){ if( 'OceanWP' === cartflows.current_theme && 'default' !== cartflows.page_template){ var style = document.getElementById("oceanwp-style-css"); if( null != style ){ style.remove(); } } }; var trigger_facebook_events = function () { if ('enable' === cartflows.fb_active['facebook_pixel_tracking']) { if (cartflows.fb_active['facebook_pixel_id'] != '') { var facebook_pixel = cartflows.fb_active['facebook_pixel_id']; var initial_checkout_event = cartflows.fb_active['facebook_pixel_initiate_checkout']; var purchase_event = cartflows.fb_active['facebook_pixel_purchase_complete']; var add_payment_info_event = cartflows.fb_active['facebook_pixel_add_payment_info']; var facebook_pixel_for_site = cartflows.fb_active['facebook_pixel_tracking_for_site']; var is_checkout_page = cartflows.is_checkout_page; fbq('init', facebook_pixel); fbq('track', 'PageView', {'plugin': 'CartFlows'}); if ('enable' === initial_checkout_event) { if ('1' === is_checkout_page) { fbq('track', 'AddToCart', cartflows.params); fbq('track', 'InitiateCheckout', cartflows.params); } } if ('enable' === purchase_event) { var order_details = $.cookie('wcf_order_details'); if (typeof order_details !== 'undefined') { fbq('track', 'Purchase', jQuery.parseJSON(order_details)); $.removeCookie('wcf_order_details', {path: '/'}); } } if ('enable' === add_payment_info_event) { jQuery("form.woocommerce-checkout").on('submit', function () { var params = cartflows.params; fbq('track', 'AddPaymentInfo', params); }); } } } } var trigger_google_events = function(){ if( cartflows.wcf_ga_active['enable_google_analytics'] === "enable" ){ // Get all required Data var google_a_id = cartflows.wcf_ga_active['google_analytics_id']; var ga_for_other_page = cartflows.wcf_ga_active['enable_google_analytics_for_site']; var ga_begin_checkout = cartflows.wcf_ga_active['enable_begin_checkout']; var ga_add_payment_info = cartflows.wcf_ga_active['enable_add_payment_info']; var ga_purchase_event = cartflows.wcf_ga_active['enable_purchase_event']; var ga_add_to_cart = cartflows.wcf_ga_active['enable_add_to_cart']; var cookies = $.cookie('wcf_ga_trans_data'); var ga_order_details = jQuery.parseJSON(cookies); var is_checkout_page = cartflows.is_checkout_page; if( 'disable' === ga_for_other_page ){ //Common page view event for cartflows pages. gtag('event', 'page_view', { send_to: google_a_id, non_interaction : true } ); } if( "1" === is_checkout_page ){ var param = cartflows.ga_param; var event_data = { send_to: google_a_id, event_category: "ecommerce", items: param, non_interaction : true } if ('enable' === ga_begin_checkout) { gtag('event', 'begin_checkout', event_data ); } if ( 'enable' === ga_add_to_cart ) { gtag('event', 'add_to_cart', event_data ); } if ( 'enable' === ga_add_payment_info ) { jQuery("form.woocommerce-checkout").on('submit', function () { gtag('event', 'add_payment_info', { send_to: google_a_id, non_interaction : true } ); }); } } if( typeof cookies !== 'undefined' ){ var purchase_data = { send_to: google_a_id, event_category: "ecommerce", transaction_id: ga_order_details.transaction_id, value: ga_order_details.value, currency: ga_order_details.currency, shipping: ga_order_details.shipping, tax: ga_order_details.tax, items: ga_order_details.items, non_interaction: true } if ('enable' === ga_purchase_event) { gtag('event', 'purchase', purchase_data ); $.removeCookie('wcf_ga_trans_data', {path: '/'}); } } } } $(document).ready(function($) { /* Assign the class & link to specific button */ var next_links = $('a[href*="wcf-next-step"]'); if ( next_links.length > 0 && 'undefined' !== typeof cartflows.next_step ) { next_links.addClass( 'wcf-next-step-link' ); next_links.attr( 'href', cartflows.next_step ); } remove_oceanwp_custom_style(); if( '1' !== cartflows.is_pb_preview ) { trigger_facebook_events(); trigger_google_events(); } }); })(jQuery);PK\D^G G assets/js/optin-template.jsnuW+A(function($){ /** * Checkout Custom Field Validations * This will collect all the present fields in the woocommerce form and adds an class if the field * is blank */ var wcf_custom_field_validation = function(){ var custom_field_add_class = function (field_value, field_row, field_wrap, field_type){ if ( field_value == '' || 'select' == field_type && field_value == ' ') { if( field_row.hasClass('validate-required') ){ field_wrap.addClass('field-required'); } } else { field_wrap.removeClass('field-required'); } } var fields_wrapper = $('form.woocommerce-checkout #customer_details'), $all_fields = fields_wrapper.find('input, textarea'), $selects = fields_wrapper.find('select'); $all_fields.blur(function(){ var $this = $(this), field_type = $this.attr('type'), field_row = $this.closest('p.form-row'), field_value = $this.val(); custom_field_add_class(field_value, field_row, $this, field_type); }); $selects.blur(function(){ var $this = $(this), field_row = $this.closest('p.form-row'), field_type = 'select', field_wrap = field_row.find('.select2-container--default'), field_value = field_row.find('select').val(); custom_field_add_class(field_value, field_row, field_wrap, field_type); }); } var wcf_check_is_local_storage = function(){ var test = 'test'; try { localStorage.setItem(test, test); localStorage.removeItem(test); return true; } catch(e) { return false; } } var wcf_persistent_data = function(){ if( 'yes' != cartflows.allow_persistance ){ return; } if ( false === wcf_check_is_local_storage() ) { return; } var checkout_cust_form = 'form.woocommerce-checkout #customer_details'; var wcf_form_data = { set : function (){ var checkout_data = []; var checkout_form = $('form.woocommerce-checkout #customer_details'); localStorage.removeItem('cartflows_checkout_form'); checkout_form.find('input[type=text], select, input[type=email], input[type=tel]').each(function(){ checkout_data.push({ name: this.name, value: this.value}); }); cartflows_checkout_form = JSON.stringify(checkout_data); localStorage.setItem('cartflows_checkout_form', cartflows_checkout_form); }, get : function (){ if( localStorage.getItem('cartflows_checkout_form') != null ){ checkout_data = JSON.parse( localStorage.getItem('cartflows_checkout_form') ); for (var i = 0; i < checkout_data.length; i++) { if($('form.woocommerce-checkout [name='+checkout_data[i].name+']').hasClass('select2-hidden-accessible')) { $('form.woocommerce-checkout [name='+checkout_data[i].name+']').selectWoo("val", [checkout_data[i].value]); }else{ $('form.woocommerce-checkout [name='+checkout_data[i].name+']').val(checkout_data[i].value); } } } } } wcf_form_data.get(); $( checkout_cust_form + " input, " + checkout_cust_form + " select").change( function() { wcf_form_data.set(); }); } $(document).ready(function($) { wcf_persistent_data(); wcf_custom_field_validation(); }); })(jQuery);PK\z_**assets/js/checkout-template.jsnuW+A(function($){ var wcf_reload_checkout_on_return = function() { var vis = (function(){ var stateKey, eventKey, keys = { hidden: "visibilitychange", webkitHidden: "webkitvisibilitychange", mozHidden: "mozvisibilitychange", msHidden: "msvisibilitychange" }; for (stateKey in keys) { if (stateKey in document) { eventKey = keys[stateKey]; break; } } return function(c) { if (c) document.addEventListener(eventKey, c); return !document[stateKey]; } })(); var visible = vis(); // gives current state vis(function(){ if ( vis() ) { location.reload(); } }); } var wcf_show_loader = function() { $('.wcf-loader-bg').addClass('show'); } var wcf_hide_loader = function() { $('.wcf-loader-bg').removeClass('show'); } /** * Checkout Custom Field Validations * This will collect all the present fields in the woocommerce form and adds an class if the field * is blank */ var wcf_custom_field_validation = function(){ var custom_field_add_class = function (field_value, field_row, field_wrap, field_type){ if ( field_value == '' || 'select' == field_type && field_value == ' ') { if( field_row.hasClass('validate-required') ){ field_wrap.addClass('field-required'); } } else { field_wrap.removeClass('field-required'); } } var fields_wrapper = $('form.woocommerce-checkout #customer_details'), $all_fields = fields_wrapper.find('input, textarea'), $selects = fields_wrapper.find('select'); $all_fields.blur(function(){ var $this = $(this), field_type = $this.attr('type'), field_row = $this.closest('p.form-row'), field_value = $this.val(); custom_field_add_class(field_value, field_row, $this, field_type); }); $selects.blur(function(){ var $this = $(this), field_row = $this.closest('p.form-row'), field_type = 'select', field_wrap = field_row.find('.select2-container--default'), field_value = field_row.find('select').val(); custom_field_add_class(field_value, field_row, field_wrap, field_type); }); } /** * Billing and shipping field add class form-row-first and form-row-last * To add those classes to change the layout of the field */ var add_custom_class_address_field = function(){ // For Billing address fields. var $get_checkout_style_layout = $('.cartflows-container').find('.wcf-embed-checkout-form-two-column'), $get_bill_addr_field_one = $('.wcf-embed-checkout-form .woocommerce-checkout').find('#billing_address_1_field'), $get_bill_addr_field_two = $('.wcf-embed-checkout-form .woocommerce-checkout').find('#billing_address_2_field'); if( $get_bill_addr_field_one.hasClass('form-row-wide') ){ $get_bill_addr_field_one.removeClass('form-row-wide'); $get_bill_addr_field_one.addClass('form-row-first'); } if( $get_bill_addr_field_two.hasClass('form-row-wide') ){ $get_bill_addr_field_two.removeClass('form-row-wide'); $get_bill_addr_field_two.addClass('form-row-last'); if( $get_bill_addr_field_two.find('label').hasClass('screen-reader-text') ){ $get_bill_addr_field_two.addClass('mt20'); }else{ $get_bill_addr_field_two.removeClass('mt20'); } } // For Shipping address fields. var $get_ship_addr_field_one = $('.wcf-embed-checkout-form .woocommerce-checkout').find('#shipping_address_1_field'); var $get_ship_addr_field_two = $('.wcf-embed-checkout-form .woocommerce-checkout').find('#shipping_address_2_field'); if( $get_ship_addr_field_one.hasClass('form-row-wide') ){ $get_ship_addr_field_one.removeClass('form-row-wide'); $get_ship_addr_field_one.addClass('form-row-first'); } if( $get_ship_addr_field_two.hasClass('form-row-wide') ){ $get_ship_addr_field_two.removeClass('form-row-wide'); $get_ship_addr_field_two.addClass('form-row-last'); if( $get_ship_addr_field_two.find('label').hasClass('screen-reader-text') ){ $get_ship_addr_field_two.addClass('mt20'); }else{ $get_ship_addr_field_two.removeClass('mt20'); } } function address_fields_management( type ) { var wrapper = $('.woocommerce-' + type + '-fields' ); setTimeout(function() { var column_three = wrapper.find('.wcf-column-33'); column_three.css( 'clear', '' ); column_three.first().css( 'clear', 'left' ); // column_three.first().css( 'margin-right', '10px' ); // column_three.last().css( 'margin-left', '10px' ); }, 100); setTimeout(function() { var column_fifty = wrapper.find('.wcf-column-50'); column_fifty.css( 'clear', '' ); column_fifty.last().css( 'clear', 'left' ); }, 100); } // address_fields_management( 'billing' ); // address_fields_management( 'shipping' ); var billing_country = $('.wcf-embed-checkout-form .woocommerce-checkout').find('#billing_country'); billing_country.on( 'change', function(e) { // address_fields_management( 'billing' ); } ); var shipping_country = $('.wcf-embed-checkout-form .woocommerce-checkout').find('#shipping_country'); shipping_country.on( 'change', function(e) { // address_fields_management( 'shipping' ); } ); } var wcf_check_is_local_storage = function(){ var test = 'test'; try { localStorage.setItem(test, test); localStorage.removeItem(test); return true; } catch(e) { return false; } } var wcf_persistent_data = function(){ if( 'yes' != cartflows.allow_persistance ){ return; } if ( false === wcf_check_is_local_storage() ) { return; } var checkout_cust_form = 'form.woocommerce-checkout #customer_details'; var wcf_form_data = { set : function (){ var checkout_data = []; var checkout_form = $('form.woocommerce-checkout #customer_details'); localStorage.removeItem('cartflows_checkout_form'); checkout_form.find('input[type=text], select, input[type=email], input[type=tel]').each(function(){ checkout_data.push({ name: this.name, value: this.value}); }); cartflows_checkout_form = JSON.stringify(checkout_data); localStorage.setItem('cartflows_checkout_form', cartflows_checkout_form); }, get : function (){ if( localStorage.getItem('cartflows_checkout_form') != null ){ checkout_data = JSON.parse( localStorage.getItem('cartflows_checkout_form') ); for (var i = 0; i < checkout_data.length; i++) { if($('form.woocommerce-checkout [name='+checkout_data[i].name+']').hasClass('select2-hidden-accessible')) { $('form.woocommerce-checkout [name='+checkout_data[i].name+']').selectWoo("val", [checkout_data[i].value]); }else{ $('form.woocommerce-checkout [name='+checkout_data[i].name+']').val(checkout_data[i].value); } } } } } wcf_form_data.get(); $( checkout_cust_form + " input, " + checkout_cust_form + " select").change( function() { wcf_form_data.set(); }); } $(window).load(function(){ $( 'body' ).trigger( 'update_checkout' ); }); var wcf_checkout_coupons = { init: function() { $( document.body ).on( 'click', '.wcf-submit-coupon', this.submit_coupon ); $( document.body ).on( 'click', '.wcf-remove-coupon', this.remove_coupon ); }, submit_coupon: function( e ) { e.preventDefault(); var coupon_wrapper = $('.wcf-custom-coupon-field'), coupon_field = coupon_wrapper.find('.wcf-coupon-code-input'), coupon_value = coupon_field.val(); if( '' == coupon_value){ coupon_field.addClass('field-required'); return false; }else{ coupon_field.removeClass('field-required'); } var data = { coupon_code : coupon_value, action : 'wcf_woo_apply_coupon', security : cartflows.wcf_validate_coupon_nonce }; $.ajax({ type: 'POST', url: cartflows.ajax_url, data: data, success: function( code ) { var coupon_message = $(".wcf-custom-coupon-field"); coupon_message.find( '.woocommerce-error, .woocommerce-message' ).remove(); var data = JSON.parse(code); if( data.status == true ) { $( document.body ).trigger( 'update_checkout', { update_shipping_method: false } ); coupon_message.prepend(data.msg); }else{ coupon_message.prepend(data.msg); } }, }); }, remove_coupon: function( e ) { e.preventDefault(); var data = { coupon_code : $(this).attr("data-coupon"), action : 'wcf_woo_remove_coupon', security : cartflows.wcf_validate_remove_coupon_nonce }; $.ajax({ type: 'POST', url: cartflows.ajax_url, data: data, success: function( code ) { var coupon_message = $(".wcf-custom-coupon-field"); coupon_message.find( '.woocommerce-error, .woocommerce-message' ).hide(); if( code ) { $( document.body ).trigger( 'update_checkout', { update_shipping_method: false } ); coupon_message.prepend(code); } } }); }, } var wcf_remove_cart_products = function(){ $( document.body ).on( 'click', '#wcf-embed-checkout-form .remove', function(e){ e.preventDefault(); var p_id = $(this).attr("data-id"); var data = { p_key : $(this).attr("data-item-key"), p_id : p_id, action : 'wcf_woo_remove_cart_product', security : cartflows.wcf_validate_remove_cart_product_nonce }; $.ajax({ type: 'POST', url: cartflows.ajax_url, data: data, success: function( response ) { var data = JSON.parse(response); if( data.need_shipping == false ) { // $('#wcf-embed-checkout-form').find('#ship-to-different-address-checkbox').hide(); $('#wcf-embed-checkout-form').find('#ship-to-different-address-checkbox').attr("checked",false); } $('#wcf-embed-checkout-form').find('.woocommerce-notices-wrapper').first().html(data.msg); $(document).trigger('cartflows_remove_product',[p_id]); $('#wcf-embed-checkout-form').trigger('update_checkout'); } }); }); } $(document).ready(function($) { wcf_persistent_data(); //wcf_reload_checkout_on_return(); wcf_custom_field_validation(); add_custom_class_address_field(); wcf_remove_cart_products(); wcf_checkout_coupons.init(); }); })(jQuery);PK\2# # assets/fonts/cartflows-icon.svgnuW+A Generated by IcoMoon PK\Ƞassets/fonts/cartflows-icon.eotnuW+ALPylucartflows-iconRegularVersion 1.0cartflows-icon 0OS/2`cmap=\gaspxglyf&headXwl6hhea$hmtx loca<maxp V name`post 3 @@@ @   797979gK(%"&/&676>#*1 ;x/: g; :S%81 81>76&/.81 81.'&81 817>781 816?>'.7  7 77 77 7  7 * ''7'77*<<<<<< 7 '!5#*1 ;x/: g; :S%81 81>76&/.81 81.'&81 817>781 816?>'.7  7 77 77 7  7 * ''7'77*<<<<<< 7 '!5#*1 ;x/: g; :S%81 81>76&/.81 81.'&81 817>781 816?>'.7  7 77 77 7  7 * ''7'77*<<<<<< 7 '!5>assets/min-js/rest-api.min.jsnuW+A!function(i){var n={timeout:3e5,data:{},remove:function(e){delete n.data[e]},exist:function(e){return!!n.data[e]&&(new Date).getTime()-n.data[e]._Export'),e.after('Import')}},_getParamFromURL:function(t,e){e=e||window.location.href,t=t.replace(/[\[\]]/g,"\\$&");var a=new RegExp("[?&]"+t+"(=([^&#]*)|&|#|$)").exec(e);return a?a[2]?decodeURIComponent(a[2].replace(/\+/g," ")):"":null},_bind:function(){var t=CartFlowsImport;t.doc.on("click",".wcf-install-plugin",t._install_plugin),t.doc.on("cartflows-api-request-fail",t._api_request_failed),t.doc.on("click","#wcf-get-started-steps a, .wcf-create-from-scratch-link",t._toggle_ready_templates),t.doc.on("click",".cartflows-flow-import-blank",t._create_default_flow),t.doc.on("click","#wcf-remote-flow-importer .wcf-page-builder-links a",t._filterFlowPageBuilderClick),t.doc.on("click","#wcf-remote-step-importer #wcf-categories .step-type-filter-links a",t._filterBlankStepCategoryClick),t.doc.on("change","#wcf-remote-step-importer #wcf-scratch-steps-categories .step-type-filter-links",t._filterBlankStepCategoryChange),t.doc.on("click","#wcf-get-started-steps",t._filterBlankStepCategoryChange),t.doc.on("click","#wcf-remote-step-importer .wcf-page-builder-links a",t._filterStepPageBuilderClick),t.doc.on("click",".cartflows-step-import-blank:not(.get-pro)",t._create_blank_step),t.doc.on("click","#wcf-remote-step-importer .cartflows-step-import",t._process_import_step),t.doc.on("click","#wcf-remote-flow-importer .cartflows-step-import",t._process_import_flow),t.doc.on("click",".cartflows-preview-flow-step",t._preview_individual),t.doc.on("add_template_to_page-fail",t._add_template_to_page_fail),c("body").on("thickbox:iframe:loaded",t._previewLoaded),c(document).on("keyup input","#wcf-remote-step-importer .wcf-flow-search-input",t._remote_step_search),c(document).on("click",".actions a",t._previewResponsive),c(document).on("click",".page-title-action:first",t._render_remote_flows),c(document).on("click",".wcf-trigger-popup",t._render_remote_steps),c(document).on("click",".wcf-templates-popup-overlay",t._close_template_popup),c(document).on("click",".wcf-popup-close-wrap .close-icon",t._close_template_popup),c(document).on("wp-plugin-install-success",t._installSuccess),c(document).on("click",".wcf-activate-wc",t._installWc)},_install_plugin:function(t){t.preventDefault();var e=c(this);if(!e.hasClass("updating-message")){c("#wcf-remote-flow-importer").addClass("request-process"),c("#wcf-remote-step-importer").addClass("request-process"),e.addClass("updating-message button");var a=CartFlowsImportVars.required_plugins[CartFlowsImportVars.default_page_builder].plugins;c.each(a,function(t,e){"install"===e.status&&CartFlowsImport.remaining_install_plugins++,"activate"===e.status&&CartFlowsImport.remaining_active_plugins++}),CartFlowsImport.remaining_install_plugins?CartFlowsImport._install_all_plugins():CartFlowsImport.remaining_active_plugins?CartFlowsImport._activate_all_plugins():c("#wcf-remote-flow-importer").length?CartFlowsImport._cache_remote_flows():c("#wcf-remote-step-importer").length&&CartFlowsImport._cache_remote_steps()}},_install_all_plugins:function(){var t=CartFlowsImportVars.required_plugins[CartFlowsImportVars.default_page_builder].plugins;c.each(t,function(t,e){"install"===e.status&&wp.updates.queue.push({action:"install-plugin",data:{slug:e.slug}})}),wp.updates.queueChecker()},_activate_all_plugins:function(){if(CartFlowsImport.remaining_active_plugins||CartFlowsImport.remaining_install_plugins){var t=CartFlowsImportVars.required_plugins[CartFlowsImportVars.default_page_builder].plugins;CartFlowsAjaxQueue.stop(),CartFlowsAjaxQueue.run(),c.each(t,function(t,e){"activate"===e.status&&CartFlowsAjaxQueue.add({url:CartFlowsImportVars.ajaxurl,type:"POST",data:{action:"cartflows_activate_plugin",plugin_init:e.init,security:CartFlowsImportVars.cartflows_activate_plugin_nonce},success:function(t){CartFlowsImport.remaining_active_plugins--,CartFlowsImport.remaining_active_plugins||CartFlowsImport.remaining_install_plugins||(c("#wcf-remote-flow-importer").length?CartFlowsImport._cache_remote_flows():c("#wcf-remote-step-importer").length&&CartFlowsImport._cache_remote_steps())}})})}else c("#wcf-remote-flow-importer").length?CartFlowsImport._cache_remote_flows():c("#wcf-remote-step-importer").length&&CartFlowsImport._cache_remote_steps()},_installSuccess:function(t,a){t.preventDefault(),"no"===CartFlowsImportVars.is_wc_activated&&CartFlowsImport._activateWc();var e=CartFlowsImportVars.required_plugins[CartFlowsImportVars.default_page_builder].plugins;c.each(e,function(t,e){"install"===e.status&&a.slug===e.slug&&c.ajax({url:ajaxurl,type:"POST",data:{action:"cartflows_activate_plugin",plugin_init:e.init,security:CartFlowsImportVars.cartflows_activate_plugin_nonce}}).done(function(t,e,a){CartFlowsImport.remaining_install_plugins--,CartFlowsImport.remaining_install_plugins||CartFlowsImport._activate_all_plugins()})})},_api_request_failed:function(t,e,a,s){"error"==s&&(c("#wcf-remote-content-failed").length||c("#wcf-ready-templates").html(wp.template("cartflows-website-unreachable")))},_toggle_ready_templates:function(t){t.preventDefault();var e=c(this).data("slug")||"";c("#wcf-get-started-steps").find("a").removeClass("current"),c("#wcf-get-started-steps").find('a[data-slug="'+e+'"]').addClass("current"),"canvas"==e?(c("#wcf-ready-templates").hide(),c("#wcf-start-from-scratch").show()):(c("#wcf-ready-templates").show(),c("#wcf-start-from-scratch").hide()),!c(".wcf-page-builder-notice").length&&c("#wcf-remote-step-importer").length&&CartFlowsImport._showSteps()},_switch_step_tab:function(t){t.preventDefault();var e=c(".wcf-tab > li.active > a").attr("href");c(".wcf-tab > li.active").removeClass("active"),c(this).parents("li").addClass("active"),c(e).removeClass("active"),c(e).addClass("hide");var a=c(this).attr("href");c(a).removeClass("hide"),c(a).addClass("active")},_remote_step_search:function(t){t.preventDefault(),c(".step-type-filter-links").find("option").removeClass("current"),c(".step-type-filter-links").find("option:first-child").addClass("current"),window.clearTimeout(CartFlowsImport._ref),CartFlowsImport._ref=window.setTimeout(function(){CartFlowsImport._ref=null,CartFlowsImport._showSteps()},500)},_previewResponsive:function(t){t.preventDefault();var e=c(this).find(".dashicons"),a=e.attr("data-view")||"";c("#TB_window").removeClass("desktop tablet mobile"),c("#TB_window").addClass(a),c(".actions .dashicons").removeClass("active"),e.addClass("active"),c("#TB_iframeContent").removeClass(),c("#TB_iframeContent").addClass(a)},_filterStepPageBuilderClick:function(t){t.preventDefault(),c(this).parents("ul").find("a").removeClass("current"),c(this).addClass("current");var e=c(".step-type-filter-links .current").data("slug")||"";"upsell"===e||"downsell"===e?c(".wcf-template-notice").show():c(".wcf-template-notice").hide(),c(".wcf-page-builder-notice").html(""),c("#wcf-remote-step-list").html(''),CartFlowsImport._showSteps()},_filterBlankStepCategoryClick:function(t){t.preventDefault(),c(".wcf-page-builder-notice").html("");var e=c(this).data("group")||"";e&&(c("#wcf-scratch-steps-categories .step-type-filter-links").val(e),c("#wcf-scratch-steps-categories .step-type-filter-links option").removeClass("current"),c('#wcf-scratch-steps-categories .step-type-filter-links option[data-group="'+e+'"]').addClass("current")),c(".step-type-filter-links").find("a").removeClass("current"),c(this).addClass("current"),$step_type=c(this).data("slug"),"upsell"===$step_type||"downsell"===$step_type?c(".wcf-template-notice").show():c(".wcf-template-notice").hide(),""!=CartFlowsImportVars._is_pro_active||"upsell"!=$step_type&&"downsell"!=$step_type?(c(".cartflows-step-import-blank").text("Create Step"),c(".cartflows-step-import-blank").removeClass("get-pro"),c(".cartflows-step-import-blank").removeAttr("target")):(c(".cartflows-step-import-blank").text("Get Pro"),c(".cartflows-step-import-blank").attr("href",CartFlowsImportVars.domain_url),c(".cartflows-step-import-blank").attr("target","_blank"),c(".cartflows-step-import-blank").addClass("get-pro")),c("#wcf-remote-step-list").html(''),CartFlowsImport._showSteps()},_filterBlankStepCategoryChange:function(t){t.preventDefault(),c(".wcf-notice-wrap").remove(),c(".cartflows-step-import-blank").css("pointer-events","auto").removeClass("disabled");var e=c(".step-type-filter-links").find("option:selected").val()||"";if(e&&(c(".step-type-filter-links").val(e),c(".step-type-filter-links").find("a").removeClass("current"),c(".step-type-filter-links").find('a[data-group="'+e+'"]').addClass("current")),c(".step-type-filter-links").find("option").removeClass("current"),c(".step-type-filter-links").find("option:selected").addClass("current"),$step_type=c(".step-type-filter-links").find("option:selected").data("slug"),!("no"!==CartFlowsImportVars.is_wc_installed&&"no"!==CartFlowsImportVars.is_wc_activated||"upsell"!==$step_type&&"downsell"!==$step_type&&"checkout"!==$step_type&&"thankyou"!==$step_type))return c(".cartflows-step-import-blank").after("

    You need WooCommerce plugin installed and actived to use this product flow.

    Click here to install and activate WooCommerce

    "),void c(".cartflows-step-import-blank").addClass("disabled").css("pointer-events","none");"upsell"===$step_type||"downsell"===$step_type?c(".wcf-template-notice").show():c(".wcf-template-notice").hide(),""!=CartFlowsImportVars._is_pro_active||"upsell"!=$step_type&&"downsell"!=$step_type?(c(".cartflows-step-import-blank").text("Create Step"),c(".cartflows-step-import-blank").removeClass("get-pro"),c(".cartflows-step-import-blank").removeAttr("target")):(c(".cartflows-step-import-blank").text("Get Pro"),c(".cartflows-step-import-blank").attr("href",CartFlowsImportVars.domain_url),c(".cartflows-step-import-blank").attr("target","_blank"),c(".cartflows-step-import-blank").addClass("get-pro")),!c(".wcf-page-builder-notice").length&&c("#wcf-remote-step-importer").length&&(c("#wcf-remote-step-list").html(''),CartFlowsImport._showSteps())},_showSteps:function(){var t={licence_args:CartFlowsImportVars.licence_args,per_page:100,_fields:CartFlowsImportVars.step_fields.toString()},e=c("#wcf-categories .step-type-filter-links").find(".current").data("group")||"",s=c("#wcf-categories .step-type-filter-links").find(".current").data("slug");""!==e&&"all"!==e&&(t[CartFlowsImportVars.step_type]=e);e=c("#wcf-page-builders .wcf-page-builder-links").find(".current").data("group")||"",s=c("#wcf-page-builders .wcf-page-builder-links").find(".current").data("slug")||"";var r=c("#wcf-page-builders .wcf-page-builder-links").find(".current").data("title")||"Page Builder";""!==e&&"all"!==e&&(t[CartFlowsImportVars.step_page_builder]=e);var a={remote_slug:CartFlowsImportVars.step,slug:CartFlowsImportVars.step+"?"+decodeURIComponent(c.param(t))};CartFlowsAPI._api_request(a,function(a){a.current_step_type=s,"yes"!==CartFlowsImportVars.is_wc_activated&&c.each(a.items,function(t,e){a.items[t].woo_required=!1,0<=c.inArray(e.step_type.slug,CartFlowsImport.woo_required_steps)&&(a.items[t].woo_required=!0)});var t=wp.template("cartflows-steps-list");parseInt(a.items_count)?c("#wcf-remote-step-list").html(t(a)):(c("#wcf-remote-step-list").html(wp.template("cartflows-no-steps")),c(".cartflows-no-steps").find(".description").html("We are working on ready templates designed with "+r+'.
    Meanwhile you can create your own designs easily.')),c(".wcf-page-builder-notice").remove(),c("#wcf-remote-step-importer").removeClass("request-process")})},_apiAddParam_per_page:function(){CartFlowsImport._api_params.per_page=100},_apiAddParam_licence_args:function(){CartFlowsImport._api_params.licence_args=CartFlowsImportVars.licence_args},_apiAddParam_search:function(){var t=c(".wcf-flow-search-input").val()||"";""!==t&&(CartFlowsImport._api_params.search=t)},_close_popup:function(){c("#cartflows-steps").fadeOut(),c("body").removeClass("cartflows-popup-is-open")},_post_auto_save:function(){var t=c("#title"),e=c("#title-prompt-text"),a=CartFlowsImport;t.val()||(t.val("CartFlows #"+a.post_id),e.length&&e.remove()),wp.autosave&&wp.autosave.server.triggerSave()},_process_cache_remote_flows:function(){if("gutenberg"==CartFlowsImportVars.default_page_builder)CartFlowsImport._cache_remote_flows();else{var t=CartFlowsImportVars.required_plugins[CartFlowsImportVars.default_page_builder].plugins,a=!0;c.each(t,function(t,e){a&&("install"!==e.status&&"activate"!==e.status||(a=!1))}),!1===a?(c(".wcf-page-builder-notice").html(wp.template("cartflows-page-builder-notice")),c("#wcf-remote-flow-list").find(".spinner").remove()):CartFlowsImport._cache_remote_flows()}},_cache_remote_flows:function(){CartFlowsImport;var t={search:CartFlowsImportVars.default_page_builder,licence_args:CartFlowsImportVars.licence_args,hide_empty:!1,_fields:CartFlowsImportVars.flow_page_builder_fields.toString()},e={remote_slug:CartFlowsImportVars.flow_page_builder,slug:CartFlowsImportVars.flow_page_builder+"?"+decodeURIComponent(c.param(t)),wrapper_class:"wcf-page-builder-links filter-links",show_all:!1};CartFlowsAPI._api_request(e,function(t){var e=wp.template("cartflows-term-filters");c("#wcf-page-builders").html(e(t)),c("#wcf-page-builders").find("li:first a").addClass("current");var a={licence_args:CartFlowsImportVars.licence_args,hide_empty:!0,_fields:CartFlowsImportVars.flow_type_fields.toString()},s={remote_slug:CartFlowsImportVars.flow_type,slug:CartFlowsImportVars.flow_type+"?"+decodeURIComponent(c.param(a)),wrapper_class:"flow-type-filter-links filter-links",show_all:!1};CartFlowsAPI._api_request(s,function(t){var e=wp.template("cartflows-term-filters");c("#wcf-categories").html(e(t)),c("#wcf-categories").find("li:first a").addClass("current"),CartFlowsImport._showFlows()})})},_render_remote_flows:function(t){t&&t.preventDefault(),c("#wcf-remote-flow-importer").addClass("open"),c("html").addClass("wcf-popup-open")},_process_cache_remote_steps:function(){if("gutenberg"==CartFlowsImportVars.default_page_builder)CartFlowsImport._cache_remote_steps();else{var t=CartFlowsImportVars.required_plugins[CartFlowsImportVars.default_page_builder].plugins,a=!0;c.each(t,function(t,e){a&&("install"!==e.status&&"activate"!==e.status||(a=!1))}),!1===a?(c(".wcf-page-builder-notice").html(wp.template("cartflows-page-builder-notice")),c("#wcf-remote-step-list").find(".spinner").remove()):CartFlowsImport._cache_remote_steps()}},mapOrder:function(t,r,o){return t.sort(function(t,e){var a=t[o],s=e[o];return-1===r.indexOf(a)?0:r.indexOf(a)>r.indexOf(s)?1:-1}),t},_cache_remote_steps:function(){CartFlowsImport;c("html").addClass("wcf-steps-loading");var t={search:CartFlowsImportVars.default_page_builder,licence_args:CartFlowsImportVars.licence_args,hide_empty:!1,_fields:CartFlowsImportVars.step_page_builder_fields.toString()},e={remote_slug:CartFlowsImportVars.step_page_builder,slug:CartFlowsImportVars.step_page_builder+"?"+decodeURIComponent(c.param(t)),wrapper_class:"wcf-page-builder-links filter-links",show_all:!1};CartFlowsAPI._api_request(e,function(t){var e=wp.template("cartflows-term-filters");c("#wcf-page-builders").html(e(t)),c("#wcf-page-builders").find("li:first a").addClass("current")});t={licence_args:CartFlowsImportVars.licence_args,_fields:CartFlowsImportVars.step_type_fields.toString()},e={remote_slug:CartFlowsImportVars.step_type,slug:CartFlowsImportVars.step_type+"?"+decodeURIComponent(c.param(t)),wrapper_class:"step-type-filter-links filter-links",show_all:!1};CartFlowsAPI._api_request(e,function(t){t.items=CartFlowsImport.mapOrder(t.items,CartFlowsImport.step_order,"slug");var s=t,r=t.items_count;if(t.items)for(key in t.items){t.items[key].name=CartFlowsImport.new_step_names[t.items[key].slug];var e={licence_args:CartFlowsImportVars.licence_args,per_page:100,_fields:CartFlowsImportVars.step_fields.toString()};e[CartFlowsImportVars.step_type]=t.items[key].id;var a={remote_slug:CartFlowsImportVars.step,slug:CartFlowsImportVars.step+"?"+decodeURIComponent(c.param(e))};CartFlowsAPI._api_request(a,function(t){var e=wp.template("cartflows-steps-list");if(parseInt(t.items_count)?c("#wcf-remote-step-list").html(e(t)):c("#wcf-remote-step-list").html(wp.template("cartflows-no-steps")),0==--r){var a=wp.template("cartflows-term-filters-dropdown");e=wp.template("cartflows-term-filters");c("#wcf-categories").html(e(s)),c("#wcf-scratch-steps-categories").html(a(s)),c("#wcf-scratch-steps-categories").find("option:first").addClass("current"),c("#wcf-categories").find("li a[data-slug=landing]").addClass("current"),c(".wcf-page-builder-notice").remove(),c("#wcf-remote-content").find(".spinner").remove(),CartFlowsImport._showSteps(),c("html").removeClass("wcf-steps-loading")}})}})},_render_remote_steps:function(t){t&&t.preventDefault(),c("#wcf-remote-step-importer").addClass("open"),c("html").addClass("wcf-popup-open")},_categorize_data:function(t){var s=[];return c.each(t,function(t,e){var a=e.step_type.slug;void 0===s[a]&&(s[a]=[]),s[a].push(e)}),s},_close_template_popup:function(t){(c(t.target).hasClass("wcf-templates-popup-overlay")||c(t.target).hasClass("close-icon"))&&(c(".wcf-templates-popup-overlay").hasClass("request-process")||(c("html").removeClass("wcf-popup-open"),c(".wcf-templates-popup-overlay").removeClass("open")))},_ajax:function(t,s,r){var o=CartFlowsImport;c.ajax({url:ajaxurl,type:"POST",data:t}).done(function(t,e,a){s&&"function"==typeof s&&s({request:t,status:e,XHR:a}),o.doc.trigger(r+"-done",[t,e,a])}).fail(function(t,e){o.doc.trigger(r+"-fail",[t,e])}).always(function(){o.doc.trigger(r+"-always")})},_empty:function(t){if("number"==typeof t||"boolean"==typeof t)return!1;if(null==t)return!0;if(void 0!==t.length)return 0==t.length;var e=0;for(var a in t)t.hasOwnProperty(a)&&e++;return 0==e},_preview_individual:function(){var t=c(this).data("id")||"",e=c(this).data("href")||"";c(".cartflows-preview-flow-step").removeClass("active"),c('.cartflows-preview-flow-step[data-id="'+t+'"]').addClass("active"),c("#TB_window").addClass("cartflows-thickbox-loading"),c("#TB_iframeContent").removeAttr("onload"),c("#TB_iframeContent").removeAttr("src"),c("#TB_iframeContent").attr("src",e),c("#TB_iframeContent").attr("onload","CartFlowsImport.showIframe()")},showIframe:function(){c("#TB_load").remove(),c("#TB_window").css({visibility:"visible"}),c("#TB_window").removeClass("cartflows-thickbox-loading")},_previewLoaded:function(t){t.preventDefault(),c("#TB_window").removeClass("cartflows-thickbox-loading")},_filterFlowPageBuilderClick:function(t){t.preventDefault(),c(this).parents("ul").find("a").removeClass("current"),c(this).addClass("current"),c(".wcf-page-builder-notice").html(""),c("#wcf-remote-flow-list").html(''),CartFlowsImport._showFlows()},_showFlows:function(){var t={licence_args:CartFlowsImportVars.licence_args,_fields:CartFlowsImportVars.flow_fields.toString(),per_page:100},e=c("#wcf-page-builders .wcf-page-builder-links").find(".current").data("group")||"";c("#wcf-page-builders .wcf-page-builder-links").find(".current").data("slug"),c("#wcf-page-builders .wcf-page-builder-links").find(".current").data("title");""!==e&&"all"!==e&&(t[CartFlowsImportVars.flow_page_builder]=e);var a={remote_slug:CartFlowsImportVars.flow,slug:CartFlowsImportVars.flow+"?"+decodeURIComponent(c.param(t))};CartFlowsAPI._api_request(a,function(s){"yes"!==CartFlowsImportVars.is_wc_activated&&c.each(s.items,function(a,t){s.items[a].woo_required=!1,c.each(t.flow_steps,function(t,e){0<=c.inArray(e.type,CartFlowsImport.woo_required_steps)&&(s.items[a].woo_required=!0)})});var t=wp.template("cartflows-flows-list");parseInt(s.items_count)?c("#wcf-remote-flow-list").html(t(s)):c("#wcf-remote-flow-list").html(wp.template("cartflows-no-flows")),c(".wcf-page-builder-notice").remove(),c("#wcf-remote-flow-importer").removeClass("request-process")})},_create_default_flow:function(t){t.preventDefault();var e=CartFlowsImport,a=c(this);if(!a.hasClass("updating-message")){c("#wcf-remote-flow-importer").addClass("request-process"),a.addClass("updating-message").text("Creating Flow.."),a.parents(".template").addClass("importing");var s={action:"cartflows_default_flow",security:cartflows_admin.cf_default_flow_nonce};e._ajax(s,function(t){if(t.request.success){var e=t.request.data;setTimeout(function(){a.removeClass("updating-message").text("Flow Created! Redirecting.."),window.location=CartFlowsImportVars.admin_url+"post.php?post="+e+"&action=edit"},3e3)}})}},_activate_plugin:function(t){var e=CartFlowsImport,a={action:"cartflows_activate_plugin",plugin_init:t,security:CartFlowsImportVars.cartflows_activate_plugin_nonce};e._ajax(a,function(t){})},_process_import_flow:function(t){t.preventDefault();var s=c(this);if(!s.hasClass("updating-message")){c("#wcf-remote-flow-importer").addClass("request-process");var e=CartFlowsImport;s.text("Creating Flow.."),s.addClass("updating-message"),s.parents(".template").addClass("importing");var a=s.data("flow-steps")||"",r=""!==a?JSON.parse("["+a+"]"):[],o={action:"cartflows_create_flow",security:cartflows_admin.cf_create_flow_nonce};e._ajax(o,function(t){if(t.request.success){var a=t.request.data;r&&(CartFlowsAjaxQueue.stop(),CartFlowsAjaxQueue.run(),CartFlowsImport.all_steps=r.length,s.addClass("updating-message").text("Importing Step 1 of "+CartFlowsImport.all_steps),c.each(r,function(t,e){CartFlowsAjaxQueue.add({url:CartFlowsImportVars.ajaxurl,type:"POST",data:{action:"cartflows_import_flow_step",flow_id:a,template_id:e,security:cartflows_admin.cf_import_flow_step_nonce},success:function(t){CartFlowsImport.remaining_steps=CartFlowsImport.remaining_steps+1,CartFlowsImport.remaining_steps===CartFlowsImport.all_steps?(s.addClass("updating-message").text("Imported Step "+CartFlowsImport.remaining_steps+" of "+CartFlowsImport.all_steps),setTimeout(function(){s.removeClass("updating-message").text("All Imported! Redirecting.."),window.location=CartFlowsImportVars.admin_url+"post.php?post="+a+"&action=edit"},3e3)):s.addClass("updating-message").text("Importing Step "+CartFlowsImport.remaining_steps+" of "+CartFlowsImport.all_steps)},error:function(t){CartFlowsImport.remaining_steps=CartFlowsImport.remaining_steps+1,template=s.parents(".template.importing"),template.find(".preview").addClass("notice notice-warning").removeClass("preview").text(t.statusText),CartFlowsImport.remaining_steps===CartFlowsImport.all_steps?(s.addClass("updating-message").text("Failed "+CartFlowsImport.remaining_steps+" of "+CartFlowsImport.all_steps),setTimeout(function(){s.removeClass("updating-message button-primary").addClass("disabled")},3e3)):s.addClass("updating-message").text("Failed "+CartFlowsImport.remaining_steps+" of "+CartFlowsImport.all_steps)},fail:function(t){CartFlowsImport.remaining_steps=CartFlowsImport.remaining_steps+1,CartFlowsImport.remaining_steps===CartFlowsImport.all_steps?(s.addClass("updating-message").text("Imported "+CartFlowsImport.remaining_steps+" of "+CartFlowsImport.all_steps),setTimeout(function(){s.removeClass("updating-message").text("All Step Imported! Reloading.."),location.reload()},3e3)):s.addClass("updating-message").text("Importing "+CartFlowsImport.remaining_steps+" of "+CartFlowsImport.all_steps)}})}))}})}},_handle_error:function(t){c(".cartflows-step-import.updating-message").addClass("updating-message").text(t.errorMessage)},_create_blank_step:function(t){t.preventDefault();var a=c(this),e=CartFlowsImport,s=c("#post_ID").val(),r=c("#wcf-scratch-steps-categories .step-type-filter-links .current").data("slug")||"",o=c("#wcf-scratch-steps-categories .step-type-filter-links .current").data("title")||"",l=r,i=c('.wcf-step-wrap[data-term-slug="'+r+'"]').length||1,p=o+" "+(parseInt(i)+1);if(all_step_type=["landing","checkout","thankyou"],c("#wcf-start-from-scratch .wcf-notice-wrap ").remove(),""!==l){if(CartFlowsImportVars._is_pro_active||"upsell"!==l&&"downsell"!==l){if(a.parents(".template").addClass("importing"),!CartFlowsImportVars._is_pro_active)if("-1"!=jQuery.inArray(l,all_step_type))if(0

    Upgrade to Pro for adding more than one '+l.charAt(0).toUpperCase()+l.slice(1)+" step.

    ")}if(c("#wcf-remote-step-importer").addClass("request-process"),c(".cartflows-step-import").addClass("disabled"),a.addClass("importing updating-message").text("Creating.."),c("body").hasClass("post-type-cartflows_flow")){var n={action:"cartflows_step_create_blank",flow_id:s,step_type:l,step_title:p,security:cartflows_admin.cf_step_create_blank_nonce};e._ajax(n,function(t){CartFlowsImport;var e=a.parents(".template.importing");t.request.success?(a.text("Created. Reloading.."),setTimeout(function(){window.location.href=window.location.href+"&highlight-step-id="+t.request.data},3e3)):(a.removeClass("importing updating-message").text("Creating Failed!"),c("#wcf-remote-step-importer").removeClass("request-process"),e.find(".cartflows-step-preview").append("
    "),e.find(".preview").addClass("notice notice-warning").removeClass("preview").text(t.request.data))})}}}else c("#wcf-start-from-scratch .inner").append('

    Please select the step type.

    ')},_process_import_step:function(t){t.preventDefault();var a=c(this),e=a.data("slug")||"",s=c('.wcf-step-wrap[data-term-slug="'+e+'"]').length||1;if((step_title=a.data("title")||"",step_custom_title=step_title+" "+(parseInt(s)+1),o=CartFlowsImport,all_step_slug=["landing","checkout","thankyou"],!CartFlowsImportVars._is_pro_active)&&("-1"!=jQuery.inArray(e,all_step_slug)&&0 C      L  !1AQ"7aqBu$2RVrt#6s3CUWbd?]u3B3)m$^UDMƮS^q}⥍ltQM#Y؎sʉwSkqgi0M-= dRTE"QXu蝪ć^%ze5#"/rMکr;[^(.[CI.k܌syz7Dε/Rh0Ւ 5SeY$DzrTjw<׫?g&H4_Ƣ؆O.C֛6%z69U"Iv%dʭn VL~UTC$ ^acl)2uW9{s|׎`x- *9QW5e*5;amg%JK[%=覢=JEB$`lrd]du*9n?dN{$Y_.R(EV9wD벢ɻfP|5?n%6sC춸icϒ9s=S< =^2O&`{74TҮ&=9?GFpet#vobT)P/<۾"jvUhO\&_S]PTEUd"tOBqo{7T +ƦA`3Sy[NE_w*{Z9m \r'؝W6 CeMkJ7|.9vv_>-u&1ʌj|_cz/=S7Zx[k1\Q>5ti5G*GKծz'9e舽e-π[n͚F/9n螂1|5~4k/OU6v +ЖGz3M^f:mkk*uETG+a{Qz*"=nwEr:-u,i!G$UG"{\PGFIf&4ʚUǧ< iXKQSlTWrF6j}_=S NAorV>ŷ=\ifft5-;dVX5QNo̩QrڪiV\r&礎O,Sw~lcT?g6_S/g^Zyѝy^OcJcJsPmtNrMPT]?eWo^GYI3dV#⑋9Ph~=>P"sojUeQi@9{94Tm\`F॒F#Z`~Uٱ{ y ,cF/*B%M1\s#qXJ jkG,PG*#UWeUNR[&!..4Q0k\UFʘ Jęʾ(^zђ}-/73پM2q1!*?tdJ=I׈UqUfc"o C\xT4K;eT_ }F}< F+d~۹sW5No̩W\PJI?%mz*Ms"f|U dѭk5i:Jo+=TW5n޽eK'#_[?Zj(k`DQMب*/6Ciq,OJw"UwXEo\bבTn/&Ȉz5ȉCUi_lkWӹ<:*ʈ؛6DfkiU`.S>&C#j/F}evQQR+z퍊6F]UW !|Ez_iZZ4Rs=Dײs_#S\:US+gyUE,xkVD#F"RE^=ym-+T pZ^ܶ,zK4RIM-{FzJPFu 2̫ykk PZݚ׸q{ 85oƩ|袧dDG=j*޻cqXmz\Fĕ\>﷬'pW WBcDW17+2C,ғ4U2$fs1]:+f߭::WYI d1Zr]KFf6jUj+*Ysfru_R`EsJlTO407E~ETi ֽ,}uJOLMo j9ݑUS"5wQJ5k|t67T!1:.;պuCHd%TG:'o󓰱V?D9(;:9fٱWY~aԙg?$UU{N֓~ֿ u,;}IV1EӲ%r슻'f}L/>Qtdm<텪G9Ȫ'aP/~e.S єK jV*;~eU]עvlunצyou,#GN껪*"xsm^ z_ijjO[UCJ&WTs7,lk^?]tFr=7NfU7nG2{-ϙV$sSdUUNfW<#Nn]:Bڮb2'TEE^'lq;YeT+YQFʖP6䑮j9Wlvr[Au>UEHgΊELU鿊vtTJWoz})4yK4s*݄Pᡙ[ieֈcv;Uw~ CkgdYRXn jܩfsގET]헱| )QT[>_FUЯHFo59~YaѻT+BCʒʍfqLQcuճUOsEcS6tSѪ~ᅚV'Ʒ'o_ ^E-d,DyF*4ݛ\ET0f8)qjj w9)+G5StEMΚx5 CeҔ鲽.ꞽۅL-Ybr(HB$Wwo6]U}W\DtwXͥکiPx%j9Fܧ[[M5E'<.kک&ʋއʮ˿.t"|,]nrdUW03 ǿE޼+ЖGz3L?} KA_r-ni[1Y%1-9-2r#j!mZ:ZOkڽSX.ڃaSSz6u_=Sd^=n!%}]umͱ9:iZlMW"nӻ1sZ3e-"+]'d W\2Ss=#9ʝU}U}? 4!^%ͷc׏,2>UrȫS\j;r ym5ÓI!r'2r9ɷ*;~duۢd"f$ĮY\ԫ;mRT:_^]_[i9+)VZ!sV#Ur½.X2iP;گEI߲mMf*>.1zcOY^Z!W=UUN=}Jx`co#X숛I؈rTV|ۛ'DЋO%oV"DT^Tp3Oz󻈯BY3w5/i}mtkJU[n|Nl[kmT*Ԟ$z"6nRzhYlMڈOD*۫KQ]A <,Hn-T3I^\lg苲z'Ţn7O4˲ r!UֵȼȨ/Tܙກ~ͱ|eXV_wYXƧ5Uz#;!UޚӍon}wKͷ=6:pilPSVCll2+cjDUQoاO﷽LK4 i|싺v;Nk5 I͔W{M|u֚Ϛ;{MaO-K%RK%k|"bb9{ ,Q[#H⊋U֣9ZfakRa^#<|VszQ;\O-(Z~Y yo̽oM1CO񺦂*\*nQ=?b_N/FTQ$2*Q6^ٹթwܲ^im$WTowuXܭEUT__vaf V-CZzTWQ:jbdFWbh&cֺUjISG,Q.ȎsWRq$mBx(cs#zڎw"]fwAHqiR+}ʌAyG*+wEv܎[-Ncص1 6SMzMQ$kZFvWl-=> Z/k-]\˻oH+TSݩ)wJZ65vc|Q{ 6C3BKm+6w:"#M'JwA}G=C"kyQ6^ٹzݺө iLhoQI"utjDTr*o6PK\N ^ ^assets/images/start-scratch.jpgnuW+AExifII*DuckydAdobed    9VX !u"vWw8xY1#2$A6%57IBRbC4ո ? m&Bߜ19;*yI?b~iW԰shtp@mCKԯGEh^[|ڐ\?>xHfVg<_3OuϞ/R뙧պjlԀzinyj@=s4ڷ[< [|ڐ\?>xHfVg<_3OuϞ/R뙧պjlԀzinyj@=s4ڷ[< [|ڐ\?>xHfVg<_3OuϞ/R뙧պjlԀzinyj@=s4ڷ[< [|ڐ\?>xHfVg<_3OuϞ/R뙧պjlԀzinyj@z?8S,qA-ɋӒ?9 SD󬭖^m-ZRz ][GG34bǶ49sRs:AT: OM-~K=%~w=3gpCq?n;{X c8zK!{gI`7,=%~w=3gpCq?n;{X c8zK!{gI`7,=%~w=3gpCq?n;{X c8zK!{gI`7,=%~w=3gpCq?n;{X c8zK!{gI`8یw 6G_6&))"gR<+PE՞D>MextO?|~p t"oj"&<'qM>?8tgY|cnD]8&[ڳȇɬ1@".rGOnD]-YC_ǀ[v_g td1Kڅjg>Q ]\^_JVȯMz@s'<}2fv14R$ `NynBS_TrR<tS]mkgEtנ:=bǹo.g,/I&&]ʇv){mcT,h7Vފ]^P6Od՚܁1=-w9$G'75эU+Vbg"u J_Jҕt(~>l&U֖R䲥k[=Zc3NVįPMJE_KK)Z@VM^mI&#s$D[j3=mneJl'-/辽B'qM>?8tgY|cnH^:?R?eO_'MWFA9C/>- $~vr[}SRڷȏ^@H_<$.?x@".rGOnD]-YC_ǀ[Ô)YDz#?e@ѾNPKϋg + ]TԀ$6v#!ĀW?}G+ duƞ.Ā+}[K{Vy51y'=MEk3;FF5F֕+9'1Z b[uz Z|R60ϊz{H|>(}yVy&\iԾİ[}(LY8M(#m xu[gш#ht8^PZ52*"3ER~@?F@TOoxgpm|ΉC7!C(ľ~rU8VJ .D$tUv]TOoxg=S=ma?0w\Sq2Z?YZ[q+""q0(aF\p*h$MǭwZ~R60ϊz{H|>(Fݧ>@܄l7+]GwE6Ǹsc 3ض8iZ8q"ƑV滛 \ڞ]uA=S=maO|Pa,\bdFJmZآfxM# Qckh(\*jRj_pUՠ".rGOnD]-YC_ǀ[Ô)YDz#?e@ѾNPKϋg + ]TԀ$6v#!ĀW?}G+ duƞ.Ā+}[K{Vy51'cQ^H5ObPp!o?3 Gig%G5 + |`1 =#Q B~-]q "i$)4E՞D>Mex=&_ޟpB.0TX;$UkJAo0Ǘ6iz]Rim)JPԃ<^(loNa2LS?68ÜRGreT%.)KzA=]p7nˇƾ`qpX_vSy 1?3 Q {EU:#SBrQZJ6oT;ߗ |FP\k7?58(l3(Ƥ:]a !zr{C7,h$6bThuNnZtw_08Ѹ.p-vΎA6Ϻ߽솳C]20lk危J3&կZ~ˇƾ`qpW~\?.5KӖm^Pm[&0[Jʚfn4L:D:uպV ˇƾ`qpW~\?.5,Q [Mm1:1bjy4ZrS$$HHE\뮺ujˇƾ`qpW~\?.5xE6#kF~i Y?ÕJQ.g`G:s3R╡FIU-պuzAqoߗ |F;VLL΋ܕ UG`G%%פꊏǣ8q鮲m6P֯Huh}[K{Vy51'cQ^H5ObPp!o?3 Gig%G5 + |`1 =#Q B~-]q "i$)4E՞D>Mex!x,9Ibe@W?A?~Sk6T\Hm rYoMH Ckj"??LHy#k~w|l_Kp\iH'qM>?8tgY|cnNƜ2Ӷlfǘl1foOVԔ8Zk 4UUB:-_6މ>_6މp.~EKx1NbIa@9#-4@XWt" ]Cl:*_S/̗nH/̗nH.8El7m&!):/7JװM\Qn[Q-Ĕ[jT}zoG_/l=uh_/l=uh7Qs71l6 `u|'hZ5ɗ}d[ex-.,4}ׯ;_/l=uh_/l=uhx׷,,ٞ?˳8b5Qikz+ m9uwK˺=5 /̗nH/̗nHqN7Q^m$z)؁`8FS/QGFa1TKz}MS/&7}}%퇮m}%퇮mr"lSv!,y d1 @p42nPC zzTyw[}%퇮m}%퇮mWmE̽x+.X|%D 6:K*2 r;"TbMqUu(U =tO?|~p t"oj"&<t1L~2 + ƿ)O*$6r_|[9^@HB,p!o &$|dx;>6\H\/%ˮ4v$^D]8&[ڳȇɬ1@$/Ň)?S G'sʀ+ }@W?PK9-b>\Hm`[GCI $~w/W n<]WDN9#I@".!k/c- ܖ;ߖ5+Hk.FgZ[ZR \{| -Ĩwȥo Vh1wM~K}C_E@'ޟyp;ėe=vbe`E1dމWAIt=3=Zq(WWPw|P4?5=.TJ!dx*k.LlҶgU`U%,Bf(ztwVm~C_E@w|P qG O]dٜDN'#6l:h+ғb)ɑַ_gE/zC_E@w|P؏#;sTF] h ']"Ϳj'XΎ^Gފ>}iwySxzݞ${h6tiQUN#eUSQ%MN(4?5=.TwM~K,Q|@%5¡cr٢@f?yKHTJU5 kn4+Ki[~}iwh_Zkz]FSa#YO]lzLA QeNMHqdCH\CO 5b,J7i wM~K}C_E@;V‚efNqJ[Vd KK{^3q(>"Zu)mޚtV'qM>?8tgY|cnH^:?R?eO_'MWFA9C/>- $~vr[}SRڷȏ^@H_<$.?x@".rGOnD]-YC_ǀ[Ô)YDz#?e@ѾNPKϋg + ]TԀ$6v#!ĀW?}G+ duƞ.Ā+}[K{Vy51\GklXq%“&.2^ZZrXP6^sQ垑d<GzEW }>zҏ 'geB%wGLqާ@m@©M:z):?\yg_r0sQ垑dp5Fvo9XG2jy ^D μd,*VX],n+JW@wH`="+>ɀzgb˩\]7ںj6 LYU=Q5Vέ+5Y\L\yg_r0|۞F;:|Gwb!ˠz'V)Ĭ'YܛWGW;\yg_r0sQ垑dO"ݷ=i#>UK߈,n4X0j꞊%SkN('H`="+>ɀ,Pm:hYr`D\z2b6k%5܊m7ZӢ5Y\L\yg_r0?" 3#֒DA #8+3S Ƭ%k^&SH,t]_ .jӎHRi-<| tBXr1(@$~1?l7 ~ly# #ꚐվDD0Ԙ G}p!pl.ؐztO?|~p t"oj"&<t1L~2 + ƿ)O*$6r_|[9^@HB,p!o &$|dx;>6\H\/%ˮ4v$^D]8&[ڳȇɬ1@'/ԌVk:GjFj&,޶I*EIBlx#e+ioOM~+^k|h<+oZY< +#+{Rӫ[z~DN9#I@".!k/c- GaO, k\鲠 Chh'(gų.K؏j@WX;VRb@+ {]G`[Ob@E>ӎHRi-<| tBXr1(@$~1?l7 ~ly# #ꚐվDD0Ԙ G}p!pl.ؐztO?|~p t"oj"&<,Gؤ]G04Ss}̪]bӺ'FIw/ʾk".rGOnD]-YC_ǀ[DN9#I@".!k/c-}[K{Vy51E>ӎHRi-<| t"i$)4dw+i&{+H&&*VB%.Fܰ7"OT֔ﺷ|^g~:ax釓DO㯦N珡?H@y;>D!~:ax釓DO㯦N珡?H@y;>D!~:ax釓DO㯦N珡?H@y;>D!~:ax釓DO㯦N珡?H@y;>D!~:ax釓DO㯦N珡?H@y;>D!~:ax釓DO㯦N珡?H@y;>D!~:ax釓DO㯦N珡?H@y;>D!~:ax釓DO㯦N珡?H@.b5yJ|؍y<>lFc҃6#^O1iAp'4͈דP|\k?(>.b5yJ|؍y<>lFc҃6#^O1iAp'4͈דP|\k?(>.b5yJ|؍y<>lFc҃6#^O1iAp'4͈דP|\k?(>.b5yJj6믽 KL4n2kmAvViZrפZCd{W&E: <2b̑7#ndHm{n[A4SSiun-413ۜ?qZZkr  i掠_#mǙR]1NkֺCz)^jAi+ƵqI,d8KbRwV"\ߣ ͹k=Ե M,2 PPϸWo<;P56;N9O#¶y>c3# &viFn*[=֭E qJyVTl+ lu%97+0eE!:KC'Y龀$(|jRK ٨{;fXO7CaR)[mNE+0C+1Ku&KQmRu)PN)Q,nseY܆ˮyEҽ5)NE*$s\jWνsIn-q bR32?#kDd)*(ڥpHA'4Qz0lXX0j QBk #8R^%..묭+[m@PP'Mj, 8ew͆̐4M#K׆Z$2C Vb~Kʾ\]Վ Jm@E ԭ:ҩmԤy.ۮیע)Z@,vyÿ ߵ_ޯwov+/Ǜtِ|D.j{|6QӛuB%&[O철=soyBxyg6>䈼v#'qqHb&7}i-#/C VR3܆l3}?(*"%$ c[V((.eK|eW"_D͊ ˫Xbq|75`g(⬂[:sr)эMLmI|2`Yj|[csRoIL Sy4Ҽ UeB{yZJYPl8γ&D ]Ւ6AcJq*2R'3|;5[z6Yl.]hj?!`Jbh̍zErD蔥)otkqFu/(⯶.@E6ҮRuؘ@غO<7>3A`I\cFj{ɏy b25]qm^4eX ùc7Lai;ʲV*ػ;"5[+w9Srum 6T9x`g׫ݏϏX:-߿{x_6msoG]Ўu·bJ.{èf;uK5i297F˵U5uvbC6“sWQ+[O@OcJ3D+'8>+我- R&j@&6גK .B #ZC=B{v-o0s #R$&T3ݭV뺔]Ṗ4Xx/[&a ؛cr\EWաg\w{ewRֶX. t_I2W+:u BG1$J퓑߯r؊wU},eK)NP}jg]o,95O9ζDX$`BeԺt/NRRJKVR>;L m}g:_yg2KXje-&1@m.&ֽKcw/*@"n!O ฆHkV~0i930`mA=Gn[}"qʡԸ2K;"[qXz6iu۔E!91!oONڣZʀկ13^0y э<՘Bg)h%g5Ɋ*D'o{BZkU}(o;{y3XK97= f@ȗ>u9*/֝kk/ۖ`= scNnmrk6LpovjAK̍؎+Jj}m@~]l6cĸ/[1eIcne{?$<-L-3uķYr"¶pS'Xk'= &Gb2|53/)[<ޫ\*ۋeC \z_ZnOq jx\02jMeQvVnO9k=߿$$Xnj!4/ HkbL+ܗ(9]r~|]ژz;2{ -"TrM_dea9I;`rbq,k'FYXrZwu}?W@] *8qiMgi. v˓T;Ei\aLDdƞu$V[[+NG6E0brUz᭓9P⛔˖`agҋ6KJZKkJjUn]ޥ |;Ub}c{bH+^}PRB-Z2+mkK/ٯYqٶ'W*bv b;ce8fMlUb<yE';uO9% x9oJJoi gnf+)zk X䥥CɶB?{~ N㤹4;lQ-Xf="WX}eҘhmJ&k$+5Dڞ\aa[-[4qq$j>ǺA1iRV?zd|Nqc3,}ȵ-bGVrLyƦK}[$6}e\&__ T|mIտз4RZկZӋ|c~%pw}Adqb $E'@~AAo3f1:r=egsPAYKkˤ9"cdbN|! gl6ʤ+5tE2z{}^bPa˃}T1@Zwӱ؅>JG|s4C m۽wr$ y[*l*9-1B.AJ]տs]>5&u;;gL3*ع$UMv1Z|z- h[E2)i~sĚƻM>ZRY\(<JR d o2}./߱ r5C$m.+ofzf&2V)tq@ܹ2wW21%RUG]jK 0G8É3#|V#xѕߧ1Lɖ7eU15JZf'uP,qG5g.3c@ o?P߀n4VM> >Iʖ<='drb8_Q Iڲ;2,"/m^!-K$ ?.[}8SM8N9fH™:p.Mjz-Pu덥iJ[P'[3ionkY )Ů V'1ͥ DR^G{&qu2RV457|kfS@m$!NFJLd ;bϓ.2!:혵w"B*.VL72Ej]jYV./h߭pE35! )OE_0mKdR Pm:;kqʉC l.ҙK4j0ڭG tDЀ.uvwq=3{kj$aeeJtkmHjnƗkuMӨ+J嬪QΈG3w*SN:g>G?MHrp֦Z$-s>FȍLTlko)=]e *iJcU㬳%J(o?nݓ>9 A qHփi jdyӥ =ԥ:)@udc_Xpu8gameRKY(HZ=h[S+jRr;j{( &aZx=yjَ;2T_ 4%3|1ѪAsy$J xjPu W\O{P'g 峹C& I_yvNՊp<Vr̂}U"MuZ)aqmYRn|+YΞ ,Y(aEJH—GW9Jj&Zz{}IY$,V&Dq2ڕDՉݝj{vlwByU2Js/l]Ҽ:%-@Sd=%CrdUan {׌N)A!Fا *D\6ʠ f-\{j{کՑ'[E L&`} }<7T+lex)3Sc^z f5YJ.RI+)JW㷣F&z}W"IexdE-Ivld1ݖ39H2kK{;rԗע':H.y833M-{GwWokKTY Erwtu({{ɝ{77v)DlЬ܈{ek)m.U$:Vj^FdKkܖ|~.[ɦh)-kk9-IbQILfQߨA6qJ$L(nPyu30q]4buE41ƫRƣ -(<.PM7" N-tF\yWmֶ[x~Q5h^EȺfP_RvcB{9T1+V\{2{?eTY .hQE'HR',*~o-iWW89]2ʹr6e@f1:mΫEi%ܬ(5-Po1 kWUzuCZI_׶ZzzGa[0$OS 4@%I biky܋"xEjve)!Vօ5S{8fqn%KXqr)X19#DJ~S{%΄K%JiBx#ch-XHx.m4E OʶHX1<`̇/4/}5жǨU:cͥV˫/x~V8׹f4ˑbЉcJ)U9ǰ3B;.ZਢXEі&m.[/^ G + sslenkEqf[/E {GO~l 1%:0+zPK[ NoBQyW~3! \q$y}%d*Nz26{+Zhs*4ycTmkD[lB' ~vqFYϠ,n9Lܕ"օ Ȓ%Pb45-ioM vEp3,>sPLq;*/.n1} _}wSwb{_QL7h8qvŭ 2ṣc_(*♱MR.R bl2=yaY^5>WNÿ8~y?yӽ㧸;Ep0PK\ʳo8**!assets/images/cartflows-small.svgnuW+A PK\>Jn]] assets/images/cartflows-logo.svgnuW+A PK\4N!! assets/images/cartflows-icon.svgnuW+A PK\2 EE readme.txtnuW+A=== Funnel Builder by CartFlows - Create High Converting Sales Funnels For WordPress === Contributors: brainstormforce, wpcrafter Donate link: https://www.paypal.me/BrainstormForce Tags: woocommerce, funnel builder, sales funnels, elementor, beaver builder Requires at least: 4.4 Tested up to: 5.4 Stable tag: 1.5.5 Requires PHP: 5.6 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html Create beautiful checkout pages & sales flows for WooCommerce. == Description == **#1 Funnel Builder For WordPress** ★★★★★
    **Funnels are the most effective way to sell products & services.** We created CartFlows, a **WordPress Funnel Builder**, to help every website owner get more leads, increase conversions, & maximize profits. [youtube https://www.youtube.com/watch?v=N2ZEGu9A2e4] Turn your WooCommerce website into a selling machine using one-click sales funnels with frictionless checkout, custom thank you pages, global checkout replacement, and more… CartFlows is the best and easiest way to sell products and services on your website. With our library of done for you, one-click sales funnels, that literally sell your products and services for you. ## CARTFLOWS IS PERFECT FOR ## * **Selling Online Courses** * **Selling Event Tickets** * **Selling Services** * **Selling Info Product** * **Selling Physical Products** * **Selling Via Dropshipping** * **Selling Anything Really** CartFlows is the perfect ClickFunnels Alternative because its built on the worlds most open platform, WordPress. ### CARTFLOWS GAME-CHANGING FEATURES ### See the features that make CartFlows the **Best Funnel Builder for WordPress**. * **Ready to Import Templates:** Choose from a wide variety of high converting templates. You can add a professionally crafted, multistep funnel, with one mouse click or you can build your own funnel and choose individual templates. * **Use Your Page Builder:** CartFlows will work with all popular page builders, and soon Gutenberg. We will offer templates for Beaver Builder, Elementor, Divi, & Thrive Architect. However, you can use CartFlows with your own templates and your own builder. * **Conversion Tested Checkout:** CartFlows replaces your complicated checkout process with our optimized checkout that instantly increases conversions, making you more money. * **Custom Next Step Thank You Pages:** Your buyer's journey doesn't end after checkout. With CartFlows and our custom thank you page feature, you can guild your new customer on their next steps. * **WooCommerce Checkout Page Replacement** Say goodbye to using the same ridged checkout page that everyone else is using. Create the perfect WooCommerce checkout page and assign it to be the default WooCommerce checkout template. ### Why is CartFlows such a game-changer? ### * **Sales Funnel Tools Are Expensive** — Most sales funnel tools carry a hefty monthly fee from $97 - $297 per month, and they are worth every penny because funnels work. With CartFlows you can unleash the power of funnels for free. * **Sales Funnel Tools Are Complicated** — Most sales funnel tools are frustrating to use. You are stuck using their clunky page builder and have to go through an entirely new learning curve. Who has time for that? With CartFlows you will feel right at home. * **Sales Funnel Tools Are Closed** — Perhaps the worst part of using other funnel builder tools is they are based on a closed platform that limits you in every way. CartFlows is open and sits on top of WordPress and WooCommerce. * **Sales Funnel Tools Lock You In** — We believe in using a platform where everything is on your domain, and you control all your data. CartFlows puts you in control and in the driver's seat. ### Who Can Benefit From CartFlows? ### #### CartFlows Funnel Builder Plugin is perfect for: #### ✔ Bloggers ✔ Course Creators ✔ Coaches / Trainers ✔ Dropshippers ✔ eCommerce Store Owners ✔ Niche Sites ✔ Businesses ✔ Local Businesses ✔ Startups ✔ Personal Brands ✔ Real Estate Agents ✔ Artists & Photographers ✔ All WordPress Websites ## JOIN THE CARTFLOWS INNER CIRCLE ## **JOIN OUR FACEBOOK GROUP COMMUNITY**: Learn the tactics and techniques that other CartFlows users are doing to grow their businesses. Also, get exciting insider information on upcoming feature releases. == Installation == 1. Upload `cartflows.zip` to the `/wp-content/plugins/` directory 2. Activate the plugin through the 'Plugins' menu in WordPress 3. Make sure to disable caching on your checkout and thank you steps == Frequently Asked Questions == = Does CartFlows work with my theme? = Great question. While we haven't tested every WordPress theme, CartFlows was designed to work with all themes because we disable the header and footer on all funnel steps. If you do run into any issues with your particulate theme, our support will be happy to get it resolved for you. = Does CartFlows work with my page builder? = CartFlows should work with all page builders. We do provide templates for the most popular page builders, but you can just as easily use your own designs with your favorite page builder. = Does CartFlows work with the Facebook pixel? = Each step has an area to add any custom script. CartFlows also integrates with the free Pixel Caffeine and PixelYourSitePro. = Does CartFlows work with my payment gateway? = A good rule of thumb is, if it works with WooCommerce, it will work with CartFlows. = Is there a Pro version of CartFlows? = Glad you asked! CartFlows Pro is an optional add-on to CartFlows that adds additional checkout styles, checkout field control, order bumps, one-click upsells / downsells, quantity changer, variable product selector, pro templates, training, and more. == Screenshots == 1. Add "done for you" funnels to your website with 1 click. 2. Drag and drop interface to reorder your funnel steps. 3. Add products to the checkout form and choose your color and fonts. 4. Beautiful, on brand, checkout pages that eliminate distractions and increase conversions. 5. Easily edit anything with your page builder. == Changelog == = Version 1.5.5 - Tuesday, 14th April 2020 = * Fix: CSS conflict with the latest release of Astra theme. = Version 1.5.4 - Tuesday, 7th April 2020 = * Improvement: Hardened the security of the plugin. * Fix: Older flows were not displaying in the library. = Version 1.5.3 - Wednesday, 1st April 2020 = * Improvement: Divi CSS support added for the Optin step type. * Fix: FB Pixel conflict with Beaver Builder & PHP notice issue. = Version 1.5.2 - Wednesday, 18th March 2020 = * New: Added an option to enable Facebook pixel's Pageview event on the whole site. * Improvement: Added compatibility for the Pro theme. * Improvement: Added compatibility for the Kallyas theme. * Improvement: Added compatibility for a future release of CartFlows Pro. * Fix: Dynamic CSS was not working properly in some DIVI cases. = Version 1.5.1 - Thursday, 12th March 2020 = * Improvement: WooCommerce version 4.0.0 compatibility tested. = Version 1.5.0 - Wednesday, 4th March 2020 = * New: Native Google Analytics support added. * Fix: PHP error in Elementor preview if WooCommerce was not installed and the Facebook Pixel setting was enabled. = Version 1.4.2 - Wednesday, 19th February 2020 = * New: Added option to change default order confirmations text on thank you page. * New: Added ability to set optin step type as a home page. * New: Create WooCommerce's product directly from the checkout step. * Improvement: Optin step type is included in LearnDash LMS template settings. = Version 1.4.1 - Thursday, 13th February 2020 = * Fix: Optin step was redirecting to the global checkout. = Version 1.4.0 - Tuesday, 11th February 2020 = * New: Introduced a new optin step type for lead generation. * Improvement: Added compatibility for a future release of CartFlows Pro. * Fix: Fatal Error while editing the page in elementor preview mode if the WooCommerce is not installed. = Version 1.3.5 - Tuesday, 28th January 2020 = * New: Option added for thank you page redirection. * Fix: Pro version's two-step CSS conflict with the DIVI, the second tab was not displaying. * Fix: Checkbox icon for terms & conditions was not displaying for DIVI Builder & Theme. = Version 1.3.4 - Tuesday, 14th January 2020 = * New: Option added to change order button text for each flow. * Improvement: WooCommerce Google Analytics Integration plugin's compatibility added. * Fix: LearnDash deprecated function notice. = Version 1.3.3 - Thursday, 26th December 2019 = * Improvement: Added filter `cartflows_global_checkout_url` for global checkout. * Fix: Thrive's split test option was not displaying in some cases. * Fix: Klarna's payment fields were not displaying due to the wc-ajax endpoint. = Version 1.3.2 - Wednesday, 11th December 2019 = * New: Option added to remove products on the checkout page. * Fix: Checkout page's login form text was not able to translate. * Fix: 2Checkout & PayPlus payment gateway's compatibility issue with global checkout. = Version 1.3.1 - Wednesday, 6th November 2019 = * Improvement: Added compatibility for a future release of CartFlows Pro. * Fix: Security issue fix & added user capability check. = Version 1.3.0 - Tuesday, 15th October 2019 = * New: Native Facebook pixel support added. * Fix: Fallback added for mb_strpos function fatal error for older PHP versions. * Fix: DIVI two step unused CSS removed. = Version 1.2.6 - Tuesday, 27th August 2019 = * New: 'wp_body_open' action support added in templates. * Improvement: Added compatibility for a future release of CartFlows Pro. * Improvement: Checkout step type is included in LearnDash LMS template settings. * Fix: Setting options were not working properly on a multisite setup. * Fix: Blank menu was getting added for the setup wizard. = Version 1.2.5 - Tuesday, 13th August 2019 = * New: Introduced Permalink structure. * Improvement: Filter 'cartflows_coupon_field_text' introduced to change the coupon field text. * Improvement: Normalize CSS issues when the default template was set. = Version 1.2.4 - Wednesday, 31st July 2019 = * Improvement: Added compatibility for a future release of CartFlows Pro's Pre-Checkout Upsell. * Fix: Account field CSS updated. = Version 1.2.3 - Thursday, 11th July 2019 = * New: Permalink option added in settings to change the "cartflows_step" post-type slug. * New: LearnDash Compatibility added for custom templates. * Improvement: The hook 'cartflows_checkout_aftet_configure_cart' deprecated. * Improvement: The 'Logo' tab removed from the checkout step. * Improvement: Optimized the backward-compatibility database query. = Version 1.2.2 - Thursday, 27th June 2019 = * Fix: Vivawallet Gateway issue fixed for global checkout. * Fix: Two column css issue on mobile. = Version 1.2.1 - Thursday, 27th June 2019 = * Fix: Display post states issue. = Version 1.2.0 - Wednesday, 26th June 2019 = * New: Header, Footer default template added. * Improvement: If the cart is empty, then now it will show empty cart notice on global checkout. * Fix: Next step link `Open in new tab` issue. = Version 1.1.22 - Monday, 17th June 2019 = * Improvement: Added "Skip Setup" button for onboarding wizard. * Improvement: Added link in test mode notice to disable test mode from the frontend. * Fix: Paypal cancel return redirect was not redirecting to the checkout page. * Fix: Test mode box was not visible. = Version 1.1.21 - Wednesday, 12th June 2019 = * Fix: Thank you page was redirecting to checkout page when global checkout was set. = Version 1.1.20 - Wednesday, 12th June 2019 = * New: WooCommerce dependency removed. Now, you can use CartFlows without WooCommerce. * Fix: Analytics was not showing. * Fix: Bank account details were not showing on the Thank You page. * Fix: Download details were not showing on the Thank You page for PayPal. * Fix: Variation issue fixed when the WordPress folder path is different. = Version 1.1.19 - Tuesday, 4th June 2019 = * Improvement: Extra theme compatibility added. * Improvement: Oxygen builder compatibility added. * Fix: Floating Label issue with account fields. CSS updated. * Fix: Remove product icon not visible in the admin area for entre theme. = Version 1.1.18 - Friday, 10th May 2019 = * Fix: Sometimes, Next step link was not working. = Version 1.1.17 - Tuesday, 30th April 2019 = * Fix: Database connectivity error while cloning the flow. = Version 1.1.16 - Thursday, 25th April 2019 = * Improvement: Added compatibility for the Cartflows Pro plugin update for older versions. = Version 1.1.15 - Wednesday, 24th April 2019 = * Fix: WooCommerce dependency issue. = Version 1.1.14 - Wednesday, 24th April 2019 = * Improvement: Minify CSS and Js files filter added. * Improvement: Inline coupon message. Now coupon message will show above coupon field. * Fix: Divi compatibility CSS updated. * Fix: Lost your password link was unable to click on the checkout page. = Version 1.1.13 - Tuesday, 9th April 2019 = * Improvement: Added compatibility for a Two-Step checkout style of CartFlows Pro. * Fix: CSS conflict with the Divi theme. * Fix: Checkout field validation issue. * Fix: Conflict with the Norebro theme. * Fix: Redirection issue while paying through a Swish payment gateway. = Version 1.1.12 - Friday, 22nd March 2019 = * New: Added ability to set checkout page as a home page. * Fix: Thrive Architect CSS conflict. = Version 1.1.11 - Tuesday, 19th March 2019 = * Fix: Checkbox tick on checkout was not visible in some cases. * Fix: Width issue of order review. * Fix: Selling the wrong main product in firefox. = Version 1.1.10 - Wednesday, 6th March 2019 = * Fix: Divi builder next step link issue. = Version 1.1.9 - Tuesday, 5th March 2019 = * Fix: Divi builder fails to open if the page is set as a home page. * Fix: Checkout field's width issue on mobile devices in Divi. = Version 1.1.8 - Wednesday, 27th February 2019 = * New: Custom script support added for Landing, Checkout and Thank You page type. * Fix: Added compatibility for pre-applied coupon field fix. * Fix: Divi flow importer style tag issue. = Version 1.1.7.1 - Tuesday, 26th February 2019 = * Fix: Divi importer issue. = Version 1.1.7 - Monday, 25th February 2019 = * New: Divi templates. * Fix: Shipping fields label issue. = Version 1.1.6 - Thursday, 07th February 2019 = * Improvement: Added compatibility for a future release of CartFlows Pro's checkout field editor. * Fix: Permalink conflict with listing theme. * Fix: Thrive architect template popup conflict. * Fix: Coupon code not applied in case of multiple product selection option is selected. = Version 1.1.5 - Wednesday, 23rd January 2019 = * Fix: Beaver Builder Pro version conflict while installing templates. * Fix: Elementor builder white screen while editing checkout page and cart is empty. = Version 1.1.4 - Tuesday, 22nd January 2019 = * New: Beaver Builder templates. * Improvement: Better error handling on the checkout page. * Fix: Product variants were not getting aligned properly in the order summary. * Fix: Divi builder conflict. = Version 1.1.3 - Tuesday, 15th January 2019 = * New: Import / Export the flows * Improvement: Pixel Caffeine plugin pixel compatibility added. * Improvement: Filter introduced to change the coupon field placeholder & button text. * Fix: Clone option conflict with Duplicate post and Duplicate page plugin. * Fix: Cart is not empty after purchase. = Version 1.1.2 - Friday, 4th January 2019 = * Fix: Import Cloud Template option not visible in thrive visual editor. * Fix: Oceanwp css conflict with checkout layout. * Fix: WC error notice in elementor preview mode when Elementor pro is not active/installed. = Version 1.1.1 - Wednesday, 2nd January 2019 = * Improvement: Added compatibility for a future release of CartFlows Pro. * Improvement: Minor CSS and HTML changes. * Fix: Flatsome UX builder compatibility added. * Fix: OceanWP CSS overwrite issue. * Fix: Divi CSS issue. * Fix: Other minor bugs. = Version 1.1.0.1 - Friday, 7th December 2018 = * Fix: Checkout breaking issue. = Version 1.1.0 - Wednesday, 5th December 2018 = * New: Ready for Order Bump Positions. * Improvement: PixelYourSite compatibility added. * Fix: Elementor preview not working for some permalinks. * Fix: Checkout field label alignment issue. * Fix: Long field text overlap on mobile. = Version 1.0.4 - Friday, 23rd November 2018 = * Fix: Thank you page style meta option issue. = Version 1.0.3 - Friday, 23rd November 2018 = * Improvement: Optimized flow and step import. * Fix: Elementor page preview not working if landing page is set as homepage. * Fix: Landing page issue when set as home-page. Used Home url instead of Site url. = Version 1.0.2 - Wednesday, 21st November 2018 = * Fix: Address fields misalignment on checkout page. = Version 1.0.1 - Wednesday, 21st November 2018 = * New: Checkout persistence remember data * Fix: Link issue in Beaver Builder * Fix: Unwanted fields on checkout page. = Version 1.0.0 - Monday, 19th November 2018 = * Initial Release == Upgrade Notice ==PK\$YE  +modules/widgets/class-cartflows-widgets.phpnuW+A __( 'Next Step Widgets', 'cartflows' ) ) ); } /** * Creating widget front-end * * @param array $args arguments array. * @param array $instance widget instance. */ public function widget( $args, $instance ) { $title = apply_filters( 'widget_title', $instance['title'] ); $step_id = intval( $instance['step_id'] ); $flow_id = intval( $instance['flow_id'] ); if ( ! $step_id || ! $flow_id ) { global $post; if ( $post && CARTFLOWS_STEP_POST_TYPE === $post->post_type ) { $step_id = intval( $post->ID ); $flow_id = intval( get_post_meta( $step_id, 'wcf-flow-id', true ) ); } } $output = 'No Data'; if ( $flow_id ) { $navigation = false; $steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( is_array( $steps ) && ! empty( $steps ) ) { foreach ( $steps as $i => $step ) { if ( intval( $step['id'] ) === $step_id ) { $next_i = $i + 1; if ( isset( $steps[ $next_i ] ) ) { $navigation = $steps[ $next_i ]; } break; } } if ( $navigation && is_array( $navigation ) ) { $output = ''; } } } // before and after widget arguments are defined by themes. echo $args['before_widget']; if ( ! empty( $title ) ) { echo $args['before_title'] . $title . $args['after_title']; } // This is where you run the code and display the output. echo $output; echo $args['after_widget']; } /** * Creating widget back-end * * @param array $instance widget instance. */ public function form( $instance ) { if ( isset( $instance['title'] ) ) { $title = $instance['title']; } else { $title = __( 'New title', 'cartflows' ); } if ( isset( $instance['flow_id'] ) ) { $flow_id = $instance['flow_id']; } else { $flow_id = ''; } if ( isset( $instance['step_id'] ) ) { $step_id = $instance['step_id']; } else { $step_id = ''; } // Widget admin form. ?>

    utils->get_step_post_type(), // Post_type. 'normal', // Context. 'high' // Priority. ); } } /** * Metabox Markup * * @param object $post Post object. * @return void */ public function markup_meta_box( $post ) { wp_nonce_field( 'save-nonce-checkout-step-meta', 'nonce-checkout-step-meta' ); $stored = get_post_meta( $post->ID ); $checkout_meta = self::get_meta_option( $post->ID ); // Set stored and override defaults. foreach ( $stored as $key => $value ) { if ( array_key_exists( $key, $checkout_meta ) ) { self::$meta_option[ $key ]['default'] = ( isset( $stored[ $key ][0] ) ) ? maybe_unserialize( $stored[ $key ][0] ) : ''; } else { self::$meta_option[ $key ]['default'] = ( isset( $stored[ $key ][0] ) ) ? $stored[ $key ][0] : ''; } } // Get defaults. $meta = self::get_meta_option( $post->ID ); $checkout_data = array(); foreach ( $meta as $key => $value ) { $checkout_data[ $key ] = $meta[ $key ]['default']; } /** $billing_fields = Cartflows_Helper::get_checkout_fields( 'billing', $post->ID ); // For loop foreach ( $billing_fields as $key => $value ) { $checkout_data[ 'wcf-' . $key ] = $meta[ 'wcf-' . $key ]['default']; } $shipping_fields = Cartflows_Helper::get_checkout_fields( 'shipping', $post->ID ); foreach ( $shipping_fields as $key => $value ) { $checkout_data[ 'wcf-' . $key ] = $meta[ 'wcf-' . $key ]['default']; } $additional_fields = Cartflows_Helper::get_checkout_fields( 'additional', $post->ID ); foreach ( $additional_fields as $key => $value ) { $checkout_data[ 'wcf-' . $key ] = $meta[ 'wcf-' . $key ]['default']; } */ do_action( 'wcf_checkout_settings_markup_before' ); $this->tabs_markup( $checkout_data, $post->ID ); do_action( 'wcf_checkout_settings_markup_after' ); } /** * Page Header Tabs * * @param array $options options. * @param int $post_id post ID. */ public function tabs_markup( $options, $post_id ) { $active_tab = get_post_meta( $post_id, 'wcf-active-tab', true ); if ( empty( $active_tab ) ) { $active_tab = 'wcf-checkout-shortcodes'; } $tab_array = array( array( 'title' => __( 'Shortcodes', 'cartflows' ), 'id' => 'wcf-checkout-shortcodes', 'class' => 'wcf-checkout-shortcodes' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-editor-code', ), array( 'title' => __( 'Select Product', 'cartflows' ), 'id' => 'wcf-checkout-general', 'class' => 'wcf-checkout-general' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-info', ), array( 'title' => __( 'Order Bump', 'cartflows' ), 'id' => 'wcf-product-order-bump', 'class' => 'wcf-product-order-bump' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-cart', ), array( 'title' => __( 'Checkout Offer', 'cartflows' ), 'id' => 'wcf-pre-checkout-offer', 'class' => 'wcf-pre-checkout-offer' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-arrow-up-alt', ), array( 'title' => __( 'Checkout Design', 'cartflows' ), 'id' => 'wcf-checkout-style', 'class' => 'wcf-checkout-style' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-admin-customizer', ), array( 'title' => __( 'Checkout Fields', 'cartflows' ), 'id' => 'wcf-checkout-custom-fields', 'class' => 'wcf-checkout-custom-fields' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-welcome-widgets-menus', ), array( 'title' => __( 'Checkout Settings', 'cartflows' ), 'id' => 'wcf-checkout-custom-settings', 'class' => 'wcf-checkout-custom-settings' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-admin-generic', ), array( 'title' => __( 'Custom Script', 'cartflows' ), 'id' => 'wcf-checkout-custom-script-header', 'class' => 'wcf-checkout-custom-script-header' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-format-aside', ), ); $show_logo = filter_input( INPUT_GET, 'logo-tab', FILTER_VALIDATE_BOOLEAN ); if ( $show_logo ) { $logo_tab = array( 'title' => __( 'Logo (Optional)', 'cartflows' ), 'id' => 'wcf-checkout-header', 'class' => 'wcf-checkout-header' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-format-image', ); array_push( $tab_array, $logo_tab ); } $tabs = apply_filters( 'cartflows_checkout_tabs', $tab_array, $active_tab ); ?>
    $tab ) { ?>
    tab_shortcodes( $options, $post_id ); ?> tab_general( $options, $post_id ); ?> tab_style( $options, $post_id ); ?> tab_pre_checkout_offer( $options, $post_id ); ?> tab_product_bump( $options, $post_id ); ?> tab_custom_fields( $options, $post_id ); ?> tab_custom_settings( $options, $post_id ); ?> tab_header_content( $options, $post_id ); ?> tab_custom_script( $options, $post_id ); ?> right_column_footer( $options, $post_id ); ?>
    meta->get_shortcode_field( array( 'label' => 'Checkout Page', 'name' => 'wcf-checkout-shortcode', 'content' => '[cartflows_checkout]', 'help' => esc_html__( 'Add this shortcode to your checkout page', 'cartflows' ), ) ); ?>
    meta->get_product_selection_repeater( array( 'name' => 'wcf-checkout-products', 'value' => $options['wcf-checkout-products'], 'allow_clear' => true, ) ); if ( ! _is_cartflows_pro() ) { echo wcf()->meta->get_hr_line_field( array() ); echo wcf()->meta->get_description_field( array( 'name' => 'wcf-upgrade-to-pro', /* translators: %s: link */ 'content' => '' . sprintf( esc_html__( 'Upgrade to %1$sCartFlows Pro%2$s for Pre-applied Coupon, Product Variations & Quantity Options.', 'cartflows' ), '', '' ) . '', ) ); } do_action( 'cartflows_checkout_general_tab_content', $options, $post_id ); ?>
    meta->get_description_field( array( 'name' => 'wcf-upgrade-to-pro', /* translators: %s: link */ 'content' => '' . sprintf( esc_html__( 'Upgrade to %1$sCartFlows Pro%2$s for Checkout Offer feature', 'cartflows' ), '', '' ) . '', ) ); } elseif ( _is_cartflows_pro_ver_less_than( '1.2.0' ) ) { $version = '1.2.0'; echo wcf()->meta->get_description_field( array( 'name' => 'wcf-upgrade-to-pro', /* translators: %s: link */ 'content' => '' . sprintf( esc_html__( 'Update to %1$sCartFlows Pro%2$s to %3$s or above for Checkout Offer feature', 'cartflows' ), '', '', $version ) . '', ) ); } ?>
    meta->get_hr_line_field( array() ); if ( ! _is_cartflows_pro() ) { echo wcf()->meta->get_description_field( array( 'name' => 'wcf-upgrade-to-pro', /* translators: %s: link */ 'content' => '' . sprintf( __( 'Upgrade to %1$sCartFlows Pro%2$s for animate browser tab feature', 'cartflows' ), '', '' ) . '', ) ); } elseif ( _is_cartflows_pro_ver_less_than( '1.4.0' ) ) { $version = '1.4.0'; echo wcf()->meta->get_description_field( array( 'name' => 'wcf-upgrade-to-pro', /* translators: %s: link */ 'content' => '' . sprintf( __( 'Update to %1$sCartFlows Pro%2$s to %3$s or above for animate browser tab feature', 'cartflows' ), '', '', $version ) . '', ) ); } do_action( 'cartflows_animate_browser_tab_settings', $options, $post_id ); } /** * Product bump tab * * @param array $options options. * @param int $post_id post ID. */ public function tab_product_bump( $options, $post_id ) { ?>
    meta->get_description_field( array( 'name' => 'wcf-upgrade-to-pro', /* translators: %s: link */ 'content' => '' . sprintf( esc_html__( 'Upgrade to %1$sCartFlows Pro%2$s for Order Bump feature.', 'cartflows' ), '', '' ) . '', ) ); } ?>
    meta->get_description_field( array( 'name' => 'wcf-upgrade-to-pro', /* translators: %s: link */ 'content' => '' . sprintf( esc_html__( 'Upgrade to %1$sCartFlows Pro%2$s for Custom Fields feature.', 'cartflows' ), '', '' ) . '', ) ); } ?>
    meta->get_text_field( array( 'label' => __( 'Place Order Button Text', 'cartflows' ), 'name' => 'wcf-checkout-place-order-button-text', 'value' => $options['wcf-checkout-place-order-button-text'], 'attr' => array( 'placeholder' => __( 'Place order', 'cartflows' ), ), 'help' => __( 'It will change the Place Order Button text on checkout page.', 'cartflows' ), ) ); echo wcf()->meta->get_hr_line_field( array() ); echo wcf()->meta->get_checkbox_field( array( 'name' => 'wcf-remove-product-field', 'value' => $options['wcf-remove-product-field'], 'after' => esc_html__( 'Enable cart editing on checkout', 'cartflows' ), ) ); echo wcf()->meta->get_description_field( array( 'name' => '', /* translators: %s: link */ 'content' => '' . sprintf( esc_html__( 'Users will able to remove products from the checkout page.', 'cartflows' ), '', '' ) . '', ) ); $this->animate_title_settings( $options, $post_id ); ?>
    __( 'One Column (Available in CartFlows Pro) ', 'cartflows' ), 'two-step' => __( 'Two Step (Available in CartFlows Pro) ', 'cartflows' ), ); } echo wcf()->meta->get_select_field( array( 'label' => __( 'Checkout Skin', 'cartflows' ), 'name' => 'wcf-checkout-layout', 'value' => $options['wcf-checkout-layout'], 'options' => array( 'one-column' => esc_html__( 'One Column', 'cartflows' ), 'two-column' => esc_html__( 'Two Column', 'cartflows' ), 'two-step' => esc_html__( 'Two Step', 'cartflows' ), ), 'pro-options' => $layout_pro_option, ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Primary Color', 'cartflows' ), 'name' => 'wcf-primary-color', 'value' => $options['wcf-primary-color'], ) ); echo wcf()->meta->get_font_family_field( array( 'for' => 'wcf-base', 'label' => esc_html__( 'Font Family', 'cartflows' ), 'name' => 'wcf-base-font-family', 'value' => $options['wcf-base-font-family'], ) ); echo wcf()->meta->get_checkbox_field( array( 'label' => __( 'Advance Options', 'cartflows' ), 'name' => 'wcf-advance-options-fields', 'value' => $options['wcf-advance-options-fields'], 'after' => 'Enable', ) ); ?>
    meta->get_section( array( 'label' => __( 'Heading', 'cartflows' ), ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Heading Color', 'cartflows' ), 'name' => 'wcf-heading-color', 'value' => $options['wcf-heading-color'], ) ); echo wcf()->meta->get_font_family_field( array( 'for' => 'wcf-heading', 'label' => esc_html__( 'Font Family', 'cartflows' ), 'name' => 'wcf-heading-font-family', 'value' => $options['wcf-heading-font-family'], ) ); echo wcf()->meta->get_font_weight_field( array( 'for' => 'wcf-heading', 'label' => esc_html__( 'Font Weight', 'cartflows' ), 'name' => 'wcf-heading-font-weight', 'value' => $options['wcf-heading-font-weight'], ) ); echo wcf()->meta->get_section( array( 'label' => __( 'Input Fields', 'cartflows' ), ) ); $fields_skin_pro_option = array(); if ( ! _is_cartflows_pro() ) { $fields_skin_pro_option = array( 'style-one' => __( 'Floating Labels (Available in CartFlows Pro)', 'cartflows' ), ); } echo wcf()->meta->get_select_field( array( 'label' => __( 'Style', 'cartflows' ), 'name' => 'wcf-fields-skins', 'value' => $options['wcf-fields-skins'], 'options' => array( 'default' => esc_html__( 'Default', 'cartflows' ), 'style-one' => esc_html__( 'Floating Labels', 'cartflows' ), ), 'pro-options' => $fields_skin_pro_option, ) ); echo wcf()->meta->get_font_family_field( array( 'for' => 'wcf-input', 'label' => esc_html__( 'Font Family', 'cartflows' ), 'name' => 'wcf-input-font-family', 'value' => $options['wcf-input-font-family'], ) ); echo wcf()->meta->get_font_weight_field( array( 'for' => 'wcf-input', 'label' => esc_html__( 'Font Weight', 'cartflows' ), 'name' => 'wcf-input-font-weight', 'value' => $options['wcf-input-font-weight'], ) ); echo wcf()->meta->get_select_field( array( 'label' => __( 'Size', 'cartflows' ), 'name' => 'wcf-input-field-size', 'value' => $options['wcf-input-field-size'], 'options' => array( '33px' => esc_html__( 'Extra Small', 'cartflows' ), '38px' => esc_html__( 'Small', 'cartflows' ), '44px' => esc_html__( 'Medium', 'cartflows' ), '58px' => esc_html__( 'Large', 'cartflows' ), '68px' => esc_html__( 'Extra Large', 'cartflows' ), 'custom' => esc_html__( 'Custom', 'cartflows' ), ), ) ); echo wcf()->meta->get_number_field( array( 'label' => __( 'Top Bottom Spacing', 'cartflows' ), 'name' => 'wcf-field-tb-padding', 'value' => $options['wcf-field-tb-padding'], ) ); echo wcf()->meta->get_number_field( array( 'label' => __( 'Left Right Spacing', 'cartflows' ), 'name' => 'wcf-field-lr-padding', 'value' => $options['wcf-field-lr-padding'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Text / Placeholder Color', 'cartflows' ), 'name' => 'wcf-field-color', 'value' => $options['wcf-field-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Background Color', 'cartflows' ), 'name' => 'wcf-field-bg-color', 'value' => $options['wcf-field-bg-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Border Color', 'cartflows' ), 'name' => 'wcf-field-border-color', 'value' => $options['wcf-field-border-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Label Color', 'cartflows' ), 'name' => 'wcf-field-label-color', 'value' => $options['wcf-field-label-color'], ) ); ?>
    meta->get_section( array( 'label' => __( 'Buttons', 'cartflows' ), ) ); echo wcf()->meta->get_font_family_field( array( 'for' => 'wcf-button', 'label' => esc_html__( 'Font Family', 'cartflows' ), 'name' => 'wcf-button-font-family', 'value' => $options['wcf-button-font-family'], ) ); echo wcf()->meta->get_font_weight_field( array( 'for' => 'wcf-button', 'label' => esc_html__( 'Font Weight', 'cartflows' ), 'name' => 'wcf-button-font-weight', 'value' => $options['wcf-button-font-weight'], ) ); echo wcf()->meta->get_select_field( array( 'label' => __( 'Size', 'cartflows' ), 'name' => 'wcf-input-button-size', 'value' => $options['wcf-input-button-size'], 'options' => array( '33px' => esc_html__( 'Extra Small', 'cartflows' ), '38px' => esc_html__( 'Small', 'cartflows' ), '44px' => esc_html__( 'Medium', 'cartflows' ), '58px' => esc_html__( 'Large', 'cartflows' ), '68px' => esc_html__( 'Extra Large', 'cartflows' ), 'custom' => esc_html__( 'Custom', 'cartflows' ), ), ) ); echo wcf()->meta->get_number_field( array( 'label' => __( 'Top Bottom Spacing', 'cartflows' ), 'name' => 'wcf-submit-tb-padding', 'value' => $options['wcf-submit-tb-padding'], ) ); echo wcf()->meta->get_number_field( array( 'label' => __( 'Left Right Spacing', 'cartflows' ), 'name' => 'wcf-submit-lr-padding', 'value' => $options['wcf-submit-lr-padding'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Text Color', 'cartflows' ), 'name' => 'wcf-submit-color', 'value' => $options['wcf-submit-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Text Hover Color', 'cartflows' ), 'name' => 'wcf-submit-hover-color', 'value' => $options['wcf-submit-hover-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Background Color', 'cartflows' ), 'name' => 'wcf-submit-bg-color', 'value' => $options['wcf-submit-bg-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Background Hover Color', 'cartflows' ), 'name' => 'wcf-submit-bg-hover-color', 'value' => $options['wcf-submit-bg-hover-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Border Color', 'cartflows' ), 'name' => 'wcf-submit-border-color', 'value' => $options['wcf-submit-border-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Border Hover Color', 'cartflows' ), 'name' => 'wcf-submit-border-hover-color', 'value' => $options['wcf-submit-border-hover-color'], ) ); ?>
    meta->get_section( array( 'label' => __( 'Sections', 'cartflows' ), ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Highlight Area Background Color', 'cartflows' ), 'name' => 'wcf-hl-bg-color', 'value' => $options['wcf-hl-bg-color'], ) ); echo wcf()->meta->get_hidden_field( array( 'name' => 'wcf-field-google-font-url', 'value' => $options['wcf-field-google-font-url'], ) ); ?>
    meta->get_image_field( array( 'name' => 'wcf-header-logo-image', 'value' => $options['wcf-header-logo-image'], 'label' => esc_html__( 'Header Logo', 'cartflows' ), ) ); echo wcf()->meta->get_number_field( array( 'name' => 'wcf-header-logo-width', 'value' => $options['wcf-header-logo-width'], 'label' => esc_html__( 'Logo Width (In px)', 'cartflows' ), ) ); ?>
    options->get_checkout_fields( $post_id ); } return self::$meta_option; } /** * Metabox Save * * @param number $post_id Post ID. * @return void */ public function save_meta_box( $post_id ) { // Checks save status. $is_autosave = wp_is_post_autosave( $post_id ); $is_revision = wp_is_post_revision( $post_id ); $is_valid_nonce = ( isset( $_POST['nonce-checkout-step-meta'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['nonce-checkout-step-meta'] ) ), 'save-nonce-checkout-step-meta' ) ) ? true : false; // Exits script depending on save status. if ( $is_autosave || $is_revision || ! $is_valid_nonce ) { return; } wcf()->options->save_checkout_fields( $post_id ); } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Checkout_Meta::get_instance(); PK\FZaa<modules/checkout/classes/class-cartflows-checkout-markup.phpnuW+Autils->get_checkout_id_from_post_data(); if ( ! $checkout_id ) { return $args; } // Set cancel return URL. $args['cancel_return'] = esc_url_raw( $order->get_cancel_order_url_raw( get_permalink( $checkout_id ) ) ); return $args; } /** * Modify WooCommerce paypal arguments. * * @param string $product_name product name. * @param object $cart_item cart item. * @param string $cart_item_key cart item key. * @return string */ public function wcf_add_remove_label( $product_name, $cart_item, $cart_item_key ) { $checkout_id = get_the_ID(); if ( ! $checkout_id ) { $checkout_id = ( isset( $_POST['option']['checkout_id'] ) ) ? wp_unslash( $_POST['option']['checkout_id'] ) : '';//phpcs:ignore } if ( ! empty( $checkout_id ) ) { $is_remove_product_option = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-remove-product-field' ); if ( 'checkout' === get_post_meta( $checkout_id, 'wcf-step-type', true ) && ( 'yes' === $is_remove_product_option ) ) { $remove_label = apply_filters( 'woocommerce_cart_item_remove_link', sprintf( '', esc_attr( $cart_item['product_id'] ), $cart_item_key ), $cart_item_key ); $product_name = $remove_label . $product_name; } } return $product_name; } /** * Change order button text . * * @param string $woo_button_text place order. * @return string */ public function place_order_button_text( $woo_button_text ) { $checkout_id = get_the_ID(); if ( ! $checkout_id ) { $checkout_id = ( isset( $_POST['option']['checkout_id'] ) ) ? intval( $_POST['option']['checkout_id'] ) : 0; //phpcs:ignore } $wcf_order_button_text = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-checkout-place-order-button-text' ); if ( ! empty( $wcf_order_button_text ) ) { $woo_button_text = $wcf_order_button_text; } return $woo_button_text; } /** * Display all WooCommerce notices. * * @since 1.1.5 */ public function display_woo_notices() { if ( null != WC()->session && function_exists( 'woocommerce_output_all_notices' ) ) { woocommerce_output_all_notices(); } } /** * Redirect from default to the global checkout page * * @since 1.0.0 */ public function global_checkout_template_redirect() { if ( ! is_checkout() ) { return; } if ( wcf()->utils->is_step_post_type() ) { return; } // Return if the key OR Order paramater is found in the URL for certain Payment gateways. if ( isset( $_GET['key'] ) || isset( $_GET['order'] ) ) { //phpcs:ignore return; } // redirect only for cartflows checkout pages. $order_pay_endpoint = get_option( 'woocommerce_checkout_pay_endpoint', 'order-pay' ); $order_received_endpoint = get_option( 'woocommerce_checkout_order_received_endpoint', 'order-received' ); $common = Cartflows_Helper::get_common_settings(); $global_checkout = $common['global_checkout']; if ( isset( $_SERVER['REQUEST_URI'] ) && // ignore on order-pay. false === wcf_mb_strpos( esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) ), '/' . $order_pay_endpoint . '/' ) && // ignore on TY page. false === wcf_mb_strpos( esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) ), '/' . $order_received_endpoint . '/' ) && // ignore if order-pay in query param. false === wcf_mb_strpos( esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) ), $order_pay_endpoint . '=' ) ) { if ( '' !== $global_checkout ) { $link = apply_filters( 'cartflows_global_checkout_url', get_permalink( $global_checkout ) ); if ( ! empty( $link ) ) { wp_safe_redirect( $link ); die(); } } } } /** * Check for checkout flag * * @param bool $is_checkout is checkout. * * @return bool */ public function woo_checkout_flag( $is_checkout ) { if ( ! is_admin() ) { if ( _is_wcf_checkout_type() || _is_wcf_checkout_shortcode() ) { $is_checkout = true; } } return $is_checkout; } /** * Render checkout shortcode markup. * * @param array $atts attributes. * @return string */ public function checkout_shortcode_markup( $atts ) { if ( ! function_exists( 'wc_print_notices' ) ) { $notice_out = '

    ' . __( 'WooCommerce functions do not exist. If you are in an IFrame, please reload it.', 'cartflows' ) . '

    '; $notice_out .= ''; return $notice_out; } $atts = shortcode_atts( array( 'id' => 0, ), $atts ); $checkout_id = intval( $atts['id'] ); if ( empty( $checkout_id ) ) { if ( ! _is_wcf_checkout_type() ) { return '

    ' . __( 'Checkout ID not found', 'cartflows' ) . '

    '; } global $post; $checkout_id = intval( $post->ID ); } $output = ''; ob_start(); do_action( 'cartflows_checkout_form_before', $checkout_id ); $checkout_layout = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-checkout-layout' ); $template_default = CARTFLOWS_CHECKOUT_DIR . 'templates/embed/checkout-template-simple.php'; $template_layout = apply_filters( 'cartflows_checkout_layout_template', $checkout_layout ); if ( file_exists( $template_layout ) ) { include $template_layout; } else { include $template_default; } $output .= ob_get_clean(); return $output; } /** * Configure Cart Data. * * @since 1.0.0 * * @return void */ public function preconfigured_cart_data() { if ( is_admin() ) { return; } global $post; if ( _is_wcf_checkout_type() || _is_wcf_checkout_shortcode() ) { if ( wp_doing_ajax() ) { return; } else { if ( _is_wcf_checkout_type() ) { $checkout_id = $post->ID; } else { $checkout_id = _get_wcf_checkout_id_from_shortcode( $post->post_content ); } $global_checkout = intval( Cartflows_Helper::get_common_setting( 'global_checkout' ) ); if ( ! empty( $global_checkout ) && $checkout_id === $global_checkout ) { if ( WC()->cart->is_empty() ) { wc_add_notice( __( 'Your cart is currently empty.', 'cartflows' ), 'error' ); } return; } if ( apply_filters( 'cartflows_skip_configure_cart', false, $checkout_id ) ) { return; } do_action( 'cartflows_checkout_before_configure_cart', $checkout_id ); $flow_id = wcf()->utils->get_flow_id_from_step_id( $checkout_id ); if ( wcf()->flow->is_flow_testmode( $flow_id ) ) { $products = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-checkout-products', 'dummy' ); } else { $products = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-checkout-products' ); } if ( ! is_array( $products ) ) { if ( 'dummy' === $products ) { $args = array( 'posts_per_page' => 1, 'orderby' => 'rand', 'post_type' => 'product', 'meta_query' => array( //phpcs:ignore // Exclude out of stock products. array( 'key' => '_stock_status', 'value' => 'outofstock', 'compare' => 'NOT IN', ), ), 'tax_query' => array( //phpcs:ignore array( 'taxonomy' => 'product_type', 'field' => 'slug', 'terms' => 'simple', ), ), ); $random_product = get_posts( $args ); if ( isset( $random_product[0]->ID ) ) { $products = array( array( 'product' => $random_product[0]->ID, ), ); } else { return; } } else { return; } } /* Empty the current cart */ WC()->cart->empty_cart(); if ( is_array( $products ) && count( $products ) < 1 ) { wc_add_notice( __( 'No product is selected. Please select products from the checkout meta settings to continue.', 'cartflows' ), 'error' ); return; } /* Set customer session if not set */ if ( ! is_user_logged_in() && WC()->cart->is_empty() ) { WC()->session->set_customer_session_cookie( true ); } $cart_product_count = 0; foreach ( $products as $index => $data ) { if ( ! isset( $data['product'] ) ) { return; } if ( apply_filters( 'cartflows_skip_other_products', false, $cart_product_count ) ) { break; } $product_id = $data['product']; $_product = wc_get_product( $product_id ); if ( ! empty( $_product ) ) { $quantity = 1; if ( ! $_product->is_type( 'grouped' ) && ! $_product->is_type( 'external' ) ) { if ( $_product->is_type( 'variable' ) ) { $default_attributes = $_product->get_default_attributes(); if ( ! empty( $default_attributes ) ) { foreach ( $_product->get_children() as $variation_id ) { $single_variation = new WC_Product_Variation( $variation_id ); if ( $default_attributes == $single_variation->get_attributes() ) { WC()->cart->add_to_cart( $variation_id, $quantity ); $cart_product_count++; } } } else { $product_childrens = $_product->get_children(); if ( isset( $product_childrens[0] ) ) { WC()->cart->add_to_cart( $product_childrens[0], $quantity ); $cart_product_count++; } else { echo '

    ' . esc_html__( 'Variations Not set', 'cartflows' ) . '

    '; } } } else { WC()->cart->add_to_cart( $product_id, $quantity ); $cart_product_count++; } } else { $wrong_product_notice = __( 'This product can\'t be purchased', 'cartflows' ); wc_add_notice( $wrong_product_notice ); /** WC()->cart->add_to_cart( $product_id, $quantity );. */ } } } /* Since 1.2.2 */ wcf_do_action_deprecated( 'cartflows_checkout_aftet_configure_cart', array( $checkout_id ), '1.2.2', 'cartflows_checkout_after_configure_cart' ); do_action( 'cartflows_checkout_after_configure_cart', $checkout_id ); } } } /** * Load shortcode data. * * @return void */ public function shortcode_load_data() { if ( _is_wcf_checkout_type() || _is_wcf_checkout_shortcode() ) { add_action( 'wp_enqueue_scripts', array( $this, 'shortcode_scripts' ), 21 ); add_action( 'wp_enqueue_scripts', array( $this, 'compatibility_scripts' ), 101 ); /* Show notices if cart has errors */ add_action( 'woocommerce_cart_has_errors', 'woocommerce_output_all_notices' ); add_action( 'woocommerce_checkout_after_customer_details', array( $this, 'order_wrap_div_start' ), 99 ); add_action( 'woocommerce_checkout_after_order_review', array( $this, 'order_wrap_div_end' ), 99 ); // Outputting the hidden field in checkout page. add_action( 'woocommerce_after_order_notes', array( $this, 'checkout_shortcode_post_id' ), 99 ); add_action( 'woocommerce_login_form_end', array( $this, 'checkout_shortcode_post_id' ), 99 ); remove_all_actions( 'woocommerce_checkout_billing' ); remove_all_actions( 'woocommerce_checkout_shipping' ); // Hook in actions once. add_action( 'woocommerce_checkout_billing', array( WC()->checkout, 'checkout_form_billing' ) ); add_action( 'woocommerce_checkout_shipping', array( WC()->checkout, 'checkout_form_shipping' ) ); remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form' ); add_action( 'woocommerce_checkout_order_review', array( $this, 'display_custom_coupon_field' ) ); add_filter( 'woocommerce_checkout_fields', array( $this, 'add_three_column_layout_fields' ) ); add_filter( 'woocommerce_cart_totals_coupon_html', array( $this, 'remove_coupon_text' ) ); add_filter( 'woocommerce_order_button_text', array( $this, 'place_order_button_text' ), 10, 1 ); global $post; if ( _is_wcf_checkout_type() ) { $checkout_id = $post->ID; } else { $checkout_id = _get_wcf_checkout_id_from_shortcode( $post->post_content ); } do_action( 'cartflows_checkout_before_shortcode', $checkout_id ); } } /** * Render checkout ID hidden field. * * @param array $checkout checkout session data. * @return void */ public function checkout_shortcode_post_id( $checkout ) { global $post; if ( _is_wcf_checkout_type() ) { $checkout_id = $post->ID; } else { $checkout_id = _get_wcf_checkout_id_from_shortcode( $post->post_content ); } $flow_id = get_post_meta( $checkout_id, 'wcf-flow-id', true ); echo ''; echo ''; } /** * Load shortcode scripts. * * @return void */ public function shortcode_scripts() { wp_enqueue_style( 'wcf-checkout-template', wcf()->utils->get_css_url( 'checkout-template' ), '', CARTFLOWS_VER ); wp_enqueue_script( 'wcf-checkout-template', wcf()->utils->get_js_url( 'checkout-template' ), array( 'jquery' ), CARTFLOWS_VER, true ); do_action( 'cartflows_checkout_scripts' ); $style = $this->generate_style(); wp_add_inline_style( 'wcf-checkout-template', $style ); } /** * Load compatibility scripts. * * @return void */ public function compatibility_scripts() { global $post; if ( _is_wcf_checkout_type() ) { $checkout_id = $post->ID; } else { $checkout_id = _get_wcf_checkout_id_from_shortcode( $post->post_content ); } // Add DIVI Compatibility css if DIVI theme is enabled. if ( Cartflows_Compatibility::get_instance()->is_divi_enabled() || Cartflows_Compatibility::get_instance()->is_divi_builder_enabled( $checkout_id ) ) { wp_enqueue_style( 'wcf-checkout-template-divi', wcf()->utils->get_css_url( 'checkout-template-divi' ), '', CARTFLOWS_VER ); } // Add Flatsome Compatibility css if Flatsome theme is enabled. if ( Cartflows_Compatibility::get_instance()->is_flatsome_enabled() ) { wp_enqueue_style( 'wcf-checkout-template-flatsome', wcf()->utils->get_css_url( 'checkout-template-flatsome' ), '', CARTFLOWS_VER ); } // Add The7 Compatibility css if The7 theme is enabled. if ( Cartflows_Compatibility::get_instance()->is_the_seven_enabled() ) { wp_enqueue_style( 'wcf-checkout-template-the-seven', wcf()->utils->get_css_url( 'checkout-template-the-seven' ), '', CARTFLOWS_VER ); } } /** * Generate styles. * * @return string */ public function generate_style() { global $post; if ( _is_wcf_checkout_type() ) { $checkout_id = $post->ID; } else { $checkout_id = _get_wcf_checkout_id_from_shortcode( $post->post_content ); } /*Output css variable */ $output = ''; CartFlows_Font_Families::render_fonts( $checkout_id ); $primary_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-primary-color' ); $base_font_family = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-base-font-family' ); $header_logo_width = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-header-logo-width' ); /** $base_font_weight = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-base-font-weight' );*/ $r = ''; $g = ''; $b = ''; $field_tb_padding = ''; $field_lr_padding = ''; $field_heading_color = ''; $field_color = ''; $field_bg_color = ''; $field_border_color = ''; $field_label_color = ''; $submit_tb_padding = ''; $submit_lr_padding = ''; $hl_bg_color = ''; $field_input_size = ''; $box_border_color = ''; $section_bg_color = ''; $submit_button_height = ''; $submit_color = ''; $submit_bg_color = $primary_color; $submit_border_color = $primary_color; $submit_hover_color = ''; $submit_bg_hover_color = $primary_color; $submit_border_hover_color = $primary_color; $section_heading_color = ''; $is_advance_option = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-advance-options-fields' ); $button_font_family = ''; $button_font_weight = ''; $input_font_family = ''; $input_font_weight = ''; $heading_font_family = ''; $heading_font_weight = ''; $base_font_family = $base_font_family; /** $base_font_weight = $base_font_weight;*/ if ( 'yes' == $is_advance_option ) { /** * Get Font Family and Font Weight weight values */ $section_bg_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-section-bg-color' ); $heading_font_family = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-heading-font-family' ); $heading_font_weight = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-heading-font-weight' ); $section_heading_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-heading-color' ); $button_font_family = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-button-font-family' ); $button_font_weight = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-button-font-weight' ); $input_font_family = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-input-font-family' ); $input_font_weight = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-input-font-weight' ); $field_tb_padding = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-field-tb-padding' ); $field_lr_padding = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-field-lr-padding' ); $field_input_size = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-input-field-size' ); $field_heading_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-field-heading-color' ); $field_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-field-color' ); $field_bg_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-field-bg-color' ); $field_border_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-field-border-color' ); $field_label_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-field-label-color' ); $submit_tb_padding = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-submit-tb-padding' ); $submit_lr_padding = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-submit-lr-padding' ); $submit_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-submit-color' ); $submit_bg_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-submit-bg-color', $primary_color ); $submit_border_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-submit-border-color', $primary_color ); $submit_border_hover_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-submit-border-hover-color', $primary_color ); $submit_hover_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-submit-hover-color' ); $submit_bg_hover_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-submit-bg-hover-color', $primary_color ); $hl_bg_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-hl-bg-color' ); $box_border_color = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-box-border-color' ); $submit_button_height = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-input-button-size' ); /** * Get font values */ if ( 'custom' == $submit_button_height ) { $submit_button_height = '38px'; } if ( 'custom' == $field_input_size ) { $field_input_size = '38px'; } } if ( isset( $primary_color ) ) { list($r, $g, $b) = sscanf( $primary_color, '#%02x%02x%02x' ); } if ( Cartflows_Compatibility::get_instance()->is_divi_enabled() || Cartflows_Compatibility::get_instance()->is_divi_builder_enabled( $checkout_id ) ) { include CARTFLOWS_CHECKOUT_DIR . 'includes/checkout-dynamic-divi-css.php'; } else { include CARTFLOWS_CHECKOUT_DIR . 'includes/checkout-dynamic-css.php'; } return $output; } /** * Get ajax end points. * * @param string $endpoint_url end point URL. * @param string $request end point request. * @return string */ public function get_ajax_endpoint( $endpoint_url, $request ) { global $post; if ( ! empty( $post ) && ! empty( $_SERVER['REQUEST_URI'] ) ) { if ( _is_wcf_checkout_type() ) { if ( mb_strpos( $endpoint_url, 'checkout', 0, 'utf-8' ) === false ) { if ( '' === $request ) { $query_args = array( 'wc-ajax' => '%%endpoint%%', ); } else { $query_args = array( 'wc-ajax' => $request, ); } $uri = explode( '?', $_SERVER['REQUEST_URI'], 2 ); //phpcs:ignore $uri = $uri[0]; $endpoint_url = esc_url( add_query_arg( $query_args, $uri ) ); } } } return $endpoint_url; } /** * Save checkout fields. * * @param int $order_id order id. * @param array $posted posted data. * @return void */ public function save_checkout_fields( $order_id, $posted ) { if ( isset( $_POST['_wcf_checkout_id'] ) ) { //phpcs:ignore $checkout_id = wc_clean( intval( $_POST['_wcf_checkout_id'] ) ); //phpcs:ignore update_post_meta( $order_id, '_wcf_checkout_id', $checkout_id ); if ( isset( $_POST['_wcf_flow_id'] ) ) { //phpcs:ignore $flow_id = wc_clean( intval( $_POST['_wcf_flow_id'] ) ); //phpcs:ignore update_post_meta( $order_id, '_wcf_flow_id', $flow_id ); } } } /** * Enable Logo In Header Of Checkout Page * * @return void */ public function enable_logo_in_header() { global $post; if ( _is_wcf_checkout_type() ) { $checkout_id = $post->ID; } else { $checkout_id = _get_wcf_checkout_id_from_shortcode( $post->post_content ); } $header_logo_image = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-header-logo-image' ); $add_image_markup = ''; if ( isset( $header_logo_image ) && ! empty( $header_logo_image ) ) { $add_image_markup = '
    '; $add_image_markup .= ''; $add_image_markup .= '
    '; } echo $add_image_markup; } /** * Add text to the bootom of the checkout page. * * @return void */ public function show_cartflows_copyright_message() { $output_string = ''; $output_string .= ''; echo $output_string; } /** * Redirect users to our checkout if hidden param * * @param string $redirect redirect url. * @param object $user user. * @return string */ public function after_login_redirect( $redirect, $user ) { if ( isset( $_POST['_wcf_checkout_id'] ) ) { //phpcs:ignore $checkout_id = intval( $_POST['_wcf_checkout_id'] ); //phpcs:ignore $redirect = get_permalink( $checkout_id ); } return $redirect; } /** * Display coupon code field after review order fields. */ public function display_custom_coupon_field() { $coupon_enabled = apply_filters( 'woocommerce_coupons_enabled', true ); $show_coupon = apply_filters( 'cartflows_show_coupon_field', true ); if ( ! ( $coupon_enabled && $show_coupon ) ) { return; } $coupon_field = array( 'field_text' => __( 'Coupon Code', 'cartflows' ), 'button_text' => __( 'Apply', 'cartflows' ), 'class' => '', ); $coupon_field = apply_filters( 'cartflows_coupon_field_options', $coupon_field ); ob_start(); ?>
    cart->add_discount( sanitize_text_field( wp_unslash( $_POST['coupon_code'] ) ) ); } else { wc_add_notice( WC_Coupon::get_generic_coupon_error( WC_Coupon::E_WC_COUPON_PLEASE_ENTER ), 'error' ); } $response = array( 'status' => $result, 'msg' => wc_print_notices( true ), ); echo wp_json_encode( $response ); die(); } /** * Added ajax nonce to localize variable. * * @param array $vars localize variables. */ public function add_localize_vars( $vars ) { $vars['wcf_validate_coupon_nonce'] = wp_create_nonce( 'wcf-apply-coupon' ); $vars['wcf_validate_remove_coupon_nonce'] = wp_create_nonce( 'wcf-remove-coupon' ); $vars['wcf_validate_remove_cart_product_nonce'] = wp_create_nonce( 'wcf-remove-cart-product' ); $vars['allow_persistance'] = apply_filters( 'cartflows_allow_persistace', 'yes' ); return $vars; } /** * Add custom class to the fields to change the UI to three column. * * @param array $fields fields. */ public function add_three_column_layout_fields( $fields ) { if ( empty( $fields['billing']['billing_address_2'] ) ) { if ( isset( $fields['billing']['billing_address_1'] ) && is_array( $fields['billing']['billing_address_1'] ) ) { $fields['billing']['billing_address_1']['class'][] = 'form-row-full'; } } if ( ! empty( $fields['billing']['billing_company'] ) ) { if ( isset( $fields['billing']['billing_company'] ) && is_array( $fields['billing']['billing_company'] ) ) { $fields['billing']['billing_company']['class'][] = 'form-row-full'; } } if ( ! empty( $fields['shipping']['shipping_company'] ) ) { if ( isset( $fields['shipping']['shipping_company'] ) && is_array( $fields['shipping']['shipping_company'] ) ) { $fields['shipping']['shipping_company']['class'][] = 'form-row-full'; } } if ( ! empty( $fields['billing']['billing_country'] ) ) { if ( isset( $fields['billing']['billing_country'] ) && is_array( $fields['billing']['billing_country'] ) ) { $fields['billing']['billing_country']['class'][] = 'form-row-full'; } } if ( ! empty( $fields['shipping']['shipping_country'] ) ) { if ( isset( $fields['shipping']['shipping_country'] ) && is_array( $fields['shipping']['shipping_country'] ) ) { $fields['shipping']['shipping_country']['class'][] = 'form-row-full'; } } if ( ! empty( $fields['billing']['billing_phone'] ) ) { if ( isset( $fields['billing']['billing_phone'] ) && is_array( $fields['billing']['billing_phone'] ) ) { $fields['billing']['billing_phone']['class'][] = 'form-row-full'; } } if ( ! empty( $fields['billing']['billing_email'] ) ) { if ( isset( $fields['billing']['billing_email'] ) && is_array( $fields['billing']['billing_email'] ) ) { $fields['billing']['billing_email']['class'][] = 'form-row-full'; } } if ( empty( $fields['shipping']['shipping_address_2'] ) ) { if ( isset( $fields['shipping']['shipping_address_1'] ) && is_array( $fields['shipping']['shipping_address_1'] ) ) { $fields['shipping']['shipping_address_1']['class'][] = 'form-row-full'; } } if ( isset( $fields['billing']['billing_city'] ) && isset( $fields['billing']['billing_state'] ) && isset( $fields['billing']['billing_postcode'] ) ) { $fields['billing']['billing_city']['class'][] = 'wcf-column-33'; $fields['billing']['billing_state']['class'][] = 'wcf-column-33'; $fields['billing']['billing_postcode']['class'][] = 'wcf-column-33'; } if ( isset( $fields['shipping']['shipping_city'] ) && isset( $fields['shipping']['shipping_state'] ) && isset( $fields['shipping']['shipping_postcode'] ) ) { $fields['shipping']['shipping_city']['class'][] = 'wcf-column-33'; $fields['shipping']['shipping_state']['class'][] = 'wcf-column-33'; $fields['shipping']['shipping_postcode']['class'][] = 'wcf-column-33'; } return $fields; } /** * Add opening dev * * @since 1.0.0 */ public function order_wrap_div_start() { echo "
    "; } /** * Add closing dev * * @since 1.0.0 */ public function order_wrap_div_end() { echo '
    '; } /** * Remove coupon. */ public function remove_coupon() { check_ajax_referer( 'wcf-remove-coupon', 'security' ); $coupon = isset( $_POST['coupon_code'] ) ? wc_clean( wp_unslash( $_POST['coupon_code'] ) ) : false; //phpcs:ignore if ( empty( $coupon ) ) { echo "
    " . esc_html__( 'Sorry there was a problem removing this coupon.', 'cartflows' ); } else { WC()->cart->remove_coupon( $coupon ); echo "
    " . esc_html__( 'Coupon has been removed.', 'cartflows' ) . '
    '; } wc_print_notices(); wp_die(); } /** * Remove cart item. */ public function wcf_woo_remove_cart_product() { check_ajax_referer( 'wcf-remove-cart-product', 'security' ); $product_key = isset( $_POST['p_key'] ) ? wc_clean( wp_unslash( $_POST['p_key'] ) ) : false; //phpcs:ignore $product_id = isset( $_POST['p_id'] ) ? wc_clean( wp_unslash( $_POST['p_id'] ) ) : ''; //phpcs:ignore $product_title = get_the_title( $product_id ); $needs_shipping = false; if ( empty( $product_key ) ) { $msg = "
    " . __( 'Sorry there was a problem removing ', 'cartflows' ) . $product_title; } else { WC()->cart->remove_cart_item( $product_key ); $msg = "
    " . $product_title . __( ' has been removed.', 'cartflows' ) . '
    '; } foreach ( WC()->cart->get_cart() as $cart_item_key => $values ) { if ( $values['data']->needs_shipping() ) { $needs_shipping = true; break; } } $response = array( 'need_shipping' => $needs_shipping, 'msg' => $msg, ); echo wp_json_encode( $response ); wp_die(); } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Checkout_Markup::get_instance(); PK\YS-modules/checkout/class-cartflows-checkout.phpnuW+Aoptions->get_checkout_meta_value( $checkout_id, 'wcf-checkout-layout' ); $fields_skins = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-fields-skins' ); ?>
    ' ) { do_action( 'cartflows_checkout_cart_empty', $checkout_id ); echo esc_html__( 'Your cart is currently empty.', 'cartflows' ); } else { echo $checkout_html; } ?>
    PK\4hh+modules/checkout/templates/wcf-template.phpnuW+A > <?php wp_title( '-', true, 'right' ); ?><?php bloginfo( 'name' ); ?> >
    ' ) { echo esc_html__( 'Your cart is currently empty.', 'cartflows' ); } else { echo $checkout_html; } ?>

    -

    PK\<'modules/optin/class-cartflows-optin.phpnuW+Aelementor_editor_compatibility(); } /** * Elementor editor compatibility. */ public function elementor_editor_compatibility() { if ( ! empty( $_REQUEST['action'] ) && 'elementor' === $_REQUEST['action'] && is_admin() ) { //phpcs:ignore if ( isset( $_GET['post'] ) && ! empty( $_GET['post'] ) ) { //phpcs:ignore if ( _wcf_check_is_optin_by_id( intval( $_GET['post'] ) ) ) { //phpcs:ignore /* Submit Button */ add_filter( 'woocommerce_order_button_text', array( $this, 'place_order_button_text' ), 10, 1 ); } } } } /** * Change order button text . * * @param string $woo_button_text place order. * @return string */ public function place_order_button_text( $woo_button_text ) { $optin_id = get_the_ID(); $wcf_order_button_text = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-button-text' ); if ( ! empty( $wcf_order_button_text ) ) { $woo_button_text = $wcf_order_button_text; } return $woo_button_text; } /** * Display all WooCommerce notices. * * @since 1.1.5 */ public function display_woo_notices() { if ( null != WC()->session && function_exists( 'woocommerce_output_all_notices' ) ) { woocommerce_output_all_notices(); } } /** * Check for checkout flag * * @param bool $is_checkout is checkout. * * @return bool */ public function woo_checkout_flag( $is_checkout ) { if ( ! is_admin() ) { if ( _is_wcf_optin_type() ) { $is_checkout = true; } } return $is_checkout; } /** * Render checkout shortcode markup. * * @param array $atts attributes. * @return string */ public function optin_shortcode_markup( $atts ) { if ( ! function_exists( 'wc_print_notices' ) ) { $notice_out = '

    ' . __( 'WooCommerce functions do not exist. If you are in an IFrame, please reload it.', 'cartflows' ) . '

    '; $notice_out .= ''; return $notice_out; } $atts = shortcode_atts( array( 'id' => 0, ), $atts ); $optin_id = intval( $atts['id'] ); if ( empty( $optin_id ) ) { if ( ! _is_wcf_optin_type() ) { return '

    ' . __( 'Please place shortcode on Optin step-type only.', 'cartflows' ) . '

    '; } global $post; $optin_id = intval( $post->ID ); } $output = ''; ob_start(); do_action( 'cartflows_optin_form_before', $optin_id ); $optin_layout = 'default'; $template_default = CARTFLOWS_OPTIN_DIR . 'templates/optin-template-simple.php'; include $template_default; $output .= ob_get_clean(); return $output; } /** * Configure Cart Data. * * @since 1.0.0 * * @return void */ public function preconfigured_cart_data() { if ( is_admin() ) { return; } global $post; if ( _is_wcf_optin_type() ) { if ( wp_doing_ajax() ) { return; } else { $optin_id = $post->ID; do_action( 'cartflows_optin_before_configure_cart', $optin_id ); $products = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-optin-product' ); if ( ! is_array( $products ) ) { return; } /* Empty the current cart */ WC()->cart->empty_cart(); if ( is_array( $products ) && count( $products ) < 1 ) { wc_add_notice( __( 'No product is selected. Please select a Simple, Virtual and Free product from the meta settings.', 'cartflows' ), 'error' ); return; } /* Set customer session if not set */ if ( ! is_user_logged_in() && WC()->cart->is_empty() ) { WC()->session->set_customer_session_cookie( true ); } $product_id = reset( $products ); $_product = wc_get_product( $product_id ); if ( ! empty( $_product ) ) { if ( $_product->is_type( 'simple' ) && $_product->is_virtual() ) { if ( $_product->get_price() > 0 ) { wc_add_notice( __( 'Please update the selected product\'s price to zero (0).', 'cartflows' ), 'error' ); } else { $quantity = 1; WC()->cart->add_to_cart( $product_id, $quantity ); } } else { wc_add_notice( __( 'Please select a Simple, Virtual and Free product.', 'cartflows' ), 'error' ); } } else { wc_add_notice( __( 'Please select a Simple, Virtual and Free product.', 'cartflows' ), 'error' ); } do_action( 'cartflows_optin_after_configure_cart', $optin_id ); } } } /** * Load shortcode data. * * @return void */ public function shortcode_load_data() { if ( _is_wcf_optin_type() ) { add_action( 'wp_enqueue_scripts', array( $this, 'shortcode_scripts' ), 21 ); add_action( 'wp_enqueue_scripts', array( $this, 'compatibility_scripts' ), 101 ); /* Show notices if cart has errors */ add_action( 'woocommerce_cart_has_errors', 'woocommerce_output_all_notices' ); // Outputting the hidden field in checkout page. add_action( 'woocommerce_after_order_notes', array( $this, 'checkout_shortcode_post_id' ), 99 ); add_action( 'woocommerce_login_form_end', array( $this, 'checkout_shortcode_post_id' ), 99 ); /* Remove unnecessary option */ add_filter( 'woocommerce_enable_order_notes_field', '__return_false' ); add_filter( 'woocommerce_cart_needs_shipping_address', '__return_false' ); remove_all_actions( 'woocommerce_before_checkout_form' ); remove_all_actions( 'woocommerce_checkout_billing' ); remove_all_actions( 'woocommerce_checkout_shipping' ); remove_all_actions( 'woocommerce_checkout_before_order_review' ); remove_all_actions( 'woocommerce_checkout_order_review' ); remove_all_actions( 'woocommerce_checkout_after_order_review' ); add_filter( 'woocommerce_cart_needs_payment', '__return_false' ); add_filter( 'woocommerce_available_payment_gateways', array( $this, 'disable_payment_gateways' ) ); /* Paypal Expresss remove */ if ( function_exists( 'wc_gateway_ppec' ) ) { remove_action( 'wp_enqueue_scripts', array( wc_gateway_ppec()->cart, 'enqueue_scripts' ) ); } // Hook in actions once. add_action( 'woocommerce_before_checkout_form', 'woocommerce_output_all_notices', 10 ); add_action( 'woocommerce_checkout_billing', array( WC()->checkout, 'checkout_form_billing' ) ); add_action( 'woocommerce_checkout_shipping', array( WC()->checkout, 'checkout_form_shipping' ) ); add_action( 'woocommerce_checkout_order_review', 'woocommerce_checkout_payment', 20 ); /* Submit Button */ add_filter( 'woocommerce_order_button_text', array( $this, 'place_order_button_text' ), 10, 1 ); add_filter( 'woocommerce_get_terms_and_conditions_checkbox_text', '__return_false' ); global $post; $optin_id = $post->ID; do_action( 'cartflows_optin_before_shortcode', $optin_id ); } } /** * Disable payment gateways. * * @param array $available_gateways gateways. * @return array */ public function disable_payment_gateways( $available_gateways ) { if ( ! is_admin() ) { $available_gateways = array(); } return $available_gateways; } /** * Render checkout ID hidden field. * * @param array $checkout checkout session data. * @return void */ public function checkout_shortcode_post_id( $checkout ) { if ( ! _is_wcf_optin_type() ) { return; } global $post; $optin_id = $post->ID; $flow_id = get_post_meta( $optin_id, 'wcf-flow-id', true ); echo ''; echo ''; } /** * Load shortcode scripts. * * @return void */ public function shortcode_scripts() { wp_enqueue_style( 'wcf-optin-template', wcf()->utils->get_css_url( 'optin-template' ), '', CARTFLOWS_VER ); wp_enqueue_script( 'wcf-optin-template', wcf()->utils->get_js_url( 'optin-template' ), array( 'jquery' ), CARTFLOWS_VER, true ); do_action( 'cartflows_optin_scripts' ); $style = $this->generate_style(); wp_add_inline_style( 'wcf-optin-template', $style ); } /** * Load compatibility scripts. * * @return void */ public function compatibility_scripts() { global $post; $optin_id = $post->ID; // Add DIVI Compatibility css if DIVI theme is enabled. if ( Cartflows_Compatibility::get_instance()->is_divi_enabled() || Cartflows_Compatibility::get_instance()->is_divi_builder_enabled( $optin_id ) ) { wp_enqueue_style( 'wcf-optin-template-divi', wcf()->utils->get_css_url( 'optin-template-divi' ), '', CARTFLOWS_VER ); } } /** * Generate styles. * * @return string */ public function generate_style() { global $post; $optin_id = $post->ID; /* Load all fonts */ CartFlows_Font_Families::render_fonts( $optin_id ); $r = ''; $g = ''; $b = ''; $output = ''; /* Global */ $primary_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-primary-color' ); $base_font_family = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-base-font-family' ); /* Input Fields */ $input_font_family = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-input-font-family' ); $input_font_weight = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-input-font-weight' ); $field_input_size = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-input-field-size' ); $field_tb_padding = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-field-tb-padding' ); $field_lr_padding = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-field-lr-padding' ); $field_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-field-color' ); $field_bg_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-field-bg-color' ); $field_border_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-field-border-color' ); $field_label_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-field-label-color' ); if ( 'custom' == $field_input_size ) { $field_input_size = '38px'; } /* Submit Button */ $submit_button_width = '100%'; $optin_button_position = ''; $button_font_size = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-font-size' ); $button_font_family = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-button-font-family' ); $button_font_weight = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-button-font-weight' ); $submit_button_height = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-button-size' ); $submit_tb_padding = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-tb-padding' ); $submit_lr_padding = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-lr-padding' ); $submit_button_position = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-button-position' ); $submit_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-color' ); $submit_hover_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-hover-color' ); $submit_bg_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-bg-color', $primary_color ); $submit_bg_hover_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-bg-hover-color', $primary_color ); $submit_border_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-border-color', $primary_color ); $submit_border_hover_color = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-submit-border-hover-color', $primary_color ); if ( 'custom' == $submit_button_height ) { $submit_button_height = '38px'; $submit_button_width = 'auto'; switch ( $submit_button_position ) { case 'left': $optin_button_position = '0 auto 0 0'; break; case 'center': $optin_button_position = '0 auto'; break; case 'right': $optin_button_position = '0 0 0 auto'; break; default: $optin_button_position = '0 auto'; break; } } if ( Cartflows_Compatibility::get_instance()->is_divi_enabled() || Cartflows_Compatibility::get_instance()->is_divi_builder_enabled( $optin_id ) ) { include CARTFLOWS_OPTIN_DIR . 'includes/optin-dynamic-divi-css.php'; } else { include CARTFLOWS_OPTIN_DIR . 'includes/optin-dynamic-css.php'; } return $output; } /** * Get ajax end points. * * @param string $endpoint_url end point URL. * @param string $request end point request. * @return string */ public function get_ajax_endpoint( $endpoint_url, $request ) { global $post; if ( ! empty( $post ) && ! empty( $_SERVER['REQUEST_URI'] ) ) { if ( _is_wcf_optin_type() ) { if ( mb_strpos( $endpoint_url, 'checkout', 0, 'utf-8' ) === false ) { if ( '' === $request ) { $query_args = array( 'wc-ajax' => '%%endpoint%%', ); } else { $query_args = array( 'wc-ajax' => $request, ); } $uri = explode( '?', $_SERVER['REQUEST_URI'], 2 ); //phpcs:ignore $uri = $uri[0]; $endpoint_url = esc_url( add_query_arg( $query_args, $uri ) ); } } } return $endpoint_url; } /** * Save checkout fields. * * @param int $order_id order id. * @param array $posted posted data. * @return void */ public function save_optin_fields( $order_id, $posted ) { if ( isset( $_POST['_wcf_optin_id'] ) ) { //phpcs:ignore $optin_id = wc_clean( wp_unslash( $_POST['_wcf_optin_id'] ) ); //phpcs:ignore update_post_meta( $order_id, '_wcf_optin_id', $optin_id ); if ( isset( $_POST['_wcf_flow_id'] ) ) { //phpcs:ignore $flow_id = wc_clean( wp_unslash( $_POST['_wcf_flow_id'] ) ); //phpcs:ignore update_post_meta( $order_id, '_wcf_flow_id', $flow_id ); } } } /** * Redirect users to our checkout if hidden param * * @param string $redirect redirect url. * @param object $user user. * @return string */ public function after_login_redirect( $redirect, $user ) { if ( isset( $_POST['_wcf_optin_id'] ) ) { //phpcs:ignore $optin_id = intval( $_POST['_wcf_optin_id'] ); //phpcs:ignore $redirect = get_permalink( $optin_id ); } return $redirect; } /** * Add custom class to the fields to change the UI to three column. * * @param array $fields fields. */ public function set_optin_default_fields( $fields ) { if ( _is_wcf_optin_type() ) { global $post; $optin_id = $post->ID; } else { if ( _is_wcf_doing_optin_ajax() && wcf()->utils->get_optin_id_from_post_data() ) { $optin_id = wcf()->utils->get_optin_id_from_post_data(); } else { return $fields; } } $first_name = $fields['first_name']; $last_name = $fields['last_name']; /* Make fields required */ $first_name['required'] = true; $last_name['required'] = true; $fields = array( 'first_name' => $first_name, 'last_name' => $last_name, ); return apply_filters( 'cartflows_optin_default_fields', $fields, $optin_id ); } /** * Add custom class to the fields to change the UI to three column. * * @param array $fields fields. */ public function set_optin_fields( $fields ) { if ( _is_wcf_optin_type() ) { global $post; $optin_id = $post->ID; } else { if ( _is_wcf_doing_optin_ajax() && wcf()->utils->get_optin_id_from_post_data() ) { $optin_id = wcf()->utils->get_optin_id_from_post_data(); } else { return $fields; } } $billing_first_name = $fields['billing']['billing_first_name']; $billing_last_name = $fields['billing']['billing_last_name']; $billing_email = $fields['billing']['billing_email']; $fields['billing'] = array( 'billing_first_name' => $billing_first_name, 'billing_last_name' => $billing_last_name, 'billing_email' => $billing_email, ); return apply_filters( 'cartflows_optin_fields', $fields, $optin_id ); } /** * Billing field customization. * * @param array $fields fields data. * @param string $country country name. * @return array */ public function billing_optin_fields( $fields, $country ) { if ( _is_wcf_optin_type() ) { global $post; $optin_id = $post->ID; } else { if ( _is_wcf_doing_optin_ajax() && wcf()->utils->get_optin_id_from_post_data() ) { $optin_id = wcf()->utils->get_optin_id_from_post_data(); } else { return $fields; } } if ( is_wc_endpoint_url( 'edit-address' ) ) { return $fields; } $billing_first_name = $fields['billing_first_name']; $billing_last_name = $fields['billing_last_name']; $billing_email = $fields['billing_email']; /* Make fields required */ $billing_first_name['required'] = true; $billing_last_name['required'] = true; $fields = array( 'billing_first_name' => $billing_first_name, 'billing_last_name' => $billing_last_name, 'billing_email' => $billing_email, ); return apply_filters( 'cartflows_billing_optin_fields', $fields, $country, $optin_id ); } /** * Replace billing label. * * @param string $notice Notice. * @param string $field_label Field name. * @return string */ public function change_field_label_in_required_notice( $notice, $field_label ) { if ( _is_wcf_doing_optin_ajax() ) { $notice = str_replace( 'Billing ', '', $notice ); } return $notice; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Optin_Markup::get_instance(); PK\p/΄$J$J4modules/optin/classes/class-cartflows-optin-meta.phpnuW+Autils->get_step_post_type(), // Post_type. 'normal', // Context. 'high' // Priority. ); } } /** * Metabox Markup * * @param object $post Post object. * @return void */ public function markup_meta_box( $post ) { wp_nonce_field( 'save-nonce-optin-step-meta', 'nonce-optin-step-meta' ); $stored = get_post_meta( $post->ID ); $optin_meta = self::get_meta_option( $post->ID ); // Set stored and override defaults. foreach ( $stored as $key => $value ) { if ( array_key_exists( $key, $optin_meta ) ) { self::$meta_option[ $key ]['default'] = ( isset( $stored[ $key ][0] ) ) ? maybe_unserialize( $stored[ $key ][0] ) : ''; } else { self::$meta_option[ $key ]['default'] = ( isset( $stored[ $key ][0] ) ) ? $stored[ $key ][0] : ''; } } // Get defaults. $meta = self::get_meta_option( $post->ID ); $optin_meta = array(); foreach ( $meta as $key => $value ) { $optin_meta[ $key ] = $meta[ $key ]['default']; } do_action( 'wcf_optin_settings_markup_before' ); $this->tabs_markup( $optin_meta, $post->ID ); do_action( 'wcf_optin_settings_markup_after' ); } /** * Page Header Tabs * * @param array $options options. * @param int $post_id post ID. */ public function tabs_markup( $options, $post_id ) { $active_tab = get_post_meta( $post_id, 'wcf-active-tab', true ); if ( empty( $active_tab ) ) { $active_tab = 'wcf-optin-shortcodes'; } $tab_array = array( array( 'title' => __( 'Shortcodes', 'cartflows' ), 'id' => 'wcf-optin-shortcodes', 'class' => 'wcf-optin-shortcodes' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-editor-code', ), array( 'title' => __( 'Select Product', 'cartflows' ), 'id' => 'wcf-optin-general', 'class' => 'wcf-optin-general' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-info', ), array( 'title' => __( 'Design', 'cartflows' ), 'id' => 'wcf-optin-style', 'class' => 'wcf-optin-style' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-admin-customizer', ), array( 'title' => __( 'Form Fields', 'cartflows' ), 'id' => 'wcf-optin-custom-fields', 'class' => 'wcf-optin-custom-fields' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-welcome-widgets-menus', ), array( 'title' => __( 'Settings', 'cartflows' ), 'id' => 'wcf-optin-custom-settings', 'class' => 'wcf-optin-custom-settings' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-admin-generic', ), array( 'title' => __( 'Custom Script', 'cartflows' ), 'id' => 'wcf-optin-custom-script-header', 'class' => 'wcf-optin-custom-script-header' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-format-aside', ), ); $tabs = $tab_array; ?>
    $tab ) { ?>
    tab_shortcodes( $options, $post_id ); ?> tab_general( $options, $post_id ); ?> tab_style( $options, $post_id ); ?> tab_custom_fields( $options, $post_id ); ?> tab_custom_settings( $options, $post_id ); ?> tab_custom_script( $options, $post_id ); ?> right_column_footer( $options, $post_id ); ?>
    meta->get_shortcode_field( array( 'label' => 'Optin Page', 'name' => 'wcf-optin-shortcode', 'content' => '[cartflows_optin]', 'help' => esc_html__( 'Add this shortcode to your optin page', 'cartflows' ), ) ); ?>
    meta->get_product_selection_field( array( 'name' => 'wcf-optin-product', 'value' => $options['wcf-optin-product'], 'label' => __( 'Select Free Product', 'cartflows' ), 'help' => __( 'Select Free and Virtual product only.', 'cartflows' ), 'multiple' => false, 'allow_clear' => true, ) ); ?>
    meta->get_description_field( array( 'name' => 'wcf-upgrade-to-pro', /* translators: %s: link */ 'content' => '' . sprintf( esc_html__( 'Upgrade to %1$sCartFlows Pro%2$s for Custom Fields feature.', 'cartflows' ), '', '' ) . '', ) ); } ?>
    meta->get_checkbox_field( array( 'label' => __( 'Pass Fields as URL Parameters', 'cartflows' ), 'name' => 'wcf-optin-pass-fields', 'value' => $options['wcf-optin-pass-fields'], 'after' => __( 'Enable', 'cartflows' ), 'help' => __( 'You can pass specific fields from the form to next step as URL query parameters.', 'cartflows' ), 'toggle' => array( 'fields' => array( 'yes' => array( 'wcf-optin-pass-specific-fields' ), ), ), ) ); echo wcf()->meta->get_text_field( array( 'label' => __( 'Enter form field', 'cartflows' ), 'name' => 'wcf-optin-pass-specific-fields', 'value' => $options['wcf-optin-pass-specific-fields'], 'help' => __( 'Enter comma seprated field name. E.g. first_name, last_name', 'cartflows' ), 'attr' => array( 'placeholder' => __( 'Fields to pass, separated by commas', 'cartflows' ), ), ) ); echo wcf()->meta->get_description_field( array( 'name' => 'wcf-optin-pass-fields-doc', 'content' => __( 'Enter comma seprated field name. E.g. first_name, last_name', 'cartflows' ), /* translators: %s: link */ 'content' => sprintf( esc_html__( 'You can pass field value as a URL parameter to the next step. %1$sClick here%2$s for more information.', 'cartflows' ), '', '' ), ) ); ?>
    meta->get_color_picker_field( array( 'label' => __( 'Primary Color', 'cartflows' ), 'name' => 'wcf-primary-color', 'value' => $options['wcf-primary-color'], ) ); echo wcf()->meta->get_font_family_field( array( 'for' => 'wcf-base', 'label' => esc_html__( 'Font Family', 'cartflows' ), 'name' => 'wcf-base-font-family', 'value' => $options['wcf-base-font-family'], ) ); ?>
    meta->get_section( array( 'label' => __( 'Input Fields', 'cartflows' ), ) ); $fields_skin_pro_option = array(); if ( ! _is_cartflows_pro() ) { $fields_skin_pro_option = array( 'floating-labels' => __( 'Floating Labels (Available in CartFlows Pro)', 'cartflows' ), ); } echo wcf()->meta->get_select_field( array( 'label' => __( 'Style', 'cartflows' ), 'name' => 'wcf-input-fields-skins', 'value' => $options['wcf-input-fields-skins'], 'options' => array( 'default' => esc_html__( 'Default', 'cartflows' ), 'floating-labels' => esc_html__( 'Floating Labels', 'cartflows' ), ), 'pro-options' => $fields_skin_pro_option, ) ); echo wcf()->meta->get_font_family_field( array( 'for' => 'wcf-input', 'label' => esc_html__( 'Font Family', 'cartflows' ), 'name' => 'wcf-input-font-family', 'value' => $options['wcf-input-font-family'], ) ); echo wcf()->meta->get_font_weight_field( array( 'for' => 'wcf-input', 'label' => esc_html__( 'Font Weight', 'cartflows' ), 'name' => 'wcf-input-font-weight', 'value' => $options['wcf-input-font-weight'], ) ); echo wcf()->meta->get_select_field( array( 'label' => __( 'Size', 'cartflows' ), 'name' => 'wcf-input-field-size', 'value' => $options['wcf-input-field-size'], 'options' => array( '33px' => esc_html__( 'Extra Small', 'cartflows' ), '38px' => esc_html__( 'Small', 'cartflows' ), '44px' => esc_html__( 'Medium', 'cartflows' ), '58px' => esc_html__( 'Large', 'cartflows' ), '68px' => esc_html__( 'Extra Large', 'cartflows' ), 'custom' => esc_html__( 'Custom', 'cartflows' ), ), ) ); echo wcf()->meta->get_number_field( array( 'label' => __( 'Top Bottom Spacing', 'cartflows' ), 'name' => 'wcf-field-tb-padding', 'value' => $options['wcf-field-tb-padding'], ) ); echo wcf()->meta->get_number_field( array( 'label' => __( 'Left Right Spacing', 'cartflows' ), 'name' => 'wcf-field-lr-padding', 'value' => $options['wcf-field-lr-padding'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Label Color', 'cartflows' ), 'name' => 'wcf-field-label-color', 'value' => $options['wcf-field-label-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Text / Placeholder Color', 'cartflows' ), 'name' => 'wcf-field-color', 'value' => $options['wcf-field-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Background Color', 'cartflows' ), 'name' => 'wcf-field-bg-color', 'value' => $options['wcf-field-bg-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Border Color', 'cartflows' ), 'name' => 'wcf-field-border-color', 'value' => $options['wcf-field-border-color'], ) ); ?>
    meta->get_section( array( 'label' => __( 'Submit Button', 'cartflows' ), ) ); echo wcf()->meta->get_text_field( array( 'label' => __( 'Button Text', 'cartflows' ), 'name' => 'wcf-submit-button-text', 'value' => $options['wcf-submit-button-text'], 'attr' => array( 'placeholder' => __( 'Submit', 'cartflows' ), ), ) ); echo wcf()->meta->get_number_field( array( 'label' => __( 'Font Size', 'cartflows' ), 'name' => 'wcf-submit-font-size', 'value' => $options['wcf-submit-font-size'], ) ); echo wcf()->meta->get_font_family_field( array( 'for' => 'wcf-button', 'label' => esc_html__( 'Font Family', 'cartflows' ), 'name' => 'wcf-button-font-family', 'value' => $options['wcf-button-font-family'], ) ); echo wcf()->meta->get_font_weight_field( array( 'for' => 'wcf-button', 'label' => esc_html__( 'Font Weight', 'cartflows' ), 'name' => 'wcf-button-font-weight', 'value' => $options['wcf-button-font-weight'], ) ); echo wcf()->meta->get_select_field( array( 'label' => __( 'Size', 'cartflows' ), 'name' => 'wcf-submit-button-size', 'value' => $options['wcf-submit-button-size'], 'options' => array( '33px' => esc_html__( 'Extra Small', 'cartflows' ), '38px' => esc_html__( 'Small', 'cartflows' ), '44px' => esc_html__( 'Medium', 'cartflows' ), '58px' => esc_html__( 'Large', 'cartflows' ), '68px' => esc_html__( 'Extra Large', 'cartflows' ), 'custom' => esc_html__( 'Custom', 'cartflows' ), ), ) ); echo wcf()->meta->get_number_field( array( 'label' => __( 'Top Bottom Spacing', 'cartflows' ), 'name' => 'wcf-submit-tb-padding', 'value' => $options['wcf-submit-tb-padding'], ) ); echo wcf()->meta->get_number_field( array( 'label' => __( 'Left Right Spacing', 'cartflows' ), 'name' => 'wcf-submit-lr-padding', 'value' => $options['wcf-submit-lr-padding'], ) ); echo wcf()->meta->get_select_field( array( 'label' => __( 'Position', 'cartflows' ), 'name' => 'wcf-submit-button-position', 'value' => $options['wcf-submit-button-position'], 'options' => array( 'left' => esc_html__( 'Left', 'cartflows' ), 'center' => esc_html__( 'Center', 'cartflows' ), 'right' => esc_html__( 'Right', 'cartflows' ), ), ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Text Color', 'cartflows' ), 'name' => 'wcf-submit-color', 'value' => $options['wcf-submit-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Text Hover Color', 'cartflows' ), 'name' => 'wcf-submit-hover-color', 'value' => $options['wcf-submit-hover-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Background Color', 'cartflows' ), 'name' => 'wcf-submit-bg-color', 'value' => $options['wcf-submit-bg-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Background Hover Color', 'cartflows' ), 'name' => 'wcf-submit-bg-hover-color', 'value' => $options['wcf-submit-bg-hover-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Border Color', 'cartflows' ), 'name' => 'wcf-submit-border-color', 'value' => $options['wcf-submit-border-color'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Border Hover Color', 'cartflows' ), 'name' => 'wcf-submit-border-hover-color', 'value' => $options['wcf-submit-border-hover-color'], ) ); ?>
    meta->get_hidden_field( array( 'name' => 'wcf-field-google-font-url', 'value' => $options['wcf-field-google-font-url'], ) ); ?>
    options->get_optin_fields( $post_id ); } return self::$meta_option; } /** * Metabox Save * * @param number $post_id Post ID. * @return void */ public function save_meta_box( $post_id ) { // Checks save status. $is_autosave = wp_is_post_autosave( $post_id ); $is_revision = wp_is_post_revision( $post_id ); $is_valid_nonce = ( isset( $_POST['nonce-optin-step-meta'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['nonce-optin-step-meta'] ) ), 'save-nonce-optin-step-meta' ) ) ? true : false; // Exits script depending on save status. if ( $is_autosave || $is_revision || ! $is_valid_nonce ) { return; } wcf()->options->save_optin_fields( $post_id ); } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Optin_Meta::get_instance(); PK\zz1modules/optin/templates/optin-template-simple.phpnuW+Aoptions->get_optin_meta_value( $optin_id, 'wcf-input-fields-skins' ); ?>
    ' ) { echo esc_html__( 'Your cart is currently empty.', 'cartflows' ); } else { echo $checkout_html; } ?> PK\O08modules/landing/classes/class-cartflows-landing-meta.phpnuW+Autils->get_step_post_type(), // Post_type. 'normal', // Context. 'high' // Priority. ); } } /** * Landing Metabox Markup * * @param object $post Post object. * @return void */ public function landing_meta_box( $post ) { wp_nonce_field( 'save-nonce-landing-step-meta', 'nonce-landing-step-meta' ); $stored = get_post_meta( $post->ID ); $checkout_meta = self::get_meta_option( $post->ID ); // Set stored and override defaults. foreach ( $stored as $key => $value ) { if ( array_key_exists( $key, $checkout_meta ) ) { self::$meta_option[ $key ]['default'] = ( isset( $stored[ $key ][0] ) ) ? maybe_unserialize( $stored[ $key ][0] ) : ''; } else { self::$meta_option[ $key ]['default'] = ( isset( $stored[ $key ][0] ) ) ? $stored[ $key ][0] : ''; } } // Get defaults. $meta = self::get_meta_option( $post->ID ); /** * Get options */ $landing_data = array(); foreach ( $meta as $key => $value ) { $landing_data[ $key ] = $meta[ $key ]['default']; } do_action( 'wcf_landing_settings_markup_before', $meta ); $this->page_header_tab( $landing_data, $post->ID ); do_action( 'wcf_landing_settings_markup_after', $meta ); } /** * Page Header Tabs * * @param array $options Post meta. * @param int $post_id Post ID. */ public function page_header_tab( $options, $post_id ) { $active_tab = get_post_meta( $post_id, 'wcf_active_tab', true ); if ( empty( $active_tab ) ) { $active_tab = 'wcf-landing-shortcodes'; } $tabs = array( array( 'title' => __( 'Shortcodes', 'cartflows' ), 'id' => 'wcf-landing-shortcodes', 'class' => 'wcf-landing-shortcodes' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-info', ), array( 'title' => __( 'Custom Script', 'cartflows' ), 'id' => 'wcf-landing-custom-script-header', 'class' => 'wcf-landing-custom-script-header' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-format-aside', ), ); ?>
    $tab ) { ?>
    utils->get_linking_url( array( 'class' => 'wcf-next-step' ) ); echo wcf()->meta->get_shortcode_field( array( 'label' => __( 'Next Step Link', 'cartflows' ), 'name' => 'wcf-next-step-link', 'content' => $next_step_link, ) ); ?>
    tab_custom_script( $options, $post_id ); ?> right_column_footer( $options, $post_id ); ?>
    options->get_landing_fields( $post_id ); } return self::$meta_option; } /** * Metabox Save * * @param number $post_id Post ID. * @return void */ public function save_meta_box( $post_id ) { // Checks save status. $is_autosave = wp_is_post_autosave( $post_id ); $is_revision = wp_is_post_revision( $post_id ); $is_valid_nonce = ( isset( $_POST['nonce-landing-step-meta'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['nonce-landing-step-meta'] ) ), 'save-nonce-landing-step-meta' ) ) ? true : false; // Exits script depending on save status. if ( $is_autosave || $is_revision || ! $is_valid_nonce ) { return; } wcf()->options->save_landing_fields( $post_id ); } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Landing_Meta::get_instance(); PK\q?5 :modules/landing/classes/class-cartflows-landing-markup.phpnuW+A CARTFLOWS_STEP_POST_TYPE, 'numberposts' => 100, 'meta_query' => array( //phpcs:ignore 'relation' => 'OR', array( 'key' => 'wcf-step-type', 'value' => 'landing', ), array( 'key' => 'wcf-step-type', 'value' => 'checkout', ), array( 'key' => 'wcf-step-type', 'value' => 'optin', ), ), ); $landing_pages = get_posts( $args ); if ( is_array( $landing_pages ) && ! empty( $landing_pages ) ) { $cartflows_custom_option = ''; $front_page_id = get_option( 'page_on_front' ); foreach ( $landing_pages as $key => $landing_page ) { $selected = selected( $front_page_id, $landing_page->ID, false ); $cartflows_custom_option .= ""; } $cartflows_custom_option .= ''; $output = str_replace( '', $cartflows_custom_option, $output ); } } return $output; } /** * Set post query. * * @param string $query post query. */ public function wcf_pre_get_posts( $query ) { if ( $query->is_main_query() && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) { $post_type = $query->get( 'post_type' ); $page_id = $query->get( 'page_id' ); if ( empty( $post_type ) && ! empty( $page_id ) ) { $query->set( 'post_type', get_post_type( $page_id ) ); } } } /** * Redirect to homepage if landing page set as home page. */ public function template_redirect() { $compatibiliy = Cartflows_Compatibility::get_instance(); // Do not redirect for page builder preview. if ( $compatibiliy->is_page_builder_preview() ) { return; } global $post; if ( is_singular() && ! is_front_page() && get_option( 'page_on_front' ) == $post->ID ) { wp_safe_redirect( site_url(), 301 ); } } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Landing_Markup::get_instance(); PK\+modules/landing/class-cartflows-landing.phpnuW+A __( 'Landing', 'cartflows' ), 'checkout' => __( 'Checkout (Woo)', 'cartflows' ), 'thankyou' => __( 'Thank You (Woo)', 'cartflows' ), 'upsell' => __( 'Upsell (Woo)', 'cartflows' ), 'downsell' => __( 'Downsell (Woo)', 'cartflows' ), 'optin' => __( 'Optin (Woo)', 'cartflows' ), ); ?>
    $data ) { ?>

    >2modules/flow/classes/class-cartflows-flow-meta.phpnuW+A $step ) { wp_delete_post( $step['id'], true ); } } $term_data = term_exists( 'flow-' . $pid, CARTFLOWS_TAXONOMY_STEP_FLOW ); if ( is_array( $term_data ) ) { wp_delete_term( $term_data['term_id'], CARTFLOWS_TAXONOMY_STEP_FLOW ); } } } /** * Trash steps data after trashing flow. * * @since 1.0.0 * @param int $pid post id. * * @return void */ public function step_post_trash_sync( $pid ) { global $post_type; if ( CARTFLOWS_FLOW_POST_TYPE === $post_type ) { $steps = get_post_meta( $pid, 'wcf-steps', true ); if ( $steps && is_array( $steps ) ) { foreach ( $steps as $i => $step ) { wp_trash_post( $step['id'] ); } } } } /** * Untrash steps data after restoring flow. * * @since 1.0.0 * @param int $pid post id. * * @return void */ public function step_post_untrash_sync( $pid ) { global $post_type; if ( CARTFLOWS_FLOW_POST_TYPE === $post_type ) { $steps = get_post_meta( $pid, 'wcf-steps', true ); if ( $steps && is_array( $steps ) ) { foreach ( $steps as $i => $step ) { wp_untrash_post( $step['id'] ); } } } } /** * Create step for given flow. * * @param int $flow_id flow ID. * @param int $step_type step type. * @param int $step_title step title. * @since 1.0.0 * * @return int */ public function create_step( $flow_id, $step_type, $step_title ) { $new_step_id = wp_insert_post( array( 'post_type' => CARTFLOWS_STEP_POST_TYPE, 'post_title' => $step_title, 'post_status' => 'publish', ) ); if ( $new_step_id ) { $flow_steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( ! is_array( $flow_steps ) ) { $flow_steps = array(); } $flow_steps[] = array( 'id' => $new_step_id, 'title' => $step_title, 'type' => $step_type, ); // insert post meta. update_post_meta( $new_step_id, 'wcf-flow-id', $flow_id ); update_post_meta( $new_step_id, 'wcf-step-type', $step_type ); wp_set_object_terms( $new_step_id, $step_type, CARTFLOWS_TAXONOMY_STEP_TYPE ); wp_set_object_terms( $new_step_id, 'flow-' . $flow_id, CARTFLOWS_TAXONOMY_STEP_FLOW ); } update_post_meta( $flow_id, 'wcf-steps', $flow_steps ); return $new_step_id; } /** * Delete step for flow * * @since 1.0.0 * * @return void */ public function cartflows_delete_flow_step() { if ( ! current_user_can( 'manage_options' ) ) { return; } check_ajax_referer( 'wcf-delete-flow-step', 'security' ); if ( isset( $_POST['post_id'] ) && isset( $_POST['step_id'] ) ) { $flow_id = intval( $_POST['post_id'] ); $step_id = intval( $_POST['step_id'] ); } $result = array( 'status' => false, /* translators: %s flow id */ 'text' => sprintf( __( 'Step not deleted for flow - %s', 'cartflows' ), $flow_id ), ); if ( ! $flow_id || ! $step_id ) { wp_send_json( $result ); } wp_delete_post( $step_id, true ); $flow_steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( ! is_array( $flow_steps ) ) { wp_send_json( $result ); } foreach ( $flow_steps as $index => $data ) { if ( intval( $data['id'] ) === $step_id ) { unset( $flow_steps[ $index ] ); break; } } /* Set index order properly */ $flow_steps = array_merge( $flow_steps ); update_post_meta( $flow_id, 'wcf-steps', $flow_steps ); $result = array( 'status' => true, /* translators: %s flow id */ 'text' => sprintf( __( 'Step deleted for flow - %s', 'cartflows' ), $flow_id ), ); wp_send_json( $result ); } /** * Reorder step flow * * @since 1.0.0 * * @return void */ public function cartflows_reorder_flow_steps() { if ( ! current_user_can( 'manage_options' ) ) { return; } check_ajax_referer( 'wcf-reorder-flow-steps', 'security' ); if ( isset( $_POST['post_id'] ) && isset( $_POST['step_ids'] ) ) { $flow_id = intval( $_POST['post_id'] ); $step_ids = array_map( 'intval', $_POST['step_ids'] ); } $result = array( 'status' => false, /* translators: %s flow id */ 'text' => sprintf( __( 'Steps not sorted for flow - %s', 'cartflows' ), $flow_id ), ); if ( ! $flow_id || ! is_array( $step_ids ) ) { wp_send_json( $result ); } $new_flow_steps = array(); foreach ( $step_ids as $index => $step_id ) { $new_flow_steps[] = array( 'id' => intval( $step_id ), 'title' => get_the_title( $step_id ), 'type' => get_post_meta( $step_id, 'wcf-step-type', true ), ); } update_post_meta( $flow_id, 'wcf-steps', $new_flow_steps ); $result = array( 'status' => true, /* translators: %s flow id */ 'text' => sprintf( __( 'Steps sorted for flow - %s', 'cartflows' ), $flow_id ), ); wp_send_json( $result ); } /** * Load admin scripts * * @since 1.0.0 * * @return void */ public function admin_scripts() { global $pagenow; global $post; $screen = get_current_screen(); if ( ( 'post-new.php' == $pagenow || 'post.php' == $pagenow ) && CARTFLOWS_FLOW_POST_TYPE == $screen->post_type ) { wp_enqueue_script( 'wcf-flow-meta', CARTFLOWS_URL . 'admin/assets/js/flow-admin-edit.js', array( 'jquery', 'jquery-ui-sortable' ), CARTFLOWS_VER, true ); wp_enqueue_style( 'wcf-flow-meta', CARTFLOWS_URL . 'admin/assets/css/flow-admin-edit.css', '', CARTFLOWS_VER ); wp_style_add_data( 'wcf-flow-meta', 'rtl', 'replace' ); $localize = array( 'ajax_url' => admin_url( 'admin-ajax.php' ), ); wp_localize_script( 'jquery', 'cartflows', apply_filters( 'wcf_js_localize', $localize ) ); } } /** * Initialize meta box * * @since 1.0.0 * * @return void */ public function init_metabox() { /** * Fires after the title field. * * @param WP_Post $post Post object. */ add_action( 'add_meta_boxes', array( $this, 'settings_meta_box' ) ); add_action( 'edit_form_after_title', array( $this, 'setup_meta_box' ) ); add_action( 'save_post', array( $this, 'save_meta_box' ) ); } /** * Is first time import? * * @param integer $post_id post ID. * @return bool */ public function is_flow_imported( $post_id = 0 ) { if ( 0 === $post_id ) { $post_id = get_the_ID(); } $steps = get_post_meta( $post_id, 'wcf-steps', true ); $choice = get_post_meta( $post_id, 'wcf-flow-choise', true ); if ( empty( $steps ) && 'import' === $choice ) { return true; } return false; } /** * Setup meta box. * * @return void */ public function setup_meta_box() { if ( ! Cartflows_Admin::is_flow_edit_admin() ) { return; } /** * Adding Add new step button to the top*/ echo $this->add_add_new_step_button(); $this->markup_meta_box(); $this->add_upgrade_to_pro_metabox(); } /** * Add metabox when cartflows pro is not enabled. */ public function add_upgrade_to_pro_metabox() { if ( ! _is_cartflows_pro() ) { add_meta_box( 'wcf-upgrade-pro', __( 'Analytics', 'cartflows' ), array( $this, 'upgrade_to_pro' ), CARTFLOWS_FLOW_POST_TYPE, 'side', 'high' ); } } /** * Show Upgrade To Pro markup. */ public function upgrade_to_pro() { echo '
    '; /* translators: %s: link */ echo '

    ' . sprintf( esc_html__( 'Upgrade to %1$sCartFlows Pro%2$s for Analytics feature', 'cartflows' ), '', '' ) . '

    '; echo '

    ' . esc_html__( 'Get Pro', 'cartflows' ) . '

    '; echo '
    '; } /** * Settings meta box. * * @return void */ public function settings_meta_box() { if ( CARTFLOWS_FLOW_POST_TYPE === get_post_type() ) { /* No need of sandbox will delete it later */ add_meta_box( 'wcf-sandbox-settings', // Id. __( 'Flow Settings', 'cartflows' ), // Title. array( $this, 'sandbox_meta_box' ), // Callback. CARTFLOWS_FLOW_POST_TYPE, // Post_type. 'side', // Context. 'high' // Priority. ); do_action( 'cartflows_add_flow_metabox' ); } } /** * Metabox Markup * * @return void */ public function markup_meta_box() { global $post; wp_nonce_field( 'save-nonce-flow-meta', 'nonce-flow-meta' ); // Get defaults. $meta = self::get_current_post_meta( $post->ID ); /** * Get options */ $updated_data = array( 'steps' => $meta['wcf-steps']['default'], ); do_action( 'wcf_flow_settings_markup_before', $meta ); $this->page_header_tab( $updated_data ); do_action( 'wcf_flow_settings_markup_after', $meta ); } /** * Metabox Markup * * @param object $post Post object. * @return void */ public function sandbox_meta_box( $post ) { // Get defaults. $meta = self::get_current_post_meta( $post->ID ); /** * Get options */ foreach ( $meta as $key => $value ) { $updated_data[ $key ] = $meta[ $key ]['default']; } do_action( 'wcf_flow_sandbox_markup_before', $meta ); $this->sandbox_markup( $updated_data ); do_action( 'wcf_flow_sandbox_markup_after', $meta ); } /** * Page Header Tabs * * @param array $options Post meta. * @return void */ public function page_header_tab( $options ) { include_once CARTFLOWS_FLOW_DIR . 'view/meta-flow-steps.php'; } /** * Sandbox Markup * * @param array $options Post meta. * @return void */ public function sandbox_markup( $options ) { ?>
    meta->get_checkbox_field( array( 'name' => 'wcf-testing', 'value' => $options['wcf-testing'], 'after' => esc_html__( 'Enable Test Mode', 'cartflows' ), ) ); echo wcf()->meta->get_description_field( array( 'name' => 'wcf-testing-note', 'content' => esc_html__( 'If you are using WooCommerce plugin then test mode will add random products in your flow, so you can preview it easily while testing.', 'cartflows' ), ) ); ?>
    options->get_flow_fields( $post_id ); } return self::$meta_option; } /** * Get metabox options * * @param int $post_id post ID. * @return array */ public static function get_current_post_meta( $post_id ) { $stored = get_post_meta( $post_id ); $default_meta = self::get_meta_option( $post_id ); // Set stored and override defaults. foreach ( $stored as $key => $value ) { if ( array_key_exists( $key, $default_meta ) ) { self::$meta_option[ $key ]['default'] = ( isset( $stored[ $key ][0] ) ) ? maybe_unserialize( $stored[ $key ][0] ) : ''; } else { self::$meta_option[ $key ]['default'] = ( isset( $stored[ $key ][0] ) ) ? $stored[ $key ][0] : ''; } } return self::get_meta_option( $post_id ); } /** * Metabox Save * * @param number $post_id Post ID. * @return void */ public function save_meta_box( $post_id ) { // Checks save status. $is_autosave = wp_is_post_autosave( $post_id ); $is_revision = wp_is_post_revision( $post_id ); $is_valid_nonce = ( isset( $_POST['nonce-flow-meta'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['nonce-flow-meta'] ) ), 'save-nonce-flow-meta' ) ) ? true : false; // Exits script depending on save status. if ( $is_autosave || $is_revision || ! $is_valid_nonce ) { return; } wcf()->options->save_flow_fields( $post_id ); } /** * Localize variables in admin * * @param array $vars variables. */ public function localize_vars( $vars ) { $ajax_actions = array( 'wcf_setup_default_steps', 'wcf_add_flow_step', 'wcf_delete_flow_step', 'wcf_reorder_flow_steps', ); foreach ( $ajax_actions as $action ) { $vars[ $action . '_nonce' ] = wp_create_nonce( str_replace( '_', '-', $action ) ); } return $vars; } /** * Add New Step Button * * @return string */ public function add_add_new_step_button() { $add_new_btn_markup = ''; $add_new_btn_markup .= "
    "; $add_new_btn_markup .= "'; $add_new_btn_markup .= '
    '; return $add_new_btn_markup; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Flow_Meta::get_instance(); PK\SG$227modules/flow/classes/class-cartflows-step-post-meta.phpnuW+Apost_type ) && CARTFLOWS_STEP_POST_TYPE === $post->post_type ) { $flow_id = get_post_meta( $post->ID, 'wcf-flow-id', true ); $flow_title = get_the_title( $flow_id ); $post_states['cartflows_step'] = '( ' . __( 'Flow: ', 'cartflows' ) . $flow_id . ' | ' . __( 'Name: ', 'cartflows' ) . $flow_title . ')'; } return $post_states; } /** * Display slugdiv. * * @param array $hidden metaboxes. * @param obj $screen screen. * @return array */ public function display_flow_slug_meta_box( $hidden, $screen ) { $post_type = $screen->id; if ( ! empty( $post_type ) && CARTFLOWS_FLOW_POST_TYPE === $post_type ) { $pos = array_search( 'slugdiv', $hidden, true ); unset( $hidden[ $pos ] ); } return $hidden; } /** * Create custom post type */ public function flow_post_type() { $labels = array( 'name' => esc_html_x( 'Flows', 'flow general name', 'cartflows' ), 'singular_name' => esc_html_x( 'Flow', 'flow singular name', 'cartflows' ), 'search_items' => esc_html__( 'Search Flows', 'cartflows' ), 'all_items' => esc_html__( 'All Flows', 'cartflows' ), 'edit_item' => esc_html__( 'Edit Flow', 'cartflows' ), 'view_item' => esc_html__( 'View Flow', 'cartflows' ), 'add_new' => esc_html__( 'Add New', 'cartflows' ), 'update_item' => esc_html__( 'Update Flow', 'cartflows' ), 'add_new_item' => esc_html__( 'Add New', 'cartflows' ), 'new_item_name' => esc_html__( 'New Flow Name', 'cartflows' ), ); $args = array( 'labels' => $labels, 'show_in_menu' => false, 'public' => false, // it's not public, not own permalink. 'publicly_queryable' => true, // you should be able to query it. 'show_ui' => true, 'query_var' => true, 'can_export' => true, 'show_in_admin_bar' => true, 'exclude_from_search' => true, 'has_archive' => false, // it shouldn't have archive page. 'rewrite' => false, // it shouldn't have rewrite rules. 'supports' => array( 'title', 'thumbnail', 'slug' ), 'capability_type' => 'post', ); if ( ! _is_cartflows_pro() ) { $flow_posts = get_posts( array( 'posts_per_page' => 4, 'post_type' => CARTFLOWS_FLOW_POST_TYPE, 'post_status' => array( 'publish', 'pending', 'draft', 'future', 'private', 'inherit', 'trash' ), ) ); if ( is_array( $flow_posts ) ) { $flow_count = count( $flow_posts ); if ( $flow_count > 3 || 3 === $flow_count ) { $args['capabilities'] = array( 'create_posts' => 'do_not_allow', ); $args['map_meta_cap'] = true; // Add new notice button. add_action( 'admin_print_footer_scripts', array( $this, 'add_new_notice_button' ) ); // Add the notice popup HTML to admin footer. add_action( 'admin_footer', array( $this, 'upgrade_to_pro_notice_popup' ) ); } } } register_post_type( CARTFLOWS_FLOW_POST_TYPE, $args ); } /** * Show custom add new button. */ public function add_new_notice_button() { $screen = get_current_screen(); if ( is_object( $screen ) && CARTFLOWS_FLOW_POST_TYPE === $screen->post_type && 'edit-cartflows_flow' === $screen->id ) { ?> get_first_step_url( $post ); if ( $first_step && isset( $actions['view'] ) ) { $actions['view'] = '' . __( 'View', 'cartflows' ) . ''; } return $actions; } /** * Returns previous post link * * @param string $prev_link previous link. * @param array $post post data. * @return string */ public function preview_post_link( $prev_link, $post ) { if ( $this->is_flow_post_type( $post ) ) { $first_step = $this->get_first_step_url( $post ); if ( $first_step ) { return $first_step; } return ''; } return $prev_link; } /** * Check if post type is flow * * @param array $post post data. * @return bool */ public function is_flow_post_type( $post ) { if ( isset( $post ) && CARTFLOWS_FLOW_POST_TYPE === $post->post_type ) { return true; } return false; } /** * Redirect to first step * * @return void */ public function redirect_to_step() { global $post; $first_step = $this->get_first_step_url( $post ); if ( $first_step ) { wp_safe_redirect( $first_step ); die; } } /** * Return first step URL * * @param array $post post data. * @return bool */ public function get_first_step_url( $post ) { if ( $this->is_flow_post_type( $post ) ) { $flow_id = $post->ID; $title = $post->post_title; $steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( is_array( $steps ) && ! empty( $steps ) && isset( $steps[0]['id'] ) ) { return get_permalink( $steps[0]['id'] ); } } return false; } /** * Register the admin menu for Custom Layouts * * @since 1.0.0 * Moved the menu under Appearance -> Custom Layouts public function register_admin_menu() { add_submenu_page( CARTFLOWS_SLUG, __( 'Flows', 'wcf' ), __( 'Flows', 'wcf' ), 'edit_pages', 'edit.php?post_type=' . CARTFLOWS_FLOW_POST_TYPE ); } */ public function register_as_submenu() { global $submenu; $submenu[ CARTFLOWS_SLUG ][0] = array( //phpcs:ignore __( 'Flows', 'cartflows' ), 'edit_pages', 'edit.php?post_type=' . CARTFLOWS_FLOW_POST_TYPE, ); } /** * Add Update messages for any custom post type * * @param array $messages Array of default messages. */ public function custom_post_type_post_update_messages( $messages ) { $custom_post_type = get_post_type( get_the_ID() ); if ( CARTFLOWS_FLOW_POST_TYPE == $custom_post_type ) { $obj = get_post_type_object( $custom_post_type ); $singular_name = $obj->labels->singular_name; $messages[ $custom_post_type ] = array( 0 => '', // Unused. Messages start at index 1. /* translators: %s: singular custom post type name */ 1 => sprintf( __( '%s updated.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 2 => sprintf( __( 'Custom %s updated.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 3 => sprintf( __( 'Custom %s deleted.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 4 => sprintf( __( '%s updated.', 'cartflows' ), $singular_name ), /* translators: %1$s: singular custom post type name ,%2$s: date and time of the revision */ 5 => isset( $_GET['revision'] ) ? sprintf( __( '%1$s restored to revision from %2$s', 'cartflows' ), $singular_name, wp_post_revision_title( (int) $_GET['revision'], false ) ) : false, //phpcs:ignore /* translators: %s: singular custom post type name */ 6 => sprintf( __( '%s published.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 7 => sprintf( __( '%s saved.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 8 => sprintf( __( '%s submitted.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 9 => sprintf( __( '%s scheduled for.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 10 => sprintf( __( '%s draft updated.', 'cartflows' ), $singular_name ), ); } return $messages; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Flow_Post_Type::get_instance(); PK\2modules/flow/classes/class-cartflows-permalink.phpnuW+Apost_type ) && CARTFLOWS_STEP_POST_TYPE == $post->post_type ) { $flow_id = get_post_meta( $post->ID, 'wcf-flow-id', true ); $flow_name = get_post_field( 'post_name', $flow_id ); $cf_permalink = Cartflows_Helper::get_permalink_settings(); if ( isset( $cf_permalink['permalink_structure'] ) && ! empty( $cf_permalink['permalink_structure'] ) ) { $search = array( 'cartflows_flow', '%flowname%', 'cartflows_step' ); $replace = array( $cf_permalink['permalink_flow_base'], $flow_name, $cf_permalink['permalink'] ); $post_link = str_replace( $search, $replace, $post_link ); } else { // If elementor page preview, return post link as it is. if ( isset( $_REQUEST['elementor-preview'] ) ) { //phpcs:ignore return $post_link; } $structure = get_option( 'permalink_structure' ); if ( '/%postname%/' === $structure ) { $post_link = str_replace( '/' . $post->post_type . '/', '/', $post_link ); } } } return $post_link; } /** * Reqrite rules for acrtflows step. */ public function rewrite_step_rule() { $cf_permalink = Cartflows_Helper::get_permalink_settings(); if ( isset( $cf_permalink['permalink_structure'] ) ) { switch ( $cf_permalink['permalink_structure'] ) { case '/cartflows_flow/%flowname%/cartflows_step': add_rewrite_rule( '^' . $cf_permalink['permalink_flow_base'] . '/([^/]*)/' . $cf_permalink['permalink'] . '/([^\/]*)/?', 'index.php?cartflows_step=$matches[2]', 'top' ); break; case '/cartflows_flow/%flowname%': add_rewrite_rule( '^' . $cf_permalink['permalink_flow_base'] . '/([^/]*)/([^/]*)/?', 'index.php?cartflows_step=$matches[2]', 'top' ); break; case '/%flowname%/cartflows_step': add_rewrite_rule( '([^/]*)/' . $cf_permalink['permalink'] . '/([^\/]*)/?', 'index.php?cartflows_step=$matches[2]', 'top' ); break; default: break; } } } /** * Have WordPress match postname to any of our public post types. * All of our public post types can have /post-name/ as the slug, so they need to be unique across all posts. * By default, WordPress only accounts for posts and pages where the slug is /post-name/. * * @param string $query query statement. */ public function add_cpt_post_names_to_main_query( $query ) { // Bail if this is not the main query. if ( ! $query->is_main_query() ) { return; } // Bail if this query doesn't match our very specific rewrite rule. if ( ! isset( $query->query['thrive-variations'] ) && ! isset( $query->query['page'] ) || 2 !== count( $query->query ) ) { return; } // Bail if we're not querying based on the post name. if ( empty( $query->query['name'] ) ) { return; } // Add cartflows step post type to existing post type array. if ( isset( $query->query_vars['post_type'] ) && is_array( $query->query_vars['post_type'] ) ) { $post_types = $query->query_vars['post_type']; $post_types[] = CARTFLOWS_STEP_POST_TYPE; $query->set( 'post_type', $post_types ); } else { // Add CPT to the list of post types WP will include when it queries based on the post name. $query->set( 'post_type', array( 'post', 'page', CARTFLOWS_STEP_POST_TYPE ) ); } } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Permalink::get_instance(); PK\L~227modules/flow/classes/class-cartflows-step-post-type.phpnuW+Apost_type ) { /** * Remove Next/Prev Navigation * add_filter('next_post_link', '__return_empty_string'); * add_filter('previous_post_link', '__return_empty_string'); * * $page = locate_template( array( 'page.php' ) ); * * if ( ! empty( $page ) ) { * return $page; * } */ /* Remove Next / Previous Rel Link */ remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 ); add_filter( 'next_post_rel_link', '__return_empty_string' ); add_filter( 'previous_post_rel_link', '__return_empty_string' ); $page_template = get_post_meta( _get_wcf_step_id(), '_wp_page_template', true ); $page_template = apply_filters( 'cartflows_page_template', $page_template ); $file = ''; switch ( $page_template ) { case 'cartflows-default': $file = CARTFLOWS_FLOW_DIR . 'templates/template-default.php'; $this->body_classes[] = $page_template; break; case 'cartflows-canvas': $file = CARTFLOWS_FLOW_DIR . 'templates/template-canvas.php'; $this->body_classes[] = $page_template; break; default: /** * Remove Next/Prev Navigation */ add_filter( 'next_post_link', '__return_empty_string' ); add_filter( 'previous_post_link', '__return_empty_string' ); $page = locate_template( array( 'page.php' ) ); if ( ! empty( $page ) ) { $file = $page; } break; /** * Default: * $file = CARTFLOWS_FLOW_DIR . 'templates/template-default.php'; * $this->body_classes[] = 'cartflows-default'; * break; */ } // Just to be safe, we check if the file exist first. if ( file_exists( $file ) ) { /* Add Body Class */ add_filter( 'body_class', array( $this, 'body_class' ) ); return $file; } else { echo $file; } } return $template; } /** * Body classes. * * @since 1.0.0 * @param array $classes Body classes. * @return array */ public function body_class( $classes = array() ) { $classes = array_merge( $classes, $this->body_classes ); return $classes; } /** * Create custom post type */ public function step_post_type() { $labels = array( 'name' => esc_html_x( 'Steps', 'flow step general name', 'cartflows' ), 'singular_name' => esc_html_x( 'Step', 'flow step singular name', 'cartflows' ), 'search_items' => esc_html__( 'Search Steps', 'cartflows' ), 'all_items' => esc_html__( 'All Steps', 'cartflows' ), 'edit_item' => esc_html__( 'Edit Step', 'cartflows' ), 'view_item' => esc_html__( 'View Step', 'cartflows' ), 'add_new' => esc_html__( 'Add New', 'cartflows' ), 'update_item' => esc_html__( 'Update Step', 'cartflows' ), 'add_new_item' => esc_html__( 'Add New', 'cartflows' ), 'new_item_name' => esc_html__( 'New Step Name', 'cartflows' ), ); $permalink_settings = Cartflows_Helper::get_permalink_settings(); $args = array( 'labels' => $labels, 'public' => true, 'query_var' => true, 'can_export' => true, 'exclude_from_search' => true, 'show_ui' => true, 'show_in_menu' => false, 'show_in_admin_bar' => true, 'supports' => array( 'title', 'editor', 'elementor', 'revisions' ), 'capability_type' => 'post', 'capabilities' => array( 'create_posts' => 'do_not_allow', // Prior to Wordpress 4.5, this was false. ), 'map_meta_cap' => true, ); if ( isset( $permalink_settings['permalink_structure'] ) && ! empty( $permalink_settings['permalink_structure'] ) ) { $args['rewrite'] = array( 'slug' => $permalink_settings['permalink_structure'], 'with_front' => false, ); } elseif ( isset( $permalink_settings['permalink'] ) && ! empty( $permalink_settings['permalink'] ) ) { $args['rewrite'] = array( 'slug' => $permalink_settings['permalink'], 'with_front' => false, ); } register_post_type( CARTFLOWS_STEP_POST_TYPE, $args ); // Step Type. $args = array( 'label' => __( 'Step Type', 'cartflows' ), 'public' => false, 'rewrite' => false, 'hierarchical' => false, ); register_taxonomy( CARTFLOWS_TAXONOMY_STEP_TYPE, CARTFLOWS_STEP_POST_TYPE, $args ); // Step Flow. $args = array( 'label' => __( 'Step Flow', 'cartflows' ), 'public' => false, 'rewrite' => false, 'hierarchical' => false, ); register_taxonomy( CARTFLOWS_TAXONOMY_STEP_FLOW, CARTFLOWS_STEP_POST_TYPE, $args ); if ( is_admin() ) { /** * Register 'Elementor' & 'Beaver Builder' site types. * * @see self::add_terms(); */ $taxonomy = CARTFLOWS_TAXONOMY_STEP_TYPE; $terms = array( array( 'name' => __( 'Landing', 'cartflows' ), 'slug' => 'landing', 'args' => array( 'slug' => 'landing', ), ), array( 'name' => __( 'Optin (Woo)', 'cartflows' ), 'slug' => 'optin', 'args' => array( 'slug' => 'optin', ), ), array( 'name' => __( 'Checkout (Woo)', 'cartflows' ), 'slug' => 'checkout', 'args' => array( 'slug' => 'checkout', ), ), array( 'name' => __( 'Thank You (Woo)', 'cartflows' ), 'slug' => 'thankyou', 'args' => array( 'slug' => 'thankyou', ), ), array( 'name' => __( 'Upsell (Woo)', 'cartflows' ), 'slug' => 'upsell', 'args' => array( 'slug' => 'upsell', ), ), array( 'name' => __( 'Downsell (Woo)', 'cartflows' ), 'slug' => 'downsell', 'args' => array( 'slug' => 'downsell', ), ), ); $this->add_terms( $taxonomy, $terms ); } } /** * Add WordPress templates. * * Adds Cartflows templates to steps * * @since 1.0.0 * @access public */ public function add_wp_templates_support() { add_filter( 'theme_' . CARTFLOWS_STEP_POST_TYPE . '_templates', array( $this, 'add_page_templates' ), 99, 4 ); } /** * Add page templates. * * @since 1.0.0 * @access public * * @param array $page_templates Array of page templates. * * @param object $wp_theme wp theme. * @param object $post post. * * @return array Page templates. */ public function add_page_templates( $page_templates, $wp_theme, $post ) { $page_templates = array( 'cartflows-default' => _x( 'CartFlows — Boxed', 'cartflows' ), 'cartflows-canvas' => _x( 'Template for Page Builders', 'cartflows' ), ); return $page_templates; } /** * Query fixe throwing error on 404 page due our post type changes. * We are setting post_type as empty array to fix the issue. * Ther error was throwing due to redirect_canonical function * This fix is apply for 404 page only */ public function query_fix() { global $wp_query; if ( $wp_query->is_404() ) { $wp_query->set( 'post_type', array() ); } } /** * Prevent slug duplicated * * @param string $slug post slug. * @param int $post_ID post id. * @param string $post_status post status. * @param string $post_type post type. * @param int $post_parent post parent id. * @param string $original_slug original slug. * @return string */ public function prevent_slug_duplicates( $slug, $post_ID, $post_status, $post_type, $post_parent, $original_slug ) { $check_post_types = array( 'post', 'page', CARTFLOWS_STEP_POST_TYPE, ); if ( ! in_array( $post_type, $check_post_types, true ) ) { return $slug; } if ( CARTFLOWS_STEP_POST_TYPE == $post_type ) { // Saving a post, check for duplicates in POST or PAGE post types. $post_match = get_page_by_path( $slug, 'OBJECT', 'post' ); $page_match = get_page_by_path( $slug, 'OBJECT', 'page' ); if ( $post_match || $page_match ) { $slug .= '-2'; } } else { // Saving a POST or PAGE, check for duplicates in CARTFLOWS_STEP_POST_TYPE post type. $custom_post_type_match = get_page_by_path( $slug, 'OBJECT', CARTFLOWS_STEP_POST_TYPE ); if ( $custom_post_type_match ) { $slug .= '-2'; } } return $slug; } /** * Add Update messages for any custom post type * * @param array $messages Array of default messages. */ public function post_update_messages( $messages ) { $custom_post_type = get_post_type( get_the_ID() ); if ( CARTFLOWS_STEP_POST_TYPE == $custom_post_type ) { $obj = get_post_type_object( $custom_post_type ); $singular_name = $obj->labels->singular_name; $messages[ $custom_post_type ] = array( 0 => '', // Unused. Messages start at index 1. /* translators: %s: singular custom post type name */ 1 => sprintf( __( '%s updated.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 2 => sprintf( __( 'Custom %s updated.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 3 => sprintf( __( 'Custom %s deleted.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 4 => sprintf( __( '%s updated.', 'cartflows' ), $singular_name ), /* translators: %1$s: singular custom post type name ,%2$s: date and time of the revision */ 5 => isset( $_GET['revision'] ) ? sprintf( __( '%1$s restored to revision from %2$s', 'cartflows' ), $singular_name, wp_post_revision_title( (int) $_GET['revision'], false ) ) : false, //phpcs:ignore /* translators: %s: singular custom post type name */ 6 => sprintf( __( '%s published.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 7 => sprintf( __( '%s saved.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 8 => sprintf( __( '%s submitted.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 9 => sprintf( __( '%s scheduled for.', 'cartflows' ), $singular_name ), /* translators: %s: singular custom post type name */ 10 => sprintf( __( '%s draft updated.', 'cartflows' ), $singular_name ), ); } return $messages; } /** * Add Terms for Taxonomy. * * => Example. * * $taxonomy = '{taxonomy}'; * $terms = array( * array( * 'name' => 'Landing', * 'slug' => 'landing', * ), * array( * 'name' => 'Checkout', * 'slug' => 'checkout', * ), * ); * * self::add_terms( $taxonomy, $terms ); * * @since 1.0.0 * @param string $taxonomy Taxonomy Name. * @param array $terms Terms list. * @return void */ public function add_terms( $taxonomy = '', $terms = array() ) { foreach ( $terms as $key => $term ) { $term_exist = term_exists( $term['slug'], $taxonomy ); if ( empty( $term_exist ) ) { /** * Add additional args if passed from request. * * @see https://codex.wordpress.org/Function_Reference/wp_insert_term */ if ( array_key_exists( 'args', $term ) ) { wp_insert_term( $term['name'], $taxonomy, $term['args'] ); } else { $term['args'] = array( $term['slug'] ); wp_insert_term( $term['name'], $taxonomy, $term['args'] ); } } } } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Step_Post_Type::get_instance(); PK\(r[ [ 8modules/flow/classes/class-cartflows-flow-shortcodes.phpnuW+Apost_type ) { $navigation = false; $step_id = intval( $post->ID ); $flow_id = get_post_meta( $step_id, 'wcf-flow-id', true ); if ( ! $flow_id ) { return $output; } $steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( ! is_array( $steps ) || ( is_array( $steps ) && empty( $steps ) ) ) { return $output; } foreach ( $steps as $i => $step ) { if ( intval( $step['id'] ) === $step_id ) { $next_i = $i + 1; if ( isset( $steps[ $next_i ] ) ) { $navigation = $steps[ $next_i ]; } break; } } if ( $navigation && is_array( $navigation ) ) { $output = get_permalink( $navigation['id'] ); } } return $output; } /** * Navigation shortcode callback * * @param array $atts attributes for shortcode. * @return string */ public function navigation_shortcode( $atts ) { $atts = shortcode_atts( array( 'label' => '', 'icon' => '', 'icon_position' => '', ), $atts ); global $post; $output = ''; if ( $post && CARTFLOWS_STEP_POST_TYPE === $post->post_type ) { $navigation = false; $step_id = intval( $post->ID ); $flow_id = get_post_meta( $step_id, 'wcf-flow-id', true ); if ( ! $flow_id ) { return $output; } $steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( ! is_array( $steps ) || ( is_array( $steps ) && empty( $steps ) ) ) { return $output; } foreach ( $steps as $i => $step ) { if ( intval( $step['id'] ) === $step_id ) { $next_i = $i + 1; if ( isset( $steps[ $next_i ] ) ) { $navigation = $steps[ $next_i ]; } break; } } if ( $navigation && is_array( $navigation ) ) { $label = ( '' != $atts['label'] ) ? $atts['label'] : __( 'Next Step', 'cartflows' ); $before = ''; $after = ''; if ( '' != $atts['icon'] ) { if ( '' != $atts['icon_position'] ) { if ( 'before' == $atts['icon_position'] ) { $before = ''; } else { $after = ''; } } } $output = ''; } } return $output; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Flow_Shortcodes::get_instance(); PK\欏EE4modules/flow/classes/class-cartflows-flow-loader.phpnuW+Ainclude_files(); } /** * Load classes. * * @since 1.0.0 * * @return void */ public function include_files() { require_once CARTFLOWS_FLOW_DIR . 'classes/class-cartflows-flow-post-type.php'; require_once CARTFLOWS_FLOW_DIR . 'classes/class-cartflows-step-post-type.php'; require_once CARTFLOWS_FLOW_DIR . 'classes/class-cartflows-step-post-meta.php'; require_once CARTFLOWS_FLOW_DIR . 'classes/class-cartflows-flow-shortcodes.php'; require_once CARTFLOWS_FLOW_DIR . 'classes/class-cartflows-permalink.php'; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Flow_Loader::get_instance(); PK\$M+modules/flow/templates/template-default.phpnuW+A class="no-js"> >
    >
    class="no-js"> >
    >
    utils->get_step_post_type(), // Post_type. 'normal', // Context. 'high' // Priority. ); } } /** * Metabox Markup * * @param object $post Post object. * @return void */ public function markup_meta_box( $post ) { wp_nonce_field( 'save-nonce-thankyou-step-meta', 'nonce-thankyou-step-meta' ); $stored = get_post_meta( $post->ID ); $checkout_meta = self::get_meta_option( $post->ID ); // Set stored and override defaults. foreach ( $stored as $key => $value ) { if ( array_key_exists( $key, $checkout_meta ) ) { self::$meta_option[ $key ]['default'] = ( isset( $stored[ $key ][0] ) ) ? maybe_unserialize( $stored[ $key ][0] ) : ''; } else { self::$meta_option[ $key ]['default'] = ( isset( $stored[ $key ][0] ) ) ? $stored[ $key ][0] : ''; } } // Get defaults. $meta = self::get_meta_option( $post->ID ); /** * Get options */ $thankyou_data = array(); foreach ( $meta as $key => $value ) { $thankyou_data[ $key ] = $meta[ $key ]['default']; } do_action( 'wcf_thankyou_settings_markup_before', $meta ); $this->page_header_tab( $thankyou_data, $post->ID ); do_action( 'wcf_thankyou_settings_markup_after', $meta ); } /** * Page Header Tabs * * @param array $options Post meta. * @param int $post_id Post ID. */ public function page_header_tab( $options, $post_id ) { $active_tab = get_post_meta( $post_id, 'wcf-active-tab', true ); if ( empty( $active_tab ) ) { $active_tab = 'wcf-thankyou-shortcodes'; } $tabs = array( array( 'title' => __( 'Shortcodes', 'cartflows' ), 'id' => 'wcf-thankyou-shortcodes', 'class' => 'wcf-thankyou-shortcodes' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-editor-code', ), array( 'title' => __( 'Design', 'cartflows' ), 'id' => 'wcf-thankyou-design', 'class' => 'wcf-thankyou-design' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-admin-customizer', ), array( 'title' => __( 'Edit Fields', 'cartflows' ), 'id' => 'wcf-thankyou-fields', 'class' => 'wcf-thankyou-fields' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-welcome-widgets-menus', ), array( 'title' => __( 'Settings', 'cartflows' ), 'id' => 'wcf-thankyou-redirect', 'class' => 'wcf-thankyou-redirect' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-randomize', ), array( 'title' => __( 'Custom Script', 'cartflows' ), 'id' => 'wcf-thankyou-custom-script-header', 'class' => 'wcf-thankyou-custom-script-header' === $active_tab ? 'wcf-tab wp-ui-text-highlight active' : 'wcf-tab', 'icon' => 'dashicons-format-aside', ), ); ?>
    $tab ) { ?>
    meta->get_shortcode_field( array( 'label' => __( 'Order Details', 'cartflows' ), 'name' => 'wcf-order-details', 'content' => esc_html( '[cartflows_order_details]' ), ) ); ?>
    meta->get_section( array( 'label' => __( 'Text', 'cartflows' ), ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Color', 'cartflows' ), 'name' => 'wcf-tq-text-color', 'value' => $options['wcf-tq-text-color'], ) ); echo wcf()->meta->get_font_family_field( array( 'for' => 'wcf-tq-font-family', 'label' => esc_html__( 'Font Family', 'cartflows' ), 'name' => 'wcf-tq-font-family', 'value' => $options['wcf-tq-font-family'], ) ); echo wcf()->meta->get_number_field( array( 'label' => __( 'Font Size', 'cartflows' ), 'name' => 'wcf-tq-font-size', 'value' => $options['wcf-tq-font-size'], ) ); echo wcf()->meta->get_section( array( 'label' => __( 'Heading', 'cartflows' ), ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Color', 'cartflows' ), 'name' => 'wcf-tq-heading-color', 'value' => $options['wcf-tq-heading-color'], ) ); echo wcf()->meta->get_font_family_field( array( 'for' => 'wcf-tq-heading-font-family', 'label' => esc_html__( 'Font Family', 'cartflows' ), 'name' => 'wcf-tq-heading-font-family', 'value' => $options['wcf-tq-heading-font-family'], ) ); echo wcf()->meta->get_font_weight_field( array( 'for' => 'wcf-tq-heading-font-family', 'label' => esc_html__( 'Font Weight', 'cartflows' ), 'name' => 'wcf-tq-heading-font-wt', 'value' => $options['wcf-tq-heading-font-wt'], ) ); echo wcf()->meta->get_checkbox_field( array( 'label' => __( 'Advanced Options', 'cartflows' ), 'name' => 'wcf-tq-advance-options-fields', 'value' => $options['wcf-tq-advance-options-fields'], 'after' => 'Enable', ) ); echo wcf()->meta->get_number_field( array( 'for' => 'wcf-heading', 'label' => esc_html__( 'Container Width (In px)', 'cartflows' ), 'name' => 'wcf-tq-container-width', 'value' => $options['wcf-tq-container-width'], ) ); echo wcf()->meta->get_color_picker_field( array( 'label' => __( 'Section Background Color', 'cartflows' ), 'name' => 'wcf-tq-section-bg-color', 'value' => $options['wcf-tq-section-bg-color'], ) ); ?>
    meta->get_checkbox_field( array( 'name' => 'wcf-show-overview-section', 'value' => $options['wcf-show-overview-section'], 'after' => esc_html__( 'Enable Order Overview ', 'cartflows' ), ) ); echo wcf()->meta->get_checkbox_field( array( 'name' => 'wcf-show-details-section', 'value' => $options['wcf-show-details-section'], 'after' => esc_html__( 'Enable Order Details ', 'cartflows' ), ) ); echo wcf()->meta->get_checkbox_field( array( 'name' => 'wcf-show-billing-section', 'value' => $options['wcf-show-billing-section'], 'after' => esc_html__( 'Enable Billing Details ', 'cartflows' ), ) ); echo wcf()->meta->get_checkbox_field( array( 'name' => 'wcf-show-shipping-section', 'value' => $options['wcf-show-shipping-section'], 'after' => esc_html__( 'Enable Shipping Details ', 'cartflows' ), ) ); echo wcf()->meta->get_hidden_field( array( 'name' => 'wcf-field-google-font-url', 'value' => $options['wcf-field-google-font-url'], ) ); ?>
    meta->get_text_field( array( 'label' => __( 'Thank You Page Text', 'cartflows' ), 'name' => 'wcf-tq-text', 'value' => $options['wcf-tq-text'], 'attr' => array( 'placeholder' => __( 'Thank you. Your order has been received.', 'cartflows' ), ), 'help' => __( 'It will change the default text on thank you page.', 'cartflows' ), ) ); echo wcf()->meta->get_hr_line_field( array() ); echo wcf()->meta->get_checkbox_field( array( 'label' => __( 'Redirect After Purchase', 'cartflows' ), 'name' => 'wcf-show-tq-redirect-section', 'value' => $options['wcf-show-tq-redirect-section'], 'after' => 'Enable', ) ); echo wcf()->meta->get_text_field( array( 'label' => __( 'Redirect Link', 'cartflows' ), 'name' => 'wcf-tq-redirect-link', 'value' => $options['wcf-tq-redirect-link'], 'attr' => array( 'placeholder' => __( 'https://', 'cartflows' ), ), ) ); ?>
    tab_custom_script( $options, $post_id ); ?> right_column_footer( $options, $post_id ); ?>
    options->get_thankyou_fields( $post_id ); } return self::$meta_option; } /** * Metabox Save * * @param number $post_id Post ID. * @return void */ public function save_meta_box( $post_id ) { // Checks save status. $is_autosave = wp_is_post_autosave( $post_id ); $is_revision = wp_is_post_revision( $post_id ); $is_valid_nonce = ( isset( $_POST['nonce-thankyou-step-meta'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['nonce-thankyou-step-meta'] ) ), 'save-nonce-thankyou-step-meta' ) ) ? true : false; // Exits script depending on save status. if ( $is_autosave || $is_revision || ! $is_valid_nonce ) { return; } wcf()->options->save_thankyou_fields( $post_id ); } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Thankyou_Meta::get_instance(); PK\ ''<modules/thankyou/classes/class-cartflows-thankyou-markup.phpnuW+AID; $enable_redirection = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-show-tq-redirect-section' ); $redirect_link = wp_http_validate_url( wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-tq-redirect-link' ) ); if ( 'yes' === $enable_redirection && ! empty( $redirect_link ) ) { exit( wp_redirect( $redirect_link ) ); //phpcs:ignore } } } /** * Order shortcode markup * * @param array $atts attributes. * @since 1.0.0 */ public function cartflows_order_details_shortcode_markup( $atts ) { $output = ''; if ( _is_wcf_thankyou_type() ) { /* Remove order item link */ add_filter( 'woocommerce_order_item_permalink', '__return_false' ); /* Change order text */ add_filter( 'woocommerce_thankyou_order_received_text', array( $this, 'custom_tq_text' ), 10, 2 ); if ( ! function_exists( 'wc_print_notices' ) ) { $notice_out = '

    ' . __( 'WooCommerce functions do not exist. If you are in an IFrame, please reload it.', 'cartflows' ) . '

    '; $notice_out .= ''; return $notice_out; } $order = false; $id_param = 'wcf-order'; $key_param = 'wcf-key'; if ( isset( $_GET['wcf-opt-order'] ) ) { //phpcs:ignore $id_param = 'wcf-opt-order'; $key_param = 'wcf-opt-key'; } if ( ! isset( $_GET[ $id_param ] ) && wcf()->flow->is_flow_testmode() ) { //phpcs:ignore $args = array( 'limit' => 1, 'order' => 'DESC', 'post_type' => 'shop_order', 'status' => array( 'completed', 'processing' ), ); $latest_order = wc_get_orders( $args ); $order_id = ( ! empty( $latest_order ) ) ? current( $latest_order )->get_id() : 0; if ( $order_id > 0 ) { $order = wc_get_order( $order_id ); if ( ! $order ) { $order = false; } } } else { if ( ! isset( $_GET[ $id_param ] ) ) { //phpcs:ignore return '

    Order not found. You cannot access this page directly.

    '; } // Get the order. $order_id = apply_filters( 'woocommerce_thankyou_order_id', empty( $_GET[ $id_param ] ) ? 0 : intval( $_GET[ $id_param ] ) ); //phpcs:ignore $order_key = apply_filters( 'woocommerce_thankyou_order_key', empty( $_GET[ $key_param ] ) ? '' : wc_clean( wp_unslash( $_GET[ $key_param ] ) ) ); //phpcs:ignore if ( $order_id > 0 ) { $order = wc_get_order( $order_id ); if ( ! $order || $order->get_order_key() !== $order_key ) { $order = false; } } } // Empty awaiting payment session. unset( WC()->session->order_awaiting_payment ); if ( null !== WC()->session ) { if ( ! isset( WC()->cart ) || '' === WC()->cart ) { WC()->cart = new WC_Cart(); } if ( ! WC()->cart->is_empty() ) { // wc_empty_cart(); // Empty current cart. WC()->cart->empty_cart( true ); wc_clear_notices(); } wc_print_notices(); } ob_start(); echo "
    "; wc_get_template( 'checkout/thankyou.php', array( 'order' => $order ) ); echo '
    '; $output = ob_get_clean(); } return $output; } /** * Load Thank You scripts. * * @return void */ public function thank_you_scripts() { if ( _is_wcf_thankyou_type() ) { do_action( 'cartflows_thank_you_scripts' ); $style = $this->generate_thank_you_style(); wp_add_inline_style( 'wcf-frontend-global', $style ); } } /** * Load DIVI compatibility Thank You style. * * @return void */ public function add_divi_compatibility_css() { global $post; $thank_you_id = $post->ID; if ( Cartflows_Compatibility::get_instance()->is_divi_enabled() || Cartflows_Compatibility::get_instance()->is_divi_builder_enabled( $thank_you_id ) ) { wp_enqueue_style( 'wcf-frontend-global-divi', wcf()->utils->get_css_url( 'frontend-divi' ), array(), CARTFLOWS_VER ); } } /** * Set thank you as a order received page. * * @param boolean $is_order_page order page. * @return boolean */ public function set_order_received_page( $is_order_page ) { if ( _is_wcf_thankyou_type() ) { $is_order_page = true; } return $is_order_page; } /** * Generate Thank You Styles. * * @return string */ public function generate_thank_you_style() { global $post; if ( _is_wcf_thankyou_type() ) { $thank_you_id = $post->ID; } else { $thank_you_id = _get_wcf_thankyou_id( $post->post_content ); } CartFlows_Font_Families::render_fonts( $thank_you_id ); $text_color = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-tq-text-color' ); $text_font_family = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-tq-font-family' ); $text_font_size = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-tq-font-size' ); $heading_text_color = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-tq-heading-color' ); $heading_font_family = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-tq-heading-font-family' ); $heading_font_weight = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-tq-heading-font-wt' ); $container_width = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-tq-container-width' ); $section_bg_color = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-tq-section-bg-color' ); $show_order_review = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-show-overview-section' ); $show_order_details = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-show-details-section' ); $show_billing_details = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-show-billing-section' ); $show_shipping_details = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-show-shipping-section' ); $output = " .wcf-thankyou-wrap{ color: {$text_color}; font-family: {$text_font_family}; max-width:{$container_width}px; font-size: {$text_font_size}px; } .woocommerce-order h2.woocommerce-column__title, .woocommerce-order h2.woocommerce-order-details__title, .woocommerce-order .woocommerce-thankyou-order-received, .woocommerce-order-details h2, .woocommerce-order h2.wc-bacs-bank-details-heading, .woocommerce-order h2.woocommerce-order-downloads__title { color: {$heading_text_color}; font-family: {$heading_font_family}; font-weight: {$heading_font_weight}; } .woocommerce-order ul.order_details, .woocommerce-order .woocommerce-order-details, .woocommerce-order .woocommerce-customer-details, .woocommerce-order .woocommerce-bacs-bank-details, .woocommerce-order .woocommerce-order-downloads{ background-color: {$section_bg_color} } img.emoji, img.wp-smiley {} "; if ( 'no' == $show_order_review ) { $output .= ' .woocommerce-order ul.order_details{ display: none; } '; } if ( 'no' == $show_order_details ) { $output .= ' .woocommerce-order .woocommerce-order-details{ display: none; } '; } if ( 'no' == $show_billing_details ) { $output .= ' .woocommerce-order .woocommerce-customer-details .woocommerce-column--billing-address{ display: none; } '; } if ( 'no' == $show_shipping_details ) { $output .= ' .woocommerce-order .woocommerce-customer-details .woocommerce-column--shipping-address{ display: none; } '; } if ( 'no' == $show_billing_details && 'no' == $show_shipping_details ) { $output .= ' .woocommerce-order .woocommerce-customer-details{ display: none; } '; } return $output; } /** * Set as a checkout page if it is thank you page. * Thank you page need to be set as a checkout page. * Becauye ayment gateways will not load if it is not checkout. * * @param bool $is_checkout is checkout. * * @return bool */ public function woo_checkout_flag( $is_checkout ) { if ( ! is_admin() ) { if ( _is_wcf_thankyou_type() ) { $is_checkout = true; } } return $is_checkout; } /** * Add custom text on thank you page. * * @param string $woo_text Default text. * @param int $order order. */ public function custom_tq_text( $woo_text, $order ) { global $post; $thank_you_id = $post->ID; $new_text = wcf()->options->get_thankyou_meta_value( $thank_you_id, 'wcf-tq-text' ); if ( ! empty( $new_text ) ) { $woo_text = do_shortcode( $new_text ); } return $woo_text; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Thankyou_Markup::get_instance(); PK\& -modules/thankyou/class-cartflows-thankyou.phpnuW+A array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-checkout-products' => array( 'default' => array(), 'sanitize' => 'FILTER_CARTFLOWS_CHECKOUT_PRODUCTS', ), 'wcf-checkout-layout' => array( 'default' => 'two-column', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-input-font-family' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-input-font-weight' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-heading-font-family' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-heading-font-weight' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-base-font-family' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-advance-options-fields' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-remove-product-field' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-checkout-place-order-button-text' => array( 'default' => '', 'sanitize' => 'FILTER_SANITIZE_STRING', ), 'wcf-base-font-weight' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-button-font-family' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-button-font-weight' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-primary-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-heading-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-section-bg-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-hl-bg-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-field-tb-padding' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-field-lr-padding' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-fields-skins' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-input-field-size' => array( 'default' => '33px', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-field-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-field-bg-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-field-border-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-box-border-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-field-label-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-tb-padding' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-lr-padding' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-input-button-size' => array( 'default' => '33px', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-hover-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-bg-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-bg-hover-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-border-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-border-hover-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-active-tab' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-header-logo-image' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-header-logo-width' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-custom-script' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), ); self::$checkout_fields = apply_filters( 'cartflows_checkout_meta_options', self::$checkout_fields, $post_id ); } return self::$checkout_fields; } /** * Save Checkout Meta fields. * * @param int $post_id post id. * @return void */ public function save_checkout_fields( $post_id ) { $post_meta = $this->get_checkout_fields( $post_id ); $this->save_meta_fields( $post_id, $post_meta ); } /** * Save Landing Meta fields. * * @param int $post_id post id. * @return void */ public function save_landing_fields( $post_id ) { $post_meta = $this->get_landing_fields( $post_id ); $this->save_meta_fields( $post_id, $post_meta ); } /** * Save ThankYou Meta fields. * * @param int $post_id post id. * @return void */ public function save_thankyou_fields( $post_id ) { $post_meta = $this->get_thankyou_fields( $post_id ); $this->save_meta_fields( $post_id, $post_meta ); } /** * Flow Default fields. * * @param int $post_id post id. * @return array */ public function get_flow_fields( $post_id ) { if ( null === self::$flow_fields ) { self::$flow_fields = array( 'wcf-steps' => array( 'default' => array(), 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-testing' => array( 'default' => 'no', 'sanitize' => 'FILTER_DEFAULT', ), ); } return apply_filters( 'cartflows_flow_meta_options', self::$flow_fields ); } /** * Save Flow Meta fields. * * @param int $post_id post id. * @return void */ public function save_flow_fields( $post_id ) { $post_meta = $this->get_flow_fields( $post_id ); if ( isset( $post_meta['wcf-steps'] ) ) { unset( $post_meta['wcf-steps'] ); } $this->save_meta_fields( $post_id, $post_meta ); } /** * Save Meta fields - Common Function. * * @param int $post_id post id. * @param array $post_meta options to store. * @return void */ public function save_meta_fields( $post_id, $post_meta ) { if ( ! ( $post_id && is_array( $post_meta ) ) ) { return; } foreach ( $post_meta as $key => $data ) { $meta_value = false; // Sanitize values. $sanitize_filter = ( isset( $data['sanitize'] ) ) ? $data['sanitize'] : 'FILTER_DEFAULT'; switch ( $sanitize_filter ) { case 'FILTER_SANITIZE_STRING': $meta_value = filter_input( INPUT_POST, $key, FILTER_SANITIZE_STRING ); break; case 'FILTER_SANITIZE_URL': $meta_value = filter_input( INPUT_POST, $key, FILTER_SANITIZE_URL ); break; case 'FILTER_SANITIZE_NUMBER_INT': $meta_value = filter_input( INPUT_POST, $key, FILTER_SANITIZE_NUMBER_INT ); break; case 'FILTER_CARTFLOWS_ARRAY': if ( isset( $_POST[ $key ] ) && is_array( $_POST[ $key ] ) ) { //phpcs:ignore $meta_value = array_map( 'sanitize_text_field', wp_unslash( $_POST[ $key ] ) ); //phpcs:ignore } break; case 'FILTER_CARTFLOWS_CHECKOUT_PRODUCTS': if ( isset( $_POST[ $key ] ) && is_array( $_POST[ $key ] ) ) { //phpcs:ignore $i = 0; $q = 0; foreach ( $_POST[ $key ] as $p_index => $p_data ) { // phpcs:ignore foreach ( $p_data as $i_key => $i_value ) { if ( is_array( $i_value ) ) { foreach ( $i_value as $q_key => $q_value ) { $meta_value[ $i ][ $i_key ][ $q ] = array_map( 'sanitize_text_field', $q_value ); $q++; } } else { $meta_value[ $i ][ $i_key ] = sanitize_text_field( $i_value ); } } $i++; } } break; case 'FILTER_CARTFLOWS_IMAGES': $meta_value = filter_input( INPUT_POST, $key, FILTER_DEFAULT ); if ( isset( $_POST[ $key . '-obj' ] )) { //phpcs:ignore if ( ! is_serialized( $_POST[ $key . '-obj' ] ) ) { //phpcs:ignore $image_obj = json_decode( stripcslashes( wp_unslash( $_POST[ $key . '-obj' ] ) ), true ); //phpcs:ignore $image_url = isset( $image_obj['sizes'] ) ? $image_obj['sizes'] : array(); $image_data = array( 'id' => isset( $image_obj['id'] ) ? intval( $image_obj['id'] ) : 0, 'url' => array( 'thumbnail' => isset( $image_url['thumbnail']['url'] ) ? esc_url_raw( $image_url['thumbnail']['url'] ) : '', 'medium' => isset( $image_url['medium']['url'] ) ? esc_url_raw( $image_url['medium']['url'] ) : '', 'full' => isset( $image_url['full']['url'] ) ? esc_url_raw( $image_url['full']['url'] ) : '', ), ); $new_meta_value = 0 !== $image_data['id'] ? $image_data : ''; update_post_meta( $post_id, $key . '-obj', $new_meta_value ); } } break; default: if ( 'FILTER_DEFAULT' === $sanitize_filter ) { $meta_value = filter_input( INPUT_POST, $key, FILTER_DEFAULT ); } else { $meta_value = apply_filters( 'cartflows_save_meta_field_values', $meta_value, $post_id, $key, $sanitize_filter ); } break; } if ( false !== $meta_value ) { update_post_meta( $post_id, $key, $meta_value ); } else { delete_post_meta( $post_id, $key ); } } } /** * Get checkout meta. * * @param int $post_id post id. * @param string $key options key. * @param mix $default options default value. * @return string */ public function get_flow_meta_value( $post_id, $key, $default = false ) { $value = $this->get_save_meta( $post_id, $key ); if ( ! $value ) { if ( $default ) { $value = $default; } else { $fields = $this->get_flow_fields( $post_id ); if ( isset( $fields[ $key ]['default'] ) ) { $value = $fields[ $key ]['default']; } } } return $value; } /** * Get checkout meta. * * @param int $post_id post id. * @param string $key options key. * @param mix $default options default value. * @return string */ public function get_checkout_meta_value( $post_id = 0, $key = '', $default = false ) { $value = $this->get_save_meta( $post_id, $key ); if ( ! $value ) { if ( false !== $default ) { $value = $default; } else { $fields = $this->get_checkout_fields( $post_id ); if ( isset( $fields[ $key ]['default'] ) ) { $value = $fields[ $key ]['default']; } } } return $value; } /** * Get post meta. * * @param int $post_id post id. * @param string $key options key. * @return string */ public function get_save_meta( $post_id, $key ) { $value = get_post_meta( $post_id, $key, true ); return $value; } /** * Thank You Default fields. * * @param int $post_id post id. * @return array */ public function get_thankyou_fields( $post_id ) { if ( null === self::$thankyou_fields ) { self::$thankyou_fields = array( 'wcf-field-google-font-url' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-active-tab' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-tq-text-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-tq-font-family' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-tq-font-size' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-tq-heading-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-tq-heading-font-family' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-tq-heading-font-wt' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-tq-container-width' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-tq-section-bg-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-tq-advance-options-fields' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-show-overview-section' => array( 'default' => 'yes', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-show-details-section' => array( 'default' => 'yes', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-show-billing-section' => array( 'default' => 'yes', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-show-shipping-section' => array( 'default' => 'yes', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-show-tq-redirect-section' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-tq-redirect-link' => array( 'default' => '', 'sanitize' => 'FILTER_SANITIZE_URL', ), 'wcf-tq-text' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-custom-script' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), ); } return apply_filters( 'cartflows_thankyou_meta_options', self::$thankyou_fields, $post_id ); } /** * Get Thank you section meta. * * @param int $post_id post id. * @param string $key options key. * @param mix $default options default value. * @return string */ public function get_thankyou_meta_value( $post_id, $key, $default = false ) { $value = $this->get_save_meta( $post_id, $key ); if ( ! $value ) { if ( $default ) { $value = $default; } else { $fields = $this->get_thankyou_fields( $post_id ); if ( isset( $fields[ $key ]['default'] ) ) { $value = $fields[ $key ]['default']; } } } return $value; } /** * Get Landing section meta. * * @param int $post_id post id. * @param string $key options key. * @param mix $default options default value. * @return string */ public function get_landing_meta_value( $post_id, $key, $default = false ) { $value = $this->get_save_meta( $post_id, $key ); if ( ! $value ) { if ( $default ) { $value = $default; } else { $fields = $this->get_landing_fields( $post_id ); if ( isset( $fields[ $key ]['default'] ) ) { $value = $fields[ $key ]['default']; } } } return $value; } /** * Landing Default fields. * * @param int $post_id post id. * @return array */ public function get_landing_fields( $post_id ) { if ( null === self::$landing_fields ) { self::$landing_fields = array( 'wcf-custom-script' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), ); } return apply_filters( 'cartflows_landing_meta_options', self::$landing_fields, $post_id ); } /** * Optin Default fields. * * @param int $post_id post id. * @return array */ public function get_optin_fields( $post_id ) { if ( null === self::$optin_fields ) { self::$optin_fields = array( 'wcf-optin-product' => array( 'default' => array(), 'sanitize' => 'FILTER_CARTFLOWS_ARRAY', ), /* Style */ 'wcf-field-google-font-url' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-primary-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-base-font-family' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-input-fields-skins' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-input-font-family' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-input-font-weight' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-input-field-size' => array( 'default' => '33px', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-field-tb-padding' => array( 'default' => '', 'sanitize' => 'FILTER_SANITIZE_NUMBER_INT', ), 'wcf-field-lr-padding' => array( 'default' => '', 'sanitize' => 'FILTER_SANITIZE_NUMBER_INT', ), 'wcf-field-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-field-bg-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-field-border-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-field-label-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-button-text' => array( 'default' => __( 'Submit', 'cartflows' ), 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-font-size' => array( 'default' => '', 'sanitize' => 'FILTER_SANITIZE_NUMBER_INT', ), 'wcf-button-font-family' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-button-font-weight' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-button-size' => array( 'default' => '33px', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-tb-padding' => array( 'default' => '', 'sanitize' => 'FILTER_SANITIZE_NUMBER_INT', ), 'wcf-submit-lr-padding' => array( 'default' => '', 'sanitize' => 'FILTER_SANITIZE_NUMBER_INT', ), 'wcf-submit-button-position' => array( 'default' => 'center', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-hover-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-bg-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-bg-hover-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-border-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-submit-border-hover-color' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), /* Settings */ 'wcf-optin-pass-fields' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), 'wcf-optin-pass-specific-fields' => array( 'default' => 'first_name', 'sanitize' => 'FILTER_DEFAULT', ), /* Script */ 'wcf-custom-script' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), /* Hidden */ 'wcf-active-tab' => array( 'default' => '', 'sanitize' => 'FILTER_DEFAULT', ), ); } return apply_filters( 'cartflows_optin_meta_options', self::$optin_fields, $post_id ); } /** * Save Optin Meta fields. * * @param int $post_id post id. * @return void */ public function save_optin_fields( $post_id ) { $post_meta = $this->get_optin_fields( $post_id ); $this->save_meta_fields( $post_id, $post_meta ); } /** * Get optin meta. * * @param int $post_id post id. * @param string $key options key. * @param mix $default options default value. * @return string */ public function get_optin_meta_value( $post_id = 0, $key = '', $default = false ) { $value = $this->get_save_meta( $post_id, $key ); if ( ! $value ) { if ( false !== $default ) { $value = $default; } else { $fields = $this->get_optin_fields( $post_id ); if ( isset( $fields[ $key ]['default'] ) ) { $value = $fields[ $key ]['default']; } } } return $value; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Default_Meta::get_instance(); PK\])classes/class-cartflows-importer-core.phpnuW+A How to use? * * $image = array( * 'url' => '', * 'id' => '', * ); * * $downloaded_image = CartFlows_Importer_Core::get_instance()->import( $image ); * * @package CartFlows * @since 1.0.0 */ if ( ! class_exists( 'CartFlows_Importer_Core' ) ) : /** * CartFlows Importer * * @since 1.0.0 */ class CartFlows_Importer_Core { /** * Instance * * @since 1.0.0 * @var object Class object. * @access private */ private static $instance; /** * Images IDs * * @var array The Array of already image IDs. * @since 1.0.0 */ private $already_imported_ids = array(); /** * Initiator * * @since 1.0.0 * @return object initialized object of class. */ public static function get_instance() { if ( ! isset( self::$instance ) ) { self::$instance = new self(); } return self::$instance; } /** * Constructor * * @since 1.0.0 */ public function __construct() { if ( ! function_exists( 'WP_Filesystem' ) ) { require_once ABSPATH . 'wp-admin/includes/file.php'; } WP_Filesystem(); } /** * Process Image Download * * @since 1.0.0 * @param array $attachments Attachment array. * @return array Attachment array. */ public function process( $attachments ) { $downloaded_images = array(); foreach ( $attachments as $key => $attachment ) { $downloaded_images[] = $this->import( $attachment ); } return $downloaded_images; } /** * Get Hash Image. * * @since 1.0.0 * @param string $attachment_url Attachment URL. * @return string Hash string. */ private function get_hash_image( $attachment_url ) { return sha1( $attachment_url ); } /** * Get Saved Image. * * @since 1.0.0 * @param string $attachment Attachment Data. * @return string Hash string. */ private function get_saved_image( $attachment ) { wcf()->logger->import_log( 'importer-core.php File' ); if ( apply_filters( 'cartflows_image_importer_skip_image', false, $attachment ) ) { self::log( 'Download (✕) Replace (✕) - ' . $attachment['url'] ); return $attachment; } global $wpdb; // Already imported? Then return! if ( isset( $this->already_imported_ids[ $attachment['id'] ] ) ) { self::log( 'Download (✓) Replace (✓) - ' . $attachment['url'] ); return $this->already_imported_ids[ $attachment['id'] ]; } // 1. Is already imported in Batch Import Process? $post_id = $wpdb->get_var( $wpdb->prepare( 'SELECT `post_id` FROM `' . $wpdb->postmeta . '` WHERE `meta_key` = \'_cartflows_image_hash\' AND `meta_value` = %s ;', $this->get_hash_image( $attachment['url'] ) ) ); // db call ok; no-cache ok. // 2. Is image already imported though XML? if ( empty( $post_id ) ) { // Get file name without extension. // To check it exist in attachment. $filename = preg_replace( '/\\.[^.\\s]{3,4}$/', '', basename( $attachment['url'] ) ); $post_id = $wpdb->get_var( $wpdb->prepare( 'SELECT `post_id` FROM `' . $wpdb->postmeta . '` WHERE `meta_key` = \'_wp_attached_file\' AND `meta_value` LIKE %s ;', '%' . $filename . '%' ) ); // db call ok; no-cache ok. self::log( 'Download (✕) Replace (✕) - ' . $attachment['url'] ); } if ( $post_id ) { $new_imgage_url = wp_get_attachment_url( $post_id ); $new_attachment = array( 'id' => $post_id, 'url' => $new_imgage_url, ); $this->already_imported_ids[ $attachment['id'] ] = $new_attachment; self::log( 'Download (✓) Replace (✓) - ' . $new_imgage_url ); return $new_attachment; } return false; } /** * Import Image * * @since 1.0.0 * @param array $attachment Attachment array. * @return array Attachment array. */ public function import( $attachment ) { $saved_image = $this->get_saved_image( $attachment ); if ( $saved_image ) { return $saved_image; } $args = array( 'timeout' => 300, ); $file_content = wp_remote_retrieve_body( wp_safe_remote_get( $attachment['url'], $args ) ); // Empty file content? if ( empty( $file_content ) ) { self::log( 'Download (✕) Replace (✕) - ' . $attachment['url'] ); self::log( 'Error: Failed wp_remote_retrieve_body().' ); return $attachment; } // Extract the file name and extension from the URL. $filename = basename( $attachment['url'] ); $upload = wp_upload_bits( $filename, null, $file_content ); $post = array( 'post_title' => $filename, 'guid' => $upload['url'], ); $info = wp_check_filetype( $upload['file'] ); if ( $info ) { $post['post_mime_type'] = $info['type']; } else { // For now just return the origin attachment. return $attachment; } $post_id = wp_insert_attachment( $post, $upload['file'] ); wp_update_attachment_metadata( $post_id, wp_generate_attachment_metadata( $post_id, $upload['file'] ) ); update_post_meta( $post_id, '_cartflows_image_hash', $this->get_hash_image( $attachment['url'] ) ); $new_attachment = array( 'id' => $post_id, 'url' => $upload['url'], ); self::log( 'Download (✓) Replace (✓) - ' . $attachment['url'] ); $this->already_imported_ids[ $attachment['id'] ] = $new_attachment; return $new_attachment; } /** * Debugging Log. * * @since 1.0.0 * @param mixed $log Log data. * @return void */ public static function log( $log ) { if ( ! WP_DEBUG_LOG ) { return; } if ( is_array( $log ) || is_object( $log ) ) { wcf()->logger->import_log( print_r( $log, true ) );//phpcs:ignore } else { wcf()->logger->import_log( $log ); } } } /** * Initialize class object with 'get_instance()' method */ CartFlows_Importer_Core::get_instance(); endif; PK\6q;;"classes/class-cartflows-loader.phpnuW+Adefine_constants(); // Activation hook. register_activation_hook( CARTFLOWS_FILE, array( $this, 'activation_reset' ) ); // deActivation hook. register_deactivation_hook( CARTFLOWS_FILE, array( $this, 'deactivation_reset' ) ); add_action( 'plugins_loaded', array( $this, 'load_plugin' ), 99 ); add_action( 'plugins_loaded', array( $this, 'load_cf_textdomain' ) ); } /** * Defines all constants * * @since 1.0.0 */ public function define_constants() { define( 'CARTFLOWS_BASE', plugin_basename( CARTFLOWS_FILE ) ); define( 'CARTFLOWS_DIR', plugin_dir_path( CARTFLOWS_FILE ) ); define( 'CARTFLOWS_URL', plugins_url( '/', CARTFLOWS_FILE ) ); define( 'CARTFLOWS_VER', '1.5.5' ); define( 'CARTFLOWS_SLUG', 'cartflows' ); define( 'CARTFLOWS_SETTINGS', 'cartflows_settings' ); define( 'CARTFLOWS_FLOW_POST_TYPE', 'cartflows_flow' ); define( 'CARTFLOWS_STEP_POST_TYPE', 'cartflows_step' ); if ( ! defined( 'CARTFLOWS_SERVER_URL' ) ) { define( 'CARTFLOWS_SERVER_URL', 'https://my.cartflows.com/' ); } define( 'CARTFLOWS_DOMAIN_URL', 'https://cartflows.com/' ); define( 'CARTFLOWS_TEMPLATES_URL', 'https://templates.cartflows.com/' ); define( 'CARTFLOWS_TAXONOMY_STEP_TYPE', 'cartflows_step_type' ); define( 'CARTFLOWS_TAXONOMY_STEP_FLOW', 'cartflows_step_flow' ); if ( ! defined( 'CARTFLOWS_TAXONOMY_STEP_PAGE_BUILDER' ) ) { define( 'CARTFLOWS_TAXONOMY_STEP_PAGE_BUILDER', 'cartflows_step_page_builder' ); } if ( ! defined( 'CARTFLOWS_TAXONOMY_FLOW_PAGE_BUILDER' ) ) { define( 'CARTFLOWS_TAXONOMY_FLOW_PAGE_BUILDER', 'cartflows_flow_page_builder' ); } if ( ! defined( 'CARTFLOWS_TAXONOMY_FLOW_CATEGORY' ) ) { define( 'CARTFLOWS_TAXONOMY_FLOW_CATEGORY', 'cartflows_flow_category' ); } if ( ! defined( 'CARTFLOWS_LOG_DIR' ) ) { $upload_dir = wp_upload_dir( null, false ); define( 'CARTFLOWS_LOG_DIR', $upload_dir['basedir'] . '/cartflows-logs/' ); } } /** * Loads plugin files. * * @since 1.0.0 * * @return void */ public function load_plugin() { $this->load_helper_files_components(); $this->load_core_files(); $this->load_core_components(); add_action( 'wp_loaded', array( $this, 'initialize' ) ); add_action( 'cartflows_pro_init', array( $this, 'after_cartflows_pro_init' ) ); if ( ! $this->is_woo_active ) { add_action( 'admin_notices', array( $this, 'fails_to_load' ) ); } /** * CartFlows Init. * * Fires when Cartflows is instantiated. * * @since 1.0.0 */ do_action( 'cartflows_init' ); } /** * After CartFlows Pro init. * * @since 1.1.19 * * @return void */ public function after_cartflows_pro_init() { if ( ! is_admin() ) { return; } if ( version_compare( CARTFLOWS_PRO_VER, '1.4.0', '<' ) ) { add_action( 'admin_notices', array( $this, 'required_cartflows_pro_notice' ) ); } } /** * Required CartFlows Pro Notice. * * @since 1.1.19 * * @return void */ public function required_cartflows_pro_notice() { $required_pro_version = '1.4.0'; $class = 'notice notice-warning'; /* translators: %s: html tags */ $message = sprintf( __( 'You are using an older version of %1$sCartFlows Pro%2$s. Please update %1$sCartFlows Pro%2$s plugin to version %1$s%3$s%2$s or higher.', 'cartflows' ), '', '', $required_pro_version ); printf( '

    %2$s

    ', $class, $message ); } /** * Load Helper Files and Components. * * @since 1.0.0 * * @return void */ public function load_helper_files_components() { $this->is_woo_active = function_exists( 'WC' ); /* Public Utils */ include_once CARTFLOWS_DIR . 'classes/class-cartflows-utils.php'; /* Public Global Namespace Function */ include_once CARTFLOWS_DIR . 'classes/class-cartflows-functions.php'; /* Admin Helper */ include_once CARTFLOWS_DIR . 'classes/class-cartflows-helper.php'; /* Meta Default Values */ include_once CARTFLOWS_DIR . 'classes/class-cartflows-default-meta.php'; require_once CARTFLOWS_DIR . 'classes/class-cartflows-tracking.php'; $this->utils = Cartflows_Utils::get_instance(); $this->options = Cartflows_Default_Meta::get_instance(); $this->alldata = Cartflows_Tracking::get_instance(); } /** * Init hooked function. * * @since 1.0.0 * * @return void */ public function initialize() { $this->assets_vars = $this->utils->get_assets_path(); } /** * Load Core Files. * * @since 1.0.0 * * @return void */ public function load_core_files() { /* Update compatibility. */ require_once CARTFLOWS_DIR . 'classes/class-cartflows-update.php'; /* Page builder compatibilty class */ include_once CARTFLOWS_DIR . 'classes/class-cartflows-compatibility.php'; /* Theme support */ include_once CARTFLOWS_DIR . 'classes/class-cartflows-theme-support.php'; /* Admin Meta Fields*/ include_once CARTFLOWS_DIR . 'classes/fields/typography/class-cartflows-font-families.php'; include_once CARTFLOWS_DIR . 'classes/class-cartflows-meta-fields.php'; include_once CARTFLOWS_DIR . 'classes/class-cartflows-meta.php'; /* Cloning */ include_once CARTFLOWS_DIR . 'classes/class-cartflows-cloning.php'; /* Admin Settings */ include_once CARTFLOWS_DIR . 'classes/class-cartflows-admin.php'; /* Logger */ include_once CARTFLOWS_DIR . 'classes/logger/class-cartflows-log-handler-interface.php'; include_once CARTFLOWS_DIR . 'classes/logger/class-cartflows-log-handler.php'; include_once CARTFLOWS_DIR . 'classes/logger/class-cartflows-log-handler-file.php'; include_once CARTFLOWS_DIR . 'classes/logger/class-cartflows-log-levels.php'; include_once CARTFLOWS_DIR . 'classes/logger/class-cartflows-logger-interface.php'; include_once CARTFLOWS_DIR . 'classes/logger/class-cartflows-wc-logger.php'; /* Core Modules */ include_once CARTFLOWS_DIR . 'classes/class-cartflows-logger.php'; /* Frontend Global */ include_once CARTFLOWS_DIR . 'classes/class-cartflows-frontend.php'; require_once CARTFLOWS_DIR . 'classes/class-cartflows-flow-frontend.php'; /* Modules */ include_once CARTFLOWS_DIR . 'modules/flow/class-cartflows-flow.php'; include_once CARTFLOWS_DIR . 'modules/landing/class-cartflows-landing.php'; if ( $this->is_woo_active ) { include_once CARTFLOWS_DIR . 'modules/checkout/class-cartflows-checkout.php'; include_once CARTFLOWS_DIR . 'modules/thankyou/class-cartflows-thankyou.php'; include_once CARTFLOWS_DIR . 'modules/optin/class-cartflows-optin.php'; } include_once CARTFLOWS_DIR . 'classes/class-cartflows-api.php'; include_once CARTFLOWS_DIR . 'classes/class-cartflows-importer-core.php'; include_once CARTFLOWS_DIR . 'classes/batch-process/class-cartflows-batch-process.php'; include_once CARTFLOWS_DIR . 'classes/class-cartflows-importer.php'; include_once CARTFLOWS_DIR . 'classes/class-cartflows-wizard.php'; include_once CARTFLOWS_DIR . 'classes/class-cartflows-metabox.php'; include_once CARTFLOWS_DIR . 'classes/deprecated/deprecated-hooks.php'; } /** * Load Core Components. * * @since 1.0.0 * * @return void */ public function load_core_components() { $this->meta = Cartflows_Meta_Fields::get_instance(); $this->logger = Cartflows_Logger::get_instance(); $this->flow = Cartflows_Flow_Frontend::get_instance(); } /** * Create files/directories. */ public function create_files() { // Install files and folders for uploading files and prevent hotlinking. $upload_dir = wp_upload_dir(); $files = array( array( 'base' => CARTFLOWS_LOG_DIR, 'file' => '.htaccess', 'content' => 'deny from all', ), array( 'base' => CARTFLOWS_LOG_DIR, 'file' => 'index.html', 'content' => '', ), ); foreach ( $files as $file ) { if ( wp_mkdir_p( $file['base'] ) && ! file_exists( trailingslashit( $file['base'] ) . $file['file'] ) ) { $file_handle = @fopen( trailingslashit( $file['base'] ) . $file['file'], 'w' ); // phpcs:ignore if ( $file_handle ) { fwrite( $file_handle, $file['content'] ); // phpcs:ignore WordPress.WP.AlternativeFunctions.file_system_read_fwrite fclose( $file_handle ); // phpcs:ignore WordPress.WP.AlternativeFunctions.file_system_read_fclose } } } } /** * Load CartFlows Pro Text Domain. * This will load the translation textdomain depending on the file priorities. * 1. Global Languages /wp-content/languages/cartflows/ folder * 2. Local dorectory /wp-content/plugins/cartflows/languages/ folder * * @since 1.0.3 * @return void */ public function load_cf_textdomain() { // Default languages directory for CartFlows Pro. $lang_dir = CARTFLOWS_DIR . 'languages/'; /** * Filters the languages directory path to use for CartFlows Pro. * * @param string $lang_dir The languages directory path. */ $lang_dir = apply_filters( 'cartflows_languages_directory', $lang_dir ); // Traditional WordPress plugin locale filter. global $wp_version; $get_locale = get_locale(); if ( $wp_version >= 4.7 ) { $get_locale = get_user_locale(); } /** * Language Locale for CartFlows Pro * * @var $get_locale The locale to use. * Uses get_user_locale()` in WordPress 4.7 or greater, * otherwise uses `get_locale()`. */ $locale = apply_filters( 'plugin_locale', $get_locale, 'cartflows' ); $mofile = sprintf( '%1$s-%2$s.mo', 'cartflows', $locale ); // Setup paths to current locale file. $mofile_local = $lang_dir . $mofile; $mofile_global = WP_LANG_DIR . '/plugins/' . $mofile; if ( file_exists( $mofile_global ) ) { // Look in global /wp-content/languages/cartflows/ folder. load_textdomain( 'cartflows', $mofile_global ); } elseif ( file_exists( $mofile_local ) ) { // Look in local /wp-content/plugins/cartflows/languages/ folder. load_textdomain( 'cartflows', $mofile_local ); } else { // Load the default language files. load_plugin_textdomain( 'cartflows', false, $lang_dir ); } } /** * Fires admin notice when Elementor is not installed and activated. * * @since 1.0.0 * * @return void */ public function fails_to_load() { $screen = get_current_screen(); if ( ! wcf()->utils->is_step_post_type() ) { return; } if ( ! wcf()->utils->check_is_woo_required_page() ) { return; } $skip_notice = false; wp_localize_script( 'wcf-global-admin', 'cartflows_woo', array( 'show_update_post' => $skip_notice ) ); $class = 'notice notice-warning'; /* translators: %s: html tags */ $message = sprintf( __( 'This %1$sCartFlows%2$s page requires %1$sWooCommerce%2$s plugin installed & activated.', 'cartflows' ), '', '' ); $plugin = 'woocommerce/woocommerce.php'; if ( _is_woo_installed() ) { if ( ! current_user_can( 'activate_plugins' ) ) { return; } $action_url = wp_nonce_url( 'plugins.php?action=activate&plugin=' . $plugin . '&plugin_status=all&paged=1&s', 'activate-plugin_' . $plugin ); $button_label = __( 'Activate WooCommerce', 'cartflows' ); } else { if ( ! current_user_can( 'install_plugins' ) ) { return; } $action_url = wp_nonce_url( self_admin_url( 'update.php?action=install-plugin&plugin=woocommerce' ), 'install-plugin_woocommerce' ); $button_label = __( 'Install WooCommerce', 'cartflows' ); } $button = '

    ' . $button_label . '

    '; printf( '

    %2$s

    %3$s
    ', esc_attr( $class ), $message, $button ); } /** * Activation Reset */ public function activation_reset() { if ( ! defined( 'CARTFLOWS_LOG_DIR' ) ) { $upload_dir = wp_upload_dir( null, false ); define( 'CARTFLOWS_LOG_DIR', $upload_dir['basedir'] . '/cartflows-logs/' ); } $this->create_files(); include_once CARTFLOWS_DIR . 'classes/class-cartflows-helper.php'; include_once CARTFLOWS_DIR . 'classes/class-cartflows-functions.php'; include_once CARTFLOWS_DIR . 'modules/flow/classes/class-cartflows-flow-post-type.php'; include_once CARTFLOWS_DIR . 'modules/flow/classes/class-cartflows-step-post-type.php'; Cartflows_Flow_Post_Type::get_instance()->flow_post_type(); Cartflows_Step_Post_Type::get_instance()->step_post_type(); flush_rewrite_rules(); } /** * Deactivation Reset */ public function deactivation_reset() { } /** * Logger Class Instance */ public function logger() { return Cartflows_Logger::get_instance(); } } /** * Prepare if class 'Cartflows_Loader' exist. * Kicking this off by calling 'get_instance()' method */ Cartflows_Loader::get_instance(); } /** * Get global class. * * @return object */ function wcf() { return Cartflows_Loader::get_instance(); } if ( ! function_exists( '_is_woo_installed' ) ) { /** * Is woocommerce plugin installed. * * @since 1.0.0 * * @access public */ function _is_woo_installed() { $path = 'woocommerce/woocommerce.php'; $plugins = get_plugins(); return isset( $plugins[ $path ] ); } } PK\G6NN"classes/class-cartflows-helper.phpnuW+Ais_divi_theme_installed() ) { $theme_status = 'installed'; if ( false === Cartflows_Compatibility::get_instance()->is_divi_enabled() ) { $theme_status = 'deactivate'; $divi_status = 'activate'; } else { $divi_status = ''; } } } $plugins = array( 'elementor' => array( 'title' => 'Elementor', 'plugins' => array( array( 'slug' => 'elementor', // For download from wp.org. 'init' => 'elementor/elementor.php', 'status' => self::get_plugin_status( 'elementor/elementor.php' ), ), ), ), 'divi' => array( 'title' => 'Divi', 'theme-status' => $theme_status, 'plugin-status' => $divi_status, 'plugins' => array( array( 'slug' => 'divi-builder', // For download from wp.org. 'init' => 'divi-builder/divi-builder.php', 'status' => $divi_status, ), ), ), ); $plugins['beaver-builder'] = array( 'title' => 'Beaver Builder', 'plugins' => array(), ); // Check Pro Exist. if ( file_exists( WP_PLUGIN_DIR . '/bb-plugin/fl-builder.php' ) && ! is_plugin_active( 'beaver-builder-lite-version/fl-builder.php' ) ) { $plugins['beaver-builder']['plugins'][] = array( 'slug' => 'bb-plugin', 'init' => 'bb-plugin/fl-builder.php', 'status' => self::get_plugin_status( 'bb-plugin/fl-builder.php' ), ); } else { $plugins['beaver-builder']['plugins'][] = array( 'slug' => 'beaver-builder-lite-version', // For download from wp.org. 'init' => 'beaver-builder-lite-version/fl-builder.php', 'status' => self::get_plugin_status( 'beaver-builder-lite-version/fl-builder.php' ), ); } if ( file_exists( WP_PLUGIN_DIR . '/bb-ultimate-addon/bb-ultimate-addon.php' ) && ! is_plugin_active( 'ultimate-addons-for-beaver-builder-lite/bb-ultimate-addon.php' ) ) { $plugins['beaver-builder']['plugins'][] = array( 'slug' => 'bb-ultimate-addon', 'init' => 'bb-ultimate-addon/bb-ultimate-addon.php', 'status' => self::get_plugin_status( 'bb-ultimate-addon/bb-ultimate-addon.php' ), ); } else { $plugins['beaver-builder']['plugins'][] = array( 'slug' => 'ultimate-addons-for-beaver-builder-lite', // For download from wp.org. 'init' => 'ultimate-addons-for-beaver-builder-lite/bb-ultimate-addon.php', 'status' => self::get_plugin_status( 'ultimate-addons-for-beaver-builder-lite/bb-ultimate-addon.php' ), ); } return $plugins; } /** * Get plugin status * * @since 1.1.4 * * @param string $plugin_init_file Plguin init file. * @return mixed */ public static function get_plugin_status( $plugin_init_file ) { if ( null == self::$installed_plugins ) { self::$installed_plugins = get_plugins(); } if ( ! isset( self::$installed_plugins[ $plugin_init_file ] ) ) { return 'install'; } elseif ( ! is_plugin_active( $plugin_init_file ) ) { return 'activate'; } else { return; } } /** * Get zapier settings. * * @return array. */ public static function get_common_settings() { if ( null === self::$common ) { $common_default = apply_filters( 'cartflows_common_settings_default', array( 'disallow_indexing' => 'disable', 'global_checkout' => '', 'default_page_builder' => 'elementor', ) ); $common = self::get_admin_settings_option( '_cartflows_common', false, false ); $common = wp_parse_args( $common, $common_default ); if ( ! did_action( 'wp' ) ) { return $common; } else { self::$common = $common; } } return self::$common; } /** * Get debug settings data. * * @return array. */ public static function get_debug_settings() { if ( null === self::$debug_data ) { $debug_data_default = apply_filters( 'cartflows_debug_settings_default', array( 'allow_minified_files' => 'disable', ) ); $debug_data = self::get_admin_settings_option( '_cartflows_debug_data', false, false ); $debug_data = wp_parse_args( $debug_data, $debug_data_default ); if ( ! did_action( 'wp' ) ) { return $debug_data; } else { self::$debug_data = $debug_data; } } return self::$debug_data; } /** * Get debug settings data. * * @return array. */ public static function get_permalink_settings() { if ( null === self::$permalink_setting ) { $permalink_default = apply_filters( 'cartflows_permalink_settings_default', array( 'permalink' => CARTFLOWS_STEP_POST_TYPE, 'permalink_flow_base' => CARTFLOWS_FLOW_POST_TYPE, 'permalink_structure' => '', ) ); $permalink_data = self::get_admin_settings_option( '_cartflows_permalink', false, false ); $permalink_data = wp_parse_args( $permalink_data, $permalink_default ); if ( ! did_action( 'wp' ) ) { return $permalink_data; } else { self::$permalink_setting = $permalink_data; } } return self::$permalink_setting; } /** * Get debug settings data. * * @return array. */ public static function get_google_analytics_settings() { if ( null === self::$google_analytics_settings ) { $google_analytics_settings_default = apply_filters( 'cartflows_google_analytics_settings_default', array( 'enable_google_analytics' => 'disable', 'enable_google_analytics_for_site' => 'disable', 'google_analytics_id' => '', 'enable_begin_checkout' => 'disable', 'enable_add_to_cart' => 'disable', 'enable_add_payment_info' => 'disable', 'enable_purchase_event' => 'disable', ) ); $google_analytics_settings_data = self::get_admin_settings_option( '_cartflows_google_analytics', false, true ); $google_analytics_settings_data = wp_parse_args( $google_analytics_settings_data, $google_analytics_settings_default ); if ( ! did_action( 'wp' ) ) { return $google_analytics_settings_data; } else { self::$google_analytics_settings = $google_analytics_settings_data; } } return self::$google_analytics_settings = $google_analytics_settings_data; //phpcs:ignore } /** * Get Checkout field. * * @param string $key Field key. * @param int $post_id Post id. * @return array. */ public static function get_checkout_fields( $key, $post_id ) { $saved_fields = get_post_meta( $post_id, 'wcf_fields_' . $key, true ); if ( ! $saved_fields ) { $saved_fields = array(); } $fields = array_filter( $saved_fields ); if ( empty( $fields ) ) { if ( 'billing' === $key || 'shipping' === $key ) { $fields = WC()->countries->get_address_fields( WC()->countries->get_base_country(), $key . '_' ); update_post_meta( $post_id, 'wcf_fields_' . $key, $fields ); } } return $fields; } /** * Add Checkout field. * * @param string $type Field type. * @param string $field_key Field key. * @param array $field_data Field data. * @param int $post_id Post id. * @return boolean. */ public static function add_checkout_field( $type, $field_key, $field_data = array(), $post_id ) { $fields = self::get_checkout_fields( $type, $post_id ); $fields[ $field_key ] = $field_data; update_post_meta( $post_id, 'wcf_fields_' . $type, $fields ); return true; } /** * Get checkout fields settings. * * @param string $type Field type. * @param string $field_key Field key. * @param int $post_id Post id. * @return array. */ public static function delete_checkout_field( $type, $field_key, $post_id ) { $fields = self::get_checkout_fields( $type, $post_id ); if ( isset( $fields[ $field_key ] ) ) { unset( $fields[ $field_key ] ); } update_post_meta( $post_id, 'wcf_fields_' . $type, $fields ); return true; } /** * Get checkout fields settings. * * @return array. */ public static function get_checkout_fields_settings() { if ( null === self::$checkout_fields ) { $checkout_fields_default = array( 'enable_customization' => 'disable', 'enable_billing_fields' => 'disable', ); $billing_fields = self::get_checkout_fields( 'billing' ); if ( is_array( $billing_fields ) && ! empty( $billing_fields ) ) { foreach ( $billing_fields as $key => $value ) { $checkout_fields_default[ $key ] = 'enable'; } } $checkout_fields = self::get_admin_settings_option( '_wcf_checkout_fields', false, false ); self::$checkout_fields = wp_parse_args( $checkout_fields, $checkout_fields_default ); } return self::$checkout_fields; } /** * Get meta options * * @since 1.0.0 * @param int $post_id Product ID. * @param string $key Meta Key. * @param string $default Default value. * @return string Meta Value. */ public static function get_meta_option( $post_id, $key, $default = '' ) { $value = get_post_meta( $post_id, $key, true ); if ( ! $value ) { $value = $default; } return $value; } /** * Save meta option * * @since 1.0.0 * @param int $post_id Product ID. * @param array $args Arguments array. */ public static function save_meta_option( $post_id, $args = array() ) { if ( is_array( $args ) && ! empty( $args ) ) { foreach ( $args as $key => $value ) { update_post_meta( $post_id, $key, $value ); } } } /** * Check if Elementor page builder is installed * * @since 1.0.0 * * @access public */ public static function is_elementor_installed() { $path = 'elementor/elementor.php'; $plugins = get_plugins(); return isset( $plugins[ $path ] ); } /** * Check if Step has product assigned. * * @since 1.0.0 * @param int $step_id step ID. * * @access public */ public static function has_product_assigned( $step_id ) { $step_type = get_post_meta( $step_id, 'wcf-step-type', true ); if ( 'checkout' == $step_type ) { $product = get_post_meta( $step_id, 'wcf-checkout-products', true ); } else { $product = get_post_meta( $step_id, 'wcf-offer-product', true ); } if ( ! empty( $product ) ) { return true; } return false; } /** * Get attributes for cartflows wrap. * * @since 1.1.4 * * @access public */ public static function get_cartflows_container_atts() { $attributes = apply_filters( 'cartflows_container_atts', array() ); $atts_string = ''; foreach ( $attributes as $key => $value ) { if ( ! $value ) { continue; } if ( true === $value ) { $atts_string .= esc_html( $key ) . ' '; } else { $atts_string .= sprintf( '%s="%s" ', esc_html( $key ), esc_attr( $value ) ); } } return $atts_string; } /** * Get facebook pixel settings. * * @return facebook array. */ public static function get_facebook_settings() { if ( null === self::$facebook ) { $facebook_default = array( 'facebook_pixel_id' => '', 'facebook_pixel_add_to_cart' => 'enable', 'facebook_pixel_initiate_checkout' => 'enable', 'facebook_pixel_add_payment_info' => 'enable', 'facebook_pixel_purchase_complete' => 'enable', 'facebook_pixel_tracking' => 'disable', 'facebook_pixel_tracking_for_site' => 'disable', ); $facebook = self::get_admin_settings_option( '_cartflows_facebook', false, false ); $facebook = wp_parse_args( $facebook, $facebook_default ); self::$facebook = apply_filters( 'cartflows_facebook_settings_default', $facebook ); } return self::$facebook; } /** * Prepare response data for facebook. * * @param int $order_id order_id. * @param array $offer_data offer data. */ public static function send_fb_response_if_enabled( $order_id, $offer_data = array() ) { // Stop Execution if WooCommerce is not installed & don't set the cookie. if ( ! Cartflows_Loader::get_instance()->is_woo_active ) { return; } $fb_settings = self::get_facebook_settings(); if ( 'enable' === $fb_settings['facebook_pixel_tracking'] ) { setcookie( 'wcf_order_details', wp_json_encode( self::prepare_purchase_data_fb_response( $order_id, $offer_data ) ), strtotime( '+1 year' ), '/' ); } } /** * Prepare purchase response for facebook purcase event. * * @param integer $order_id order id. * @param array $offer_data offer data. * @return mixed */ public static function prepare_purchase_data_fb_response( $order_id, $offer_data = array() ) { $thankyou = array(); if ( ! Cartflows_Loader::get_instance()->is_woo_active ) { return $thankyou; } $thankyou['order_id'] = $order_id; $thankyou['content_type'] = 'product'; $thankyou['currency'] = wcf()->options->get_checkout_meta_value( $order_id, '_order_currency' ); $thankyou['userAgent'] = wcf()->options->get_checkout_meta_value( $order_id, '_customer_user_agent' ); $thankyou['plugin'] = 'CartFlows'; $order = wc_get_order( $order_id ); if ( empty( $offer_data ) ) { // Iterating through each WC_Order_Item_Product objects. foreach ( $order->get_items() as $item_key => $item ) { $product = $item->get_product(); // Get the WC_Product object. $thankyou['content_ids'][] = (string) $product->get_id(); } $thankyou['value'] = wcf()->options->get_checkout_meta_value( $order_id, '_order_total' ); } else { $thankyou['content_ids'][] = (string) $offer_data['id']; $thankyou['value'] = $offer_data['total']; } return $thankyou; } /** * Prepare cart data for fb response. * * @return array */ public static function prepare_cart_data_fb_response() { $params = array(); if ( ! Cartflows_Loader::get_instance()->is_woo_active ) { return $params; } $cart_total = WC()->cart->get_cart_contents_total(); $cart_items_count = WC()->cart->get_cart_contents_count(); $items = WC()->cart->get_cart(); $product_names = ''; $category_names = ''; $cart_contents = array(); foreach ( $items as $item => $value ) { $_product = wc_get_product( $value['product_id'] ); $params['content_ids'][] = (string) $_product->get_id(); $product_names = $product_names . ', ' . $_product->get_title(); $category_names = $category_names . ', ' . wp_strip_all_tags( wc_get_product_category_list( $_product->get_id() ) ); array_push( $cart_contents, array( 'id' => $_product->get_id(), 'name' => $_product->get_title(), 'quantity' => $value['quantity'], 'item_price' => $_product->get_price(), ) ); } $user = wp_get_current_user(); $roles = implode( ', ', $user->roles ); $params['content_name'] = substr( $product_names, 2 ); $params['categoey_name'] = substr( $category_names, 2 ); $params['user_roles'] = $roles; $params['plugin'] = 'CartFlows'; $params['contents'] = wp_json_encode( $cart_contents ); $params['content_type'] = 'product'; $params['value'] = $cart_total; $params['num_items'] = $cart_items_count; $params['currency'] = get_woocommerce_currency(); $params['language'] = get_bloginfo( 'language' ); $params['userAgent'] = wp_unslash( $_SERVER['HTTP_USER_AGENT'] ); //phpcs:ignore $params['product_catalog_id'] = ''; $params['domain'] = get_site_url(); return $params; } /** * Get the image url of size. * * @param int $post_id post id. * @param array $key key. * @param string $size image size. * * @return array */ public static function get_image_url( $post_id, $key, $size = false ) { $url = get_post_meta( $post_id, $key, true ); $img_obj = get_post_meta( $post_id, $key . '-obj', true ); if ( is_array( $img_obj ) && ! empty( $img_obj ) && false !== $size ) { $url = ! empty( $img_obj['url'][ $size ] ) ? $img_obj['url'][ $size ] : $url; } return $url; } } PK\RR"classes/class-cartflows-logger.phpnuW+A CARTFLOWS_SETTINGS, 'cartflows-error-log' => 1, ), admin_url( '/admin.php' ) ); echo ' Thank you for using CartFlows | View Logs '; } /** * Inint Logger. * * @since 1.0.0 */ public function init_wc_logger() { if ( class_exists( 'CartFlows_WC_Logger' ) ) { $this->logger = new CartFlows_WC_Logger(); } } /** * Write log * * @param string $message log message. * @param string $level type of log. * @since 1.0.0 */ public function log( $message, $level = 'info' ) { $enable_log = apply_filters( 'cartflows_enable_log', 'enable' ); if ( 'enable' === $enable_log && is_a( $this->logger, 'CartFlows_WC_Logger' ) && did_action( 'plugins_loaded' ) ) { $this->logger->log( $level, $message, array( 'source' => 'cartflows' ) ); } } /** * Write log * * @param string $message log message. * @param string $level type of log. * @since 1.0.0 */ public function import_log( $message, $level = 'info' ) { if ( defined( 'WP_DEBUG' ) && WP_DEBUG && is_a( $this->logger, 'CartFlows_WC_Logger' ) && did_action( 'plugins_loaded' ) ) { $this->logger->log( $level, $message, array( 'source' => 'cartflows-import' ) ); } } /** * Get all log files in the log directory. * * @return array */ public static function get_log_files() { $files = scandir( CARTFLOWS_LOG_DIR ); $result = array(); if ( ! empty( $files ) ) { foreach ( $files as $key => $value ) { if ( ! in_array( $value, array( '.', '..' ), true ) ) { if ( ! is_dir( $value ) && strstr( $value, '.log' ) ) { $result[ sanitize_title( $value ) ] = $value; } } } } return $result; } /** * Return the log file handle. * * @param string $filename Filename to get the handle for. * @return string */ public static function get_log_file_handle( $filename ) { return substr( $filename, 0, strlen( $filename ) > 48 ? strlen( $filename ) - 48 : strlen( $filename ) - 4 ); } /** * Show the log page contents for file log handler. */ public static function status_logs_file() { if ( ! empty( $_REQUEST['handle'] ) ) { if ( empty( $_REQUEST['_wpnonce'] ) || ! wp_verify_nonce( sanitize_text_field( wp_unslash( $_REQUEST['_wpnonce'] ) ), 'remove_log' ) ) { wp_die( esc_html__( 'Action failed. Please refresh the page and retry.', 'cartflows' ) ); } wp_delete_file( CARTFLOWS_LOG_DIR . rtrim( $_REQUEST['handle'], '-log' ) . '.log' ); //phpcs:ignore echo "
    Log deleted successfully!
    "; } $logs = self::get_log_files(); if ( ! empty( $_REQUEST['log_file'] ) && isset( $logs[ sanitize_title( wp_unslash( $_REQUEST['log_file'] ) ) ] ) ) { $viewed_log = $logs[ sanitize_title( wp_unslash( $_REQUEST['log_file'] ) ) ]; } elseif ( ! empty( $logs ) ) { $viewed_log = current( $logs ); } $handle = ! empty( $viewed_log ) ? self::get_log_file_handle( $viewed_log ) : ''; include_once CARTFLOWS_DIR . 'includes/admin/cartflows-error-log.php'; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Logger::get_instance(); PK\o o 3classes/class-cartflows-learndash-compatibility.phpnuW+A' ) ) { $template = learndash_get_course_meta_setting( get_the_id(), 'wcf_course_template' ); } else { $template = get_course_meta_setting( get_the_id(), 'wcf_course_template' ); } if ( 'none' !== $template && $template ) { $link = get_permalink( $template ); wp_safe_redirect( $link ); } } /** * Add settings inside learndash settings. * * @param array $fields fields. * @return mixed */ public function cartflows_course_setting_fields( $fields ) { global $post; $all_posts = array( 'none' => __( 'None', 'cartflows' ), ); $landing_steps = get_posts( array( 'posts_per_page' => -1, 'post_type' => CARTFLOWS_STEP_POST_TYPE, 'post_status' => 'publish', 'orderby' => 'ID', 'order' => 'DESC', 'meta_query' => array( //phpcs:ignore array( 'key' => 'wcf-step-type', 'value' => array( 'landing', 'checkout', 'optin' ), 'compare' => 'IN', ), ), ) ); foreach ( $landing_steps as $landing_step ) { $all_posts[ $landing_step->ID ] = get_the_title( $landing_step->ID ) . ' ( #' . $landing_step->ID . ')'; } $selected = get_post_meta( get_the_ID(), 'wcf_course_template', true ); $description = sprintf( /* translators: 1: anchor start, 2: anchor close */ __( 'Non-enrolled students will redirect to the selected CartFlows template. If you have not created any Flow already, add new Flow from %1$shere%2$s.', 'cartflows' ), '', '' ); $fields['sfwd-courses']['fields']['wcf_course_template'] = array( 'name' => __( 'Select CartFlows Template for this Course', 'cartflows' ), 'type' => 'select', 'initial_options' => $all_posts, 'default' => 'none', 'help_text' => $description, 'show_in_rest' => true, 'rest_args' => array( 'schema' => array( 'type' => 'string', ), ), ); return $fields; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Learndash_Compatibility::get_instance(); PK\Hk_k_"classes/class-cartflows-wizard.phpnuW+A steps = array( 'basic-config' => array( 'name' => __( 'Welcome', 'cartflows' ), 'view' => array( $this, 'welcome_step' ), 'handler' => array( $this, 'welcome_step_save' ), ), 'page-builder' => array( 'name' => __( 'Page Builder', 'cartflows' ), 'view' => array( $this, 'page_builder_step' ), ), 'checkout' => array( 'name' => __( 'Checkout', 'cartflows' ), 'view' => array( $this, 'checkout_step' ), ), 'training' => array( 'name' => __( 'Training', 'cartflows' ), 'view' => array( $this, 'training_step' ), ), 'setup-ready' => array( 'name' => __( 'Ready!', 'cartflows' ), 'view' => array( $this, 'ready_step' ), 'handler' => '', ), ); $this->step = isset( $_GET['step'] ) ? sanitize_text_field( $_GET['step'] ) : current( array_keys( $this->steps ) ); //phpcs:ignore wp_enqueue_style( 'cartflows-setup', CARTFLOWS_URL . 'admin/assets/css/setup-wizard.css', array( 'dashicons' ), CARTFLOWS_VER ); wp_style_add_data( 'cartflows-setup', 'rtl', 'replace' ); wp_enqueue_script( 'cartflows-setup', CARTFLOWS_URL . 'admin/assets/js/setup-wizard.js', array( 'jquery', 'wp-util', 'updates' ), CARTFLOWS_VER, false ); wp_localize_script( 'cartflows-setup', 'cartflows_setup_vars', self::localize_vars() ); wp_enqueue_media(); if ( ! empty( $_POST['save_step'] ) && isset( $this->steps[ $this->step ]['handler'] ) ) { //phpcs:ignore call_user_func( $this->steps[ $this->step ]['handler'] ); } ob_start(); $this->setup_wizard_header(); $this->setup_wizard_steps(); $this->setup_wizard_content(); $this->setup_wizard_footer(); exit; } /** * Get current step slug */ public function get_current_step_slug() { $keys = array_keys( $this->steps ); return $keys[ array_search( $this->step, array_keys( $this->steps ), true ) ]; } /** * Get previous step link */ public function get_prev_step_link() { $keys = array_keys( $this->steps ); return add_query_arg( 'step', $keys[ array_search( $this->step, array_keys( $this->steps ), true ) - 1 ] ); } /** * Get next step link */ public function get_next_step_link() { $keys = array_keys( $this->steps ); return add_query_arg( 'step', $keys[ array_search( $this->step, array_keys( $this->steps ), true ) + 1 ] ); } /** * Get next step link */ public function get_next_step_plain_link() { $keys = array_keys( $this->steps ); $step_index = array_search( $this->step, $keys, true ); $step_index = ( count( $keys ) == $step_index + 1 ) ? $step_index : $step_index + 1; $step = $keys[ $step_index ]; return admin_url( 'index.php?page=cartflow-setup&step=' . $step ); } /** * Setup Wizard Header. */ public function setup_wizard_header() { set_current_screen(); ?> > <?php esc_html_e( 'CartFlows Setup', 'cartflows' ); ?>
    steps; ?>
      $step ) : $classes = ''; $activated = false; if ( $step_key === $this->step ) { $classes = 'active'; $activated = true; } elseif ( array_search( $this->step, array_keys( $this->steps ), true ) > array_search( $step_key, array_keys( $this->steps ), true ) ) { $classes = 'done'; $activated = true; } ?>
    '; call_user_func( $this->steps[ $this->step ]['view'] ); echo ''; } /** * Introduction step. */ public function welcome_step() { ?>

    get_next_step_link(); wp_safe_redirect( esc_url_raw( $redirect_url ) ); exit; } /** * Locale settings */ public function page_builder_step() { ?>

    __( 'Elementor', 'cartflows' ), 'value' => 'elementor', 'data' => array( 'slug' => 'elementor', 'init' => 'elementor/elementor.php', 'active' => is_plugin_active( 'elementor/elementor.php' ) ? 'yes' : 'no', 'install' => isset( $installed_plugins['elementor/elementor.php'] ) ? 'yes' : 'no', ), ), array( 'title' => __( 'Beaver Builder Plugin (Lite Version)', 'cartflows' ), 'value' => 'beaver-builder', 'data' => array( 'slug' => 'beaver-builder-lite-version', 'init' => 'beaver-builder-lite-version/fl-builder.php', 'active' => is_plugin_active( 'beaver-builder-lite-version/fl-builder.php' ) ? 'yes' : 'no', 'install' => isset( $installed_plugins['beaver-builder-lite-version/fl-builder.php'] ) ? 'yes' : 'no', ), ), array( 'title' => __( 'Divi', 'cartflows' ), 'value' => 'divi', 'data' => array( 'slug' => 'divi', 'init' => 'divi', 'active' => 'yes', 'install' => 'NA', ), ), array( 'title' => __( 'Other', 'cartflows' ), 'value' => 'other', 'data' => array( 'slug' => 'other', 'init' => false, 'active' => 'yes', 'install' => 'NA', ), ), ); ?>

    true, 'woo-cart-abandonment-recovery/woo-cart-abandonment-recovery.php' => false, ); $activate = array( 'woocommerce/woocommerce.php' => false, 'woo-cart-abandonment-recovery/woo-cart-abandonment-recovery.php' => false, ); foreach ( $plugin_slug_arr as $slug => $do_silently ) { $activate[ $slug ] = activate_plugin( $slug, '', false, $do_silently ); } foreach ( $activate as $slug => $data ) { if ( is_wp_error( $data ) ) { wp_send_json_error( array( 'success' => false, 'message' => $data->get_error_message(), ) ); } } wp_send_json_success(); } /** * Save Locale Settings. */ public function page_builder_step_save() { if ( ! current_user_can( 'manage_options' ) ) { return; } check_ajax_referer( 'wcf-page-builder-step-save', 'security' ); $plugin_init = isset( $_POST['plugin_init'] ) ? sanitize_text_field( wp_unslash( $_POST['plugin_init'] ) ) : ''; $save_option = ( isset( $_POST['save_builder_option'] ) && 'true' == $_POST['save_builder_option'] ) ? true : false; $plugin_slug = filter_input( INPUT_POST, 'page_builder', FILTER_SANITIZE_STRING ); $do_sliently = true; if ( 'woo-cart-abandonment-recovery' === $plugin_slug ) { $do_sliently = false; } $activate = activate_plugin( $plugin_init, '', false, $do_sliently ); if ( $save_option ) { $this->save_page_builder_option(); } if ( is_wp_error( $activate ) ) { wp_send_json_error( array( 'success' => false, 'message' => $activate->get_error_message(), ) ); } wp_send_json_success( array( 'plugin' => $plugin_slug ) ); } /** * Save selected page builder in options database. */ public function save_page_builder_option() { if ( ! current_user_can( 'manage_options' ) ) { return; } $page_builder = isset( $_POST['page_builder'] ) ? sanitize_text_field( wp_unslash( $_POST['page_builder'] ) ) : ''; //phpcs:ignore $wcf_settings = get_option( '_cartflows_common', array() ); if ( false !== strpos( $page_builder, 'beaver-builder' ) ) { $page_builder = 'beaver-builder'; } $wcf_settings['default_page_builder'] = $page_builder; update_option( '_cartflows_common', $wcf_settings ); wp_send_json_success( array( 'plugin' => $page_builder ) ); } /** * Final step. */ public function ready_step() { // Set setup wizard status to complete. update_option( 'wcf_setup_complete', true ); ?>

    • Next step

      Create First Flow

      You're ready to add flows to your website.

    get_google_analytics_settings( self::$google_analytics_settings ); } /** * Get ga settings. * * @param array $google_analytics_settings ga settings. */ public function get_google_analytics_settings( $google_analytics_settings ) { self::$google_analytics_settings = Cartflows_Helper::get_google_analytics_settings(); } /** * Render google tag framework. */ public function wcf_render_gtag() { $get_tracking_code = $this->wcf_ga_id(); if ( self::is_wcf_ga_tracking_on() ) { ?> cart->get_cart_contents_total(); $cart_items_count = WC()->cart->get_cart_contents_count(); $items = $order->get_items(); $cart_tax = $order->get_cart_tax(); $response['items'] = array(); $cart_contents = array(); $response = array( 'transaction_id' => $order_id, 'affiliation' => get_bloginfo( 'name' ), 'value' => $order->get_total(), 'currency' => $order->get_currency(), 'tax' => $order->get_cart_tax(), 'shipping' => $order->get_shipping_total(), 'coupon' => WC()->cart->get_coupons(), ); if ( empty( $offer_data ) ) { // Iterating through each WC_Order_Item_Product objects. foreach ( $items as $item => $value ) { $_product = wc_get_product( $value['product_id'] ); if ( ! $_product->is_type( 'variable' ) ) { $product_data = self::get_required_data( $_product ); } else { $variable_product = wc_get_product( $value['variation_id'] ); $product_data = self::get_required_data( $variable_product ); } array_push( $cart_contents, array( 'id' => $product_data['id'], 'name' => $product_data['name'], 'category' => wp_strip_all_tags( wc_get_product_category_list( $_product->get_id() ) ), 'price' => $product_data['price'], 'quantity' => $value['quantity'], ) ); } } else { array_push( $cart_contents, array( 'id' => $offer_data['id'], 'name' => $offer_data['name'], 'quantity' => $offer_data['qty'], 'price' => $offer_data['price'], ) ); } $response['items'] = $cart_contents; // Prepare the json data to send it to google. return $response; } /** * Prepare Ecommerce data for GA response. * * @return array */ public static function get_ga_items_list() { $items = WC()->cart->get_cart(); $items_data = array(); foreach ( $items as $item => $value ) { $_product = wc_get_product( $value['product_id'] ); if ( ! $_product->is_type( 'variable' ) ) { $product_data = self::get_required_data( $_product ); } else { $variable_product = wc_get_product( $value['variation_id'] ); $product_data = self::get_required_data( $variable_product ); } array_push( $items_data, array( 'id' => $product_data['id'], 'name' => $product_data['name'], 'category' => wp_strip_all_tags( wc_get_product_category_list( $_product->get_id() ) ), 'price' => $product_data['price'], 'quantity' => $value['quantity'], ) ); } return $items_data; } /** * Check tracking on. */ public static function is_wcf_ga_tracking_on() { $is_enabled = false; if ( 'disable' === self::$google_analytics_settings['enable_google_analytics'] ) { $is_enabled = false; } else { $is_enabled = true; } return apply_filters( 'cartflows_google_analytics_tracking_enabled', $is_enabled ); } /** * Check purchase event enable. */ public static function wcf_track_ga_purchase() { $google_analytics_settings = Cartflows_Helper::get_google_analytics_settings(); $wcf_track_ga_purchase = $google_analytics_settings['enable_purchase_event']; if ( is_array( $google_analytics_settings ) && ! empty( $google_analytics_settings ) && 'enable' === $wcf_track_ga_purchase ) { return true; } return false; } /** * Get product data. * * @param object $_product product data. */ public static function get_required_data( $_product ) { $data = array( 'id' => $_product->get_id(), 'name' => $_product->get_name(), 'price' => $_product->get_price(), ); return $data; } /** * Retreive google anlytics ID. */ public function wcf_ga_id() { $get_ga_id = self::$google_analytics_settings['google_analytics_id']; return empty( $get_ga_id ) ? false : $get_ga_id; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Tracking::get_instance(); PK\Euu,classes/class-cartflows-bb-compatibility.phpnuW+Apost_type ) { $actions['export'] = '' . __( 'Export', 'cartflows' ) . ''; } return $actions; } /** * Add menus * * @since 1.1.4 */ public function add_to_menus() { add_submenu_page( 'edit.php?post_type=' . CARTFLOWS_FLOW_POST_TYPE, __( 'Flow Export', 'cartflows' ), __( 'Flow Export', 'cartflows' ), 'export', 'flow_exporter', array( $this, 'exporter_markup' ) ); add_submenu_page( 'edit.php?post_type=' . CARTFLOWS_FLOW_POST_TYPE, __( 'Flow Import', 'cartflows' ), __( 'Flow Import', 'cartflows' ), 'import', 'flow_importer', array( $this, 'importer_markup' ) ); } /** * Export flow with steps and its meta * * @since 1.1.4 */ public function export_flow() { if ( ! ( isset( $_GET['post'] ) || isset( $_POST['post'] ) || ( isset( $_REQUEST['action'] ) && 'cartflows_export_flow' == $_REQUEST['action'] ) ) ) { wp_die( esc_html__( 'No post to export has been supplied!', 'cartflows' ) ); } if ( ! isset( $_GET['flow_export_nonce'] ) || ! wp_verify_nonce( sanitize_text_field( wp_unslash( $_GET['flow_export_nonce'] ) ), basename( __FILE__ ) ) ) { return; } // Get the original post id. $flow_id = ( isset( $_GET['post'] ) ? absint( $_GET['post'] ) : absint( $_POST['post'] ) ); $flows = array(); $flows[] = $this->get_flow_export_data( $flow_id ); $flows = apply_filters( 'cartflows_export_data', $flows ); nocache_headers(); header( 'Content-Type: application/json; charset=utf-8' ); header( 'Content-Disposition: attachment; filename=cartflows-flow-' . $flow_id . '-' . gmdate( 'm-d-Y' ) . '.json' ); header( 'Expires: 0' ); echo wp_json_encode( $flows ); exit; } /** * Export flow markup * * @since 1.1.4 */ public function exporter_markup() { include_once CARTFLOWS_DIR . 'includes/exporter.php'; } /** * Import flow markup * * @since 1.1.4 */ public function importer_markup() { include_once CARTFLOWS_DIR . 'includes/importer.php'; } /** * Export flow * * @since 1.1.4 */ public function export_json() { if ( empty( $_POST['cartflows-action'] ) || 'export' != $_POST['cartflows-action'] ) { return; } if ( isset( $_POST['cartflows-action-nonce'] ) && ! wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['cartflows-action-nonce'] ) ), 'cartflows-action-nonce' ) ) { return; } if ( ! current_user_can( 'manage_options' ) ) { return; } $flows = $this->get_all_flow_export_data(); $flows = apply_filters( 'cartflows_export_data', $flows ); nocache_headers(); header( 'Content-Type: application/json; charset=utf-8' ); header( 'Content-Disposition: attachment; filename=cartflows-flow-export-' . gmdate( 'm-d-Y' ) . '.json' ); header( 'Expires: 0' ); echo wp_json_encode( $flows ); exit; } /** * Get flow export data * * @since 1.1.4 * * @param integer $flow_id Flow ID. * @return array */ public function get_flow_export_data( $flow_id ) { $export_all = apply_filters( 'cartflows_export_all', false ); $valid_step_meta_keys = array( '_wp_page_template', '_thumbnail_id', 'classic-editor-remember', ); $new_steps = array(); $steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( $steps ) { foreach ( $steps as $key => $step ) { // Add step post meta. $new_all_meta = array(); $all_meta = get_post_meta( $step['id'] ); if ( is_array( $all_meta ) ) { if ( $export_all ) { foreach ( $all_meta as $meta_key => $value ) { $new_all_meta[ $meta_key ] = maybe_unserialize( $value[0] ); } } else { foreach ( $all_meta as $meta_key => $value ) { if ( substr( $meta_key, 0, strlen( 'wcf' ) ) === 'wcf' ) { $new_all_meta[ $meta_key ] = maybe_unserialize( $value[0] ); } elseif ( in_array( $meta_key, $valid_step_meta_keys, true ) ) { $new_all_meta[ $meta_key ] = maybe_unserialize( $value[0] ); } } } } // Add single step. $step_data_arr = array( 'title' => get_the_title( $step['id'] ), 'type' => $step['type'], 'meta' => $new_all_meta, 'post_content' => '', ); if ( $export_all ) { $step_post_obj = get_post( $step['id'] ); $step_data_arr['post_content'] = $step_post_obj->post_content; } $new_steps[] = $step_data_arr; } } // Add single flow. return array( 'title' => get_the_title( $flow_id ), 'steps' => $new_steps, ); } /** * Get all flow export data * * @since 1.1.4 */ public function get_all_flow_export_data() { $query_args = array( 'post_type' => CARTFLOWS_FLOW_POST_TYPE, // Query performance optimization. 'fields' => 'ids', 'no_found_rows' => true, 'posts_per_page' => -1, ); $query = new WP_Query( $query_args ); $flows = array(); if ( $query->posts ) { foreach ( $query->posts as $key => $post_id ) { $flows[] = $this->get_flow_export_data( $post_id ); } } return $flows; } /** * Import our exported file * * @since 1.1.4 */ public function import_json() { if ( empty( $_POST['cartflows-action'] ) || 'import' != $_POST['cartflows-action'] ) { return; } if ( isset( $_POST['cartflows-action-nonce'] ) && ! wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['cartflows-action-nonce'] ) ), 'cartflows-action-nonce' ) ) { return; } if ( ! current_user_can( 'manage_options' ) ) { return; } $filename = $_FILES['file']['name']; //phpcs:ignore $file_info = explode( '.', $filename ); $extension = end( $file_info ); if ( 'json' != $extension ) { wp_die( esc_html__( 'Please upload a valid .json file', 'cartflows' ) ); } $file = $_FILES['file']['tmp_name']; //phpcs:ignore if ( empty( $file ) ) { wp_die( esc_html__( 'Please upload a file to import', 'cartflows' ) ); } // Retrieve the settings from the file and convert the JSON object to an array. $flows = json_decode( file_get_contents( $file ), true );//phpcs:ignore $this->import_from_json_data( $flows ); add_action( 'admin_notices', array( $this, 'imported_successfully' ) ); } /** * Import flow from the JSON data * * @since x.x.x * @param array $flows JSON array. * @return void */ public function import_from_json_data( $flows ) { if ( $flows ) { foreach ( $flows as $key => $flow ) { $flow_title = $flow['title']; if ( post_exists( $flow['title'] ) ) { $flow_title = $flow['title'] . ' Copy'; } // Create post object. $new_flow_args = apply_filters( 'cartflows_flow_importer_args', array( 'post_type' => CARTFLOWS_FLOW_POST_TYPE, 'post_title' => $flow_title, 'post_status' => 'draft', ) ); // Insert the post into the database. $flow_id = wp_insert_post( $new_flow_args ); /** * Fire after flow import * * @since x.x.x * @param int $flow_id Flow ID. * @param array $new_flow_args Flow post args. * @param array $flows Flow JSON data. */ do_action( 'cartflows_flow_imported', $flow_id, $new_flow_args, $flows ); if ( $flow['steps'] ) { foreach ( $flow['steps'] as $key => $step ) { $new_step_args = apply_filters( 'cartflows_step_importer_args', array( 'post_type' => CARTFLOWS_STEP_POST_TYPE, 'post_title' => $step['title'], 'post_status' => 'publish', 'meta_input' => $step['meta'], 'post_content' => isset( $step['post_content'] ) ? $step['post_content'] : '', ) ); $new_step_id = wp_insert_post( $new_step_args ); /** * Fire after step import * * @since x.x.x * @param int $new_step_id step ID. * @param int $flow_id flow ID. * @param array $new_step_args Step post args. * @param array $flow_steps Flow steps. * @param array $flows All flows JSON data. */ do_action( 'cartflows_step_imported', $new_step_id, $flow_id, $new_step_args, $flow['steps'], $flows ); // Insert post meta. update_post_meta( $new_step_id, 'wcf-flow-id', $flow_id ); $step_taxonomy = CARTFLOWS_TAXONOMY_STEP_TYPE; $current_term = term_exists( $step['type'], $step_taxonomy ); // // Set type object. $data = get_term( $current_term['term_id'], $step_taxonomy ); $step_slug = $data->slug; wp_set_object_terms( $new_step_id, $data->slug, $step_taxonomy ); // Set type. update_post_meta( $new_step_id, 'wcf-step-type', $data->slug ); // Set flow. wp_set_object_terms( $new_step_id, 'flow-' . $flow_id, CARTFLOWS_TAXONOMY_STEP_FLOW ); self::get_instance()->set_step_to_flow( $flow_id, $new_step_id, $step['title'], $step_slug ); if ( isset( $step['post_content'] ) && ! empty( $step['post_content'] ) ) { // Download and replace images. $content = $this->get_content( $step['post_content'] ); // Update post content. wp_update_post( array( 'ID' => $new_step_id, 'post_content' => $content, ) ); } } } } } } /** * Download and Replace hotlink images * * @since x.x.x * * @param string $content Mixed post content. * @return array Hotlink image array. */ public function get_content( $content = '' ) { $all_links = wp_extract_urls( $content ); $image_links = array(); $image_map = array(); // Not have any link. if ( empty( $all_links ) ) { return $content; } foreach ( $all_links as $key => $link ) { if ( preg_match( '/\.(jpg|jpeg|png|gif)/i', $link ) ) { $image_links[] = $link; } } // Not have any image link. if ( empty( $image_links ) ) { return $content; } foreach ( $image_links as $key => $image_url ) { // Download remote image. $image = array( 'url' => $image_url, 'id' => wp_rand( 000, 999 ), ); $downloaded_image = CartFlows_Import_Image::get_instance()->import( $image ); // Old and New image mapping links. $image_map[ $image_url ] = $downloaded_image['url']; } // Replace old image links with new image links. foreach ( $image_map as $old_url => $new_url ) { $content = str_replace( $old_url, $new_url, $content ); } return $content; } /** * Imported notice * * @since 1.1.4 */ public function imported_successfully() { ?>

    files_manager->clear_cache(); } } /** * JS Templates * * @since 1.0.0 * * @return void */ public function js_templates() { // Loading Templates. ?> post_type ) ) { return; } wp_enqueue_script( 'cartflows-rest-api', CARTFLOWS_URL . 'assets/js/rest-api.js', array( 'jquery' ), CARTFLOWS_VER, true ); wp_enqueue_style( 'cartflows-import', CARTFLOWS_URL . 'assets/css/import.css', null, CARTFLOWS_VER, 'all' ); wp_style_add_data( 'cartflows-import', 'rtl', 'replace' ); wp_enqueue_script( 'cartflows-import', CARTFLOWS_URL . 'assets/js/import.js', array( 'jquery', 'wp-util', 'cartflows-rest-api', 'updates' ), CARTFLOWS_VER, true ); $installed_plugins = get_plugins(); $is_wc_installed = isset( $installed_plugins['woocommerce/woocommerce.php'] ) ? 'yes' : 'no'; $is_wc_activated = wcf()->is_woo_active ? 'yes' : 'no'; $localize_vars = array( '_is_pro_active' => _is_cartflows_pro(), 'is_wc_installed' => $is_wc_installed, 'is_wc_activated' => $is_wc_activated, // Flow and its rest fields. 'flow' => CARTFLOWS_FLOW_POST_TYPE, 'flow_fields' => array( 'id', 'title', 'flow_type', 'page_builder', 'flow_steps', 'licence_status', 'featured_image_url', 'featured_media', // @required for field `featured_image_url`. ), // Flow type and rest fields. 'flow_type' => CARTFLOWS_TAXONOMY_FLOW_CATEGORY, 'flow_type_fields' => array( 'id', 'name', 'slug', ), // Flow page builder and rest fields. 'flow_page_builder' => CARTFLOWS_TAXONOMY_FLOW_PAGE_BUILDER, 'flow_page_builder_fields' => array( 'id', 'name', 'slug', ), // Step page builder and rest fields. 'step_page_builder' => CARTFLOWS_TAXONOMY_STEP_PAGE_BUILDER, 'step_page_builder_fields' => array( 'id', 'name', 'slug', ), // Step and its rest fields. 'step' => CARTFLOWS_STEP_POST_TYPE, 'step_fields' => array( 'title', 'featured_image_url', 'featured_media', // @required for field `featured_image_url`. 'id', 'flow_type', 'step_type', 'page_builder', 'licence_status', ), // Step type and its rest fields. 'step_type' => CARTFLOWS_TAXONOMY_STEP_TYPE, 'step_type_fields' => array( 'id', 'name', 'slug', ), 'domain_url' => CARTFLOWS_DOMAIN_URL, 'server_url' => CARTFLOWS_TEMPLATES_URL, 'server_rest_url' => CARTFLOWS_TEMPLATES_URL . 'wp-json/wp/v2/', 'site_url' => site_url(), 'import_url' => admin_url( 'edit.php?post_type=' . CARTFLOWS_FLOW_POST_TYPE . '&page=flow_importer' ), 'export_url' => admin_url( 'edit.php?post_type=' . CARTFLOWS_FLOW_POST_TYPE . '&page=flow_exporter' ), 'admin_url' => admin_url(), 'licence_args' => CartFlows_API::get_instance()->get_licence_args(), 'ajaxurl' => admin_url( 'admin-ajax.php' ), 'debug' => ( ( defined( 'WP_DEBUG' ) && WP_DEBUG ) || isset( $_GET['debug'] ) ) ? true : false, //phpcs:ignore 'required_plugins' => Cartflows_Helper::get_plugins_groupby_page_builders(), 'default_page_builder' => Cartflows_Helper::get_common_setting( 'default_page_builder' ), ); $localize_vars['cartflows_activate_plugin_nonce'] = wp_create_nonce( 'cartflows_activate_plugin' ); // var_dump(Cartflows_Helper::get_common_setting( 'default_page_builder' )); // wp_die( ); // Add thickbox. add_thickbox(); wp_localize_script( 'cartflows-import', 'CartFlowsImportVars', $localize_vars ); wp_localize_script( 'cartflows-rest-api', 'CartFlowsImportVars', $localize_vars ); } /** * Import. * * @since 1.0.0 * * @hook wp_ajax_cartflows_import_flow_step * @return void */ public function import_flow() { if ( ! current_user_can( 'manage_options' ) ) { return; } check_ajax_referer( 'cf-import-flow-step', 'security' ); $flow_id = isset( $_POST['flow_id'] ) ? intval( $_POST['flow_id'] ) : ''; $template_id = isset( $_POST['template_id'] ) ? intval( $_POST['template_id'] ) : ''; wcf()->logger->import_log( '------------------------------------' ); wcf()->logger->import_log( 'STARTED! Importing FLOW' ); wcf()->logger->import_log( '------------------------------------' ); wcf()->logger->import_log( '(✓) Creating new step from remote step [' . $template_id . '] for FLOW ' . get_the_title( $flow_id ) . ' [' . $flow_id . ']' ); $response = CartFlows_API::get_instance()->get_template( $template_id ); $post_content = isset( $response['data']['content']->rendered ) ? $response['data']['content']->rendered : ''; if ( 'divi' === Cartflows_Helper::get_common_setting( 'default_page_builder' ) ) { if ( isset( $response['data']['divi_content'] ) && ! empty( $response['data']['divi_content'] ) ) { $post_content = $response['data']['divi_content']; } } if ( false === $response['success'] ) { wcf()->logger->import_log( '(✕) Failed to fetch remote data.' ); wp_send_json_error( $response ); } wcf()->logger->import_log( '(✓) Successfully getting remote step response ' . wp_json_encode( $response ) ); $new_step_id = wp_insert_post( array( 'post_type' => CARTFLOWS_STEP_POST_TYPE, 'post_title' => $response['title'], 'post_content' => $post_content, 'post_status' => 'publish', ) ); if ( is_wp_error( $new_step_id ) ) { wcf()->logger->import_log( '(✕) Failed to create new step for flow ' . $flow_id ); wp_send_json_error( $new_step_id ); } if ( 'divi' === Cartflows_Helper::get_common_setting( 'default_page_builder' ) ) { if ( isset( $response['data']['divi_content'] ) && ! empty( $response['data']['divi_content'] ) ) { update_post_meta( $new_step_id, 'divi_content', $response['data']['divi_content'] ); } } /* Imported Step */ update_post_meta( $new_step_id, 'cartflows_imported_step', 'yes' ); wcf()->logger->import_log( '(✓) Created new step ' . '"' . $response['title'] . '" id ' . $new_step_id );//phpcs:ignore // insert post meta. update_post_meta( $new_step_id, 'wcf-flow-id', $flow_id ); wcf()->logger->import_log( '(✓) Added flow ID ' . $flow_id . ' in post meta key wcf-flow-id.' ); /** * Import & Set type. */ $term = isset( $response['data']['step_type'] ) ? $response['data']['step_type'] : ''; $term_slug = ''; if ( $term ) { $taxonomy = CARTFLOWS_TAXONOMY_STEP_TYPE; $term_exist = term_exists( $term->slug, $taxonomy ); if ( empty( $term_exist ) ) { $terms = array( array( 'name' => $term->name, 'slug' => $term->slug, ), ); Cartflows_Step_Post_Type::get_instance()->add_terms( $taxonomy, $terms ); wcf()->logger->import_log( '(✓) Created new term name ' . $term->name . ' | term slug ' . $term->slug ); } $current_term = term_exists( $term->slug, $taxonomy ); // Set type object. $data = get_term( $current_term['term_id'], $taxonomy ); $term_slug = $data->slug; $term_name = $data->name; wp_set_object_terms( $new_step_id, $term_slug, CARTFLOWS_TAXONOMY_STEP_TYPE ); wcf()->logger->import_log( '(✓) Assigned existing term ' . $term_name . ' to the template ' . $new_step_id ); // Set type. update_post_meta( $new_step_id, 'wcf-step-type', $term_slug ); wcf()->logger->import_log( '(✓) Updated term ' . $term_name . ' to the post meta wcf-step-type.' ); } // Set flow. wp_set_object_terms( $new_step_id, 'flow-' . $flow_id, CARTFLOWS_TAXONOMY_STEP_FLOW ); wcf()->logger->import_log( '(✓) Assigned flow step flow-' . $flow_id ); /** * Update steps for the current flow. */ $flow_steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( ! is_array( $flow_steps ) ) { $flow_steps = array(); } $flow_steps[] = array( 'id' => $new_step_id, 'title' => $response['title'], 'type' => $term_slug, ); update_post_meta( $flow_id, 'wcf-steps', $flow_steps ); wcf()->logger->import_log( '(✓) Updated flow steps post meta key \'wcf-steps\' ' . wp_json_encode( $flow_steps ) ); // Import Post Meta. self::import_post_meta( $new_step_id, $response ); wcf()->logger->import_log( '(✓) Importing step "' . get_the_title( $new_step_id ) . '" [' . $new_step_id . '] for FLOW "' . get_the_title( $flow_id ) . '" [' . $flow_id . ']' ); wcf()->logger->import_log( '------------------------------------' ); wcf()->logger->import_log( 'COMPLETE! Importing FLOW' ); wcf()->logger->import_log( '------------------------------------' ); do_action( 'cartflows_import_complete' ); wcf()->logger->import_log( '(✓) BATCH STARTED for step ' . $new_step_id . ' for Blog name \'' . get_bloginfo( 'name' ) . '\' (' . get_current_blog_id() . ')' ); // Batch Process. do_action( 'cartflows_after_template_import', $new_step_id, $response ); /** * End */ wp_send_json_success( $new_step_id ); } /** * Import Step. * * @since 1.0.0 * @hook wp_ajax_cartflows_step_import * * @return void */ public function create_default_flow() { if ( ! current_user_can( 'manage_options' ) ) { return; } check_ajax_referer( 'cf-default-flow', 'security' ); // Create post object. $new_flow_post = array( 'post_content' => '', 'post_status' => 'publish', 'post_type' => CARTFLOWS_FLOW_POST_TYPE, ); // Insert the post into the database. $flow_id = wp_insert_post( $new_flow_post ); if ( is_wp_error( $flow_id ) ) { wp_send_json_error( $flow_id->get_error_message() ); } $flow_steps = array(); if ( wcf()->is_woo_active ) { $steps_data = array( 'sales' => array( 'title' => __( 'Sales Landing', 'cartflows' ), 'type' => 'landing', ), 'order-form' => array( 'title' => __( 'Checkout (Woo)', 'cartflows' ), 'type' => 'checkout', ), 'order-confirmation' => array( 'title' => __( 'Thank You (Woo)', 'cartflows' ), 'type' => 'thankyou', ), ); } else { $steps_data = array( 'landing' => array( 'title' => __( 'Landing', 'cartflows' ), 'type' => 'landing', ), 'thankyou' => array( 'title' => __( 'Thank You', 'cartflows' ), 'type' => 'landing', ), ); } foreach ( $steps_data as $slug => $data ) { $post_content = ''; $step_type = trim( $data['type'] ); $step_id = wp_insert_post( array( 'post_type' => CARTFLOWS_STEP_POST_TYPE, 'post_title' => $data['title'], 'post_content' => $post_content, 'post_status' => 'publish', ) ); if ( is_wp_error( $step_id ) ) { wp_send_json_error( $step_id->get_error_message() ); } if ( $step_id ) { $flow_steps[] = array( 'id' => $step_id, 'title' => $data['title'], 'type' => $step_type, ); // insert post meta. update_post_meta( $step_id, 'wcf-flow-id', $flow_id ); update_post_meta( $step_id, 'wcf-step-type', $step_type ); wp_set_object_terms( $step_id, $step_type, CARTFLOWS_TAXONOMY_STEP_TYPE ); wp_set_object_terms( $step_id, 'flow-' . $flow_id, CARTFLOWS_TAXONOMY_STEP_FLOW ); update_post_meta( $step_id, '_wp_page_template', 'cartflows-default' ); } } update_post_meta( $flow_id, 'wcf-steps', $flow_steps ); wp_send_json_success( $flow_id ); } /** * Create Flow * * @return void */ public function create_flow() { if ( ! current_user_can( 'manage_options' ) ) { return; } check_ajax_referer( 'cf-create-flow', 'security' ); // Create post object. $new_flow_post = array( 'post_content' => '', 'post_status' => 'publish', 'post_type' => CARTFLOWS_FLOW_POST_TYPE, ); // Insert the post into the database. $flow_id = wp_insert_post( $new_flow_post ); if ( is_wp_error( $flow_id ) ) { wp_send_json_error( $flow_id->get_error_message() ); } /* Imported Flow */ update_post_meta( $flow_id, 'cartflows_imported_flow', 'yes' ); wp_send_json_success( $flow_id ); } /** * Create Step * * @return void */ public function import_step() { if ( ! current_user_can( 'manage_options' ) ) { return; } check_ajax_referer( 'cf-step-import', 'security' ); $template_id = isset( $_POST['template_id'] ) ? intval( $_POST['template_id'] ) : ''; $flow_id = isset( $_POST['flow_id'] ) ? intval( $_POST['flow_id'] ) : ''; $step_title = isset( $_POST['step_title'] ) ? sanitize_text_field( wp_unslash( $_POST['step_title'] ) ) : ''; $step_type = isset( $_POST['step_type'] ) ? sanitize_title( wp_unslash( $_POST['step_type'] ) ) : ''; $step_custom_title = isset( $_POST['step_custom_title'] ) ? sanitize_title( wp_unslash( $_POST['step_custom_title'] ) ) : $step_title; $cartflow_meta = Cartflows_Flow_Meta::get_instance(); $post_id = $cartflow_meta->create_step( $flow_id, $step_type, $step_custom_title ); wcf()->logger->import_log( '------------------------------------' ); wcf()->logger->import_log( 'STARTED! Importing STEP' ); wcf()->logger->import_log( '------------------------------------' ); if ( empty( $template_id ) || empty( $post_id ) ) { /* translators: %s: template ID */ $data = sprintf( __( 'Invalid template id %1$s or post id %2$s.', 'cartflows' ), $template_id, $post_id ); wcf()->logger->import_log( $data ); wp_send_json_error( $data ); } wcf()->logger->import_log( 'Remote Step ' . $template_id . ' for local flow "' . get_the_title( $post_id ) . '" [' . $post_id . ']' ); $response = CartFlows_API::get_instance()->get_template( $template_id ); if ( 'divi' === Cartflows_Helper::get_common_setting( 'default_page_builder' ) ) { if ( isset( $response['data']['divi_content'] ) && ! empty( $response['data']['divi_content'] ) ) { update_post_meta( $post_id, 'divi_content', $response['data']['divi_content'] ); wp_update_post( array( 'ID' => $post_id, 'post_content' => $response['data']['divi_content'], ) ); } } /* Imported Step */ update_post_meta( $post_id, 'cartflows_imported_step', 'yes' ); // Import Post Meta. self::import_post_meta( $post_id, $response ); do_action( 'cartflows_import_complete' ); // Batch Process. do_action( 'cartflows_after_template_import', $post_id, $response ); wcf()->logger->import_log( '------------------------------------' ); wcf()->logger->import_log( 'COMPLETE! Importing Step' ); wcf()->logger->import_log( '------------------------------------' ); wp_send_json_success( $post_id ); } /** * Import Step. * * @since 1.0.0 * @hook wp_ajax_cartflows_step_create_blank * * @return void */ public function step_create_blank() { if ( ! current_user_can( 'manage_options' ) ) { return; } check_ajax_referer( 'cf-step-create-blank', 'security' ); $flow_id = isset( $_POST['flow_id'] ) ? intval( $_POST['flow_id'] ) : ''; $step_type = isset( $_POST['step_type'] ) ? sanitize_text_field( wp_unslash( $_POST['step_type'] ) ) : ''; $step_title = isset( $_POST['step_title'] ) ? sanitize_text_field( wp_unslash( $_POST['step_title'] ) ) : ''; if ( empty( $flow_id ) || empty( $step_type ) ) { /* translators: %s: flow ID */ $data = sprintf( __( 'Invalid flow id %1$s OR step type %2$s.', 'cartflows' ), $flow_id, $step_type ); wcf()->logger->import_log( $data ); wp_send_json_error( $data ); } wcf()->logger->import_log( '------------------------------------' ); wcf()->logger->import_log( 'STARTED! Creating Blank STEP for Flow ' . $flow_id ); $step_type_title = str_replace( '-', ' ', $step_type ); $step_type_slug = strtolower( str_replace( '-', ' ', $step_type ) ); $new_step_id = wp_insert_post( array( 'post_type' => CARTFLOWS_STEP_POST_TYPE, 'post_title' => $step_title, 'post_content' => '', 'post_status' => 'publish', ) ); // insert post meta. update_post_meta( $new_step_id, 'wcf-flow-id', $flow_id ); $taxonomy = CARTFLOWS_TAXONOMY_STEP_TYPE; $term_exist = term_exists( $step_type_slug, $taxonomy ); if ( empty( $term_exist ) ) { $terms = array( array( 'name' => $step_type_title, 'slug' => $step_type_slug, ), ); Cartflows_Step_Post_Type::get_instance()->add_terms( $taxonomy, $terms ); wcf()->logger->import_log( '(✓) Created new term name ' . $step_type_title . ' | term slug ' . $step_type_slug ); } $current_term = term_exists( $step_type_slug, $taxonomy ); // Set type object. $data = get_term( $current_term['term_id'], $taxonomy ); $step_slug = $data->slug; wp_set_object_terms( $new_step_id, $data->slug, CARTFLOWS_TAXONOMY_STEP_TYPE ); wcf()->logger->import_log( '(✓) Assigned existing term ' . $step_type_title . ' to the template ' . $new_step_id ); // Set Default page Layout. update_post_meta( $new_step_id, '_wp_page_template', 'cartflows-default' ); // Set type. update_post_meta( $new_step_id, 'wcf-step-type', $data->slug ); wcf()->logger->import_log( '(✓) Updated term ' . $data->name . ' to the post meta wcf-step-type.' ); // Set flow. wp_set_object_terms( $new_step_id, 'flow-' . $flow_id, CARTFLOWS_TAXONOMY_STEP_FLOW ); wcf()->logger->import_log( '(✓) Assigned flow step flow-' . $flow_id ); self::get_instance()->set_step_to_flow( $flow_id, $new_step_id, $step_type_title, $step_slug ); wcf()->logger->import_log( 'COMPLETE! Creating Blank STEP for Flow ' . $flow_id ); wcf()->logger->import_log( '------------------------------------' ); wp_send_json_success( $new_step_id ); } /** * Import Post Meta * * @since 1.0.0 * * @param integer $post_id Post ID. * @param array $response Post meta. * @return void */ public static function import_post_meta( $post_id, $response ) { $metadata = (array) $response['post_meta']; foreach ( $metadata as $meta_key => $meta_value ) { $meta_value = isset( $meta_value[0] ) ? $meta_value[0] : ''; if ( $meta_value ) { if ( is_serialized( $meta_value, true ) ) { $raw_data = maybe_unserialize( stripslashes( $meta_value ) ); } elseif ( is_array( $meta_value ) ) { $raw_data = json_decode( stripslashes( $meta_value ), true ); } else { $raw_data = $meta_value; } if ( '_elementor_data' === $meta_key ) { if ( is_array( $raw_data ) ) { $raw_data = wp_slash( wp_json_encode( $raw_data ) ); } else { $raw_data = wp_slash( $raw_data ); } } if ( '_elementor_data' !== $meta_key && '_elementor_draft' !== $meta_key && '_fl_builder_data' !== $meta_key && '_fl_builder_draft' !== $meta_key ) { if ( is_array( $raw_data ) ) { wcf()->logger->import_log( '(✓) Added post meta ' . $meta_key . ' | ' . wp_json_encode( $raw_data ) ); } else { if ( ! is_object( $raw_data ) ) { wcf()->logger->import_log( '(✓) Added post meta ' . $meta_key . ' | ' . $raw_data ); } } } update_post_meta( $post_id, $meta_key, $raw_data ); } } } /** * Import Template for Elementor * * @since 1.0.0 * * @param integer $post_id Post ID. * @param array $response Post meta. * @param array $page_build_data Page build data. * @return void */ public static function import_template_elementor( $post_id, $response, $page_build_data ) { if ( ! is_plugin_active( 'elementor/elementor.php' ) ) { $data = __( 'Elementor is not activated. Please activate plugin Elementor Page Builder to import the step.', 'cartflows' ); wcf()->logger->import_log( $data ); wp_send_json_error( $data ); } require_once CARTFLOWS_DIR . 'classes/batch-process/class-cartflows-importer-elementor.php'; wcf()->logger->import_log( '# Started "importing page builder data" for step ' . $post_id ); $obj = new \Elementor\TemplateLibrary\CartFlows_Importer_Elementor(); $obj->import_single_template( $post_id ); wcf()->logger->import_log( '# Complete "importing page builder data" for step ' . $post_id ); } /** * Supported post types * * @since 1.0.0 * * @return array Supported post types. */ public static function supported_post_types() { return apply_filters( 'cartflows_supported_post_types', array( CARTFLOWS_FLOW_POST_TYPE, ) ); } /** * Check supported post type * * @since 1.0.0 * * @param string $post_type Post type. * @return boolean Supported post type status. */ public static function is_supported_post( $post_type = '' ) { if ( in_array( $post_type, self::supported_post_types(), true ) ) { return true; } return false; } /** * Set steps to the flow * * @param integer $flow_id Flow ID. * @param integer $new_step_id New step ID. * @param string $step_title Flow Type. * @param string $step_slug Flow Type. */ public function set_step_to_flow( $flow_id, $new_step_id, $step_title, $step_slug ) { // Update steps for the current flow. $flow_steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( ! is_array( $flow_steps ) ) { $flow_steps = array(); } $flow_steps[] = array( 'id' => $new_step_id, 'title' => $step_title, 'type' => $step_slug, ); update_post_meta( $flow_id, 'wcf-steps', $flow_steps ); wcf()->logger->import_log( '(✓) Updated flow steps post meta key \'wcf-steps\' ' . wp_json_encode( $flow_steps ) ); } /** * Localize variables in admin * * @param array $vars variables. */ public function localize_vars( $vars ) { $ajax_actions = array( 'cf_step_import', 'cf_load_steps', 'cf_create_flow', 'cf_default_flow', 'cf_step_create_blank', 'cf_import_flow_step', ); foreach ( $ajax_actions as $action ) { $vars[ $action . '_nonce' ] = wp_create_nonce( str_replace( '_', '-', $action ) ); } return $vars; } /** * Ajax action to activate plugin */ public function activate_plugin() { if ( ! check_ajax_referer( 'cartflows_activate_plugin', 'security', false ) ) { wp_send_json_error( esc_html__( 'Action failed. Invalid Security Nonce.', 'cartflows' ) ); } if ( ! current_user_can( 'activate_plugins' ) ) { wp_send_json_error( array( 'success' => false, 'message' => __( 'User have not plugin install permissions.', 'cartflows' ), ) ); } $plugin_init = isset( $_POST['plugin_init'] ) ? sanitize_text_field( wp_unslash( $_POST['plugin_init'] ) ) : ''; $activate = activate_plugin( $plugin_init, '', false, true ); if ( is_wp_error( $activate ) ) { wp_send_json_error( array( 'success' => false, 'message' => $activate->get_error_message(), 'init' => $plugin_init, ) ); } wp_send_json_success( array( 'success' => true, 'message' => __( 'Plugin Successfully Activated', 'cartflows' ), 'init' => $plugin_init, ) ); } } /** * Initialize class object with 'get_instance()' method */ CartFlows_Importer::get_instance(); endif; PK\ fL8classes/logger/class-cartflows-log-handler-interface.phpnuW+A $timestamp, 'level' => $level, 'message' => $message, 'context' => $context, ) ); } } PK\>;/ / -classes/logger/class-cartflows-log-levels.phpnuW+A 800, self::ALERT => 700, self::CRITICAL => 600, self::ERROR => 500, self::WARNING => 400, self::NOTICE => 300, self::INFO => 200, self::DEBUG => 100, ); /** * Severity integers mapped to level strings. * * This is the inverse of $level_severity. * * @var array */ protected static $severity_to_level = array( 800 => self::EMERGENCY, 700 => self::ALERT, 600 => self::CRITICAL, 500 => self::ERROR, 400 => self::WARNING, 300 => self::NOTICE, 200 => self::INFO, 100 => self::DEBUG, ); /** * Validate a level string. * * @param string $level Log level. * @return bool True if $level is a valid level. */ public static function is_valid_level( $level ) { return array_key_exists( strtolower( $level ), self::$level_to_severity ); } /** * Translate level string to integer. * * @param string $level Log level, options: emergency|alert|critical|error|warning|notice|info|debug. * @return int 100 (debug) - 800 (emergency) or 0 if not recognized */ public static function get_level_severity( $level ) { return self::is_valid_level( $level ) ? self::$level_to_severity[ strtolower( $level ) ] : 0; } /** * Translate severity integer to level string. * * @param int $severity Serevity level. * @return bool|string False if not recognized. Otherwise string representation of level. */ public static function get_severity_level( $severity ) { if ( ! array_key_exists( $severity, self::$severity_to_level ) ) { return false; } return self::$severity_to_level[ $severity ]; } } PK\$  3classes/logger/class-cartflows-logger-interface.phpnuW+A' . esc_html( is_object( $handler ) ? get_class( $handler ) : $handler ) . '', 'Cartflows_Log_Handler_Interface' ), '3.0' ); } } } if ( null !== $threshold ) { $threshold = Cartflows_Log_Levels::get_level_severity( $threshold ); } elseif ( defined( 'WC_LOG_THRESHOLD' ) && Cartflows_Log_Levels::is_valid_level( WC_LOG_THRESHOLD ) ) { $threshold = Cartflows_Log_Levels::get_level_severity( WC_LOG_THRESHOLD ); } else { $threshold = null; } $this->handlers = $register_handlers; $this->threshold = $threshold; } /** * Determine whether to handle or ignore log. * * @param string $level emergency|alert|critical|error|warning|notice|info|debug. * @return bool True if the log should be handled. */ protected function should_handle( $level ) { if ( null === $this->threshold ) { return true; } return $this->threshold <= Cartflows_Log_Levels::get_level_severity( $level ); } /** * Add a log entry. * * This is not the preferred method for adding log messages. Please use log() or any one of * the level methods (debug(), info(), etc.). This method may be deprecated in the future. * * @param string $handle File handle. * @param string $message Message to log. * @param string $level Logging level. * @return bool */ public function add( $handle, $message, $level = Cartflows_Log_Levels::NOTICE ) { $message = apply_filters( 'cartflows_logger_add_message', $message, $handle ); $this->log( $level, $message, array( 'source' => $handle, '_legacy' => true, ) ); wc_do_deprecated_action( 'cartflows_log_add', array( $handle, $message ), '3.0', 'This action has been deprecated with no alternative.' ); return true; } /** * Add a log entry. * * @param string $level One of the following: * 'emergency': System is unusable. * 'alert': Action must be taken immediately. * 'critical': Critical conditions. * 'error': Error conditions. * 'warning': Warning conditions. * 'notice': Normal but significant condition. * 'info': Informational messages. * 'debug': Debug-level messages. * @param string $message Log message. * @param array $context Optional. Additional information for log handlers. */ public function log( $level, $message, $context = array() ) { if ( ! Cartflows_Log_Levels::is_valid_level( $level ) ) { /* translators: 1: Cartflows_WC_Logger::log 2: level */ wc_doing_it_wrong( __METHOD__, sprintf( __( '%1$s was called with an invalid level "%2$s".', 'cartflows' ), 'Cartflows_WC_Logger::log', $level ), '3.0' ); } if ( $this->should_handle( $level ) ) { $timestamp = time(); $message = apply_filters( 'cartflows_logger_log_message', $message, $level, $context ); foreach ( $this->handlers as $handler ) { $handler->handle( $timestamp, $level, $message, $context ); } } } /** * Adds an emergency level message. * * System is unusable. * * @see Cartflows_WC_Logger::log * * @param string $message Message to log. * @param array $context Log context. */ public function emergency( $message, $context = array() ) { $this->log( Cartflows_Log_Levels::EMERGENCY, $message, $context ); } /** * Adds an alert level message. * * Action must be taken immediately. * Example: Entire website down, database unavailable, etc. * * @see Cartflows_WC_Logger::log * * @param string $message Message to log. * @param array $context Log context. */ public function alert( $message, $context = array() ) { $this->log( Cartflows_Log_Levels::ALERT, $message, $context ); } /** * Adds a critical level message. * * Critical conditions. * Example: Application component unavailable, unexpected exception. * * @see Cartflows_WC_Logger::log * * @param string $message Message to log. * @param array $context Log context. */ public function critical( $message, $context = array() ) { $this->log( Cartflows_Log_Levels::CRITICAL, $message, $context ); } /** * Adds an error level message. * * Runtime errors that do not require immediate action but should typically be logged * and monitored. * * @see Cartflows_WC_Logger::log * * @param string $message Message to log. * @param array $context Log context. */ public function error( $message, $context = array() ) { $this->log( Cartflows_Log_Levels::ERROR, $message, $context ); } /** * Adds a warning level message. * * Exceptional occurrences that are not errors. * * Example: Use of deprecated APIs, poor use of an API, undesirable things that are not * necessarily wrong. * * @see Cartflows_WC_Logger::log * * @param string $message Message to log. * @param array $context Log context. */ public function warning( $message, $context = array() ) { $this->log( Cartflows_Log_Levels::WARNING, $message, $context ); } /** * Adds a notice level message. * * Normal but significant events. * * @see Cartflows_WC_Logger::log * * @param string $message Message to log. * @param array $context Log context. */ public function notice( $message, $context = array() ) { $this->log( Cartflows_Log_Levels::NOTICE, $message, $context ); } /** * Adds a info level message. * * Interesting events. * Example: User logs in, SQL logs. * * @see Cartflows_WC_Logger::log * * @param string $message Message to log. * @param array $context Log context. */ public function info( $message, $context = array() ) { $this->log( Cartflows_Log_Levels::INFO, $message, $context ); } /** * Adds a debug level message. * * Detailed debug information. * * @see Cartflows_WC_Logger::log * * @param string $message Message to log. * @param array $context Log context. */ public function debug( $message, $context = array() ) { $this->log( Cartflows_Log_Levels::DEBUG, $message, $context ); } /** * Clear entries for a chosen file/source. * * @param string $source Source/handle to clear. * @return bool */ public function clear( $source = '' ) { if ( ! $source ) { return false; } foreach ( $this->handlers as $handler ) { if ( is_callable( array( $handler, 'clear' ) ) ) { $handler->clear( $source ); } } return true; } /** * Clear all logs older than a defined number of days. Defaults to 30 days. * * @since 3.4.0 */ public function clear_expired_logs() { $days = absint( apply_filters( 'cartflows_logger_days_to_retain_logs', 30 ) ); $timestamp = strtotime( "-{$days} days" ); foreach ( $this->handlers as $handler ) { if ( is_callable( array( $handler, 'delete_logs_before_timestamp' ) ) ) { $handler->delete_logs_before_timestamp( $timestamp ); } } } } PK\(]--3classes/logger/class-cartflows-log-handler-file.phpnuW+Alog_size_limit = apply_filters( 'cartflows_log_file_size_limit', $log_size_limit ); add_action( 'plugins_loaded', array( $this, 'write_cached_logs' ) ); } /** * Destructor. * * Cleans up open file handles. */ public function __destruct() { foreach ( $this->handles as $handle ) { if ( is_resource( $handle ) ) { fclose( $handle ); // @codingStandardsIgnoreLine. } } } /** * Handle a log entry. * * @param int $timestamp Log timestamp. * @param string $level emergency|alert|critical|error|warning|notice|info|debug. * @param string $message Log message. * @param array $context { * Additional information for log handlers. * * @type string $source Optional. Determines log file to write to. Default 'log'. * @type bool $_legacy Optional. Default false. True to use outdated log format * originally used in deprecated Cartflows_WC_Logger::add calls. * } * * @return bool False if value was not handled and true if value was handled. */ public function handle( $timestamp, $level, $message, $context ) { if ( isset( $context['source'] ) && $context['source'] ) { $handle = $context['source']; } else { $handle = 'log'; } $entry = self::format_entry( $timestamp, $level, $message, $context ); return $this->add( $entry, $handle ); } /** * Builds a log entry text from timestamp, level and message. * * @param int $timestamp Log timestamp. * @param string $level emergency|alert|critical|error|warning|notice|info|debug. * @param string $message Log message. * @param array $context Additional information for log handlers. * * @return string Formatted log entry. */ protected static function format_entry( $timestamp, $level, $message, $context ) { if ( isset( $context['_legacy'] ) && true === $context['_legacy'] ) { if ( isset( $context['source'] ) && $context['source'] ) { $handle = $context['source']; } else { $handle = 'log'; } $message = apply_filters( 'cartflows_logger_add_message', $message, $handle ); $time = date_i18n( 'm-d-Y @ H:i:s' ); $entry = "{$time} - {$message}"; } else { $entry = parent::format_entry( $timestamp, $level, $message, $context ); } return $entry; } /** * Open log file for writing. * * @param string $handle Log handle. * @param string $mode Optional. File mode. Default 'a'. * @return bool Success. */ protected function open( $handle, $mode = 'a' ) { if ( $this->is_open( $handle ) ) { return true; } $file = self::get_log_file_path( $handle ); if ( $file ) { if ( ! file_exists( $file ) ) { $temphandle = @fopen( $file, 'w+' ); // @codingStandardsIgnoreLine. @fclose( $temphandle ); // @codingStandardsIgnoreLine. if ( defined( 'FS_CHMOD_FILE' ) ) { @chmod( $file, FS_CHMOD_FILE ); // @codingStandardsIgnoreLine. } } $resource = @fopen( $file, $mode ); // @codingStandardsIgnoreLine. if ( $resource ) { $this->handles[ $handle ] = $resource; return true; } } return false; } /** * Check if a handle is open. * * @param string $handle Log handle. * @return bool True if $handle is open. */ protected function is_open( $handle ) { return array_key_exists( $handle, $this->handles ) && is_resource( $this->handles[ $handle ] ); } /** * Close a handle. * * @param string $handle Log handle. * @return bool success */ protected function close( $handle ) { $result = false; if ( $this->is_open( $handle ) ) { $result = fclose( $this->handles[ $handle ] ); // @codingStandardsIgnoreLine. unset( $this->handles[ $handle ] ); } return $result; } /** * Add a log entry to chosen file. * * @param string $entry Log entry text. * @param string $handle Log entry handle. * * @return bool True if write was successful. */ protected function add( $entry, $handle ) { $result = false; if ( $this->should_rotate( $handle ) ) { $this->log_rotate( $handle ); } if ( $this->open( $handle ) && is_resource( $this->handles[ $handle ] ) ) { $result = fwrite( $this->handles[ $handle ], $entry . PHP_EOL ); // @codingStandardsIgnoreLine. } else { $this->cache_log( $entry, $handle ); } return false !== $result; } /** * Clear entries from chosen file. * * @param string $handle Log handle. * * @return bool */ public function clear( $handle ) { $result = false; // Close the file if it's already open. $this->close( $handle ); /** * $this->open( $handle, 'w' ) == Open the file for writing only. Place the file pointer at * the beginning of the file, and truncate the file to zero length. */ if ( $this->open( $handle, 'w' ) && is_resource( $this->handles[ $handle ] ) ) { $result = true; } do_action( 'cartflows_log_clear', $handle ); return $result; } /** * Remove/delete the chosen file. * * @param string $handle Log handle. * * @return bool */ public function remove( $handle ) { $removed = false; $logs = $this->get_log_files(); $handle = sanitize_title( $handle ); if ( isset( $logs[ $handle ] ) && $logs[ $handle ] ) { $file = realpath( trailingslashit( CARTFLOWS_LOG_DIR ) . $logs[ $handle ] ); if ( 0 === stripos( $file, realpath( trailingslashit( CARTFLOWS_LOG_DIR ) ) ) && is_file( $file ) && is_writable( $file ) ) { // phpcs:ignore WordPress.VIP.FileSystemWritesDisallow.file_ops_is_writable $this->close( $file ); // Close first to be certain no processes keep it alive after it is unlinked. $removed = unlink( $file ); // phpcs:ignore WordPress.VIP.FileSystemWritesDisallow.file_ops_unlink } do_action( 'cartflows_log_remove', $handle, $removed ); } return $removed; } /** * Check if log file should be rotated. * * Compares the size of the log file to determine whether it is over the size limit. * * @param string $handle Log handle. * @return bool True if if should be rotated. */ protected function should_rotate( $handle ) { $file = self::get_log_file_path( $handle ); if ( $file ) { if ( $this->is_open( $handle ) ) { $file_stat = fstat( $this->handles[ $handle ] ); return $file_stat['size'] > $this->log_size_limit; } elseif ( file_exists( $file ) ) { return filesize( $file ) > $this->log_size_limit; } else { return false; } } else { return false; } } /** * Rotate log files. * * Logs are rotated by prepending '.x' to the '.log' suffix. * The current log plus 10 historical logs are maintained. * For example: * base.9.log -> [ REMOVED ] * base.8.log -> base.9.log * ... * base.0.log -> base.1.log * base.log -> base.0.log * * @param string $handle Log handle. */ protected function log_rotate( $handle ) { for ( $i = 8; $i >= 0; $i-- ) { $this->increment_log_infix( $handle, $i ); } $this->increment_log_infix( $handle ); } /** * Increment a log file suffix. * * @param string $handle Log handle. * @param null|int $number Optional. Default null. Log suffix number to be incremented. * @return bool True if increment was successful, otherwise false. */ protected function increment_log_infix( $handle, $number = null ) { if ( null === $number ) { $suffix = ''; $next_suffix = '.0'; } else { $suffix = '.' . $number; $next_suffix = '.' . ( $number + 1 ); } $rename_from = self::get_log_file_path( "{$handle}{$suffix}" ); $rename_to = self::get_log_file_path( "{$handle}{$next_suffix}" ); if ( $this->is_open( $rename_from ) ) { $this->close( $rename_from ); } if ( is_writable( $rename_from ) ) { // phpcs:ignore WordPress.VIP.FileSystemWritesDisallow.file_ops_is_writable return rename( $rename_from, $rename_to ); // phpcs:ignore WordPress.VIP.FileSystemWritesDisallow.file_ops_rename } else { return false; } } /** * Get a log file path. * * @param string $handle Log name. * @return bool|string The log file path or false if path cannot be determined. */ public static function get_log_file_path( $handle ) { if ( function_exists( 'wp_hash' ) ) { return trailingslashit( CARTFLOWS_LOG_DIR ) . self::get_log_file_name( $handle ); } else { wc_doing_it_wrong( __METHOD__, __( 'This method should not be called before plugins_loaded.', 'cartflows' ), '3.0' ); return false; } } /** * Get a log file name. * * File names consist of the handle, followed by the date, followed by a hash, .log. * * @since 3.3 * @param string $handle Log name. * @return bool|string The log file name or false if cannot be determined. */ public static function get_log_file_name( $handle ) { if ( function_exists( 'wp_hash' ) ) { $date_suffix = gmdate( 'Y-m-d', time() ); $hash_suffix = wp_hash( $handle ); return sanitize_file_name( implode( '-', array( $handle, $date_suffix, $hash_suffix ) ) . '.log' ); } else { wc_doing_it_wrong( __METHOD__, __( 'This method should not be called before plugins_loaded.', 'cartflows' ), '3.3' ); return false; } } /** * Cache log to write later. * * @param string $entry Log entry text. * @param string $handle Log entry handle. */ protected function cache_log( $entry, $handle ) { $this->cached_logs[] = array( 'entry' => $entry, 'handle' => $handle, ); } /** * Write cached logs. */ public function write_cached_logs() { foreach ( $this->cached_logs as $log ) { $this->add( $log['entry'], $log['handle'] ); } } /** * Delete all logs older than a defined timestamp. * * @since 3.4.0 * @param integer $timestamp Timestamp to delete logs before. */ public static function delete_logs_before_timestamp( $timestamp = 0 ) { if ( ! $timestamp ) { return; } $log_files = self::get_log_files(); foreach ( $log_files as $log_file ) { $last_modified = filemtime( trailingslashit( CARTFLOWS_LOG_DIR ) . $log_file ); if ( $last_modified < $timestamp ) { @unlink( trailingslashit( CARTFLOWS_LOG_DIR ) . $log_file ); // @codingStandardsIgnoreLine. } } } /** * Get all log files in the log directory. * * @since 3.4.0 * @return array */ public static function get_log_files() { $files = @scandir( CARTFLOWS_LOG_DIR ); // @codingStandardsIgnoreLine. $result = array(); if ( ! empty( $files ) ) { foreach ( $files as $key => $value ) { if ( ! in_array( $value, array( '.', '..' ), true ) ) { if ( ! is_dir( $value ) && strstr( $value, '.log' ) ) { $result[ sanitize_title( $value ) ] = $value; } } } } return $result; } } PK\n]< < "classes/class-cartflows-update.phpnuW+Alogger_files(); if ( version_compare( $saved_version, '1.1.22', '<' ) ) { update_option( 'wcf_setup_skipped', true ); } if ( version_compare( $saved_version, '1.2.0', '<' ) ) { $this->changed_wp_templates(); } // Update auto saved version number. update_option( 'cartflows-version', CARTFLOWS_VER ); do_action( 'cartflows_update_after' ); } /** * Loading logger files. * * @since 1.0.0 * @return void */ public function logger_files() { if ( ! defined( 'CARTFLOWS_LOG_DIR' ) ) { $upload_dir = wp_upload_dir( null, false ); define( 'CARTFLOWS_LOG_DIR', $upload_dir['basedir'] . '/cartflows-logs/' ); } wcf()->create_files(); } /** * Init * * @since 1.0.0 * @return void */ public function changed_wp_templates() { global $wpdb; $query_results = $wpdb->get_results( $wpdb->prepare( "SELECT {$wpdb->posts}.ID FROM {$wpdb->posts} LEFT JOIN {$wpdb->postmeta} ON ( {$wpdb->posts}.ID = {$wpdb->postmeta}.post_id ) where {$wpdb->posts}.post_type = %s AND {$wpdb->postmeta}.meta_key = %s AND {$wpdb->postmeta}.meta_value != %s AND {$wpdb->postmeta}.meta_value != %s", 'cartflows_step', '_wp_page_template', 'cartflows-canvas', 'cartflows-default' ) ); // db call ok; no-cache ok. if ( is_array( $query_results ) && ! empty( $query_results ) ) { require_once CARTFLOWS_DIR . 'classes/batch-process/class-cartflows-change-template-batch.php'; wcf()->logger->log( '(✓) Update Templates BATCH Started!' ); $change_template_batch = new Cartflows_Change_Template_Batch(); foreach ( $query_results as $query_result ) { wcf()->logger->log( '(✓) POST ID ' . $query_result->ID ); $change_template_batch->push_to_queue( $query_result->ID ); } $change_template_batch->save()->dispatch(); } } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Update::get_instance(); endif; PK\?00#classes/class-cartflows-cloning.phpnuW+AID; /** * If post data exists, create the post duplicate */ if ( isset( $post ) && null !== $post ) { /** * New post data array */ $args = array( 'comment_status' => $post->comment_status, 'ping_status' => $post->ping_status, 'post_author' => $new_post_author, 'post_content' => $post->post_content, 'post_excerpt' => $post->post_excerpt, 'post_name' => $post->post_name, 'post_parent' => $post->post_parent, 'post_password' => $post->post_password, 'post_status' => $post->post_status, 'post_title' => $post->post_title . ' Clone', 'post_type' => $post->post_type, 'to_ping' => $post->to_ping, 'menu_order' => $post->menu_order, ); /** * Insert the post */ $new_flow_id = wp_insert_post( $args ); /** * Get all current post terms ad set them to the new post */ // returns array of taxonomy names for post type, ex array("category", "post_tag");. $taxonomies = get_object_taxonomies( $post->post_type ); foreach ( $taxonomies as $taxonomy ) { $post_terms = wp_get_object_terms( $post_id, $taxonomy, array( 'fields' => 'slugs' ) ); wp_set_object_terms( $new_flow_id, $post_terms, $taxonomy, false ); } /** * Duplicate all post meta just in two SQL queries */ // @codingStandardsIgnoreStart $post_meta_infos = $wpdb->get_results( "SELECT meta_key, meta_value FROM $wpdb->postmeta WHERE post_id=$post_id" ); // @codingStandardsIgnoreEnd if ( ! empty( $post_meta_infos ) ) { $sql_query = "INSERT INTO $wpdb->postmeta (post_id, meta_key, meta_value) VALUES "; $sql_query_sel = array(); foreach ( $post_meta_infos as $meta_info ) { $meta_key = $meta_info->meta_key; if ( '_wp_old_slug' === $meta_key ) { continue; } $meta_value = addslashes( $meta_info->meta_value ); $sql_query_sel[] = "($new_flow_id, '$meta_key', '$meta_value')"; } $sql_query .= implode( ',', $sql_query_sel ); // @codingStandardsIgnoreStart $wpdb->query( $sql_query ); // @codingStandardsIgnoreEnd } /* Steps Cloning */ $flow_steps = get_post_meta( $post_id, 'wcf-steps', true ); $new_flow_steps = array(); /* Set Steps Empty */ update_post_meta( $new_flow_id, 'wcf-steps', $new_flow_steps ); if ( is_array( $flow_steps ) && ! empty( $flow_steps ) ) { foreach ( $flow_steps as $index => $step_data ) { $step_id = $step_data['id']; $step_type = get_post_meta( $step_id, 'wcf-step-type', true ); $step_object = get_post( $step_id ); /** * New step post data array */ $step_args = array( 'comment_status' => $step_object->comment_status, 'ping_status' => $step_object->ping_status, 'post_author' => $new_post_author, 'post_content' => $step_object->post_content, 'post_excerpt' => $step_object->post_excerpt, 'post_name' => $step_object->post_name, 'post_parent' => $step_object->post_parent, 'post_password' => $step_object->post_password, 'post_status' => $step_object->post_status, 'post_title' => $step_object->post_title, 'post_type' => $step_object->post_type, 'to_ping' => $step_object->to_ping, 'menu_order' => $step_object->menu_order, ); /** * Insert the post */ $new_step_id = wp_insert_post( $step_args ); /** * Duplicate all step meta */ // @codingStandardsIgnoreStart $post_meta_infos = $wpdb->get_results( "SELECT meta_key, meta_value FROM $wpdb->postmeta WHERE post_id=$step_id" ); // @codingStandardsIgnoreEnd if ( ! empty( $post_meta_infos ) ) { $sql_query = "INSERT INTO $wpdb->postmeta (post_id, meta_key, meta_value) VALUES "; $sql_query_sel = array(); foreach ( $post_meta_infos as $meta_info ) { $meta_key = $meta_info->meta_key; if ( '_wp_old_slug' === $meta_key ) { continue; } $meta_value = addslashes( $meta_info->meta_value ); $sql_query_sel[] = "($new_step_id, '$meta_key', '$meta_value')"; } $sql_query .= implode( ',', $sql_query_sel ); // @codingStandardsIgnoreStart $wpdb->query( $sql_query ); // @codingStandardsIgnoreEnd } // insert post meta. update_post_meta( $new_step_id, 'wcf-flow-id', $new_flow_id ); update_post_meta( $new_step_id, 'wcf-step-type', $step_type ); wp_set_object_terms( $new_step_id, $step_type, CARTFLOWS_TAXONOMY_STEP_TYPE ); wp_set_object_terms( $new_step_id, 'flow-' . $new_flow_id, CARTFLOWS_TAXONOMY_STEP_FLOW ); /* Add New Flow Steps */ $new_flow_steps[] = array( 'id' => $new_step_id, 'title' => $step_object->post_title, 'type' => $step_type, ); } } /* Update New Flow Step Post Meta */ update_post_meta( $new_flow_id, 'wcf-steps', $new_flow_steps ); /* Clear Page Builder Cache */ $this->clear_cache(); /** * Redirect to the new flow edit screen */ wp_safe_redirect( admin_url( 'post.php?action=edit&post=' . $new_flow_id ) ); exit; } else { wp_die( 'Post creation failed, could not find original post: ' . $post_id ); } } /** * Clone step with its meta. */ public function clone_step() { global $wpdb; if ( ! ( isset( $_GET['post'] ) || isset( $_POST['post'] ) || ( isset( $_REQUEST['action'] ) && 'cartflows_clone_step' === $_REQUEST['action'] ) ) ) { wp_die( 'No post to duplicate has been supplied!' ); } /* * Nonce verification */ if ( ! isset( $_GET['step_clone_nonce'] ) || ! wp_verify_nonce( sanitize_text_field( wp_unslash( $_GET['step_clone_nonce'] ) ), 'step_clone' ) ) { return; } /** * Get the original post id */ $post_id = ( isset( $_GET['post'] ) ? absint( $_GET['post'] ) : absint( $_POST['post'] ) ); /** * And all the original post data then */ $post = get_post( $post_id ); /** * Assign current user to be the new post author */ $current_user = wp_get_current_user(); $new_post_author = $current_user->ID; /** * If post data exists, create the post duplicate */ if ( isset( $post ) && null !== $post ) { /** * New post data array */ $args = array( 'comment_status' => $post->comment_status, 'ping_status' => $post->ping_status, 'post_author' => $new_post_author, 'post_content' => $post->post_content, 'post_excerpt' => $post->post_excerpt, 'post_name' => $post->post_name, 'post_parent' => $post->post_parent, 'post_password' => $post->post_password, 'post_status' => $post->post_status, 'post_title' => $post->post_title . ' Clone', 'post_type' => $post->post_type, 'to_ping' => $post->to_ping, 'menu_order' => $post->menu_order, ); /** * Insert the post */ $new_step_id = wp_insert_post( $args ); /** * Get all current post terms ad set them to the new post */ // returns array of taxonomy names for post type, ex array("category", "post_tag");. $taxonomies = get_object_taxonomies( $post->post_type ); foreach ( $taxonomies as $taxonomy ) { $post_terms = wp_get_object_terms( $post_id, $taxonomy, array( 'fields' => 'slugs' ) ); wp_set_object_terms( $new_step_id, $post_terms, $taxonomy, false ); } /** * Duplicate all post meta just in two SQL queries */ // @codingStandardsIgnoreStart $post_meta_infos = $wpdb->get_results( "SELECT meta_key, meta_value FROM $wpdb->postmeta WHERE post_id=$post_id" ); // @codingStandardsIgnoreEnd if ( ! empty( $post_meta_infos ) ) { $sql_query = "INSERT INTO $wpdb->postmeta (post_id, meta_key, meta_value) VALUES "; $sql_query_sel = array(); foreach ( $post_meta_infos as $meta_info ) { $meta_key = $meta_info->meta_key; if ( '_wp_old_slug' === $meta_key ) { continue; } $meta_value = addslashes( $meta_info->meta_value ); $sql_query_sel[] = "($new_step_id, '$meta_key', '$meta_value')"; } $sql_query .= implode( ',', $sql_query_sel ); // @codingStandardsIgnoreStart $wpdb->query( $sql_query ); // @codingStandardsIgnoreEnd } $flow_id = get_post_meta( $post_id, 'wcf-flow-id', true ); $flow_steps = get_post_meta( $flow_id, 'wcf-steps', true ); $step_type = get_post_meta( $post_id, 'wcf-step-type', true ); if ( ! is_array( $flow_steps ) ) { $flow_steps = array(); } $flow_steps[] = array( 'id' => $new_step_id, 'title' => $post->post_title, 'type' => $step_type, ); update_post_meta( $flow_id, 'wcf-steps', $flow_steps ); /* Clear Page Builder Cache */ $this->clear_cache(); /** * Redirect to the new flow edit screen */ $redirect_url = add_query_arg( 'highlight-step-id', $new_step_id, get_edit_post_link( $flow_id, 'default' ) ); wp_safe_redirect( $redirect_url ); exit; } else { wp_die( 'Post creation failed, could not find original post: ' . $post_id ); } } /** * Add the clone link to action list for flows row actions * * @param array $actions Actions array. * @param object $post Post object. * * @return array */ public function clone_link( $actions, $post ) { if ( current_user_can( 'edit_posts' ) && isset( $post ) && CARTFLOWS_FLOW_POST_TYPE === $post->post_type ) { if ( isset( $actions['duplicate'] ) ) { // Duplicate page plugin remove. unset( $actions['duplicate'] ); } if ( isset( $actions['edit_as_new_draft'] ) ) { // Duplicate post plugin remove. unset( $actions['edit_as_new_draft'] ); } $actions['clone'] = '' . __( 'Clone', 'cartflows' ) . ''; if ( ! _is_cartflows_pro() ) { $flow_posts = get_posts( array( 'posts_per_page' => 4, 'post_type' => CARTFLOWS_FLOW_POST_TYPE, 'post_status' => array( 'publish', 'pending', 'draft', 'future', 'private', 'inherit', 'trash' ), ) ); if ( is_array( $flow_posts ) ) { $flow_count = count( $flow_posts ); if ( $flow_count > 3 || 3 === $flow_count ) { unset( $actions['clone'] ); } } } } return $actions; } /** * Clear Page Builder Cache */ public function clear_cache() { // Clear 'Elementor' file cache. if ( class_exists( '\Elementor\Plugin' ) ) { Elementor\Plugin::$instance->files_manager->clear_cache(); } } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Cloning::get_instance(); PK\ƈmmclasses/index.phpnuW+AID ) ) { return $post->ID; } return 0; } /** * Returns step id. * * @since 1.0.0 */ function _get_wcf_step_id() { if ( wcf()->utils->is_step_post_type() ) { global $post; return $post->ID; } return false; } /** * Check if it is a landing page? * * @since 1.0.0 */ function _is_wcf_landing_type() { if ( wcf()->utils->is_step_post_type() ) { global $post; if ( 'landing' === get_post_meta( $post->ID, 'wcf-step-type', true ) ) { return true; } } return false; } /** * Returns landing id. * * @since 1.0.0 */ function _get_wcf_landing_id() { if ( _is_wcf_landing_type() ) { global $post; return $post->ID; } return false; } /** * Is custom checkout? * * @param int $checkout_id checkout ID. * @since 1.0.0 */ function _is_wcf_meta_custom_checkout( $checkout_id ) { $is_custom = wcf()->options->get_checkout_meta_value( $checkout_id, 'wcf-custom-checkout-fields' ); if ( 'yes' === $is_custom ) { return true; } return false; } /** * Check if page is cartflow checkout. * * @since 1.0.0 * @return bool */ function _is_wcf_checkout_type() { if ( wcf()->utils->is_step_post_type() ) { global $post; if ( 'checkout' === get_post_meta( $post->ID, 'wcf-step-type', true ) ) { return true; } } return false; } /** * Check if AJAX call is in progress. * * @since 1.0.0 * @return bool */ function _is_wcf_doing_checkout_ajax() { if ( wp_doing_ajax() || isset( $_GET['wc-ajax'] ) ) { //phpcs:ignore if ( isset( $_GET['wc-ajax'] ) && //phpcs:ignore 'checkout' === $_GET['wc-ajax'] && //phpcs:ignore isset( $_POST['_wcf_checkout_id'] ) //phpcs:ignore ) { return true; } } return false; } /** * Check if optin AJAX call is in progress. * * @since 1.0.0 * @return bool */ function _is_wcf_doing_optin_ajax() { if ( wp_doing_ajax() || isset( $_GET['wc-ajax'] ) ) { //phpcs:ignore if ( isset( $_GET['wc-ajax'] ) && //phpcs:ignore 'checkout' === $_GET['wc-ajax'] && //phpcs:ignore isset( $_POST['_wcf_optin_id'] ) //phpcs:ignore ) { return true; } } return false; } /** * Returns checkout ID. * * @since 1.0.0 * @return int/bool */ function _get_wcf_checkout_id() { if ( _is_wcf_checkout_type() ) { global $post; return $post->ID; } return false; } /** * Check if it is checkout shortcode. * * @since 1.0.0 * @return bool */ function _is_wcf_checkout_shortcode() { global $post; if ( ! empty( $post ) && has_shortcode( $post->post_content, 'cartflows_checkout' ) ) { return true; } return false; } /** * Check if it is checkout shortcode. * * @since 1.0.0 * @param string $content shortcode content. * @return bool */ function _get_wcf_checkout_id_from_shortcode( $content = '' ) { $checkout_id = 0; if ( ! empty( $content ) ) { $regex_pattern = get_shortcode_regex( array( 'cartflows_checkout' ) ); preg_match( '/' . $regex_pattern . '/s', $content, $regex_matches ); if ( ! empty( $regex_matches ) ) { if ( 'cartflows_checkout' == $regex_matches[2] ) { $attribure_str = str_replace( ' ', '&', trim( $regex_matches[3] ) ); $attribure_str = str_replace( '"', '', $attribure_str ); $attributes = wp_parse_args( $attribure_str ); if ( isset( $attributes['id'] ) ) { $checkout_id = $attributes['id']; } } } } return $checkout_id; } /** * Check if post type is upsell. * * @since 1.0.0 * @return bool */ function _is_wcf_upsell_type() { if ( wcf()->utils->is_step_post_type() ) { global $post; if ( 'upsell' === get_post_meta( $post->ID, 'wcf-step-type', true ) ) { return true; } } return false; } /** * Returns upsell ID. * * @since 1.0.0 * @return int/bool */ function _get_wcf_upsell_id() { if ( _is_wcf_upsell_type() ) { global $post; return $post->ID; } return false; } /** * Check if post is of type downsell. * * @since 1.0.0 * @return int/bool */ function _is_wcf_downsell_type() { if ( wcf()->utils->is_step_post_type() ) { global $post; if ( 'downsell' === get_post_meta( $post->ID, 'wcf-step-type', true ) ) { return true; } } return false; } /** * Get downsell page ID. * * @since 1.0.0 * @return int/bool */ function _get_wcf_downsell_id() { if ( _is_wcf_downsell_type() ) { global $post; return $post->ID; } return false; } /** * Check if page is of thank you type. * * @since 1.0.0 * @return int/bool */ function _is_wcf_thankyou_type() { if ( wcf()->utils->is_step_post_type() ) { global $post; if ( 'thankyou' === get_post_meta( $post->ID, 'wcf-step-type', true ) ) { return true; } } return false; } /** * Get thank you page ID. * * @since 1.0.0 * @return int/bool */ function _get_wcf_thankyou_id() { if ( _is_wcf_thankyou_type() ) { global $post; return $post->ID; } return false; } /** * Check if post type is upsell. * * @since 1.0.0 * @return bool */ function _is_wcf_base_offer_type() { if ( wcf()->utils->is_step_post_type() ) { global $post; $step_type = get_post_meta( $post->ID, 'wcf-step-type', true ); if ( 'upsell' === $step_type || 'downsell' === $step_type ) { return true; } } return false; } /** * Returns upsell ID. * * @since 1.0.0 * @return int/bool */ function _get_wcf_base_offer_id() { if ( _is_wcf_base_offer_type() ) { global $post; return $post->ID; } return false; } /** * Check if page is of optin type. * * @since 1.0.0 * @return int/bool */ function _is_wcf_optin_type() { if ( wcf()->utils->is_step_post_type() ) { global $post; if ( 'optin' === get_post_meta( $post->ID, 'wcf-step-type', true ) ) { return true; } } return false; } /** * Get optin page ID. * * @since 1.0.0 * @return int/bool */ function _get_wcf_optin_id() { if ( _is_wcf_optin_type() ) { global $post; return $post->ID; } return false; } /** * Define a constant if it is not already defined. * * @since 3.0.0 * @param string $name Constant name. * @param mixed $value Value. */ function wcf_maybe_define_constant( $name, $value ) { if ( ! defined( $name ) ) { define( $name, $value ); } } if ( ! function_exists( 'wp_body_open' ) ) { /** * Fire the wp_body_open action. * * Added for backwards compatibility to support WordPress versions prior to 5.2.0. */ function wp_body_open() { /** * Triggered after the opening tag. */ do_action( 'wp_body_open' ); } } /** * Check if type is optin by id. * * @param int $post_id post id. * * @return int/bool * @since 1.0.0 */ function _wcf_check_is_optin_by_id( $post_id ) { if ( 'optin' === get_post_meta( $post_id, 'wcf-step-type', true ) ) { return true; } return false; } PK\ V  7classes/batch-process/class-cartflows-importer-divi.phpnuW+A tag and attributes. $allowedposttags['style'] = array(); } return $allowedposttags; } /** * Update post meta. * * @param integer $post_id Post ID. * @return void */ public function import_single_post( $post_id = 0 ) { // Allow the SVG tags in batch update process. add_filter( 'wp_kses_allowed_html', array( $this, 'allowed_tags_and_attributes' ), 10, 2 ); // Download and replace images. $content = get_post_meta( $post_id, 'divi_content', true ); if ( empty( $content ) ) { wcf()->logger->import_log( '(✕) Not have "Divi" Data. Post content is empty!' ); } else { wcf()->logger->import_log( '(✓) Processing Request..' ); // Update hotlink images. $content = CartFlows_Importer::get_instance()->get_content( $content ); // Update post content. wp_update_post( array( 'ID' => $post_id, 'post_content' => $content, ) ); // Delete temporary meta key. delete_post_meta( $post_id, 'divi_content' ); wcf()->logger->import_log( '(✓) Process Complete' ); } } } /** * Initialize class object with 'get_instance()' method */ CartFlows_Importer_Divi::get_instance(); endif; PK\X<classes/batch-process/class-cartflows-importer-elementor.phpnuW+Alogger->import_log( '(✕) ' . $data ); } $rest_content = add_magic_quotes( $rest_content ); $content = json_decode( $rest_content, true ); if ( ! is_array( $content ) ) { $data = __( 'Invalid content. Expected an array.', 'cartflows' ); wcf()->logger->import_log( '(✕) ' . $data ); wcf()->logger->import_log( $content ); } else { wcf()->logger->import_log( '(✓) Processing Request..' ); // Import the data. $content = $this->process_export_import_content( $content, 'on_import' ); // Update content. update_metadata( 'post', $post_id, '_elementor_data', $content ); wcf()->logger->import_log( '(✓) Process Complete' ); } } } PK\љ=classes/batch-process/class-cartflows-importer-divi-batch.phpnuW+Aimport_single_post( $post_id ); return false; } /** * Complete * * Override if applicable, but ensure that the below actions are * performed, or, call parent::complete(). * * @since 1.1.1 */ protected function complete() { parent::complete(); do_action( 'cartflows_import_complete' ); } } endif; PK\+g,,=classes/batch-process/helpers/class-wp-background-process.phpnuW+Acron_hook_identifier = $this->identifier . '_cron'; $this->cron_interval_identifier = $this->identifier . '_cron_interval'; add_action( $this->cron_hook_identifier, array( $this, 'handle_cron_healthcheck' ) ); add_filter( 'cron_schedules', array( $this, 'schedule_cron_healthcheck' ) ); } /** * Dispatch * * @return mixed dispatch event. */ public function dispatch() { // Schedule the cron healthcheck. $this->schedule_event(); // Perform remote post. return parent::dispatch(); } /** * Push to queue * * @param mixed $data Data. * * @return $this */ public function push_to_queue( $data ) { $this->data[] = $data; return $this; } /** * Save queue * * @return $this */ public function save() { $key = $this->generate_key(); if ( ! empty( $this->data ) ) { update_site_option( $key, $this->data ); } return $this; } /** * Update queue * * @param string $key Key. * @param array $data Data. * * @return $this */ public function update( $key, $data ) { if ( ! empty( $data ) ) { update_site_option( $key, $data ); } return $this; } /** * Delete queue * * @param string $key Key. * * @return $this */ public function delete( $key ) { delete_site_option( $key ); return $this; } /** * Generate key * * Generates a unique key based on microtime. Queue items are * given a unique key so that they can be merged upon save. * * @param int $length Length. * * @return string */ protected function generate_key( $length = 64 ) { $unique = md5( microtime() . rand() ); $prepend = $this->identifier . '_batch_'; return substr( $prepend . $unique, 0, $length ); } /** * Maybe process queue * * Checks whether data exists within the queue and that * the process is not already running. */ public function maybe_handle() { // Don't lock up other requests while processing. session_write_close(); if ( $this->is_process_running() ) { // Background process already running. wp_die(); } if ( $this->is_queue_empty() ) { // No data to process. wp_die(); } check_ajax_referer( $this->identifier, 'nonce' ); $this->handle(); wp_die(); } /** * Is queue empty * * @return bool */ protected function is_queue_empty() { global $wpdb; $table = $wpdb->options; $column = 'option_name'; if ( is_multisite() ) { $table = $wpdb->sitemeta; $column = 'meta_key'; } $key = $this->identifier . '_batch_%'; $count = $wpdb->get_var( $wpdb->prepare( " SELECT COUNT(*) FROM {$table} WHERE {$column} LIKE %s ", $key ) ); return ( $count > 0 ) ? false : true; } /** * Is process running * * Check whether the current process is already running * in a background process. */ protected function is_process_running() { if ( get_site_transient( $this->identifier . '_process_lock' ) ) { // Process already running. return true; } return false; } /** * Lock process * * Lock the process so that multiple instances can't run simultaneously. * Override if applicable, but the duration should be greater than that * defined in the time_exceeded() method. */ protected function lock_process() { $this->start_time = time(); // Set start time of current process. $lock_duration = ( property_exists( $this, 'queue_lock_time' ) ) ? $this->queue_lock_time : 60; // 1 minute $lock_duration = apply_filters( $this->identifier . '_queue_lock_time', $lock_duration ); set_site_transient( $this->identifier . '_process_lock', microtime(), $lock_duration ); } /** * Unlock process * * Unlock the process so that other instances can spawn. * * @return $this */ protected function unlock_process() { delete_site_transient( $this->identifier . '_process_lock' ); return $this; } /** * Get batch * * @return stdClass Return the first batch from the queue */ protected function get_batch() { global $wpdb; $table = $wpdb->options; $column = 'option_name'; $key_column = 'option_id'; $value_column = 'option_value'; if ( is_multisite() ) { $table = $wpdb->sitemeta; $column = 'meta_key'; $key_column = 'meta_id'; $value_column = 'meta_value'; } $key = $this->identifier . '_batch_%'; $query = $wpdb->get_row( $wpdb->prepare( " SELECT * FROM {$table} WHERE {$column} LIKE %s ORDER BY {$key_column} ASC LIMIT 1 ", $key ) ); $batch = new stdClass(); $batch->key = $query->$column; $batch->data = maybe_unserialize( $query->$value_column ); return $batch; } /** * Handle * * Pass each queue item to the task handler, while remaining * within server memory and time limit constraints. */ protected function handle() { $this->lock_process(); do { $batch = $this->get_batch(); foreach ( $batch->data as $key => $value ) { $task = $this->task( $value ); if ( false !== $task ) { $batch->data[ $key ] = $task; } else { unset( $batch->data[ $key ] ); } if ( $this->time_exceeded() || $this->memory_exceeded() ) { // Batch limits reached. break; } } // Update or delete current batch. if ( ! empty( $batch->data ) ) { $this->update( $batch->key, $batch->data ); } else { $this->delete( $batch->key ); } } while ( ! $this->time_exceeded() && ! $this->memory_exceeded() && ! $this->is_queue_empty() ); $this->unlock_process(); // Start next batch or complete process. if ( ! $this->is_queue_empty() ) { $this->dispatch(); } else { $this->complete(); } wp_die(); } /** * Memory exceeded * * Ensures the batch process never exceeds 90% * of the maximum WordPress memory. * * @return bool */ protected function memory_exceeded() { $memory_limit = $this->get_memory_limit() * 0.9; // 90% of max memory $current_memory = memory_get_usage( true ); $return = false; if ( $current_memory >= $memory_limit ) { $return = true; } return apply_filters( $this->identifier . '_memory_exceeded', $return ); } /** * Get memory limit * * @return int */ protected function get_memory_limit() { if ( function_exists( 'ini_get' ) ) { $memory_limit = ini_get( 'memory_limit' ); } else { // Sensible default. $memory_limit = '128M'; } if ( ! $memory_limit || -1 === $memory_limit ) { // Unlimited, set to 32GB. $memory_limit = '32000M'; } return intval( $memory_limit ) * 1024 * 1024; } /** * Time exceeded. * * Ensures the batch never exceeds a sensible time limit. * A timeout limit of 30s is common on shared hosting. * * @return bool */ protected function time_exceeded() { $finish = $this->start_time + apply_filters( $this->identifier . '_default_time_limit', 20 ); // 20 seconds $return = false; if ( time() >= $finish ) { $return = true; } return apply_filters( $this->identifier . '_time_exceeded', $return ); } /** * Complete. * * Override if applicable, but ensure that the below actions are * performed, or, call parent::complete(). */ protected function complete() { // Unschedule the cron healthcheck. $this->clear_scheduled_event(); } /** * Schedule cron healthcheck * * @access public * @param mixed $schedules Schedules. * @return mixed */ public function schedule_cron_healthcheck( $schedules ) { $interval = apply_filters( $this->identifier . '_cron_interval', 5 ); if ( property_exists( $this, 'cron_interval' ) ) { $interval = apply_filters( $this->identifier . '_cron_interval', $this->cron_interval_identifier ); } // Adds every 5 minutes to the existing schedules. $schedules[ $this->identifier . '_cron_interval' ] = array( 'interval' => MINUTE_IN_SECONDS * $interval, 'display' => sprintf( __( 'Every %d Minutes', 'cartflows' ), $interval ), ); return $schedules; } /** * Handle cron healthcheck * * Restart the background process if not already running * and data exists in the queue. */ public function handle_cron_healthcheck() { if ( $this->is_process_running() ) { // Background process already running. exit; } if ( $this->is_queue_empty() ) { // No data to process. $this->clear_scheduled_event(); exit; } $this->handle(); exit; } /** * Schedule event */ protected function schedule_event() { if ( ! wp_next_scheduled( $this->cron_hook_identifier ) ) { wp_schedule_event( time(), $this->cron_interval_identifier, $this->cron_hook_identifier ); } } /** * Clear scheduled event */ protected function clear_scheduled_event() { $timestamp = wp_next_scheduled( $this->cron_hook_identifier ); if ( $timestamp ) { wp_unschedule_event( $timestamp, $this->cron_hook_identifier ); } } /** * Cancel Process * * Stop processing queue items, clear cronjob and delete batch. */ public function cancel_process() { if ( ! $this->is_queue_empty() ) { $batch = $this->get_batch(); $this->delete( $batch->key ); wp_clear_scheduled_hook( $this->cron_hook_identifier ); } } /** * Task * * Override this method to perform any actions required on each * queue item. Return the modified item for further processing * in the next pass through. Or, return false to remove the * item from the queue. * * @param mixed $item Queue item to iterate over. * * @return mixed */ abstract protected function task( $item ); } } PK\A= &/ / 8classes/batch-process/helpers/class-wp-async-request.phpnuW+Aidentifier = $this->prefix . '_' . $this->action; add_action( 'wp_ajax_' . $this->identifier, array( $this, 'maybe_handle' ) ); add_action( 'wp_ajax_nopriv_' . $this->identifier, array( $this, 'maybe_handle' ) ); } /** * Set data used during the request * * @param array $data Data. * * @return $this */ public function data( $data ) { $this->data = $data; return $this; } /** * Dispatch the async request * * @return array|WP_Error */ public function dispatch() { $url = add_query_arg( $this->get_query_args(), $this->get_query_url() ); $args = $this->get_post_args(); return wp_remote_post( esc_url_raw( $url ), $args ); } /** * Get query args * * @return array */ protected function get_query_args() { if ( property_exists( $this, 'query_args' ) ) { return $this->query_args; } return array( 'action' => $this->identifier, 'nonce' => wp_create_nonce( $this->identifier ), ); } /** * Get query URL * * @return string */ protected function get_query_url() { if ( property_exists( $this, 'query_url' ) ) { return $this->query_url; } return admin_url( 'admin-ajax.php' ); } /** * Get post args * * @return array */ protected function get_post_args() { if ( property_exists( $this, 'post_args' ) ) { return $this->post_args; } return array( 'timeout' => 0.01, 'blocking' => false, 'body' => $this->data, 'cookies' => $_COOKIE, 'sslverify' => apply_filters( 'https_local_ssl_verify', false ), ); } /** * Maybe handle * * Check for correct nonce and pass to handler. */ public function maybe_handle() { // Don't lock up other requests while processing. session_write_close(); check_ajax_referer( $this->identifier, 'nonce' ); $this->handle(); wp_die(); } /** * Handle * * Override this method to perform any actions required * during the async request. */ abstract protected function handle(); } } PK\}r@classes/batch-process/helpers/class-cartflows-importer-image.phpnuW+A How to use? * * $image = array( * 'url' => '', * 'id' => '', * ); * * $downloaded_image = CartFlows_Import_Image::get_instance()->import( $image ); * * @package CartFlows * * @since 1.1.1 */ if ( ! class_exists( 'CartFlows_Import_Image' ) ) : /** * CartFlows Importer * * @since 1.1.1 */ class CartFlows_Import_Image { /** * Instance * * @since 1.1.1 * @var object Class object. * @access private */ private static $instance; /** * Images IDs * * @var array The Array of already image IDs. * @since 1.1.1 */ private $already_imported_ids = array(); /** * Initiator * * @since 1.1.1 * @return object initialized object of class. */ public static function get_instance() { if ( ! isset( self::$instance ) ) { self::$instance = new self; } return self::$instance; } /** * Constructor * * @since 1.1.1 */ public function __construct() { if ( ! function_exists( 'WP_Filesystem' ) ) { require_once ABSPATH . 'wp-admin/includes/file.php'; } WP_Filesystem(); } /** * Process Image Download * * @since 1.1.1 * @param array $attachments Attachment array. * @return array Attachment array. */ public function process( $attachments ) { $downloaded_images = array(); foreach ( $attachments as $key => $attachment ) { $downloaded_images[] = $this->import( $attachment ); } return $downloaded_images; } /** * Get Hash Image. * * @since 1.1.1 * @param string $attachment_url Attachment URL. * @return string Hash string. */ private function get_hash_image( $attachment_url ) { return sha1( $attachment_url ); } /** * Get Saved Image. * * @since 1.1.1 * @param string $attachment Attachment Data. * @return string Hash string. */ private function get_saved_image( $attachment ) { wcf()->logger->import_log( 'importer-image.php File' ); if ( apply_filters( 'cartflows_image_importer_skip_image', false, $attachment ) ) { wcf()->logger->import_log( 'Download (✕) Replace (✕) - ' . $attachment['url'] ); return $attachment; } global $wpdb; // Already imported? Then return! if ( isset( $this->already_imported_ids[ $attachment['id'] ] ) ) { wcf()->logger->import_log( 'Download (✓) Replace (✓) - ' . $attachment['url'] ); return $this->already_imported_ids[ $attachment['id'] ]; } // 1. Is already imported in Batch Import Process? $post_id = $wpdb->get_var( $wpdb->prepare( " SELECT post_id FROM {$wpdb->postmeta} WHERE meta_key = '_cartflows_image_hash' AND meta_value = %s ", $this->get_hash_image( $attachment['url'] ) ) ); // 2. Is image already imported though XML? if ( empty( $post_id ) ) { // Get file name without extension. // To check it exist in attachment. $filename = basename( $attachment['url'] ); wcf()->logger->import_log( 'File Basename - ' . $filename ); $post_id = $wpdb->get_var( $wpdb->prepare( " SELECT post_id FROM {$wpdb->postmeta} WHERE meta_key = '_wp_attached_file' AND meta_value LIKE %s ", '%/' . $filename . '%' ) ); wcf()->logger->import_log( 'Download (✓) Replace (✓) - ' . $attachment['url'] ); } if ( $post_id ) { $new_attachment = array( 'id' => $post_id, 'url' => wp_get_attachment_url( $post_id ), ); $this->already_imported_ids[ $attachment['id'] ] = $new_attachment; return $new_attachment; } return false; } /** * Import Image * * @since 1.1.1 * @param array $attachment Attachment array. * @return array Attachment array. */ public function import( $attachment ) { $saved_image = $this->get_saved_image( $attachment ); if ( $saved_image ) { return $saved_image; } $file_content = wp_remote_retrieve_body( wp_safe_remote_get( $attachment['url'], array( 'timeout' => '60', 'sslverify' => false) ) ); // Empty file content? if ( empty( $file_content ) ) { wcf()->logger->import_log( 'Download (✕) Replace (✕) - ' . $attachment['url'] ); wcf()->logger->import_log( 'Error: Failed wp_remote_retrieve_body().' ); return $attachment; } // Extract the file name and extension from the URL. $filename = basename( $attachment['url'] ); $upload = wp_upload_bits( $filename, null, $file_content ); $post = array( 'post_title' => $filename, 'guid' => $upload['url'], ); $info = wp_check_filetype( $upload['file'] ); if ( $info ) { $post['post_mime_type'] = $info['type']; } else { // For now just return the origin attachment. return $attachment; } $post_id = wp_insert_attachment( $post, $upload['file'] ); wp_update_attachment_metadata( $post_id, wp_generate_attachment_metadata( $post_id, $upload['file'] ) ); update_post_meta( $post_id, '_cartflows_image_hash', $this->get_hash_image( $attachment['url'] ) ); $new_attachment = array( 'id' => $post_id, 'url' => $upload['url'], ); wcf()->logger->import_log( 'Download (✓) Replace (✓) - ' . $attachment['url'] ); $this->already_imported_ids[ $attachment['id'] ] = $new_attachment; return $new_attachment; } } /** * Initialize class object with 'get_instance()' method */ CartFlows_Import_Image::get_instance(); endif;PK\:#7classes/batch-process/class-cartflows-batch-process.phpnuW+Ais_divi_enabled() ) ) { require_once CARTFLOWS_DIR . 'classes/batch-process/class-cartflows-importer-divi.php'; require_once CARTFLOWS_DIR . 'classes/batch-process/class-cartflows-importer-divi-batch.php'; self::$batch_instance_divi = new Cartflows_Importer_Divi_Batch(); } // Start image importing after site import complete. add_action( 'cartflows_after_template_import', array( $this, 'start_batch_process' ) ); add_action( 'cartflows_import_complete', array( $this, 'complete_batch_import' ) ); add_filter( 'upload_mimes', array( $this, 'custom_upload_mimes' ) ); add_filter( 'wp_prepare_attachment_for_js', array( $this, 'add_svg_image_support' ), 10, 3 ); } /** * Added .svg files as supported format in the uploader. * * @since 1.1.4 * * @param array $mimes Already supported mime types. */ public function custom_upload_mimes( $mimes ) { // Allow SVG files. $mimes['svg'] = 'image/svg+xml'; $mimes['svgz'] = 'image/svg+xml'; // Allow XML files. $mimes['xml'] = 'text/xml'; return $mimes; } /** * Add SVG image support * * @since 1.1.4 * * @param array $response Attachment response. * @param object $attachment Attachment object. * @param array $meta Attachment meta data. */ public function add_svg_image_support( $response, $attachment, $meta ) { if ( ! function_exists( 'simplexml_load_file' ) ) { return $response; } if ( ! empty( $response['sizes'] ) ) { return $response; } if ( 'image/svg+xml' !== $response['mime'] ) { return $response; } $svg_path = get_attached_file( $attachment->ID ); $dimensions = self::get_svg_dimensions( $svg_path ); $response['sizes'] = array( 'full' => array( 'url' => $response['url'], 'width' => $dimensions->width, 'height' => $dimensions->height, 'orientation' => $dimensions->width > $dimensions->height ? 'landscape' : 'portrait', ), ); return $response; } /** * Get SVG Dimensions * * @since 1.1.4. * * @param string $svg SVG file path. * @return array Return SVG file height & width for valid SVG file. */ public static function get_svg_dimensions( $svg ) { $svg = simplexml_load_file( $svg ); if ( false === $svg ) { $width = '0'; $height = '0'; } else { $attributes = $svg->attributes(); $width = (string) $attributes->width; $height = (string) $attributes->height; } return (object) array( 'width' => $width, 'height' => $height, ); } /** * Batch Process Complete. * * @return void */ public function complete_batch_import() { wcf()->logger->import_log( '(✓) BATCH Process Complete!' ); } /** * Start Image Import * * @param integer $post_id Post Id. * * @return void */ public function start_batch_process( $post_id = '' ) { $default_page_builder = Cartflows_Helper::get_common_setting( 'default_page_builder' ); wcf()->logger->import_log( '(✓) BATCH Started!' ); wcf()->logger->import_log( '(✓) Step ID ' . $post_id ); // Add "elementor" in import [queue]. if ( 'beaver-builder' === $default_page_builder && self::$batch_instance_bb ) { // Add to queue. self::$batch_instance_bb->push_to_queue( $post_id ); // Dispatch Queue. self::$batch_instance_bb->save()->dispatch(); wcf()->logger->import_log( '(✓) Dispatch "Beaver Builder" Request..' ); } elseif ( 'elementor' === $default_page_builder && self::$batch_instance_elementor ) { // Add to queue. self::$batch_instance_elementor->push_to_queue( $post_id ); // Dispatch Queue. self::$batch_instance_elementor->save()->dispatch(); wcf()->logger->import_log( '(✓) Dispatch "Elementor" Request..' ); } elseif ( 'divi' === $default_page_builder && self::$batch_instance_divi ) { // Add to queue. self::$batch_instance_divi->push_to_queue( $post_id ); // Dispatch Queue. self::$batch_instance_divi->save()->dispatch(); wcf()->logger->import_log( '(✓) Dispatch "Divi" Request..' ); } else { wcf()->logger->import_log( '(✕) Could not import image due to allow_url_fopen() is disabled!' ); } } } /** * Kicking this off by calling 'get_instance()' method */ CartFlows_Batch_Process::get_instance(); endif; PK\Bclasses/batch-process/class-cartflows-importer-elementor-batch.phpnuW+Aimport_single_template( $post_id ); return false; } /** * Complete * * Override if applicable, but ensure that the below actions are * performed, or, call parent::complete(). * * @since 1.0.0 */ protected function complete() { parent::complete(); do_action( 'cartflows_import_complete' ); } } endif; PK\.VGclasses/batch-process/class-cartflows-importer-beaver-builder-batch.phpnuW+Aimport_single_post( $post_id ); return false; } /** * Complete * * Override if applicable, but ensure that the below actions are * performed, or, call parent::complete(). * * @since 1.1.1 */ protected function complete() { parent::complete(); do_action( 'cartflows_import_complete' ); } } endif; PK\ $K //Aclasses/batch-process/class-cartflows-importer-beaver-builder.phpnuW+Aget_import_data( $data ); // Update page builder data. update_post_meta( $post_id, '_fl_builder_data', $data ); update_post_meta( $post_id, '_fl_builder_draft', $data ); // Clear all cache. FLBuilderModel::delete_asset_cache_for_all_posts(); } else { wcf()->logger->import_log( '(✕) Not have "Beaver Builder" Data. Post meta _fl_builder_data is empty!' ); } } /** * Update post meta. * * @param array $data Page builder data. * @return mixed */ public function get_import_data( $data ) { if ( empty( $data ) ) { return array(); } foreach ( $data as $key => $el ) { // Import 'row' images. if ( 'row' === $el->type ) { $data[ $key ]->settings = self::import_row_images( $el->settings ); } // Import 'module' images. if ( 'module' === $el->type ) { $data[ $key ]->settings = self::import_module_images( $el->settings ); } // Import 'column' images. if ( 'column' === $el->type ) { $data[ $key ]->settings = self::import_column_images( $el->settings ); } } return $data; } /** * Import Module Images. * * @param object $settings Module settings object. * @return object */ public static function import_module_images( $settings ) { /** * 1) Set photos. */ $settings = self::import_photo( $settings ); /** * 2) Set `$settings->data` for Only type 'image-icon' * * @todo Remove the condition `'image-icon' === $settings->type` if `$settings->data` is used only for the Image Icon. */ if ( isset( $settings->data ) && isset( $settings->photo ) && ! empty( $settings->photo ) && 'image-icon' === $settings->type ) { $settings->data = FLBuilderPhoto::get_attachment_data( $settings->photo ); } /** * 3) Set `list item` module images */ if ( isset( $settings->add_list_item ) ) { foreach ( $settings->add_list_item as $key => $value ) { $settings->add_list_item[ $key ] = self::import_photo( $value ); } } return $settings; } /** * Import Column Images. * * @param object $settings Column settings object. * @return object */ public static function import_column_images( $settings ) { // 1) Set BG Images. $settings = self::import_bg_image( $settings ); return $settings; } /** * Import Row Images. * * @param object $settings Row settings object. * @return object */ public static function import_row_images( $settings ) { // 1) Set BG Images. $settings = self::import_bg_image( $settings ); return $settings; } /** * Helper: Import BG Images. * * @param object $settings Row settings object. * @return object */ public static function import_bg_image( $settings ) { if ( ( ! empty( $settings->bg_image ) && ! empty( $settings->bg_image_src ) ) ) { $image = array( 'url' => $settings->bg_image_src, 'id' => $settings->bg_image, ); $downloaded_image = CartFlows_Import_Image::get_instance()->import( $image ); $settings->bg_image_src = $downloaded_image['url']; $settings->bg_image = $downloaded_image['id']; } return $settings; } /** * Helper: Import Photo. * * @param object $settings Row settings object. * @return object */ public static function import_photo( $settings ) { if ( ! empty( $settings->photo ) && ! empty( $settings->photo_src ) ) { $image = array( 'url' => $settings->photo_src, 'id' => $settings->photo, ); $downloaded_image = CartFlows_Import_Image::get_instance()->import( $image ); $settings->photo_src = $downloaded_image['url']; $settings->photo = $downloaded_image['id']; } return $settings; } } /** * Initialize class object with 'get_instance()' method */ CartFlows_Importer_Beaver_Builder::get_instance(); endif; PK\}܏ff?classes/batch-process/class-cartflows-change-template-batch.phpnuW+Alogger->log( '(✓) Step ID ' . $post_id ); if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { error_log( 'Processed:' . $post_id ); //phpcs:ignore } update_post_meta( $post_id, '_wp_page_template', 'cartflows-default' ); return false; } /** * Complete * * Override if applicable, but ensure that the below actions are * performed, or, call parent::complete(). */ protected function complete() { parent::complete(); if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { error_log( 'Process Complete' );//phpcs:ignore } } } endif; PK\A(''classes/class-cartflows-api.phpnuW+A self::get_licence_args(), '_fields' => 'id,slug,status,type,link,title,featured_media,template,cartflows_step_page_builder,cartflows_step_type,cartflows_step_flow,featured_image_url,licence_status,flow_type,step_type,page_builder,divi_content,post_meta', ); // @codingStandardsIgnoreEnd $url = add_query_arg( $request_params, self::get_step_endpoint_url() . $site_id ); $api_args = array( 'timeout' => 15, ); $response = self::remote_get( $url, $api_args ); if ( $response['success'] ) { $template = $response['data']; return array( 'title' => ( isset( $template['title']->rendered ) ) ? $template['title']->rendered : '', 'post_meta' => ( isset( $template['post_meta'] ) ) ? $template['post_meta'] : '', 'data' => $template, 'divi_content' => isset( $response['data']['divi_content'] ) ? $response['data']['divi_content'] : '', 'message' => $response['message'], // Your API Key is not valid. Please add valid API Key. 'success' => $response['success'], ); } return array( 'title' => '', 'post_meta' => array(), 'message' => $response['message'], 'data' => $response['data'], 'divi_content' => '', 'success' => $response['success'], ); } /** * Get Cloud Templates * * @since 1.0.0 * * @param array $args For selecting the demos (Search terms, pagination etc). * @return array CartFlows list. */ public static function get_templates( $args = array() ) { $request_params = wp_parse_args( $args, array( 'page' => '1', 'per_page' => '100', ) ); $url = add_query_arg( $request_params, self::get_step_endpoint_url() ); $api_args = array( 'timeout' => 15, ); $response = self::remote_get( $url, $api_args ); if ( $response['success'] ) { $templates_data = $response['data']; $templates = array(); foreach ( $templates_data as $key => $template ) { if ( ! isset( $template->id ) ) { continue; } $templates[ $key ]['id'] = isset( $template->id ) ? esc_attr( $template->id ) : ''; $templates[ $key ]['slug'] = isset( $template->slug ) ? esc_attr( $template->slug ) : ''; $templates[ $key ]['link'] = isset( $template->link ) ? esc_url( $template->link ) : ''; $templates[ $key ]['date'] = isset( $template->date ) ? esc_attr( $template->date ) : ''; $templates[ $key ]['title'] = isset( $template->title->rendered ) ? esc_attr( $template->title->rendered ) : ''; $templates[ $key ]['featured_image_url'] = isset( $template->featured_image_url ) ? esc_url( $template->featured_image_url ) : ''; $templates[ $key ]['content'] = isset( $template->content->rendered ) ? $template->content->rendered : ''; $templates[ $key ]['divi_content'] = isset( $template->divi_content ) ? $template->divi_content : ''; $templates[ $key ]['post_meta'] = isset( $template->post_meta ) ? $template->post_meta : ''; } return array( 'templates' => $templates, 'templates_count' => $response['count'], 'data' => $response, ); } return array( 'templates' => array(), 'templates_count' => 0, 'data' => $response, ); } /** * Get categories. * * @since 1.0.0 * @param array $args Arguments. * @return array Category data. */ public static function get_categories( $args = array() ) { $request_params = apply_filters( 'cartflows_categories_api_params', wp_parse_args( $args, array( 'page' => '1', 'per_page' => '100', ) ) ); $url = add_query_arg( $request_params, self::get_category_endpoint_url() ); $api_args = apply_filters( 'cartflows_api_args', array( 'timeout' => 15, ) ); $response = self::remote_get( $url, $api_args ); if ( $response['success'] ) { $categories_data = $response['data']; $categories = array(); foreach ( $categories_data as $key => $category ) { if ( isset( $category->count ) && ! empty( $category->count ) ) { $categories[] = array( 'id' => isset( $category->id ) ? absint( $category->id ) : 0, 'count' => isset( $category->count ) ? absint( $category->count ) : 0, 'description' => isset( $category->description ) ? $category->description : '', 'link' => isset( $category->link ) ? esc_url( $category->link ) : '', 'name' => isset( $category->name ) ? $category->name : '', 'slug' => isset( $category->slug ) ? sanitize_text_field( $category->slug ) : '', 'taxonomy' => isset( $category->taxonomy ) ? $category->taxonomy : '', 'parent' => isset( $category->parent ) ? $category->parent : '', ); } } return array( 'categories' => $categories, 'categories_count' => $response['count'], 'data' => $response, ); } return array( 'categories' => array(), 'categories_count' => 0, 'data' => $response, ); } /** * Remote GET API Request * * @since 1.0.0 * * @param string $url Target server API URL. * @param array $args Array of arguments for the API request. * @return mixed Return the API request result. */ public static function remote_get( $url = '', $args = array() ) { $request = wp_remote_get( $url, $args ); return self::request( $request ); } /** * Remote POST API Request * * @since 1.0.0 * * @param string $url Target server API URL. * @param array $args Array of arguments for the API request. * @return mixed Return the API request result. */ public static function remote_post( $url = '', $args = array() ) { $request = wp_remote_post( $url, $args ); return self::request( $request ); } /** * Site API Request * * @since 1.0.0 * * @param boolean $api_base Target server API URL. * @param array $args Array of arguments for the API request. * @return mixed Return the API request result. */ public static function site_request( $api_base = '', $args = array() ) { $api_url = self::get_request_api_url( $api_base ); return self::remote_post( $api_url, $args ); } /** * API Request * * Handle the API request and return the result. * * @since 1.0.0 * * @param array $request Array of arguments for the API request. * @return mixed Return the API request result. */ public static function request( $request ) { // Is WP Error? if ( is_wp_error( $request ) ) { return array( 'success' => false, 'message' => $request->get_error_message(), 'data' => $request, 'count' => 0, ); } // Invalid response code. if ( wp_remote_retrieve_response_code( $request ) != 200 ) { return array( 'success' => false, 'message' => $request['response'], 'data' => $request, 'count' => 0, ); } // Get body data. $body = wp_remote_retrieve_body( $request ); // Is WP Error? if ( is_wp_error( $body ) ) { return array( 'success' => false, 'message' => $body->get_error_message(), 'data' => $request, 'count' => 0, ); } // Decode body content. $body_decoded = json_decode( $body ); return array( 'success' => true, 'message' => __( 'Request successfully processed!', 'cartflows' ), 'data' => (array) $body_decoded, 'count' => wp_remote_retrieve_header( $request, 'x-wp-total' ), ); } } /** * Initialize class object with 'get_instance()' method */ CartFlows_API::get_instance(); endif; PK\;classes/fields/typography/class-cartflows-font-families.phpnuW+A array( 'fallback' => 'Verdana, Arial, sans-serif', 'variants' => array( '300', '400', '700', ), ), 'Verdana' => array( 'fallback' => 'Helvetica, Arial, sans-serif', 'variants' => array( '300', '400', '700', ), ), 'Arial' => array( 'fallback' => 'Helvetica, Verdana, sans-serif', 'variants' => array( '300', '400', '700', ), ), 'Times' => array( 'fallback' => 'Georgia, serif', 'variants' => array( '300', '400', '700', ), ), 'Georgia' => array( 'fallback' => 'Times, serif', 'variants' => array( '300', '400', '700', ), ), 'Courier' => array( 'fallback' => 'monospace', 'variants' => array( '300', '400', '700', ), ), ); } return apply_filters( 'cartflows_system_fonts', self::$system_fonts ); } /** * Custom Fonts * * @since 1.0.0 * * @return Array All the custom fonts in CartFlows */ public static function get_custom_fonts() { $custom_fonts = array(); return apply_filters( 'cartflows_custom_fonts', $custom_fonts ); } /** * Google Fonts used in CartFlows. * Array is generated from the google-fonts.json file. * * @since 1.0.0 * * @return Array Array of Google Fonts. */ public static function get_google_fonts() { if ( empty( self::$google_fonts ) ) { $google_fonts_file = CARTFLOWS_DIR . 'classes/fields/typography/google-fonts.json'; if ( ! file_exists( $google_fonts_file ) ) { return array(); } global $wp_filesystem; if ( empty( $wp_filesystem ) ) { require_once ABSPATH . '/wp-admin/includes/file.php'; WP_Filesystem(); } $file_contants = $wp_filesystem->get_contents( $google_fonts_file ); $google_fonts_json = json_decode( $file_contants, 1 ); if ( is_array( $google_fonts_json ) || is_object( $google_fonts_json ) ) { foreach ( $google_fonts_json as $key => $font ) { $name = key( $font ); foreach ( $font[ $name ] as $font_key => $single_font ) { if ( 'variants' === $font_key ) { foreach ( $single_font as $variant_key => $variant ) { if ( 'regular' == $variant ) { $font[ $name ][ $font_key ][ $variant_key ] = '400'; } } } self::$google_fonts[ $name ] = array_values( $font[ $name ] ); } } } } return apply_filters( 'cartflows_google_fonts', self::$google_fonts ); } /** * Render Fonts * * @param array $post_id post ID. * @return void */ public static function render_fonts( $post_id ) { $google_font_url = get_post_meta( $post_id, 'wcf-field-google-font-url', true ); // @todo Avoid the URL generator from the JS and remove the below static URL check condition. if ( empty( $google_font_url ) || '//fonts.googleapis.com/css?family=' == $google_font_url ) { return; } wp_enqueue_style( 'cartflows-google-fonts', esc_url( $google_font_url ), array(), CARTFLOWS_VER, 'all' ); } /** * Get string between * * @param string $string Input string. * @param string $start First string. * @param string $end Last string. * @return string string. */ public static function get_string_between( $string, $start, $end ) { $string = ' ' . $string; $ini = strpos( $string, $start ); if ( 0 == $ini ) { return ''; } $ini += strlen( $start ); $len = strpos( $string, $end, $ini ) - $ini; return substr( $string, $ini, $len ); } /** * Google Font URL * Combine multiple google font in one URL * * @link https://shellcreeper.com/?p=1476 * @param array $fonts Google Fonts array. * @param array $subsets Font's Subsets array. * * @return string */ public static function google_fonts_url( $fonts, $subsets = array() ) { /* URL */ $base_url = '//fonts.googleapis.com/css'; $font_args = array(); $family = array(); $fonts = apply_filters( 'cartflows_google_fonts', $fonts ); /* Format Each Font Family in Array */ foreach ( $fonts as $font_name => $font_weight ) { $font_name = str_replace( ' ', '+', $font_name ); if ( ! empty( $font_weight ) ) { if ( is_array( $font_weight ) ) { $font_weight = implode( ',', $font_weight ); } $font_family = explode( ',', $font_name ); $font_family = str_replace( "'", '', wcf_get_prop( $font_family, 0 ) ); $family[] = trim( $font_family . ':' . urlencode( trim( $font_weight ) ) );//phpcs:ignore } else { $family[] = trim( $font_name ); } } /* Only return URL if font family defined. */ if ( ! empty( $family ) ) { /* Make Font Family a String */ $family = implode( '|', $family ); /* Add font family in args */ $font_args['family'] = $family; /* Add font subsets in args */ if ( ! empty( $subsets ) ) { /* format subsets to string */ if ( is_array( $subsets ) ) { $subsets = implode( ',', $subsets ); } $font_args['subset'] = urlencode( trim( $subsets ) );//phpcs:ignore } return add_query_arg( $font_args, $base_url ); } return ''; } /** * Generate Google Font URL from the post meta. * * @param integer $post_id Post ID. * @return string Google URL if post meta is set. */ public function generate_google_url( $post_id ) { $font_weight = array(); $fields = get_post_meta( $post_id ); foreach ( $fields as $key => $value ) { if ( false !== strpos( $key, 'font-family' ) ) { $font_family = ! empty( $value[0] ) ? self::get_string_between( $value[0], '\'', '\'' ) : ''; $font_list[ $font_family ] = array(); } } $google_fonts = array(); $font_subset = array(); $system_fonts = self::get_system_fonts(); $get_google_fonts = self::get_google_fonts(); $variants = array( 'variants' => array( 400 ) ); foreach ( $font_list as $name => $font ) { if ( ! empty( $name ) && ! isset( $system_fonts[ $name ] ) ) { if ( isset( $get_google_fonts[ $name ] ) ) { $variants = $get_google_fonts[ $name ][0]; } // Add font variants. $google_fonts[ $name ] = $variants; // Add Subset. $subset = apply_filters( 'cartflows_font_subset', '', $name ); if ( ! empty( $subset ) ) { $font_subset[] = $subset; } } } return self::google_fonts_url( $google_fonts, $font_subset ); } } endif; PK\<<+classes/fields/typography/google-fonts.jsonnuW+A[ { "ABeeZee": { "variants": [ "regular", "italic" ], "category": "sans-serif" } }, { "Abel": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Abhaya Libre": { "variants": [ "regular", "500", "600", "700", "800" ], "category": "serif" } }, { "Abril Fatface": { "variants": [ "regular" ], "category": "display" } }, { "Aclonica": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Acme": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Actor": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Adamina": { "variants": [ "regular" ], "category": "serif" } }, { "Advent Pro": { "variants": [ "100", "200", "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Aguafina Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Akronim": { "variants": [ "regular" ], "category": "display" } }, { "Aladin": { "variants": [ "regular" ], "category": "handwriting" } }, { "Aldrich": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Alef": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Alegreya": { "variants": [ "regular", "italic", "500", "500italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "serif" } }, { "Alegreya SC": { "variants": [ "regular", "italic", "500", "500italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "serif" } }, { "Alegreya Sans": { "variants": [ "100", "100italic", "300", "300italic", "regular", "italic", "500", "500italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Alegreya Sans SC": { "variants": [ "100", "100italic", "300", "300italic", "regular", "italic", "500", "500italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Alex Brush": { "variants": [ "regular" ], "category": "handwriting" } }, { "Alfa Slab One": { "variants": [ "regular" ], "category": "display" } }, { "Alice": { "variants": [ "regular" ], "category": "serif" } }, { "Alike": { "variants": [ "regular" ], "category": "serif" } }, { "Alike Angular": { "variants": [ "regular" ], "category": "serif" } }, { "Allan": { "variants": [ "regular", "700" ], "category": "display" } }, { "Allerta": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Allerta Stencil": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Allura": { "variants": [ "regular" ], "category": "handwriting" } }, { "Almendra": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Almendra Display": { "variants": [ "regular" ], "category": "display" } }, { "Almendra SC": { "variants": [ "regular" ], "category": "serif" } }, { "Amarante": { "variants": [ "regular" ], "category": "display" } }, { "Amaranth": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Amatic SC": { "variants": [ "regular", "700" ], "category": "handwriting" } }, { "Amethysta": { "variants": [ "regular" ], "category": "serif" } }, { "Amiko": { "variants": [ "regular", "600", "700" ], "category": "sans-serif" } }, { "Amiri": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Amita": { "variants": [ "regular", "700" ], "category": "handwriting" } }, { "Anaheim": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Andada": { "variants": [ "regular" ], "category": "serif" } }, { "Andika": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Angkor": { "variants": [ "regular" ], "category": "display" } }, { "Annie Use Your Telescope": { "variants": [ "regular" ], "category": "handwriting" } }, { "Anonymous Pro": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "monospace" } }, { "Antic": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Antic Didone": { "variants": [ "regular" ], "category": "serif" } }, { "Antic Slab": { "variants": [ "regular" ], "category": "serif" } }, { "Anton": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Arapey": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Arbutus": { "variants": [ "regular" ], "category": "display" } }, { "Arbutus Slab": { "variants": [ "regular" ], "category": "serif" } }, { "Architects Daughter": { "variants": [ "regular" ], "category": "handwriting" } }, { "Archivo": { "variants": [ "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Archivo Black": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Archivo Narrow": { "variants": [ "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Aref Ruqaa": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Arima Madurai": { "variants": [ "100", "200", "300", "regular", "500", "700", "800", "900" ], "category": "display" } }, { "Arimo": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Arizonia": { "variants": [ "regular" ], "category": "handwriting" } }, { "Armata": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Arsenal": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Artifika": { "variants": [ "regular" ], "category": "serif" } }, { "Arvo": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Arya": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Asap": { "variants": [ "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Asap Condensed": { "variants": [ "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Asar": { "variants": [ "regular" ], "category": "serif" } }, { "Asset": { "variants": [ "regular" ], "category": "display" } }, { "Assistant": { "variants": [ "200", "300", "regular", "600", "700", "800" ], "category": "sans-serif" } }, { "Astloch": { "variants": [ "regular", "700" ], "category": "display" } }, { "Asul": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Athiti": { "variants": [ "200", "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Atma": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "display" } }, { "Atomic Age": { "variants": [ "regular" ], "category": "display" } }, { "Aubrey": { "variants": [ "regular" ], "category": "display" } }, { "Audiowide": { "variants": [ "regular" ], "category": "display" } }, { "Autour One": { "variants": [ "regular" ], "category": "display" } }, { "Average": { "variants": [ "regular" ], "category": "serif" } }, { "Average Sans": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Averia Gruesa Libre": { "variants": [ "regular" ], "category": "display" } }, { "Averia Libre": { "variants": [ "300", "300italic", "regular", "italic", "700", "700italic" ], "category": "display" } }, { "Averia Sans Libre": { "variants": [ "300", "300italic", "regular", "italic", "700", "700italic" ], "category": "display" } }, { "Averia Serif Libre": { "variants": [ "300", "300italic", "regular", "italic", "700", "700italic" ], "category": "display" } }, { "Bad Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Bahiana": { "variants": [ "regular" ], "category": "display" } }, { "Bai Jamjuree": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Baloo": { "variants": [ "regular" ], "category": "display" } }, { "Baloo Bhai": { "variants": [ "regular" ], "category": "display" } }, { "Baloo Bhaijaan": { "variants": [ "regular" ], "category": "display" } }, { "Baloo Bhaina": { "variants": [ "regular" ], "category": "display" } }, { "Baloo Chettan": { "variants": [ "regular" ], "category": "display" } }, { "Baloo Da": { "variants": [ "regular" ], "category": "display" } }, { "Baloo Paaji": { "variants": [ "regular" ], "category": "display" } }, { "Baloo Tamma": { "variants": [ "regular" ], "category": "display" } }, { "Baloo Tammudu": { "variants": [ "regular" ], "category": "display" } }, { "Baloo Thambi": { "variants": [ "regular" ], "category": "display" } }, { "Balthazar": { "variants": [ "regular" ], "category": "serif" } }, { "Bangers": { "variants": [ "regular" ], "category": "display" } }, { "Barlow": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Barlow Condensed": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Barlow Semi Condensed": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Barrio": { "variants": [ "regular" ], "category": "display" } }, { "Basic": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Battambang": { "variants": [ "regular", "700" ], "category": "display" } }, { "Baumans": { "variants": [ "regular" ], "category": "display" } }, { "Bayon": { "variants": [ "regular" ], "category": "display" } }, { "Belgrano": { "variants": [ "regular" ], "category": "serif" } }, { "Bellefair": { "variants": [ "regular" ], "category": "serif" } }, { "Belleza": { "variants": [ "regular" ], "category": "sans-serif" } }, { "BenchNine": { "variants": [ "300", "regular", "700" ], "category": "sans-serif" } }, { "Bentham": { "variants": [ "regular" ], "category": "serif" } }, { "Berkshire Swash": { "variants": [ "regular" ], "category": "handwriting" } }, { "Bevan": { "variants": [ "regular" ], "category": "display" } }, { "Bigelow Rules": { "variants": [ "regular" ], "category": "display" } }, { "Bigshot One": { "variants": [ "regular" ], "category": "display" } }, { "Bilbo": { "variants": [ "regular" ], "category": "handwriting" } }, { "Bilbo Swash Caps": { "variants": [ "regular" ], "category": "handwriting" } }, { "BioRhyme": { "variants": [ "200", "300", "regular", "700", "800" ], "category": "serif" } }, { "BioRhyme Expanded": { "variants": [ "200", "300", "regular", "700", "800" ], "category": "serif" } }, { "Biryani": { "variants": [ "200", "300", "regular", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Bitter": { "variants": [ "regular", "italic", "700" ], "category": "serif" } }, { "Black And White Picture": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Black Han Sans": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Black Ops One": { "variants": [ "regular" ], "category": "display" } }, { "Bokor": { "variants": [ "regular" ], "category": "display" } }, { "Bonbon": { "variants": [ "regular" ], "category": "handwriting" } }, { "Boogaloo": { "variants": [ "regular" ], "category": "display" } }, { "Bowlby One": { "variants": [ "regular" ], "category": "display" } }, { "Bowlby One SC": { "variants": [ "regular" ], "category": "display" } }, { "Brawler": { "variants": [ "regular" ], "category": "serif" } }, { "Bree Serif": { "variants": [ "regular" ], "category": "serif" } }, { "Bubblegum Sans": { "variants": [ "regular" ], "category": "display" } }, { "Bubbler One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Buda": { "variants": [ "300" ], "category": "display" } }, { "Buenard": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Bungee": { "variants": [ "regular" ], "category": "display" } }, { "Bungee Hairline": { "variants": [ "regular" ], "category": "display" } }, { "Bungee Inline": { "variants": [ "regular" ], "category": "display" } }, { "Bungee Outline": { "variants": [ "regular" ], "category": "display" } }, { "Bungee Shade": { "variants": [ "regular" ], "category": "display" } }, { "Butcherman": { "variants": [ "regular" ], "category": "display" } }, { "Butterfly Kids": { "variants": [ "regular" ], "category": "handwriting" } }, { "Cabin": { "variants": [ "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Cabin Condensed": { "variants": [ "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Cabin Sketch": { "variants": [ "regular", "700" ], "category": "display" } }, { "Caesar Dressing": { "variants": [ "regular" ], "category": "display" } }, { "Cagliostro": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Cairo": { "variants": [ "200", "300", "regular", "600", "700", "900" ], "category": "sans-serif" } }, { "Calligraffitti": { "variants": [ "regular" ], "category": "handwriting" } }, { "Cambay": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Cambo": { "variants": [ "regular" ], "category": "serif" } }, { "Candal": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Cantarell": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Cantata One": { "variants": [ "regular" ], "category": "serif" } }, { "Cantora One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Capriola": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Cardo": { "variants": [ "regular", "italic", "700" ], "category": "serif" } }, { "Carme": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Carrois Gothic": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Carrois Gothic SC": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Carter One": { "variants": [ "regular" ], "category": "display" } }, { "Catamaran": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Caudex": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Caveat": { "variants": [ "regular", "700" ], "category": "handwriting" } }, { "Caveat Brush": { "variants": [ "regular" ], "category": "handwriting" } }, { "Cedarville Cursive": { "variants": [ "regular" ], "category": "handwriting" } }, { "Ceviche One": { "variants": [ "regular" ], "category": "display" } }, { "Chakra Petch": { "variants": [ "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Changa": { "variants": [ "200", "300", "regular", "500", "600", "700", "800" ], "category": "sans-serif" } }, { "Changa One": { "variants": [ "regular", "italic" ], "category": "display" } }, { "Chango": { "variants": [ "regular" ], "category": "display" } }, { "Charmonman": { "variants": [ "regular", "700" ], "category": "handwriting" } }, { "Chathura": { "variants": [ "100", "300", "regular", "700", "800" ], "category": "sans-serif" } }, { "Chau Philomene One": { "variants": [ "regular", "italic" ], "category": "sans-serif" } }, { "Chela One": { "variants": [ "regular" ], "category": "display" } }, { "Chelsea Market": { "variants": [ "regular" ], "category": "display" } }, { "Chenla": { "variants": [ "regular" ], "category": "display" } }, { "Cherry Cream Soda": { "variants": [ "regular" ], "category": "display" } }, { "Cherry Swash": { "variants": [ "regular", "700" ], "category": "display" } }, { "Chewy": { "variants": [ "regular" ], "category": "display" } }, { "Chicle": { "variants": [ "regular" ], "category": "display" } }, { "Chivo": { "variants": [ "300", "300italic", "regular", "italic", "700", "700italic", "900", "900italic" ], "category": "sans-serif" } }, { "Chonburi": { "variants": [ "regular" ], "category": "display" } }, { "Cinzel": { "variants": [ "regular", "700", "900" ], "category": "serif" } }, { "Cinzel Decorative": { "variants": [ "regular", "700", "900" ], "category": "display" } }, { "Clicker Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Coda": { "variants": [ "regular", "800" ], "category": "display" } }, { "Coda Caption": { "variants": [ "800" ], "category": "sans-serif" } }, { "Codystar": { "variants": [ "300", "regular" ], "category": "display" } }, { "Coiny": { "variants": [ "regular" ], "category": "display" } }, { "Combo": { "variants": [ "regular" ], "category": "display" } }, { "Comfortaa": { "variants": [ "300", "regular", "700" ], "category": "display" } }, { "Coming Soon": { "variants": [ "regular" ], "category": "handwriting" } }, { "Concert One": { "variants": [ "regular" ], "category": "display" } }, { "Condiment": { "variants": [ "regular" ], "category": "handwriting" } }, { "Content": { "variants": [ "regular", "700" ], "category": "display" } }, { "Contrail One": { "variants": [ "regular" ], "category": "display" } }, { "Convergence": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Cookie": { "variants": [ "regular" ], "category": "handwriting" } }, { "Copse": { "variants": [ "regular" ], "category": "serif" } }, { "Corben": { "variants": [ "regular", "700" ], "category": "display" } }, { "Cormorant": { "variants": [ "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "serif" } }, { "Cormorant Garamond": { "variants": [ "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "serif" } }, { "Cormorant Infant": { "variants": [ "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "serif" } }, { "Cormorant SC": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "serif" } }, { "Cormorant Unicase": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "serif" } }, { "Cormorant Upright": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "serif" } }, { "Courgette": { "variants": [ "regular" ], "category": "handwriting" } }, { "Cousine": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "monospace" } }, { "Coustard": { "variants": [ "regular", "900" ], "category": "serif" } }, { "Covered By Your Grace": { "variants": [ "regular" ], "category": "handwriting" } }, { "Crafty Girls": { "variants": [ "regular" ], "category": "handwriting" } }, { "Creepster": { "variants": [ "regular" ], "category": "display" } }, { "Crete Round": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Crimson Text": { "variants": [ "regular", "italic", "600", "600italic", "700", "700italic" ], "category": "serif" } }, { "Croissant One": { "variants": [ "regular" ], "category": "display" } }, { "Crushed": { "variants": [ "regular" ], "category": "display" } }, { "Cuprum": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Cute Font": { "variants": [ "regular" ], "category": "display" } }, { "Cutive": { "variants": [ "regular" ], "category": "serif" } }, { "Cutive Mono": { "variants": [ "regular" ], "category": "monospace" } }, { "Damion": { "variants": [ "regular" ], "category": "handwriting" } }, { "Dancing Script": { "variants": [ "regular", "700" ], "category": "handwriting" } }, { "Dangrek": { "variants": [ "regular" ], "category": "display" } }, { "David Libre": { "variants": [ "regular", "500", "700" ], "category": "serif" } }, { "Dawning of a New Day": { "variants": [ "regular" ], "category": "handwriting" } }, { "Days One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Dekko": { "variants": [ "regular" ], "category": "handwriting" } }, { "Delius": { "variants": [ "regular" ], "category": "handwriting" } }, { "Delius Swash Caps": { "variants": [ "regular" ], "category": "handwriting" } }, { "Delius Unicase": { "variants": [ "regular", "700" ], "category": "handwriting" } }, { "Della Respira": { "variants": [ "regular" ], "category": "serif" } }, { "Denk One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Devonshire": { "variants": [ "regular" ], "category": "handwriting" } }, { "Dhurjati": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Didact Gothic": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Diplomata": { "variants": [ "regular" ], "category": "display" } }, { "Diplomata SC": { "variants": [ "regular" ], "category": "display" } }, { "Do Hyeon": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Dokdo": { "variants": [ "regular" ], "category": "handwriting" } }, { "Domine": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Donegal One": { "variants": [ "regular" ], "category": "serif" } }, { "Doppio One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Dorsa": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Dosis": { "variants": [ "200", "300", "regular", "500", "600", "700", "800" ], "category": "sans-serif" } }, { "Dr Sugiyama": { "variants": [ "regular" ], "category": "handwriting" } }, { "Duru Sans": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Dynalight": { "variants": [ "regular" ], "category": "display" } }, { "EB Garamond": { "variants": [ "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic" ], "category": "serif" } }, { "Eagle Lake": { "variants": [ "regular" ], "category": "handwriting" } }, { "East Sea Dokdo": { "variants": [ "regular" ], "category": "handwriting" } }, { "Eater": { "variants": [ "regular" ], "category": "display" } }, { "Economica": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Eczar": { "variants": [ "regular", "500", "600", "700", "800" ], "category": "serif" } }, { "El Messiri": { "variants": [ "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Electrolize": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Elsie": { "variants": [ "regular", "900" ], "category": "display" } }, { "Elsie Swash Caps": { "variants": [ "regular", "900" ], "category": "display" } }, { "Emblema One": { "variants": [ "regular" ], "category": "display" } }, { "Emilys Candy": { "variants": [ "regular" ], "category": "display" } }, { "Encode Sans": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Encode Sans Condensed": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Encode Sans Expanded": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Encode Sans Semi Condensed": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Encode Sans Semi Expanded": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Engagement": { "variants": [ "regular" ], "category": "handwriting" } }, { "Englebert": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Enriqueta": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Erica One": { "variants": [ "regular" ], "category": "display" } }, { "Esteban": { "variants": [ "regular" ], "category": "serif" } }, { "Euphoria Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Ewert": { "variants": [ "regular" ], "category": "display" } }, { "Exo": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Exo 2": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Expletus Sans": { "variants": [ "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "display" } }, { "Fahkwang": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Fanwood Text": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Farsan": { "variants": [ "regular" ], "category": "display" } }, { "Fascinate": { "variants": [ "regular" ], "category": "display" } }, { "Fascinate Inline": { "variants": [ "regular" ], "category": "display" } }, { "Faster One": { "variants": [ "regular" ], "category": "display" } }, { "Fasthand": { "variants": [ "regular" ], "category": "serif" } }, { "Fauna One": { "variants": [ "regular" ], "category": "serif" } }, { "Faustina": { "variants": [ "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "serif" } }, { "Federant": { "variants": [ "regular" ], "category": "display" } }, { "Federo": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Felipa": { "variants": [ "regular" ], "category": "handwriting" } }, { "Fenix": { "variants": [ "regular" ], "category": "serif" } }, { "Finger Paint": { "variants": [ "regular" ], "category": "display" } }, { "Fira Mono": { "variants": [ "regular", "500", "700" ], "category": "monospace" } }, { "Fira Sans": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Fira Sans Condensed": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Fira Sans Extra Condensed": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Fjalla One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Fjord One": { "variants": [ "regular" ], "category": "serif" } }, { "Flamenco": { "variants": [ "300", "regular" ], "category": "display" } }, { "Flavors": { "variants": [ "regular" ], "category": "display" } }, { "Fondamento": { "variants": [ "regular", "italic" ], "category": "handwriting" } }, { "Fontdiner Swanky": { "variants": [ "regular" ], "category": "display" } }, { "Forum": { "variants": [ "regular" ], "category": "display" } }, { "Francois One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Frank Ruhl Libre": { "variants": [ "300", "regular", "500", "700", "900" ], "category": "serif" } }, { "Freckle Face": { "variants": [ "regular" ], "category": "display" } }, { "Fredericka the Great": { "variants": [ "regular" ], "category": "display" } }, { "Fredoka One": { "variants": [ "regular" ], "category": "display" } }, { "Freehand": { "variants": [ "regular" ], "category": "display" } }, { "Fresca": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Frijole": { "variants": [ "regular" ], "category": "display" } }, { "Fruktur": { "variants": [ "regular" ], "category": "display" } }, { "Fugaz One": { "variants": [ "regular" ], "category": "display" } }, { "GFS Didot": { "variants": [ "regular" ], "category": "serif" } }, { "GFS Neohellenic": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Gabriela": { "variants": [ "regular" ], "category": "serif" } }, { "Gaegu": { "variants": [ "300", "regular", "700" ], "category": "handwriting" } }, { "Gafata": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Galada": { "variants": [ "regular" ], "category": "display" } }, { "Galdeano": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Galindo": { "variants": [ "regular" ], "category": "display" } }, { "Gamja Flower": { "variants": [ "regular" ], "category": "handwriting" } }, { "Gentium Basic": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Gentium Book Basic": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Geo": { "variants": [ "regular", "italic" ], "category": "sans-serif" } }, { "Geostar": { "variants": [ "regular" ], "category": "display" } }, { "Geostar Fill": { "variants": [ "regular" ], "category": "display" } }, { "Germania One": { "variants": [ "regular" ], "category": "display" } }, { "Gidugu": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Gilda Display": { "variants": [ "regular" ], "category": "serif" } }, { "Give You Glory": { "variants": [ "regular" ], "category": "handwriting" } }, { "Glass Antiqua": { "variants": [ "regular" ], "category": "display" } }, { "Glegoo": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Gloria Hallelujah": { "variants": [ "regular" ], "category": "handwriting" } }, { "Goblin One": { "variants": [ "regular" ], "category": "display" } }, { "Gochi Hand": { "variants": [ "regular" ], "category": "handwriting" } }, { "Gorditas": { "variants": [ "regular", "700" ], "category": "display" } }, { "Gothic A1": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Goudy Bookletter 1911": { "variants": [ "regular" ], "category": "serif" } }, { "Graduate": { "variants": [ "regular" ], "category": "display" } }, { "Grand Hotel": { "variants": [ "regular" ], "category": "handwriting" } }, { "Gravitas One": { "variants": [ "regular" ], "category": "display" } }, { "Great Vibes": { "variants": [ "regular" ], "category": "handwriting" } }, { "Griffy": { "variants": [ "regular" ], "category": "display" } }, { "Gruppo": { "variants": [ "regular" ], "category": "display" } }, { "Gudea": { "variants": [ "regular", "italic", "700" ], "category": "sans-serif" } }, { "Gugi": { "variants": [ "regular" ], "category": "display" } }, { "Gurajada": { "variants": [ "regular" ], "category": "serif" } }, { "Habibi": { "variants": [ "regular" ], "category": "serif" } }, { "Halant": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "serif" } }, { "Hammersmith One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Hanalei": { "variants": [ "regular" ], "category": "display" } }, { "Hanalei Fill": { "variants": [ "regular" ], "category": "display" } }, { "Handlee": { "variants": [ "regular" ], "category": "handwriting" } }, { "Hanuman": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Happy Monkey": { "variants": [ "regular" ], "category": "display" } }, { "Harmattan": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Headland One": { "variants": [ "regular" ], "category": "serif" } }, { "Heebo": { "variants": [ "100", "300", "regular", "500", "700", "800", "900" ], "category": "sans-serif" } }, { "Henny Penny": { "variants": [ "regular" ], "category": "display" } }, { "Herr Von Muellerhoff": { "variants": [ "regular" ], "category": "handwriting" } }, { "Hi Melody": { "variants": [ "regular" ], "category": "handwriting" } }, { "Hind": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Hind Guntur": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Hind Madurai": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Hind Siliguri": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Hind Vadodara": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Holtwood One SC": { "variants": [ "regular" ], "category": "serif" } }, { "Homemade Apple": { "variants": [ "regular" ], "category": "handwriting" } }, { "Homenaje": { "variants": [ "regular" ], "category": "sans-serif" } }, { "IBM Plex Mono": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "monospace" } }, { "IBM Plex Sans": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "IBM Plex Sans Condensed": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "IBM Plex Serif": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "serif" } }, { "IM Fell DW Pica": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "IM Fell DW Pica SC": { "variants": [ "regular" ], "category": "serif" } }, { "IM Fell Double Pica": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "IM Fell Double Pica SC": { "variants": [ "regular" ], "category": "serif" } }, { "IM Fell English": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "IM Fell English SC": { "variants": [ "regular" ], "category": "serif" } }, { "IM Fell French Canon": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "IM Fell French Canon SC": { "variants": [ "regular" ], "category": "serif" } }, { "IM Fell Great Primer": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "IM Fell Great Primer SC": { "variants": [ "regular" ], "category": "serif" } }, { "Iceberg": { "variants": [ "regular" ], "category": "display" } }, { "Iceland": { "variants": [ "regular" ], "category": "display" } }, { "Imprima": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Inconsolata": { "variants": [ "regular", "700" ], "category": "monospace" } }, { "Inder": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Indie Flower": { "variants": [ "regular" ], "category": "handwriting" } }, { "Inika": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Inknut Antiqua": { "variants": [ "300", "regular", "500", "600", "700", "800", "900" ], "category": "serif" } }, { "Irish Grover": { "variants": [ "regular" ], "category": "display" } }, { "Istok Web": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Italiana": { "variants": [ "regular" ], "category": "serif" } }, { "Italianno": { "variants": [ "regular" ], "category": "handwriting" } }, { "Itim": { "variants": [ "regular" ], "category": "handwriting" } }, { "Jacques Francois": { "variants": [ "regular" ], "category": "serif" } }, { "Jacques Francois Shadow": { "variants": [ "regular" ], "category": "display" } }, { "Jaldi": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Jim Nightshade": { "variants": [ "regular" ], "category": "handwriting" } }, { "Jockey One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Jolly Lodger": { "variants": [ "regular" ], "category": "display" } }, { "Jomhuria": { "variants": [ "regular" ], "category": "display" } }, { "Josefin Sans": { "variants": [ "100", "100italic", "300", "300italic", "regular", "italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Josefin Slab": { "variants": [ "100", "100italic", "300", "300italic", "regular", "italic", "600", "600italic", "700", "700italic" ], "category": "serif" } }, { "Joti One": { "variants": [ "regular" ], "category": "display" } }, { "Jua": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Judson": { "variants": [ "regular", "italic", "700" ], "category": "serif" } }, { "Julee": { "variants": [ "regular" ], "category": "handwriting" } }, { "Julius Sans One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Junge": { "variants": [ "regular" ], "category": "serif" } }, { "Jura": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Just Another Hand": { "variants": [ "regular" ], "category": "handwriting" } }, { "Just Me Again Down Here": { "variants": [ "regular" ], "category": "handwriting" } }, { "K2D": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic" ], "category": "sans-serif" } }, { "Kadwa": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Kalam": { "variants": [ "300", "regular", "700" ], "category": "handwriting" } }, { "Kameron": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Kanit": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Kantumruy": { "variants": [ "300", "regular", "700" ], "category": "sans-serif" } }, { "Karla": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Karma": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "serif" } }, { "Katibeh": { "variants": [ "regular" ], "category": "display" } }, { "Kaushan Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Kavivanar": { "variants": [ "regular" ], "category": "handwriting" } }, { "Kavoon": { "variants": [ "regular" ], "category": "display" } }, { "Kdam Thmor": { "variants": [ "regular" ], "category": "display" } }, { "Keania One": { "variants": [ "regular" ], "category": "display" } }, { "Kelly Slab": { "variants": [ "regular" ], "category": "display" } }, { "Kenia": { "variants": [ "regular" ], "category": "display" } }, { "Khand": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Khmer": { "variants": [ "regular" ], "category": "display" } }, { "Khula": { "variants": [ "300", "regular", "600", "700", "800" ], "category": "sans-serif" } }, { "Kirang Haerang": { "variants": [ "regular" ], "category": "display" } }, { "Kite One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Knewave": { "variants": [ "regular" ], "category": "display" } }, { "KoHo": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Kodchasan": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Kosugi": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Kosugi Maru": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Kotta One": { "variants": [ "regular" ], "category": "serif" } }, { "Koulen": { "variants": [ "regular" ], "category": "display" } }, { "Kranky": { "variants": [ "regular" ], "category": "display" } }, { "Kreon": { "variants": [ "300", "regular", "700" ], "category": "serif" } }, { "Kristi": { "variants": [ "regular" ], "category": "handwriting" } }, { "Krona One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Krub": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Kumar One": { "variants": [ "regular" ], "category": "display" } }, { "Kumar One Outline": { "variants": [ "regular" ], "category": "display" } }, { "Kurale": { "variants": [ "regular" ], "category": "serif" } }, { "La Belle Aurore": { "variants": [ "regular" ], "category": "handwriting" } }, { "Laila": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "serif" } }, { "Lakki Reddy": { "variants": [ "regular" ], "category": "handwriting" } }, { "Lalezar": { "variants": [ "regular" ], "category": "display" } }, { "Lancelot": { "variants": [ "regular" ], "category": "display" } }, { "Lateef": { "variants": [ "regular" ], "category": "handwriting" } }, { "Lato": { "variants": [ "100", "100italic", "300", "300italic", "regular", "italic", "700", "700italic", "900", "900italic" ], "category": "sans-serif" } }, { "League Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Leckerli One": { "variants": [ "regular" ], "category": "handwriting" } }, { "Ledger": { "variants": [ "regular" ], "category": "serif" } }, { "Lekton": { "variants": [ "regular", "italic", "700" ], "category": "sans-serif" } }, { "Lemon": { "variants": [ "regular" ], "category": "display" } }, { "Lemonada": { "variants": [ "300", "regular", "600", "700" ], "category": "display" } }, { "Libre Barcode 128": { "variants": [ "regular" ], "category": "display" } }, { "Libre Barcode 128 Text": { "variants": [ "regular" ], "category": "display" } }, { "Libre Barcode 39": { "variants": [ "regular" ], "category": "display" } }, { "Libre Barcode 39 Extended": { "variants": [ "regular" ], "category": "display" } }, { "Libre Barcode 39 Extended Text": { "variants": [ "regular" ], "category": "display" } }, { "Libre Barcode 39 Text": { "variants": [ "regular" ], "category": "display" } }, { "Libre Baskerville": { "variants": [ "regular", "italic", "700" ], "category": "serif" } }, { "Libre Franklin": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Life Savers": { "variants": [ "regular", "700" ], "category": "display" } }, { "Lilita One": { "variants": [ "regular" ], "category": "display" } }, { "Lily Script One": { "variants": [ "regular" ], "category": "display" } }, { "Limelight": { "variants": [ "regular" ], "category": "display" } }, { "Linden Hill": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Lobster": { "variants": [ "regular" ], "category": "display" } }, { "Lobster Two": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "display" } }, { "Londrina Outline": { "variants": [ "regular" ], "category": "display" } }, { "Londrina Shadow": { "variants": [ "regular" ], "category": "display" } }, { "Londrina Sketch": { "variants": [ "regular" ], "category": "display" } }, { "Londrina Solid": { "variants": [ "100", "300", "regular", "900" ], "category": "display" } }, { "Lora": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Love Ya Like A Sister": { "variants": [ "regular" ], "category": "display" } }, { "Loved by the King": { "variants": [ "regular" ], "category": "handwriting" } }, { "Lovers Quarrel": { "variants": [ "regular" ], "category": "handwriting" } }, { "Luckiest Guy": { "variants": [ "regular" ], "category": "display" } }, { "Lusitana": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Lustria": { "variants": [ "regular" ], "category": "serif" } }, { "M PLUS 1p": { "variants": [ "100", "300", "regular", "500", "700", "800", "900" ], "category": "sans-serif" } }, { "M PLUS Rounded 1c": { "variants": [ "100", "300", "regular", "500", "700", "800", "900" ], "category": "sans-serif" } }, { "Macondo": { "variants": [ "regular" ], "category": "display" } }, { "Macondo Swash Caps": { "variants": [ "regular" ], "category": "display" } }, { "Mada": { "variants": [ "200", "300", "regular", "500", "600", "700", "900" ], "category": "sans-serif" } }, { "Magra": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Maiden Orange": { "variants": [ "regular" ], "category": "display" } }, { "Maitree": { "variants": [ "200", "300", "regular", "500", "600", "700" ], "category": "serif" } }, { "Mako": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Mali": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "handwriting" } }, { "Mallanna": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Mandali": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Manuale": { "variants": [ "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "serif" } }, { "Marcellus": { "variants": [ "regular" ], "category": "serif" } }, { "Marcellus SC": { "variants": [ "regular" ], "category": "serif" } }, { "Marck Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Margarine": { "variants": [ "regular" ], "category": "display" } }, { "Markazi Text": { "variants": [ "regular", "500", "600", "700" ], "category": "serif" } }, { "Marko One": { "variants": [ "regular" ], "category": "serif" } }, { "Marmelad": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Martel": { "variants": [ "200", "300", "regular", "600", "700", "800", "900" ], "category": "serif" } }, { "Martel Sans": { "variants": [ "200", "300", "regular", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Marvel": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Mate": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Mate SC": { "variants": [ "regular" ], "category": "serif" } }, { "Maven Pro": { "variants": [ "regular", "500", "700", "900" ], "category": "sans-serif" } }, { "McLaren": { "variants": [ "regular" ], "category": "display" } }, { "Meddon": { "variants": [ "regular" ], "category": "handwriting" } }, { "MedievalSharp": { "variants": [ "regular" ], "category": "display" } }, { "Medula One": { "variants": [ "regular" ], "category": "display" } }, { "Meera Inimai": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Megrim": { "variants": [ "regular" ], "category": "display" } }, { "Meie Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Merienda": { "variants": [ "regular", "700" ], "category": "handwriting" } }, { "Merienda One": { "variants": [ "regular" ], "category": "handwriting" } }, { "Merriweather": { "variants": [ "300", "300italic", "regular", "italic", "700", "700italic", "900", "900italic" ], "category": "serif" } }, { "Merriweather Sans": { "variants": [ "300", "300italic", "regular", "italic", "700", "700italic", "800", "800italic" ], "category": "sans-serif" } }, { "Metal": { "variants": [ "regular" ], "category": "display" } }, { "Metal Mania": { "variants": [ "regular" ], "category": "display" } }, { "Metamorphous": { "variants": [ "regular" ], "category": "display" } }, { "Metrophobic": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Michroma": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Milonga": { "variants": [ "regular" ], "category": "display" } }, { "Miltonian": { "variants": [ "regular" ], "category": "display" } }, { "Miltonian Tattoo": { "variants": [ "regular" ], "category": "display" } }, { "Mina": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Miniver": { "variants": [ "regular" ], "category": "display" } }, { "Miriam Libre": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Mirza": { "variants": [ "regular", "500", "600", "700" ], "category": "display" } }, { "Miss Fajardose": { "variants": [ "regular" ], "category": "handwriting" } }, { "Mitr": { "variants": [ "200", "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Modak": { "variants": [ "regular" ], "category": "display" } }, { "Modern Antiqua": { "variants": [ "regular" ], "category": "display" } }, { "Mogra": { "variants": [ "regular" ], "category": "display" } }, { "Molengo": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Molle": { "variants": [ "italic" ], "category": "handwriting" } }, { "Monda": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Monofett": { "variants": [ "regular" ], "category": "display" } }, { "Monoton": { "variants": [ "regular" ], "category": "display" } }, { "Monsieur La Doulaise": { "variants": [ "regular" ], "category": "handwriting" } }, { "Montaga": { "variants": [ "regular" ], "category": "serif" } }, { "Montez": { "variants": [ "regular" ], "category": "handwriting" } }, { "Montserrat": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Montserrat Alternates": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Montserrat Subrayada": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Moul": { "variants": [ "regular" ], "category": "display" } }, { "Moulpali": { "variants": [ "regular" ], "category": "display" } }, { "Mountains of Christmas": { "variants": [ "regular", "700" ], "category": "display" } }, { "Mouse Memoirs": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Mr Bedfort": { "variants": [ "regular" ], "category": "handwriting" } }, { "Mr Dafoe": { "variants": [ "regular" ], "category": "handwriting" } }, { "Mr De Haviland": { "variants": [ "regular" ], "category": "handwriting" } }, { "Mrs Saint Delafield": { "variants": [ "regular" ], "category": "handwriting" } }, { "Mrs Sheppards": { "variants": [ "regular" ], "category": "handwriting" } }, { "Mukta": { "variants": [ "200", "300", "regular", "500", "600", "700", "800" ], "category": "sans-serif" } }, { "Mukta Mahee": { "variants": [ "200", "300", "regular", "500", "600", "700", "800" ], "category": "sans-serif" } }, { "Mukta Malar": { "variants": [ "200", "300", "regular", "500", "600", "700", "800" ], "category": "sans-serif" } }, { "Mukta Vaani": { "variants": [ "200", "300", "regular", "500", "600", "700", "800" ], "category": "sans-serif" } }, { "Muli": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Mystery Quest": { "variants": [ "regular" ], "category": "display" } }, { "NTR": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Nanum Brush Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Nanum Gothic": { "variants": [ "regular", "700", "800" ], "category": "sans-serif" } }, { "Nanum Gothic Coding": { "variants": [ "regular", "700" ], "category": "monospace" } }, { "Nanum Myeongjo": { "variants": [ "regular", "700", "800" ], "category": "serif" } }, { "Nanum Pen Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Neucha": { "variants": [ "regular" ], "category": "handwriting" } }, { "Neuton": { "variants": [ "200", "300", "regular", "italic", "700", "800" ], "category": "serif" } }, { "New Rocker": { "variants": [ "regular" ], "category": "display" } }, { "News Cycle": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Niconne": { "variants": [ "regular" ], "category": "handwriting" } }, { "Niramit": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "sans-serif" } }, { "Nixie One": { "variants": [ "regular" ], "category": "display" } }, { "Nobile": { "variants": [ "regular", "italic", "500", "500italic", "700", "700italic" ], "category": "sans-serif" } }, { "Nokora": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Norican": { "variants": [ "regular" ], "category": "handwriting" } }, { "Nosifer": { "variants": [ "regular" ], "category": "display" } }, { "Notable": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Nothing You Could Do": { "variants": [ "regular" ], "category": "handwriting" } }, { "Noticia Text": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Noto Sans": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Noto Sans JP": { "variants": [ "100", "300", "regular", "500", "700", "900" ], "category": "sans-serif" } }, { "Noto Sans KR": { "variants": [ "100", "300", "regular", "500", "700", "900" ], "category": "sans-serif" } }, { "Noto Serif": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Noto Serif JP": { "variants": [ "200", "300", "regular", "500", "600", "700", "900" ], "category": "sans-serif" } }, { "Noto Serif KR": { "variants": [ "200", "300", "regular", "500", "600", "700", "900" ], "category": "sans-serif" } }, { "Nova Cut": { "variants": [ "regular" ], "category": "display" } }, { "Nova Flat": { "variants": [ "regular" ], "category": "display" } }, { "Nova Mono": { "variants": [ "regular" ], "category": "monospace" } }, { "Nova Oval": { "variants": [ "regular" ], "category": "display" } }, { "Nova Round": { "variants": [ "regular" ], "category": "display" } }, { "Nova Script": { "variants": [ "regular" ], "category": "display" } }, { "Nova Slim": { "variants": [ "regular" ], "category": "display" } }, { "Nova Square": { "variants": [ "regular" ], "category": "display" } }, { "Numans": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Nunito": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Nunito Sans": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Odor Mean Chey": { "variants": [ "regular" ], "category": "display" } }, { "Offside": { "variants": [ "regular" ], "category": "display" } }, { "Old Standard TT": { "variants": [ "regular", "italic", "700" ], "category": "serif" } }, { "Oldenburg": { "variants": [ "regular" ], "category": "display" } }, { "Oleo Script": { "variants": [ "regular", "700" ], "category": "display" } }, { "Oleo Script Swash Caps": { "variants": [ "regular", "700" ], "category": "display" } }, { "Open Sans": { "variants": [ "300", "300italic", "regular", "italic", "600", "600italic", "700", "700italic", "800", "800italic" ], "category": "sans-serif" } }, { "Open Sans Condensed": { "variants": [ "300", "300italic", "700" ], "category": "sans-serif" } }, { "Oranienbaum": { "variants": [ "regular" ], "category": "serif" } }, { "Orbitron": { "variants": [ "regular", "500", "700", "900" ], "category": "sans-serif" } }, { "Oregano": { "variants": [ "regular", "italic" ], "category": "display" } }, { "Orienta": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Original Surfer": { "variants": [ "regular" ], "category": "display" } }, { "Oswald": { "variants": [ "200", "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Over the Rainbow": { "variants": [ "regular" ], "category": "handwriting" } }, { "Overlock": { "variants": [ "regular", "italic", "700", "700italic", "900", "900italic" ], "category": "display" } }, { "Overlock SC": { "variants": [ "regular" ], "category": "display" } }, { "Overpass": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Overpass Mono": { "variants": [ "300", "regular", "600", "700" ], "category": "monospace" } }, { "Ovo": { "variants": [ "regular" ], "category": "serif" } }, { "Oxygen": { "variants": [ "300", "regular", "700" ], "category": "sans-serif" } }, { "Oxygen Mono": { "variants": [ "regular" ], "category": "monospace" } }, { "PT Mono": { "variants": [ "regular" ], "category": "monospace" } }, { "PT Sans": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "PT Sans Caption": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "PT Sans Narrow": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "PT Serif": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "PT Serif Caption": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Pacifico": { "variants": [ "regular" ], "category": "handwriting" } }, { "Padauk": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Palanquin": { "variants": [ "100", "200", "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Palanquin Dark": { "variants": [ "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Pangolin": { "variants": [ "regular" ], "category": "handwriting" } }, { "Paprika": { "variants": [ "regular" ], "category": "display" } }, { "Parisienne": { "variants": [ "regular" ], "category": "handwriting" } }, { "Passero One": { "variants": [ "regular" ], "category": "display" } }, { "Passion One": { "variants": [ "regular", "700", "900" ], "category": "display" } }, { "Pathway Gothic One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Patrick Hand": { "variants": [ "regular" ], "category": "handwriting" } }, { "Patrick Hand SC": { "variants": [ "regular" ], "category": "handwriting" } }, { "Pattaya": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Patua One": { "variants": [ "regular" ], "category": "display" } }, { "Pavanam": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Paytone One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Peddana": { "variants": [ "regular" ], "category": "serif" } }, { "Peralta": { "variants": [ "regular" ], "category": "display" } }, { "Permanent Marker": { "variants": [ "regular" ], "category": "handwriting" } }, { "Petit Formal Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Petrona": { "variants": [ "regular" ], "category": "serif" } }, { "Philosopher": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Piedra": { "variants": [ "regular" ], "category": "display" } }, { "Pinyon Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Pirata One": { "variants": [ "regular" ], "category": "display" } }, { "Plaster": { "variants": [ "regular" ], "category": "display" } }, { "Play": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Playball": { "variants": [ "regular" ], "category": "display" } }, { "Playfair Display": { "variants": [ "regular", "italic", "700", "700italic", "900", "900italic" ], "category": "serif" } }, { "Playfair Display SC": { "variants": [ "regular", "italic", "700", "700italic", "900", "900italic" ], "category": "serif" } }, { "Podkova": { "variants": [ "regular", "500", "600", "700", "800" ], "category": "serif" } }, { "Poiret One": { "variants": [ "regular" ], "category": "display" } }, { "Poller One": { "variants": [ "regular" ], "category": "display" } }, { "Poly": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Pompiere": { "variants": [ "regular" ], "category": "display" } }, { "Pontano Sans": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Poor Story": { "variants": [ "regular" ], "category": "display" } }, { "Poppins": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Port Lligat Sans": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Port Lligat Slab": { "variants": [ "regular" ], "category": "serif" } }, { "Pragati Narrow": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Prata": { "variants": [ "regular" ], "category": "serif" } }, { "Preahvihear": { "variants": [ "regular" ], "category": "display" } }, { "Press Start 2P": { "variants": [ "regular" ], "category": "display" } }, { "Pridi": { "variants": [ "200", "300", "regular", "500", "600", "700" ], "category": "serif" } }, { "Princess Sofia": { "variants": [ "regular" ], "category": "handwriting" } }, { "Prociono": { "variants": [ "regular" ], "category": "serif" } }, { "Prompt": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Prosto One": { "variants": [ "regular" ], "category": "display" } }, { "Proza Libre": { "variants": [ "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic" ], "category": "sans-serif" } }, { "Puritan": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Purple Purse": { "variants": [ "regular" ], "category": "display" } }, { "Quando": { "variants": [ "regular" ], "category": "serif" } }, { "Quantico": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Quattrocento": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Quattrocento Sans": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Questrial": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Quicksand": { "variants": [ "300", "regular", "500", "700" ], "category": "sans-serif" } }, { "Quintessential": { "variants": [ "regular" ], "category": "handwriting" } }, { "Qwigley": { "variants": [ "regular" ], "category": "handwriting" } }, { "Racing Sans One": { "variants": [ "regular" ], "category": "display" } }, { "Radley": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Rajdhani": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Rakkas": { "variants": [ "regular" ], "category": "display" } }, { "Raleway": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Raleway Dots": { "variants": [ "regular" ], "category": "display" } }, { "Ramabhadra": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Ramaraja": { "variants": [ "regular" ], "category": "serif" } }, { "Rambla": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Rammetto One": { "variants": [ "regular" ], "category": "display" } }, { "Ranchers": { "variants": [ "regular" ], "category": "display" } }, { "Rancho": { "variants": [ "regular" ], "category": "handwriting" } }, { "Ranga": { "variants": [ "regular", "700" ], "category": "display" } }, { "Rasa": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "serif" } }, { "Rationale": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Ravi Prakash": { "variants": [ "regular" ], "category": "display" } }, { "Redressed": { "variants": [ "regular" ], "category": "handwriting" } }, { "Reem Kufi": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Reenie Beanie": { "variants": [ "regular" ], "category": "handwriting" } }, { "Revalia": { "variants": [ "regular" ], "category": "display" } }, { "Rhodium Libre": { "variants": [ "regular" ], "category": "serif" } }, { "Ribeye": { "variants": [ "regular" ], "category": "display" } }, { "Ribeye Marrow": { "variants": [ "regular" ], "category": "display" } }, { "Righteous": { "variants": [ "regular" ], "category": "display" } }, { "Risque": { "variants": [ "regular" ], "category": "display" } }, { "Roboto": { "variants": [ "100", "100italic", "300", "300italic", "regular", "italic", "500", "500italic", "700", "700italic", "900", "900italic" ], "category": "sans-serif" } }, { "Roboto Condensed": { "variants": [ "300", "300italic", "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Roboto Mono": { "variants": [ "100", "100italic", "300", "300italic", "regular", "italic", "500", "500italic", "700", "700italic" ], "category": "monospace" } }, { "Roboto Slab": { "variants": [ "100", "300", "regular", "700" ], "category": "serif" } }, { "Rochester": { "variants": [ "regular" ], "category": "handwriting" } }, { "Rock Salt": { "variants": [ "regular" ], "category": "handwriting" } }, { "Rokkitt": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "serif" } }, { "Romanesco": { "variants": [ "regular" ], "category": "handwriting" } }, { "Ropa Sans": { "variants": [ "regular", "italic" ], "category": "sans-serif" } }, { "Rosario": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Rosarivo": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Rouge Script": { "variants": [ "regular" ], "category": "handwriting" } }, { "Rozha One": { "variants": [ "regular" ], "category": "serif" } }, { "Rubik": { "variants": [ "300", "300italic", "regular", "italic", "500", "500italic", "700", "700italic", "900", "900italic" ], "category": "sans-serif" } }, { "Rubik Mono One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Ruda": { "variants": [ "regular", "700", "900" ], "category": "sans-serif" } }, { "Rufina": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Ruge Boogie": { "variants": [ "regular" ], "category": "handwriting" } }, { "Ruluko": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Rum Raisin": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Ruslan Display": { "variants": [ "regular" ], "category": "display" } }, { "Russo One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Ruthie": { "variants": [ "regular" ], "category": "handwriting" } }, { "Rye": { "variants": [ "regular" ], "category": "display" } }, { "Sacramento": { "variants": [ "regular" ], "category": "handwriting" } }, { "Sahitya": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Sail": { "variants": [ "regular" ], "category": "display" } }, { "Saira": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Saira Condensed": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Saira Extra Condensed": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Saira Semi Condensed": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Salsa": { "variants": [ "regular" ], "category": "display" } }, { "Sanchez": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Sancreek": { "variants": [ "regular" ], "category": "display" } }, { "Sansita": { "variants": [ "regular", "italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "sans-serif" } }, { "Sarala": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Sarina": { "variants": [ "regular" ], "category": "display" } }, { "Sarpanch": { "variants": [ "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Satisfy": { "variants": [ "regular" ], "category": "handwriting" } }, { "Sawarabi Gothic": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Sawarabi Mincho": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Scada": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "sans-serif" } }, { "Scheherazade": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Schoolbell": { "variants": [ "regular" ], "category": "handwriting" } }, { "Scope One": { "variants": [ "regular" ], "category": "serif" } }, { "Seaweed Script": { "variants": [ "regular" ], "category": "display" } }, { "Secular One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Sedgwick Ave": { "variants": [ "regular" ], "category": "handwriting" } }, { "Sedgwick Ave Display": { "variants": [ "regular" ], "category": "handwriting" } }, { "Sevillana": { "variants": [ "regular" ], "category": "display" } }, { "Seymour One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Shadows Into Light": { "variants": [ "regular" ], "category": "handwriting" } }, { "Shadows Into Light Two": { "variants": [ "regular" ], "category": "handwriting" } }, { "Shanti": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Share": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "display" } }, { "Share Tech": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Share Tech Mono": { "variants": [ "regular" ], "category": "monospace" } }, { "Shojumaru": { "variants": [ "regular" ], "category": "display" } }, { "Short Stack": { "variants": [ "regular" ], "category": "handwriting" } }, { "Shrikhand": { "variants": [ "regular" ], "category": "display" } }, { "Siemreap": { "variants": [ "regular" ], "category": "display" } }, { "Sigmar One": { "variants": [ "regular" ], "category": "display" } }, { "Signika": { "variants": [ "300", "regular", "600", "700" ], "category": "sans-serif" } }, { "Signika Negative": { "variants": [ "300", "regular", "600", "700" ], "category": "sans-serif" } }, { "Simonetta": { "variants": [ "regular", "italic", "900", "900italic" ], "category": "display" } }, { "Sintony": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Sirin Stencil": { "variants": [ "regular" ], "category": "display" } }, { "Six Caps": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Skranji": { "variants": [ "regular", "700" ], "category": "display" } }, { "Slabo 13px": { "variants": [ "regular" ], "category": "serif" } }, { "Slabo 27px": { "variants": [ "regular" ], "category": "serif" } }, { "Slackey": { "variants": [ "regular" ], "category": "display" } }, { "Smokum": { "variants": [ "regular" ], "category": "display" } }, { "Smythe": { "variants": [ "regular" ], "category": "display" } }, { "Sniglet": { "variants": [ "regular", "800" ], "category": "display" } }, { "Snippet": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Snowburst One": { "variants": [ "regular" ], "category": "display" } }, { "Sofadi One": { "variants": [ "regular" ], "category": "display" } }, { "Sofia": { "variants": [ "regular" ], "category": "handwriting" } }, { "Song Myung": { "variants": [ "regular" ], "category": "serif" } }, { "Sonsie One": { "variants": [ "regular" ], "category": "display" } }, { "Sorts Mill Goudy": { "variants": [ "regular", "italic" ], "category": "serif" } }, { "Source Code Pro": { "variants": [ "200", "300", "regular", "500", "600", "700", "900" ], "category": "monospace" } }, { "Source Sans Pro": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "600", "600italic", "700", "700italic", "900", "900italic" ], "category": "sans-serif" } }, { "Source Serif Pro": { "variants": [ "regular", "600", "700" ], "category": "serif" } }, { "Space Mono": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "monospace" } }, { "Special Elite": { "variants": [ "regular" ], "category": "display" } }, { "Spectral": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic" ], "category": "serif" } }, { "Spectral SC": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic" ], "category": "serif" } }, { "Spicy Rice": { "variants": [ "regular" ], "category": "display" } }, { "Spinnaker": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Spirax": { "variants": [ "regular" ], "category": "display" } }, { "Squada One": { "variants": [ "regular" ], "category": "display" } }, { "Sree Krushnadevaraya": { "variants": [ "regular" ], "category": "serif" } }, { "Sriracha": { "variants": [ "regular" ], "category": "handwriting" } }, { "Srisakdi": { "variants": [ "regular", "700" ], "category": "display" } }, { "Stalemate": { "variants": [ "regular" ], "category": "handwriting" } }, { "Stalinist One": { "variants": [ "regular" ], "category": "display" } }, { "Stardos Stencil": { "variants": [ "regular", "700" ], "category": "display" } }, { "Stint Ultra Condensed": { "variants": [ "regular" ], "category": "display" } }, { "Stint Ultra Expanded": { "variants": [ "regular" ], "category": "display" } }, { "Stoke": { "variants": [ "300", "regular" ], "category": "serif" } }, { "Strait": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Stylish": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Sue Ellen Francisco": { "variants": [ "regular" ], "category": "handwriting" } }, { "Suez One": { "variants": [ "regular" ], "category": "serif" } }, { "Sumana": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Sunflower": { "variants": [ "300", "500", "700" ], "category": "sans-serif" } }, { "Sunshiney": { "variants": [ "regular" ], "category": "handwriting" } }, { "Supermercado One": { "variants": [ "regular" ], "category": "display" } }, { "Sura": { "variants": [ "regular", "700" ], "category": "serif" } }, { "Suranna": { "variants": [ "regular" ], "category": "serif" } }, { "Suravaram": { "variants": [ "regular" ], "category": "serif" } }, { "Suwannaphum": { "variants": [ "regular" ], "category": "display" } }, { "Swanky and Moo Moo": { "variants": [ "regular" ], "category": "handwriting" } }, { "Syncopate": { "variants": [ "regular", "700" ], "category": "sans-serif" } }, { "Tajawal": { "variants": [ "200", "300", "regular", "500", "700", "800", "900" ], "category": "sans-serif" } }, { "Tangerine": { "variants": [ "regular", "700" ], "category": "handwriting" } }, { "Taprom": { "variants": [ "regular" ], "category": "display" } }, { "Tauri": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Taviraj": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "serif" } }, { "Teko": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "sans-serif" } }, { "Telex": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Tenali Ramakrishna": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Tenor Sans": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Text Me One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "The Girl Next Door": { "variants": [ "regular" ], "category": "handwriting" } }, { "Tienne": { "variants": [ "regular", "700", "900" ], "category": "serif" } }, { "Tillana": { "variants": [ "regular", "500", "600", "700", "800" ], "category": "handwriting" } }, { "Timmana": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Tinos": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Titan One": { "variants": [ "regular" ], "category": "display" } }, { "Titillium Web": { "variants": [ "200", "200italic", "300", "300italic", "regular", "italic", "600", "600italic", "700", "700italic", "900" ], "category": "sans-serif" } }, { "Trade Winds": { "variants": [ "regular" ], "category": "display" } }, { "Trirong": { "variants": [ "100", "100italic", "200", "200italic", "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic", "800", "800italic", "900", "900italic" ], "category": "serif" } }, { "Trocchi": { "variants": [ "regular" ], "category": "serif" } }, { "Trochut": { "variants": [ "regular", "italic", "700" ], "category": "display" } }, { "Trykker": { "variants": [ "regular" ], "category": "serif" } }, { "Tulpen One": { "variants": [ "regular" ], "category": "display" } }, { "Ubuntu": { "variants": [ "300", "300italic", "regular", "italic", "500", "500italic", "700", "700italic" ], "category": "sans-serif" } }, { "Ubuntu Condensed": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Ubuntu Mono": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "monospace" } }, { "Ultra": { "variants": [ "regular" ], "category": "serif" } }, { "Uncial Antiqua": { "variants": [ "regular" ], "category": "display" } }, { "Underdog": { "variants": [ "regular" ], "category": "display" } }, { "Unica One": { "variants": [ "regular" ], "category": "display" } }, { "UnifrakturCook": { "variants": [ "700" ], "category": "display" } }, { "UnifrakturMaguntia": { "variants": [ "regular" ], "category": "display" } }, { "Unkempt": { "variants": [ "regular", "700" ], "category": "display" } }, { "Unlock": { "variants": [ "regular" ], "category": "display" } }, { "Unna": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "VT323": { "variants": [ "regular" ], "category": "monospace" } }, { "Vampiro One": { "variants": [ "regular" ], "category": "display" } }, { "Varela": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Varela Round": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Vast Shadow": { "variants": [ "regular" ], "category": "display" } }, { "Vesper Libre": { "variants": [ "regular", "500", "700", "900" ], "category": "serif" } }, { "Vibur": { "variants": [ "regular" ], "category": "handwriting" } }, { "Vidaloka": { "variants": [ "regular" ], "category": "serif" } }, { "Viga": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Voces": { "variants": [ "regular" ], "category": "display" } }, { "Volkhov": { "variants": [ "regular", "italic", "700", "700italic" ], "category": "serif" } }, { "Vollkorn": { "variants": [ "regular", "italic", "600", "600italic", "700", "700italic", "900", "900italic" ], "category": "serif" } }, { "Vollkorn SC": { "variants": [ "regular", "600", "700", "900" ], "category": "serif" } }, { "Voltaire": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Waiting for the Sunrise": { "variants": [ "regular" ], "category": "handwriting" } }, { "Wallpoet": { "variants": [ "regular" ], "category": "display" } }, { "Walter Turncoat": { "variants": [ "regular" ], "category": "handwriting" } }, { "Warnes": { "variants": [ "regular" ], "category": "display" } }, { "Wellfleet": { "variants": [ "regular" ], "category": "display" } }, { "Wendy One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Wire One": { "variants": [ "regular" ], "category": "sans-serif" } }, { "Work Sans": { "variants": [ "100", "200", "300", "regular", "500", "600", "700", "800", "900" ], "category": "sans-serif" } }, { "Yanone Kaffeesatz": { "variants": [ "200", "300", "regular", "700" ], "category": "sans-serif" } }, { "Yantramanav": { "variants": [ "100", "300", "regular", "500", "700", "900" ], "category": "sans-serif" } }, { "Yatra One": { "variants": [ "regular" ], "category": "display" } }, { "Yellowtail": { "variants": [ "regular" ], "category": "handwriting" } }, { "Yeon Sung": { "variants": [ "regular" ], "category": "display" } }, { "Yeseva One": { "variants": [ "regular" ], "category": "display" } }, { "Yesteryear": { "variants": [ "regular" ], "category": "handwriting" } }, { "Yrsa": { "variants": [ "300", "regular", "500", "600", "700" ], "category": "serif" } }, { "Zeyada": { "variants": [ "regular" ], "category": "handwriting" } }, { "Zilla Slab": { "variants": [ "300", "300italic", "regular", "italic", "500", "500italic", "600", "600italic", "700", "700italic" ], "category": "serif" } }, { "Zilla Slab Highlight": { "variants": [ "regular", "700" ], "category": "display" } } ]PK\ud@&&)classes/class-cartflows-compatibility.phpnuW+Aload_files(); // Override post meta. add_action( 'wp', array( $this, 'override_meta' ), 0 ); add_action( 'wp_enqueue_scripts', array( $this, 'load_fontawesome' ), 10000 ); } /** * Load page builder compatibility files */ public function load_files() { if ( class_exists( '\Elementor\Plugin' ) ) { require_once CARTFLOWS_DIR . 'classes/class-cartflows-elementor-compatibility.php'; } if ( $this->is_divi_enabled() ) { require_once CARTFLOWS_DIR . 'classes/class-cartflows-divi-compatibility.php'; } if ( $this->is_bb_enabled() ) { require_once CARTFLOWS_DIR . 'classes/class-cartflows-bb-compatibility.php'; } if ( class_exists( 'TCB_Post' ) ) { require_once CARTFLOWS_DIR . 'classes/class-cartflows-thrive-compatibility.php'; } if ( defined( 'LEARNDASH_VERSION' ) ) { require_once CARTFLOWS_DIR . 'classes/class-cartflows-learndash-compatibility.php'; } } /** * Check if it is beaver builder enabled. * * @since 1.1.4 */ public function is_bb_enabled() { if ( class_exists( 'FLBuilderModel' ) ) { return true; } return false; } /** * Check if elementor preview mode is on. */ public function is_elementor_preview_mode() { if ( class_exists( '\Elementor\Plugin' ) ) { if ( \Elementor\Plugin::$instance->preview->is_preview_mode() ) { return true; } } return false; } /** * Get Current Theme. */ public function get_current_theme() { $theme_name = ''; $theme = wp_get_theme(); if ( isset( $theme->parent_theme ) && '' != $theme->parent_theme || null != $theme->parent_theme ) { $theme_name = $theme->parent_theme; } else { $theme_name = $theme->name; } return $theme_name; } /** * Check if it is beaver builder preview mode */ public function is_bb_preview_mode() { if ( class_exists( 'FLBuilderModel' ) ) { if ( FLBuilderModel::is_builder_active() ) { return true; } else { return false; } } return false; } /** * Check for page builder preview mode. */ public function is_page_builder_preview() { if ( $this->is_elementor_preview_mode() || $this->is_bb_preview_mode() || $this->is_divi_builder_preview() ) { return true; } return false; } /** * Check if divi builder enabled for post id. */ public function is_divi_builder_preview() { if ( isset( $_GET['et_fb'] ) && '1' === $_GET['et_fb'] ) { //phpcs:ignore return true; } return false; } /** * Check if divi builder enabled for post id. * * @param int $post_id post id. */ public function is_divi_builder_enabled( $post_id ) { if ( function_exists( 'et_pb_is_pagebuilder_used' ) && et_pb_is_pagebuilder_used( $post_id ) ) { return true; } return false; } /** * Check if compatibility theme enabled. */ public function is_compatibility_theme_enabled() { $theme = wp_get_theme(); $is_compatibility = false; if ( $this->is_divi_enabled( $theme ) || $this->is_flatsome_enabled( $theme ) || $this->is_pro_enabled( $theme ) || $this->is_kallyas_enabled( $theme ) ) { $is_compatibility = true; } return apply_filters( 'cartflows_is_compatibility_theme', $is_compatibility ); } /** * Check if pro theme enabled for post id. * * @param object $theme theme data. * @return boolean */ public function is_pro_enabled( $theme = false ) { if ( ! $theme ) { $theme = wp_get_theme(); } if ( 'Pro' == $theme->name ) { return true; } return false; } /** * Check if kallyas theme enabled for post id. * * @param object $theme theme data. * @return boolean */ public function is_kallyas_enabled( $theme = false ) { if ( ! $theme ) { $theme = wp_get_theme(); } if ( 'Kallyas' == $theme->name ) { return true; } return false; } /** * Check if divi builder enabled for post id. * * @param object $theme theme data. * @return boolean */ public function is_divi_enabled( $theme = false ) { if ( ! $theme ) { $theme = wp_get_theme(); } if ( 'Divi' == $theme->name || 'Divi' == $theme->parent_theme || 'Extra' == $theme->name || 'Extra' == $theme->parent_theme ) { return true; } return false; } /** * Check if Divi theme is install status. * * @return boolean */ public function is_divi_theme_installed() { foreach ( (array) wp_get_themes() as $theme_dir => $theme ) { if ( 'Divi' == $theme->name || 'Divi' == $theme->parent_theme || 'Extra' == $theme->name || 'Extra' == $theme->parent_theme ) { return true; } } return false; } /** * Check if Flatsome enabled for post id. * * @param object $theme theme data. * @return boolean */ public function is_flatsome_enabled( $theme = false ) { if ( ! $theme ) { $theme = wp_get_theme(); } if ( 'Flatsome' == $theme->name || 'Flatsome' == $theme->parent_theme ) { return true; } return false; } /** * Check if The7 enabled for post id. * * @param object $theme theme data. * @return boolean */ public function is_the_seven_enabled( $theme = false ) { if ( ! $theme ) { $theme = wp_get_theme(); } if ( 'The7' == $theme->name || 'The7' == $theme->parent_theme ) { return true; } return false; } /** * Check if OceanWp enabled for post id. * * @param object $theme theme data. * @return boolean */ public function is_oceanwp_enabled( $theme = false ) { if ( ! $theme ) { $theme = wp_get_theme(); } if ( 'OceanWP' == $theme->name || 'OceanWP' == $theme->parent_theme ) { return true; } return false; } /** * Check for thrive architect edit page. * * @param int $post_id post id. */ public function is_thrive_edit_page( $post_id ) { if ( true === $this->is_thrive_builder_page( $post_id ) ) { return true; } else { return false; } } /** * Check if the page being rendered is the main ID on the editor page. * * @since 1.0.0 * @param String $post_id Post ID which is to be rendered. * @return boolean True if current if is being rendered is not being edited. */ private function is_thrive_builder_page( $post_id ) { $tve = ( isset( $_GET['tve'] ) && 'true' == $_GET['tve'] ) ? true : false; //phpcs:ignore $post = isset( $_GET['post'] ) ? intval( wp_unslash( $_GET['post'] ) ) : false; //phpcs:ignore return ( true == $tve && $post_id !== $post ); } /** * Overwrite meta for page */ public function override_meta() { // don't override meta for `elementor_library` post type. if ( 'elementor_library' == get_post_type() ) { return; } if ( ! is_singular() ) { return; } global $post; $post_id = $post->ID; $post_type = get_post_type(); if ( 'cartflows_step' == $post_type && ( $this->is_elementor_preview_mode() || $this->is_bb_preview_mode() || $this->is_thrive_edit_page( $post_id ) || $this->is_divi_builder_enabled( $post_id ) ) ) { if ( '' == $post->post_content ) { $this->overwrite_template( $post_id ); } } } /** * Assign cartflow canvas template to page. * * @param int $post_id post ID. */ public function overwrite_template( $post_id ) { $template = 'cartflows-canvas'; $key = '_wp_page_template'; $record_exists = get_post_meta( $post_id, $key, true ); if ( 'cartflows-canvas' == $record_exists ) { return; } // As elementor doesn't allow update post meta using update_post_meta, run wpdb query to update post meta. if ( class_exists( '\Elementor\Plugin' ) ) { global $wpdb; if ( '' == $record_exists || ! $record_exists ) { $wpdb->insert( $wpdb->prefix . 'postmeta', array( 'post_id' => $post_id, 'meta_key' => $key,//phpcs:ignore 'meta_value' => $template, //phpcs:ignore ) );// db call ok;. // alternative query to above query. // $table = $wpdb->prefix . 'postmeta'; // $wpdb->query($wpdb->prepare( "INSERT INTO { $table } ( `post_id`, `meta_key`, 'meta_value' ) // VALUES ( '$post_id', '$key', '$template' )" ) );// db call ok; no-cache ok. } else { $wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->postmeta} SET meta_value = %s WHERE meta_key = %s AND post_id = %s;", $template, $key, $post_id ) ); // db call ok; no-cache ok. } } else { update_post_meta( $post_id, $key, $template ); } } /** * Load font awesome style from oceanwp on checkout page. */ public function load_fontawesome() { $theme = get_template(); if ( 'oceanwp' == strtolower( $theme ) && wcf()->utils->is_step_post_type() ) { $load_fa = apply_filters( 'cartflows_maybe_load_font_awesome', true ); if ( $load_fa ) { wp_enqueue_style( 'font-awesome', OCEANWP_CSS_DIR_URI . 'third/font-awesome.min.css', false );//phpcs:ignore } $custom_css = ' #oceanwp-cart-sidebar-wrap, #owp-qv-wrap{ display: none; }'; wp_add_inline_style( 'wcf-frontend-global', $custom_css ); } } } } Cartflows_Compatibility::get_instance(); PK\T3classes/class-cartflows-elementor-compatibility.phpnuW+Ais_woo_active ) { // On Editor - Register WooCommerce frontend hooks before the Editor init. // Priority = 5, in order to allow plugins remove/add their wc hooks on init. if ( ! empty( $_REQUEST['action'] ) && 'elementor' === $_REQUEST['action'] && is_admin() ) { //phpcs:ignore add_action( 'init', array( $this, 'register_wc_hooks' ), 5 ); } add_action( 'elementor/editor/before_enqueue_scripts', array( $this, 'maybe_init_cart' ) ); } } /** * Get page template fiter callback for elementor preview mode * * @param string $template page template. * @return string */ public function get_page_template( $template ) { if ( is_singular() ) { $document = Plugin::$instance->documents->get_doc_for_frontend( get_the_ID() ); if ( $document ) { $template = $document->get_meta( '_wp_page_template' ); } } return $template; } /** * Rgister wc hookes for elementor preview mode */ public function register_wc_hooks() { wc()->frontend_includes(); } /** * Init cart in elementor preview mode */ public function maybe_init_cart() { $has_cart = is_a( WC()->cart, 'WC_Cart' ); if ( ! $has_cart ) { $session_class = apply_filters( 'woocommerce_session_handler', 'WC_Session_Handler' ); WC()->session = new $session_class(); WC()->session->init(); WC()->cart = new \WC_Cart(); WC()->customer = new \WC_Customer( get_current_user_id(), true ); } } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Elementor_Compatibility::get_instance(); PK\*!Z).classes/class-cartflows-divi-compatibility.phpnuW+Autils->is_step_post_type() ) { $bool = true; } return $bool; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Thrive_Compatibility::get_instance(); PK\.L classes/class-cartflows-meta.phpnuW+A
    meta->get_area_field( array( 'label' => __( 'Custom Script', 'cartflows' ), 'name' => 'wcf-custom-script', 'value' => htmlspecialchars( $options['wcf-custom-script'], ENT_COMPAT, 'utf-8' ), 'help' => esc_html__( 'Custom script lets you add your own custom script on front end of this flow page.', 'cartflows' ), ) ); ?>
    utils->get_flow_id_from_order( $post->ID ); $checkout_id = wcf()->utils->get_checkout_id_from_order( $post->ID ); $html_data = "

    This is for debugging only.

    Flow ID:: " . $flow_id . "

    Checkout ID: " . $checkout_id . '

    '; echo $html_data; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Metabox::get_instance(); endif; PK\=N !classes/class-cartflows-utils.phpnuW+Aget_step_post_type() === $this->current_post_type( $post_type ) ) { return true; } return false; } /** * Check if post type is of flow. * * @param string $post_type post type. * @return bool */ public function is_flow_post_type( $post_type = '' ) { if ( $this->get_flow_post_type() === $this->current_post_type( $post_type ) ) { return true; } return false; } /** * Get post type of step. * * @return string */ public function get_step_post_type() { return CARTFLOWS_STEP_POST_TYPE; } /** * Get post type of flow. * * @return string */ public function get_flow_post_type() { return CARTFLOWS_FLOW_POST_TYPE; } /** * Get flow id * * @return int */ public function get_flow_id() { global $post; return get_post_meta( $post->ID, 'wcf-flow-id', true ); } /** * Get flow id by step * * @param int $step_id step ID. * @return int */ public function get_flow_id_from_step_id( $step_id ) { return get_post_meta( $step_id, 'wcf-flow-id', true ); } /** * Get flow steps by id * * @param int $flow_id flow ID. * @return int */ public function get_flow_steps( $flow_id ) { $steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( is_array( $steps ) && ! empty( $steps ) ) { return $steps; } return false; } /** * Get template type of step * * @param int $step_id step ID. * @return int */ public function get_step_type( $step_id ) { return get_post_meta( $step_id, 'wcf-step-type', true ); } /** * Get next id for step * * @param int $flow_id flow ID. * @param int $step_id step ID. * @return bool */ public function get_next_step_id( $flow_id, $step_id ) { $steps = $this->get_flow_steps( $flow_id ); $step_id = intval( $step_id ); if ( ! $steps ) { return false; } foreach ( $steps as $i => $step ) { if ( intval( $step['id'] ) === $step_id ) { $next_i = $i + 1; if ( isset( $steps[ $next_i ] ) ) { $navigation = $steps[ $next_i ]; return intval( $navigation['id'] ); } break; } } return false; } /** * Get next id for step * * @param int $order_id order ID. * @return int */ public function get_flow_id_from_order( $order_id ) { $flow_id = get_post_meta( $order_id, '_wcf_flow_id', true ); return intval( $flow_id ); } /** * Get checkout id for order * * @param int $order_id order ID. * @return int */ public function get_checkout_id_from_order( $order_id ) { $checkout_id = get_post_meta( $order_id, '_wcf_checkout_id', true ); return intval( $checkout_id ); } /** * We are using this function mostly in ajax on checkout page * * @return bool */ public function get_checkout_id_from_post_data() { if ( isset( $_POST['_wcf_checkout_id'] ) ) { //phpcs:ignore $checkout_id = filter_var( wp_unslash( $_POST['_wcf_checkout_id'] ), FILTER_SANITIZE_NUMBER_INT ); //phpcs:ignore return intval( $checkout_id ); } return false; } /** * We are using this function mostly in ajax on checkout page * * @return bool */ public function get_flow_id_from_post_data() { if ( isset( $_POST['_wcf_flow_id'] ) ) { //phpcs:ignore $flow_id = filter_var( wp_unslash( $_POST['_wcf_flow_id'] ), FILTER_SANITIZE_NUMBER_INT ); //phpcs:ignore return intval( $flow_id ); } return false; } /** * Get optin id for order * * @param int $order_id order ID. * @return int */ public function get_optin_id_from_order( $order_id ) { $optin_id = get_post_meta( $order_id, '_wcf_optin_id', true ); return intval( $optin_id ); } /** * We are using this function mostly in ajax on checkout page * * @return bool */ public function get_optin_id_from_post_data() { if ( isset( $_POST['_wcf_optin_id'] ) ) { //phpcs:ignore $optin_id = filter_var( wp_unslash( $_POST['_wcf_optin_id'] ), FILTER_SANITIZE_NUMBER_INT ); //phpcs:ignore return intval( $optin_id ); } return false; } /** * Check for thank you page * * @param int $step_id step ID. * @return bool */ public function check_is_thankyou_page( $step_id ) { $step_type = $this->get_step_type( $step_id ); if ( 'thankyou' === $step_type ) { return true; } return false; } /** * Check for offer page * * @param int $step_id step ID. * @return bool */ public function check_is_offer_page( $step_id ) { $step_type = $this->get_step_type( $step_id ); if ( 'upsell' === $step_type || 'downsell' === $step_type ) { return true; } return false; } /** * Check if loaded page requires woo. * * @return bool */ public function check_is_woo_required_page() { global $post; $step_id = $post->ID; $woo_not_required_type = array( 'landing' ); $step_type = $this->get_step_type( $step_id ); return ( ! in_array( $step_type, $woo_not_required_type, true ) ); } /** * Define constant for cache * * @return void */ public function do_not_cache() { wcf_maybe_define_constant( 'DONOTCACHEPAGE', true ); wcf_maybe_define_constant( 'DONOTCACHEOBJECT', true ); wcf_maybe_define_constant( 'DONOTCACHEDB', true ); nocache_headers(); } /** * Get linking url * * @param array $args query args. * @return string */ public function get_linking_url( $args = array() ) { $url = get_home_url(); $url = add_query_arg( $args, $url ); return $url; } /** * Get assets urls * * @return array * @since 1.1.6 */ public function get_assets_path() { $rtl = ''; if ( is_rtl() ) { $rtl = '-rtl'; } $file_prefix = ''; $dir_name = ''; $is_min = apply_filters( 'cartflows_load_min_assets', false ); if ( $is_min ) { $file_prefix = '.min'; $dir_name = 'min-'; } $js_gen_path = CARTFLOWS_URL . 'assets/' . $dir_name . 'js/'; $css_gen_path = CARTFLOWS_URL . 'assets/' . $dir_name . 'css/'; return array( 'css' => $css_gen_path, 'js' => $js_gen_path, 'file_prefix' => $file_prefix, 'rtl' => $rtl, ); } /** * Get assets css url * * @param string $file file name. * @return string * @since 1.1.6 */ public function get_css_url( $file ) { $assets_vars = wcf()->assets_vars; $url = $assets_vars['css'] . $file . $assets_vars['rtl'] . $assets_vars['file_prefix'] . '.css'; return $url; } /** * Get assets js url * * @param string $file file name. * @return string * @since 1.1.6 */ public function get_js_url( $file ) { $assets_vars = wcf()->assets_vars; $url = $assets_vars['js'] . $file . $assets_vars['file_prefix'] . '.js'; return $url; } } /** * Get a specific property of an array without needing to check if that property exists. * * Provide a default value if you want to return a specific value if the property is not set. * * @param array $array Array from which the property's value should be retrieved. * @param string $prop Name of the property to be retrieved. * @param string $default Optional. Value that should be returned if the property is not set or empty. Defaults to null. * * @return null|string|mixed The value */ function wcf_get_prop( $array, $prop, $default = null ) { if ( ! is_array( $array ) && ! ( is_object( $array ) && $array instanceof ArrayAccess ) ) { return $default; } if ( isset( $array[ $prop ] ) ) { $value = $array[ $prop ]; } else { $value = ''; } return empty( $value ) && null !== $default ? $default : $value; } PK\u%B%B$classes/class-cartflows-frontend.phpnuW+Alogger->log( 'Start-' . __CLASS__ . '::' . __FUNCTION__ ); wcf()->logger->log( 'Only for thank you page' ); if ( wcf()->flow->is_thankyou_page_exists( $order ) ) { if ( _is_wcf_doing_checkout_ajax() ) { $checkout_id = wcf()->utils->get_checkout_id_from_post_data(); if ( ! $checkout_id ) { $checkout_id = wcf()->utils->get_checkout_id_from_order( $order->get_id() ); } } else { $checkout_id = wcf()->utils->get_checkout_id_from_order( $order->get_id() ); } wcf()->logger->log( 'Checkout ID : ' . $checkout_id ); if ( $checkout_id ) { $thankyou_step_id = wcf()->flow->get_thankyou_page_id( $order ); if ( $thankyou_step_id ) { $order_recieve_url = get_permalink( $thankyou_step_id ); $order_recieve_url = add_query_arg( array( 'wcf-key' => $order->get_order_key(), 'wcf-order' => $order->get_id(), ), $order_recieve_url ); } } } wcf()->logger->log( 'End-' . __CLASS__ . '::' . __FUNCTION__ ); Cartflows_Helper::send_fb_response_if_enabled( $order->get_id() ); Cartflows_Tracking::send_ga_data_if_enabled( $order->get_id() ); return $order_recieve_url; } /** * Cancel and redirect to checkout * * @param string $return_url url. * @since 1.0.0 */ public function redirect_to_checkout_on_cancel( $return_url ) { if ( _is_wcf_doing_checkout_ajax() ) { $checkout_id = wcf()->utils->get_checkout_id_from_post_data(); if ( ! $checkout_id ) { $checkout_id = wcf()->utils->get_checkout_id_from_order( $order->get_id() ); } } else { $checkout_id = wcf()->utils->get_checkout_id_from_order( $order->get_id() ); } if ( $checkout_id ) { $return_url = add_query_arg( array( 'cancel_order' => 'true', '_wpnonce' => wp_create_nonce( 'woocommerce-cancel_order' ), ), get_permalink( $checkout_id ) ); } return $return_url; } /** * Remove theme styles. * * @since 1.0.0 */ public function remove_theme_styles() { if ( Cartflows_Compatibility::get_instance()->is_compatibility_theme_enabled() ) { return; } $page_template = get_post_meta( _get_wcf_step_id(), '_wp_page_template', true ); $page_template = apply_filters( 'cartflows_page_template', $page_template ); if ( 'default' === $page_template ) { return; } // get all styles data. global $wp_styles; global $wp_scripts; $get_stylesheet = 'themes/' . get_stylesheet() . '/'; $get_template = 'themes/' . get_template() . '/'; $remove_styles = apply_filters( 'cartflows_remove_theme_styles', true ); if ( $remove_styles ) { // loop over all of the registered scripts.. foreach ( $wp_styles->registered as $handle => $data ) { if ( strpos( $data->src, $get_template ) !== false || strpos( $data->src, $get_stylesheet ) !== false ) { // remove it. wp_deregister_style( $handle ); wp_dequeue_style( $handle ); } } } $remove_scripts = apply_filters( 'cartflows_remove_theme_scripts', true ); if ( $remove_scripts ) { // loop over all of the registered scripts. foreach ( $wp_scripts->registered as $handle => $data ) { if ( strpos( $data->src, $get_template ) !== false || strpos( $data->src, $get_stylesheet ) !== false ) { // remove it. wp_deregister_script( $handle ); wp_dequeue_script( $handle ); } } } } /** * Update main order data in transient. * * @param array $woo_styles new styles array. * @since 1.0.0 * @return array. */ public function woo_default_css( $woo_styles ) { $woo_styles = array( 'woocommerce-layout' => array( 'src' => plugins_url( 'assets/css/woocommerce-layout.css', WC_PLUGIN_FILE ), 'deps' => '', 'version' => WC_VERSION, 'media' => 'all', 'has_rtl' => true, ), 'woocommerce-smallscreen' => array( 'src' => plugins_url( 'assets/css/woocommerce-smallscreen.css', WC_PLUGIN_FILE ), 'deps' => 'woocommerce-layout', 'version' => WC_VERSION, 'media' => 'only screen and (max-width: ' . apply_filters( 'woocommerce_style_smallscreen_breakpoint', '768px' ) . ')', 'has_rtl' => true, ), 'woocommerce-general' => array( 'src' => plugins_url( 'assets/css/woocommerce.css', WC_PLUGIN_FILE ), 'deps' => '', 'version' => WC_VERSION, 'media' => 'all', 'has_rtl' => true, ), ); return $woo_styles; } /** * Init Actions. * * @since 1.0.0 */ public function init_actions() { $this->set_flow_session(); } /** * Set flow session. * * @since 1.0.0 */ public function set_flow_session() { if ( wcf()->utils->is_step_post_type() ) { global $wp; add_action( 'wp_head', array( $this, 'noindex_flow' ) ); wcf()->utils->do_not_cache(); if ( _is_wcf_thankyou_type() ) { /* Set key to support pixel */ if ( isset( $_GET['wcf-key'] ) ) { //phpcs:ignore $wcf_key = sanitize_text_field( wp_unslash( $_GET['wcf-key'] ) ); //phpcs:ignore $_GET['key'] = $wcf_key; $_REQUEST['key'] = $wcf_key; } if ( isset( $_GET['wcf-order'] ) ) { //phpcs:ignore $wcf_order = intval( wp_unslash( $_GET['wcf-order'] ) ); //phpcs:ignore $_GET['order'] = $wcf_order; $_REQUEST['order'] = $wcf_order; $_GET['order-received'] = $wcf_order; $_REQUEST['order-received'] = $wcf_order; $wp->set_query_var( 'order-received', $wcf_order ); } } } } /** * Add noindex, nofollow. * * @since 1.0.0 */ public function noindex_flow() { $common = Cartflows_Helper::get_common_settings(); if ( 'enable' === $common['disallow_indexing'] ) { echo ''; } } /** * WP Actions. * * @since 1.0.0 */ public function wp_actions() { if ( wcf()->utils->is_step_post_type() ) { if ( ! wcf()->is_woo_active && wcf()->utils->check_is_woo_required_page() ) { wp_die( ' This page requires WooCommerce plugin installed and activated!', 'WooCommerce Required' ); } /* CSS Compatibility for All theme */ add_filter( 'woocommerce_enqueue_styles', array( $this, 'woo_default_css' ), 9999 ); add_action( 'wp_enqueue_scripts', array( $this, 'remove_theme_styles' ), 9999 ); add_action( 'wp_enqueue_scripts', array( $this, 'global_flow_scripts' ), 20 ); /* Load woo templates from plugin */ add_filter( 'woocommerce_locate_template', array( $this, 'override_woo_template' ), 20, 3 ); /* Add version class to body in frontend. */ add_filter( 'body_class', array( $this, 'add_cartflows_lite_version_to_body' ) ); /* Custom Script Option */ add_action( 'wp_head', array( $this, 'custom_script_option' ) ); /* Remove the action applied by the Flatsome theme */ if ( Cartflows_Compatibility::get_instance()->is_flatsome_enabled() ) { $this->remove_flatsome_action(); } } } /** * Function for facebook pixel. */ public function facebook_pixel_init() { $facebook_settings = Cartflows_Helper::get_facebook_settings(); if ( 'enable' === $facebook_settings['facebook_pixel_tracking'] ) { $facebook_id = $facebook_settings['facebook_pixel_id']; echo ''; $fb_script = " "; $fb_page_view = ""; if ( 'enable' === $facebook_settings['facebook_pixel_tracking_for_site'] && ! wcf()->utils->is_step_post_type() ) { echo $fb_script; echo $fb_page_view; } else { echo $fb_script; } echo ''; } } /** * Debug Data Setting Actions. * * @since 1.1.14 */ public function debug_data_setting_actions() { add_filter( 'cartflows_load_min_assets', array( $this, 'allow_load_minify' ) ); } /** * Get/Set the allow minify option. * * @since 1.1.14 */ public function allow_load_minify() { $debug_data = Cartflows_Helper::get_debug_settings(); $allow_minified = $debug_data['allow_minified_files']; $allow_minify = false; if ( 'enable' === $allow_minified ) { $allow_minify = true; } return $allow_minify; } /** * Global flow scripts. * * @since 1.0.0 */ public function global_flow_scripts() { global $post; $flow = get_post_meta( $post->ID, 'wcf-flow-id', true ); $current_step = $post->ID; $next_step_link = ''; $compatibility = Cartflows_Compatibility::get_instance(); if ( _is_wcf_landing_type() ) { $next_step_id = wcf()->utils->get_next_step_id( $flow, $current_step ); $next_step_link = get_permalink( $next_step_id ); } $page_template = get_post_meta( _get_wcf_step_id(), '_wp_page_template', true ); $fb_active = Cartflows_Helper::get_facebook_settings(); $wcf_ga_active = Cartflows_Helper::get_google_analytics_settings(); $params = array(); $ga_param = array(); if ( 'enable' === $fb_active['facebook_pixel_tracking'] && Cartflows_Loader::get_instance()->is_woo_active ) { $params = Cartflows_Helper::prepare_cart_data_fb_response(); } if ( 'enable' === $wcf_ga_active['enable_google_analytics'] ) { $ga_param = Cartflows_Tracking::get_ga_items_list(); } $localize = array( 'ajax_url' => admin_url( 'admin-ajax.php', 'relative' ), 'is_pb_preview' => $compatibility->is_page_builder_preview(), 'current_theme' => $compatibility->get_current_theme(), 'current_flow' => $flow, 'current_step' => $current_step, 'next_step' => $next_step_link, 'page_template' => $page_template, 'is_checkout_page' => _is_wcf_checkout_type(), 'params' => $params, 'fb_active' => $fb_active, 'wcf_ga_active' => $wcf_ga_active, 'ga_param' => $ga_param, ); wp_localize_script( 'jquery', 'cartflows', apply_filters( 'global_cartflows_js_localize', $localize ) ); if ( 'default' !== $page_template ) { wp_enqueue_style( 'wcf-normalize-frontend-global', wcf()->utils->get_css_url( 'cartflows-normalize' ), array(), CARTFLOWS_VER ); } wp_enqueue_style( 'wcf-frontend-global', wcf()->utils->get_css_url( 'frontend' ), array(), CARTFLOWS_VER ); wp_enqueue_script( 'wcf-frontend-global', wcf()->utils->get_js_url( 'frontend' ), array( 'jquery', 'jquery-cookie' ), CARTFLOWS_VER, false ); } /** * Custom Script in head. * * @since 1.0.0 */ public function custom_script_option() { /* Add custom script to header in frontend. */ $script = $this->get_custom_script(); if ( '' !== $script ) { if ( false === strpos( $script, ''; } echo ''; echo $script; echo ''; } } /** * Override woo templates. * * @param string $template new Template full path. * @param string $template_name Template name. * @param string $template_path Template Path. * @since 1.1.5 * @return string. */ public function override_woo_template( $template, $template_name, $template_path ) { global $woocommerce; $_template = $template; $plugin_path = CARTFLOWS_DIR . 'woocommerce/template/'; if ( file_exists( $plugin_path . $template_name ) ) { $template = $plugin_path . $template_name; } if ( ! $template ) { $template = $_template; } return $template; } /** * Remove the action applied by the Flatsome theme. * * @since 1.1.5 * @return void. */ public function remove_flatsome_action() { // Remove action where flatsome dequeued the woocommerce's default styles. remove_action( 'wp_enqueue_scripts', 'flatsome_woocommerce_scripts_styles', 98 ); } /** * Add version class to body in frontend. * * @since 1.1.5 * @param array $classes classes. * @return array $classes classes. */ public function add_cartflows_lite_version_to_body( $classes ) { $classes[] = 'cartflows-' . CARTFLOWS_VER; return $classes; } /** * Get custom script data. * * @since 1.0.0 */ public function get_custom_script() { global $post; $script = get_post_meta( $post->ID, 'wcf-custom-script', true ); return $script; } /** * Set appropriate filter sctions. * * @since 1.1.14 */ public function setup_optin_checkout_filter() { if ( _is_wcf_doing_optin_ajax() ) { /* Modify the optin order received url to go next step */ remove_filter( 'woocommerce_get_checkout_order_received_url', array( $this, 'redirect_to_thankyou_page' ), 10, 2 ); add_filter( 'woocommerce_get_checkout_order_received_url', array( $this, 'redirect_optin_to_next_step' ), 10, 2 ); } } /** * Redirect to thank page if upsell not exists * * @param string $order_recieve_url url. * @param object $order order object. * @since 1.0.0 */ public function redirect_optin_to_next_step( $order_recieve_url, $order ) { /* Only for optin page */ wcf()->logger->log( 'Start-' . __CLASS__ . '::' . __FUNCTION__ ); wcf()->logger->log( 'Only for optin page' ); if ( _is_wcf_doing_optin_ajax() ) { $optin_id = wcf()->utils->get_optin_id_from_post_data(); if ( ! $optin_id ) { $optin_id = wcf()->utils->get_optin_id_from_order( $order->get_id() ); } } else { $optin_id = wcf()->utils->get_optin_id_from_order( $order->get_id() ); } wcf()->logger->log( 'Optin ID : ' . $optin_id ); if ( $optin_id ) { $next_step_id = wcf()->flow->get_next_step_id( $order ); if ( $next_step_id ) { $order_recieve_url = get_permalink( $next_step_id ); $query_param = array( 'wcf-key' => $order->get_order_key(), 'wcf-order' => $order->get_id(), ); if ( 'yes' === wcf()->options->get_optin_meta_value( $optin_id, 'wcf-optin-pass-fields' ) ) { $fields_string = wcf()->options->get_optin_meta_value( $optin_id, 'wcf-optin-pass-specific-fields' ); $fields = array_map( 'trim', explode( ',', $fields_string ) ); if ( is_array( $fields ) ) { $order_id = $order->get_id(); foreach ( $fields as $in => $key ) { switch ( $key ) { case 'first_name': $query_param[ $key ] = $order->get_billing_first_name(); break; case 'last_name': $query_param[ $key ] = $order->get_billing_last_name(); break; case 'email': $query_param[ $key ] = $order->get_billing_email(); break; default: $query_param[ $key ] = get_post_meta( $order_id, '_billing_' . $key, true ); break; } } } } $order_recieve_url = add_query_arg( $query_param, $order_recieve_url ); } } wcf()->logger->log( 'End-' . __CLASS__ . '::' . __FUNCTION__ ); return $order_recieve_url; } } /** * Prepare if class 'Cartflows_Frontend' exist. * Kicking this off by calling 'get_instance()' method */ Cartflows_Frontend::get_instance(); PK\lIlI!classes/class-cartflows-admin.phpnuW+ASettings', 'Docs', ); if ( ! _is_cartflows_pro() ) { array_push( $mylinks, ' Go Pro ' ); } return array_merge( $links, $mylinks ); } /** * Initialises the Plugin Name. * * @since 1.0.0 * @return void */ public static function initialise_plugin() { $name = 'Cartflows'; $short_name = 'Cflows'; define( 'CARTFLOWS_PLUGIN_NAME', $name ); define( 'CARTFLOWS_PLUGIN_SHORT_NAME', $short_name ); } /** * Renders the admin settings menu. * * @since 1.0.0 * @return void */ public static function menu() { if ( ! current_user_can( 'manage_options' ) ) { return; } add_menu_page( 'CartFlows', 'CartFlows', 'manage_options', CARTFLOWS_SLUG, __CLASS__ . '::render', 'data:image/svg+xml;base64,' . base64_encode( file_get_contents( CARTFLOWS_DIR . 'assets/images/cartflows-icon.svg' ) ),//phpcs:ignore 39.7 ); } /** * Add submenu to admin menu. * * @since 1.0.0 */ public static function submenu() { $parent_slug = CARTFLOWS_SLUG; $page_title = __( 'Settings', 'cartflows' ); $menu_title = __( 'Settings', 'cartflows' ); $capability = 'manage_options'; $menu_slug = 'cartflows_settings'; $callback = __CLASS__ . '::render'; add_submenu_page( $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $callback ); } /** * Renders the admin settings. * * @since 1.0.0 * @return void */ public static function render() { $action = ( isset( $_GET['action'] ) ) ? sanitize_text_field( wp_unslash( $_GET['action'] ) ) : ''; //phpcs:ignore $action = ( ! empty( $action ) && '' != $action ) ? $action : 'general'; $action = str_replace( '_', '-', $action ); // Enable header icon filter below. $header_wrapper_class = apply_filters( 'cartflows_header_wrapper_class', array( $action ) ); include_once CARTFLOWS_DIR . 'includes/admin/cartflows-admin.php'; } /** * Renders the admin settings content. * * @since 1.0.0 * @return void */ public static function render_content() { $action = ( isset( $_GET['action'] ) ) ? sanitize_text_field( wp_unslash( $_GET['action'] ) ) : ''; //phpcs:ignore $action = ( ! empty( $action ) && '' != $action ) ? $action : 'general'; $action = str_replace( '_', '-', $action ); $action = 'general'; $header_wrapper_class = apply_filters( 'cartflows_header_wrapper_class', array( $action ) ); include_once CARTFLOWS_DIR . 'includes/admin/cartflows-general.php'; } /** * Save Global Setting options. * * @since 1.0.0 */ public static function save_common_settings() { if ( isset( $_POST['cartflows-common-settings-nonce'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['cartflows-common-settings-nonce'] ) ), 'cartflows-common-settings' ) ) { $url = isset( $_SERVER['REQUEST_URI'] ) ? esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) ) : ''; $new_settings = array(); if ( isset( $_POST['_cartflows_common'] ) ) { // Loop through the input and sanitize each of the values. $new_settings = self::sanitize_form_inputs( wp_unslash( $_POST['_cartflows_common'] ) ); //phpcs:ignore } Cartflows_Helper::update_admin_settings_option( '_cartflows_common', $new_settings, false ); $query = array( 'message' => 'saved', ); $redirect_to = add_query_arg( $query, $url ); wp_safe_redirect( $redirect_to ); exit; } // End if statement. } /** * Save Debug Setting options. * * @since 1.1.14 */ public static function save_debug_settings() { if ( isset( $_POST['cartflows-debug-settings-nonce'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['cartflows-debug-settings-nonce'] ) ), 'cartflows-debug-settings' ) ) { $url = isset( $_SERVER['REQUEST_URI'] ) ? esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) ) : ''; $new_settings = array(); if ( isset( $_POST['_cartflows_debug_data'] ) ) { $new_settings = self::sanitize_form_inputs( wp_unslash( $_POST['_cartflows_debug_data'] ) ); //phpcs:ignore } Cartflows_Helper::update_admin_settings_option( '_cartflows_debug_data', $new_settings, false ); $query = array( 'message' => 'saved', ); $redirect_to = add_query_arg( $query, $url ); wp_safe_redirect( $redirect_to ); exit; } } /** * Save permalink Setting options. * * @since 1.1.14 */ public static function save_permalink_settings() { if ( isset( $_POST['cartflows-permalink-settings-nonce'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['cartflows-permalink-settings-nonce'] ) ), 'cartflows-permalink-settings' ) ) { $url = isset( $_SERVER['REQUEST_URI'] ) ? esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) ) : ''; $new_settings = array(); if ( isset( $_POST['reset'] ) ) { $_POST['_cartflows_permalink'] = array( 'permalink' => CARTFLOWS_STEP_POST_TYPE, 'permalink_flow_base' => CARTFLOWS_FLOW_POST_TYPE, 'permalink_structure' => '', ); } if ( isset( $_POST['_cartflows_permalink'] ) ) { $cartflows_permalink_settings = self::sanitize_form_inputs( wp_unslash( $_POST['_cartflows_permalink'] ) ); //phpcs:ignore if ( empty( $cartflows_permalink_settings['permalink'] ) ) { $new_settings['permalink'] = CARTFLOWS_STEP_POST_TYPE; } else { $new_settings['permalink'] = $cartflows_permalink_settings['permalink']; } if ( empty( $cartflows_permalink_settings['permalink_flow_base'] ) ) { $new_settings['permalink_flow_base'] = CARTFLOWS_FLOW_POST_TYPE; } else { $new_settings['permalink_flow_base'] = $cartflows_permalink_settings['permalink_flow_base']; } $new_settings['permalink_structure'] = $cartflows_permalink_settings['permalink_structure']; } Cartflows_Helper::update_admin_settings_option( '_cartflows_permalink', $new_settings, false ); $query = array( 'message' => 'saved', ); $redirect_to = add_query_arg( $query, $url ); update_option( 'cartflows_permalink_saved', true ); wp_safe_redirect( $redirect_to ); exit; } } /** * Save google analytics Setting options. * * @since 1.1.14 */ public static function save_google_analytics_settings() { if ( isset( $_POST['cartflows-google-analytics-settings-nonce'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['cartflows-google-analytics-settings-nonce'] ) ), 'cartflows-google-analytics-settings' ) ) { $url = isset( $_SERVER['REQUEST_URI'] ) ? esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) ) : ''; $new_settings = array(); if ( isset( $_POST['_cartflows_google_analytics'] ) ) { $new_settings = self::sanitize_form_inputs( $_POST['_cartflows_google_analytics'] ); //phpcs:ignore } Cartflows_Helper::update_admin_settings_option( '_cartflows_google_analytics', $new_settings, true ); $query = array( 'message' => 'saved', ); $redirect_to = add_query_arg( $query, $url ); wp_safe_redirect( $redirect_to ); exit; } } /** * Loop through the input and sanitize each of the values. * * @param array $input_settings input settings. * @return array */ public static function sanitize_form_inputs( $input_settings = array() ) { $new_settings = array(); foreach ( $input_settings as $key => $val ) { if ( is_array( $val ) ) { foreach ( $val as $k => $v ) { $new_settings[ $key ][ $k ] = ( isset( $val[ $k ] ) ) ? sanitize_text_field( $v ) : ''; } } else { $new_settings[ $key ] = ( isset( $input_settings[ $key ] ) ) ? sanitize_text_field( $val ) : ''; } } return $new_settings; } /** * Check is cartflows admin. * * @since 1.0.0 * @return boolean */ public static function is_global_admin() { $current_screen = get_current_screen(); if ( is_object( $current_screen ) && isset( $current_screen->post_type ) && ( CARTFLOWS_FLOW_POST_TYPE === $current_screen->post_type || CARTFLOWS_STEP_POST_TYPE === $current_screen->post_type ) ) { return true; } return false; } /** * Check is flow admin. * * @since 1.0.0 * @return boolean */ public static function is_flow_edit_admin() { $current_screen = get_current_screen(); if ( is_object( $current_screen ) && isset( $current_screen->post_type ) && ( CARTFLOWS_FLOW_POST_TYPE === $current_screen->post_type ) && isset( $current_screen->base ) && ( 'post' === $current_screen->base ) ) { return true; } return false; } /** * Global Admin Scripts. * * @since 1.0.0 */ public static function global_admin_scripts() { $installed_plugins = get_plugins(); $is_wc_installed = isset( $installed_plugins['woocommerce/woocommerce.php'] ) ? true : false; $edit_test_mode = filter_input( INPUT_GET, 'edit_test_mode', FILTER_SANITIZE_STRING ); $edit_test_mode = 'yes' === $edit_test_mode ? true : false; $localize = array( 'ajaxurl' => admin_url( 'admin-ajax.php' ), 'ajax_nonce' => wp_create_nonce( 'cartflows-nonce' ), 'wc_status' => array( 'installed' => $is_wc_installed, 'active' => wcf()->is_woo_active, ), 'wc_activating_message' => __( 'Installing and activating..', 'cartflows' ), 'wc_install_error' => __( 'There was an error with the installation of plugin.', 'cartflows' ), 'wcf_edit_test_mode' => $edit_test_mode, ); wp_localize_script( 'jquery', 'cartflows_admin', apply_filters( 'cartflows_admin_js_localize', $localize ) ); if ( self::is_global_admin() ) { // Styles. wp_enqueue_style( 'cartflows-global-admin', CARTFLOWS_URL . 'admin/assets/css/global-admin.css', array(), CARTFLOWS_VER ); wp_style_add_data( 'cartflows-global-admin', 'rtl', 'replace' ); wp_enqueue_script( 'wcf-global-admin', CARTFLOWS_URL . 'admin/assets/js/global-admin.js', array( 'jquery' ), CARTFLOWS_VER, true ); do_action( 'cartflows_global_admin_scripts' ); } } /** * Global Admin Data. * * @since 1.0.0 */ public static function global_admin_data() { $current_screen = get_current_screen(); if ( ! $current_screen ) { return; } if ( 'edit-' . CARTFLOWS_FLOW_POST_TYPE != $current_screen->id ) { return; } $default_page_builder = Cartflows_Helper::get_common_setting( 'default_page_builder' ); ?> wp_create_nonce( 'cartflows-widget-nonce' ), ); wp_localize_script( 'cartflows-admin-settings', 'cartflows', apply_filters( 'cartflows_js_localize', $localize ) ); do_action( 'cartflows_admin_settings_after_enqueue_scripts' ); } /** * Save All admin settings here */ public static function save_settings() { // Only admins can save settings. if ( ! current_user_can( 'manage_options' ) ) { return; } self::save_common_settings(); self::save_debug_settings(); self::save_permalink_settings(); self::save_google_analytics_settings(); self::save_facebook_settings(); // Let extensions hook into saving. do_action( 'cartflows_admin_settings_save' ); } /** * Get and return page URL * * @param string $menu_slug Menu name. * @since 1.0.0 * @return string page url */ public static function get_page_url( $menu_slug ) { $parent_page = self::$default_menu_position; if ( strpos( $parent_page, '?' ) !== false ) { $query_var = '&page=' . self::$plugin_slug; } else { $query_var = '?page=' . self::$plugin_slug; } $parent_page_url = admin_url( $parent_page . $query_var ); $url = $parent_page_url . '&action=' . $menu_slug; return esc_url( $url ); } /** * Admin body classes. * * Body classes to be added to tag in admin page * * @param String $classes body classes returned from the filter. * @return String body classes to be added to tag in admin page */ public static function add_admin_body_class( $classes ) { $classes .= ' cartflows-' . CARTFLOWS_VER; return $classes; } /** * Save Global Setting options. * * @since 1.0.0 */ public static function save_facebook_settings() { if ( isset( $_POST['cartflows-facebook-settings-nonce'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['cartflows-facebook-settings-nonce'] ) ), 'cartflows-facebook-settings' ) ) { $url = isset( $_SERVER['REQUEST_URI'] ) ? esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) ) : ''; $new_settings = array(); if ( isset( $_POST['_cartflows_facebook'] ) ) { $new_settings = self::sanitize_form_inputs( wp_unslash( $_POST['_cartflows_facebook'] ) ); //phpcs:ignore } Cartflows_Helper::update_admin_settings_option( '_cartflows_facebook', $new_settings, false ); $query = array( 'message' => 'saved', ); $redirect_to = add_query_arg( $query, $url ); wp_safe_redirect( $redirect_to ); exit; } } } Cartflows_Admin::init(); PK\"'classes/deprecated/deprecated-hooks.phpnuW+A= 4.6 */ do_action_deprecated( $tag, $args, $version, $replacement, $message ); } else { do_action_ref_array( $tag, $args ); } } } PK\ i""(classes/class-cartflows-admin-fields.phpnuW+A'; $output .= '' . $title . ''; $output .= ''; if ( ! empty( $description ) ) { $output .= '
    '; $output .= '

    ' . $description . '

    '; $output .= '
    '; } return $output; } /** * Text Field * * @param array $args Args. * @return string */ public static function text_field( $args ) { $id = $args['id']; $name = $args['name']; $title = $args['title']; $value = $args['value']; $description = isset( $args['description'] ) ? $args['description'] : ''; $placeholder = isset( $args['placeholder'] ) ? $args['placeholder'] : ''; $output = '
    '; $output .= ''; $output .= ''; $output .= '
    '; if ( ! empty( $description ) ) { $output .= '
    '; $output .= '

    '; $output .= $description; $output .= '

    '; $output .= '
    '; } return $output; } /** * URL Field * * @param array $args Args. * @return string */ public static function url_field( $args ) { $id = $args['id']; $name = $args['name']; $title = $args['title']; $value = $args['value']; $output = '
    '; $output .= ''; $output .= ''; $output .= '
    '; return $output; } /** * Checkbox Field * * @param array $args Args. * @return string */ public static function checkobox_field( $args ) { $id = $args['id']; $name = $args['name']; $title = $args['title']; $value = $args['value']; $output = '
    '; $output .= ''; $output .= '
    '; return $output; } /** * Radio Field * * @param array $args Args. * @return string */ public static function radio_field( $args ) { $name = $args['name']; $id = $args['id']; $options = $args['options']; $value = $args['value']; $output = ''; foreach ( $options as $type => $data ) { $output .= '
    '; $output .= ''; $output .= '
    '; $output .= '

    '; if ( empty( $type ) ) { $output .= $data['description']; } else { $output .= get_site_url() . $data['description']; } $output .= '

    '; $output .= '
    '; $output .= '
    '; } return $output; } /** * Select Field * * @since 1.1.4 * * @param array $args Args. * @return string */ public static function select_field( $args ) { $id = $args['id']; $name = $args['name']; $title = $args['title']; $description = $args['description']; $value = $args['value']; $options = $args['options']; $output = '
    '; $output .= '
    '; $output .= $title; $output .= '
    '; $output .= '
    '; $output .= ''; $output .= '
    '; $output .= '
    '; $output .= '

    '; $output .= $description; $output .= '

    '; $output .= '
    '; $output .= '
    '; return $output; } /** * Checkout Selection Field * * @param array $args Args. * @return string */ public static function flow_checkout_selection_field( $args ) { $id = $args['id']; $name = $args['name']; $title = $args['title']; $value = $args['value']; $checkout_steps = get_posts( array( 'posts_per_page' => -1, 'post_type' => CARTFLOWS_STEP_POST_TYPE, 'post_status' => 'publish', 'orderby' => 'ID', 'order' => 'ASC', 'tax_query' => array( //phpcs:ignore array( 'taxonomy' => CARTFLOWS_TAXONOMY_STEP_TYPE, 'field' => 'slug', 'terms' => 'checkout', ), ), ) ); $output = '
    '; $output .= '
    '; $output .= ''; $output .= '
    '; $output .= '
    '; $output .= ''; $output .= '
    '; if ( '' !== $value ) { $output .= ''; } $output .= '
    '; /* translators: %s: link */ $output .= '

    ' . sprintf( __( 'Be sure not to add any product in above selected Global Checkout step. Please read information about how to set up Global Checkout %1$shere%2$s.', 'cartflows' ), '', '' ) . '

    '; $output .= '
    '; $output .= '
    '; return $output; } } PK\2z__'classes/class-cartflows-meta-fields.phpnuW+Autils->is_step_post_type( $screen->post_type ) ) { wp_enqueue_style( 'woocommerce_admin_styles' ); wp_enqueue_script( 'select2' ); wp_enqueue_script( 'wc-enhanced-select' ); wp_enqueue_script( 'wcf-admin-meta', CARTFLOWS_URL . 'admin/meta-assets/js/admin-edit.js', array( 'jquery', 'wp-color-picker' ), CARTFLOWS_VER, true ); wp_enqueue_style( 'wcf-admin-meta', CARTFLOWS_URL . 'admin/meta-assets/css/admin-edit.css', array( 'wp-color-picker' ), CARTFLOWS_VER ); wp_style_add_data( 'wcf-admin-meta', 'rtl', 'replace' ); $localize = array( 'ajax_url' => admin_url( 'admin-ajax.php' ), 'google_fonts' => CartFlows_Font_Families::get_google_fonts(), 'system_fonts' => CartFlows_Font_Families::get_system_fonts(), 'font_weights' => array( '100' => __( 'Thin 100', 'cartflows' ), '200' => __( 'Extra-Light 200', 'cartflows' ), '300' => __( 'Light 300', 'cartflows' ), '400' => __( 'Normal 400', 'cartflows' ), '500' => __( 'Medium 500', 'cartflows' ), '600' => __( 'Semi-Bold 600', 'cartflows' ), '700' => __( 'Bold 700', 'cartflows' ), '800' => __( 'Extra-Bold 800', 'cartflows' ), '900' => __( 'Ultra-Bold 900', 'cartflows' ), ) ); wp_localize_script( 'jquery', 'wcf', apply_filters( 'wcf_js_localize', $localize ) ); do_action( 'cartflows_admin_meta_scripts' ); } } /** * Function to search coupons */ public function json_search_coupons() { check_admin_referer( 'wcf-json-search-coupons', 'security' ); global $wpdb; $term = (string) urldecode( sanitize_text_field( wp_unslash( $_GET['term'] ) ) ); // phpcs:ignore if ( empty( $term ) ) { die(); } $posts = wp_cache_get( 'wcf_search_coupons', 'wcf_funnel_Cart' ); if ( false === $posts ) { $posts = $wpdb->get_results( // phpcs:ignore $wpdb->prepare( "SELECT * FROM {$wpdb->prefix}posts WHERE post_type = %s AND post_title LIKE %s AND post_status = %s", 'shop_coupon', $wpdb->esc_like( $term ) . '%', 'publish' ) ); wp_cache_set( 'wcf_search_coupons', $posts, 'wcf_funnel_Cart' ); } $coupons_found = array(); $all_discount_types = wc_get_coupon_types(); if ( $posts ) { foreach ( $posts as $post ) { $discount_type = get_post_meta( $post->ID, 'discount_type', true ); if ( ! empty( $all_discount_types[ $discount_type ] ) ) { $coupons_found[ get_the_title( $post->ID ) ] = get_the_title( $post->ID ) . ' (Type: ' . $all_discount_types[ $discount_type ] . ')'; } } } wp_send_json( $coupons_found ); } /** * Function to search coupons */ public function json_search_pages() { check_ajax_referer( 'wcf-json-search-pages', 'security' ); $term = (string) urldecode( sanitize_text_field( wp_unslash( $_GET['term'] ) ) ); // phpcs:ignore if ( empty( $term ) ) { die( 'not found' ); } $search_string = $term; $data = array(); $result = array(); add_filter( 'posts_search', array( $this, 'search_only_titles' ), 10, 2 ); $query = new WP_Query( array( 's' => $search_string, 'post_type' => 'page', 'posts_per_page' => -1, ) ); if ( $query->have_posts() ) { while ( $query->have_posts() ) { $query->the_post(); $title = get_the_title(); $title .= ( 0 != $query->post->post_parent ) ? ' (' . get_the_title( $query->post->post_parent ) . ')' : ''; $id = get_the_id(); $data[] = array( 'id' => $id, 'text' => $title, ); } } if ( is_array( $data ) && ! empty( $data ) ) { $result[] = array( 'text' => '', 'children' => $data, ); } wp_reset_postdata(); // return the result in json. wp_send_json( $result ); } public function search_only_titles( $search, $wp_query ) { if ( ! empty( $search ) && ! empty( $wp_query->query_vars['search_terms'] ) ) { global $wpdb; $q = $wp_query->query_vars; $n = ! empty( $q['exact'] ) ? '' : '%'; $search = array(); foreach ( (array) $q['search_terms'] as $term ) { $search[] = $wpdb->prepare( "$wpdb->posts.post_title LIKE %s", $n . $wpdb->esc_like( $term ) . $n ); } if ( ! is_user_logged_in() ) { $search[] = "$wpdb->posts.post_password = ''"; } $search = ' AND ' . implode( ' AND ', $search ); } return $search; } function get_field( $field_data, $field_content ) { $label = isset( $field_data['label'] ) ? $field_data['label'] : ''; $help = isset( $field_data['help'] ) ? $field_data['help'] : ''; $after_html = isset( $field_data['after_html'] ) ? $field_data['after_html'] : ''; $name_class = 'field-' . $field_data['name']; $field_html = '
    '; if( ! empty( $label ) || ! empty( $help ) ) { $field_html .= '
    '; if( ! empty( $label ) ) { $field_html .= ''; } if ( ! empty( $help ) ) { $field_html .= ''; // $field_html .= ''; $field_html .= ''; $field_html .= ''; $field_html .= $help; $field_html .= ''; } $field_html .= '
    '; } $field_html .= '
    '; $field_html .= $field_content; if ( ! empty( $after_html ) ) { $field_html .= $after_html; } $field_html .= '
    '; $field_html .= '
    '; return $field_html; } function get_text_field( $field_data ) { $value = $field_data['value']; $attr = ''; if ( isset( $field_data['attr'] ) && is_array( $field_data['attr'] ) ) { foreach ( $field_data['attr'] as $attr_key => $attr_value ) { $attr .= ' ' . $attr_key . '="' . $attr_value . '"'; } } $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_shortcode_field( $field_data ) { $attr = ''; $attr_fields = array( 'readonly' => 'readonly', 'onfocus' => 'this.select()', 'onmouseup' => 'return false', ); if ( $attr_fields && is_array( $attr_fields ) ) { foreach ( $attr_fields as $attr_key => $attr_value ) { $attr .= ' ' . $attr_key . '="' . $attr_value . '"'; } } $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_display_field( $field_data ) { $field_content = $field_data['content']; return $this->get_field( $field_data, $field_content ); } function get_hr_line_field( $field_data ) { $field_data = array( 'name' => 'wcf-hr-line', 'content' => '
    ' ); $field_content = $field_data['content']; return $this->get_field( $field_data, $field_content ); } function get_number_field( $field_data ) { $value = $field_data['value']; $attr = ''; if ( isset( $field_data['attr'] ) && is_array( $field_data['attr'] ) ) { foreach ( $field_data['attr'] as $attr_key => $attr_value ) { $attr .= ' ' . $attr_key . '="' . $attr_value . '"'; } } $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_hidden_field( $field_data ) { $value = $field_data['value']; $attr = ''; if ( isset( $field_data['attr'] ) && is_array( $field_data['attr'] ) ) { foreach ( $field_data['attr'] as $attr_key => $attr_value ) { $attr .= ' ' . $attr_key . '="' . $attr_value . '"'; } } $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_area_field( $field_data ) { $value = $field_data['value']; $attr = ''; if ( isset( $field_data['attr'] ) && is_array( $field_data['attr'] ) ) { foreach ( $field_data['attr'] as $attr_key => $attr_value ) { $attr .= ' ' . $attr_key . '="' . $attr_value . '"'; } } $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_only_checkbox_field( $field_data ) { $value = $field_data['value']; $field_content = ''; if ( isset( $field_data['before'] ) ) { $field_content .= '' . $field_data['before'] . ''; } $field_content .= ''; $field_content .= ''; if ( isset( $field_data['after'] ) ) { $field_content .= '' . $field_data['after'] . ''; } if ( isset( $field_data['after_html'] ) ) { $field_content .= '' . $field_data['after_html'] . ''; } return $field_content; } function get_checkbox_field( $field_data ) { $value = $field_data['value']; $field_content = ''; if ( isset( $field_data['before'] ) ) { $field_content .= '' . $field_data['before'] . ''; } $toggle_data = ''; if ( isset( $field_data['toggle'] ) ) { $toggle_data .= 'toggle="' . htmlspecialchars( wp_json_encode( $field_data['toggle'] ) ) . '"'; } $field_content .= ''; $field_content .= ''; if ( isset( $field_data['after'] ) ) { $field_content .= '' . $field_data['after'] . ''; } return $this->get_field( $field_data, $field_content ); } function get_radio_field( $field_data ) { $value = $field_data['value']; $field_content = ''; if ( is_array( $field_data['options'] ) && ! empty( $field_data['options'] ) ) { foreach ( $field_data['options'] as $data_key => $data_value ) { $field_content .= '
    '; $field_content .= ''; $field_content .= $data_value; $field_content .= '
    '; } } return $this->get_field( $field_data, $field_content ); } function get_font_family_field( $field_data ) { $value = $field_data['value']; $pro_options = isset( $field_data['pro-options'] ) ? $field_data['pro-options'] : array(); $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_font_weight_field( $field_data ) { $value = $field_data['value']; $pro_options = isset( $field_data['pro-options'] ) ? $field_data['pro-options'] : array(); $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_select_field( $field_data ) { $value = $field_data['value']; $pro_options = isset( $field_data['pro-options'] ) ? $field_data['pro-options'] : array(); $field_content = ''; if ( isset( $field_data['after'] ) ) { $field_content .= '' . $field_data['after'] . ''; } return $this->get_field( $field_data, $field_content ); } function get_color_picker_field( $field_data ) { $value = $field_data['value']; $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_product_selection_field( $field_data ) { $value = $field_data['value']; $multiple = ''; if ( isset( $field_data['multiple'] ) && $field_data['multiple'] ) { $multiple = ' multiple="multiple"'; } $allow_clear = ''; if ( isset( $field_data['allow_clear'] ) && $field_data['allow_clear'] ) { $allow_clear = ' data-allow_clear="allow_clear"'; } $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_coupon_selection_field( $field_data ) { $value = $field_data['value']; $multiple = ''; if ( isset( $field_data['multiple'] ) && $field_data['multiple'] ) { $multiple = ' multiple="multiple"'; } $allow_clear = ''; if ( isset( $field_data['allow_clear'] ) && $field_data['allow_clear'] ) { $allow_clear = ' data-allow_clear="allow_clear"'; } $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_page_selection_field( $field_data ) { $value = $field_data['value']; $multiple = ''; if ( isset( $field_data['multiple'] ) && $field_data['multiple'] ) { $multiple = 'multiple="multiple"'; } $field_content = ''; return $this->get_field( $field_data, $field_content ); } function get_section( $field_data ) { $field_html = '
    '; $field_html .= '
    '; $field_html .= ''; if ( isset( $field_data['help'] ) ) { $field_html .= ''; } $field_html .= '
    '; $field_html .= '
    '; return $field_html; } function get_description_field( $field_data ) { $field_html = '
    '; $field_html .= '
    '; $field_html .= $field_data['content']; $field_html .= '
    '; $field_html .= '
    '; return $field_html; } function get_product_selection_repeater( $field_data ) { $value = $field_data['value']; if ( ! is_array( $value ) ) { $value[0] = array( 'product' => '', ); } else { if ( ! isset( $value[0] ) ) { $value[0] = array( 'product' => '', ); } } $name_class = 'field-' . $field_data['name']; $field_html = ''; $field_html .= ''; $field_html .= '
    '; $field_html .= '
    '; $field_html .= '
    '; if ( is_array( $value ) ) { foreach ( $value as $p_key => $p_data ) { $selected_options = ''; if ( isset( $p_data['product'] ) ) { $product = wc_get_product( $p_data['product'] ); // posts. if ( ! empty( $product ) ) { $post_title = $product->get_name() . ' (#' . $p_data['product'] . ')'; $selected_options = ''; } } $field_html .= $this->generate_product_repeater_html( $p_key, $selected_options ); } } $field_html .= '
    '; $field_html .= '
    '; $field_html .= ''; $field_html .= ''. __( 'Create Product', 'cartflows' ) . ''; $field_html .= '
    '; $field_html .= '
    '; $field_html .= '
    '; $field_html .= '
    '; $field_html .= '
    '; return $field_html; } function generate_product_repeater_html( $id, $options = '' ) { $field_html = '
    '; $field_html .= '
    '; /* Product Name */ $field_html .= '
    '; $field_html .= ''; $field_html .= ''; $field_html .= ''; $field_html .= ''; $field_html .= ''; $field_html .= ''; $field_html .= ''. __( 'Remove', 'cartflows' ).''; $field_html .= ''; $field_html .= ''; $field_html .= '
    '; $field_html .= '
    '; $field_html .= '
    '; return $field_html; } function get_image_field( $field_data ) { global $post; $value = $field_data['value']; $attr = ''; if ( isset( $field_data['attr'] ) && is_array( $field_data['attr'] ) ) { foreach ( $field_data['attr'] as $attr_key => $attr_value ) { $attr .= ' ' . $attr_key . '="' . $attr_value . '"'; } } $display_preview_box = ( isset( $value ) && '' != $value ) ? 'display:block;' : 'display:none'; $field_content = '
    '; if( isset( $value ) ){ $field_content .= ''; } $field_content .= '
    '; $image_data = htmlentities( serialize( get_post_meta( $post->ID, $field_data['name'].'-obj') ) ); $field_content .= ''; $field_content .= ''; $field_content .= ''; $display_remove_button = ( isset( $value ) && '' != $value ) ? 'display:inline-block; margin-left: 5px;' : 'display:none'; $field_content .= ''; return $this->get_field( $field_data, $field_content ); } /** * Localize variables in admin * * @param array $vars variables. */ function localize_vars( $vars ) { $ajax_actions = array( 'wcf_json_search_pages', 'wcf_json_search_coupons' ); foreach ( $ajax_actions as $action ) { $vars[ $action . '_nonce' ] = wp_create_nonce( str_replace( '_', '-', $action ) ); } /* Add product from iframe */ $product_src = esc_url_raw( add_query_arg( array( 'post_type' => 'product', 'wcf-woo-iframe' => 'true', ), admin_url( 'post-new.php' ) ) ); $vars['create_product_src'] = $product_src; /* Add product from iframe End */ return $vars; } } // @codingStandardsIgnoreEnd PK\!)classes/class-cartflows-flow-frontend.phpnuW+Autils->is_step_post_type() ) { // @codingStandardsIgnoreStart $flow_id = wcf()->utils->get_flow_id(); ?> is_flow_testmode( $flow_id ) ) { ?>
    utils->get_flow_id(); } $test_mode = wcf()->options->get_flow_meta_value( $flow_id, 'wcf-testing' ); if ( 'no' === $test_mode ) { return false; } return true; } /** * Get steps data. * * @since 1.0.0 * @param int $flow_id flow ID. * * @return array */ public function get_steps( $flow_id ) { $steps = get_post_meta( $flow_id, 'wcf-steps', true ); if ( ! is_array( $steps ) ) { $steps = array(); } return $steps; } /** * Check thank you page exists. * * @since 1.0.0 * @param array $order order data. * * @return bool */ public function is_thankyou_page_exists( $order ) { $thankyou_step_exist = false; $flow_id = wcf()->utils->get_flow_id_from_order( $order->get_id() ); if ( $flow_id ) { $flow_steps = get_post_meta( $flow_id, 'wcf-steps', true ); $step_id = wcf()->utils->get_checkout_id_from_order( $order->get_id() ); if ( is_array( $flow_steps ) ) { $current_step_found = false; foreach ( $flow_steps as $index => $data ) { if ( $current_step_found ) { if ( 'thankyou' === $data['type'] ) { $thankyou_step_exist = true; break; } } else { if ( intval( $data['id'] ) === $step_id ) { $current_step_found = true; } } } } } return $thankyou_step_exist; } /** * Check thank you page exists. * * @since 1.0.0 * @param array $order order data. * * @return bool */ public function get_thankyou_page_id( $order ) { $thankyou_step_id = false; $flow_id = wcf()->utils->get_flow_id_from_order( $order->get_id() ); if ( $flow_id ) { $flow_steps = get_post_meta( $flow_id, 'wcf-steps', true ); $step_id = wcf()->utils->get_checkout_id_from_order( $order->get_id() ); if ( is_array( $flow_steps ) ) { $current_step_found = false; foreach ( $flow_steps as $index => $data ) { if ( $current_step_found ) { if ( 'thankyou' === $data['type'] ) { $thankyou_step_id = intval( $data['id'] ); break; } } else { if ( intval( $data['id'] ) === $step_id ) { $current_step_found = true; } } } } } return $thankyou_step_id; } /** * Check thank you page exists. * * @since 1.0.0 * @param array $order order data. * * @return bool */ public function get_next_step_id( $order ) { $next_step_id = false; $flow_id = wcf()->utils->get_flow_id_from_order( $order->get_id() ); if ( $flow_id ) { $flow_steps = get_post_meta( $flow_id, 'wcf-steps', true ); $step_id = wcf()->utils->get_optin_id_from_order( $order->get_id() ); if ( is_array( $flow_steps ) ) { foreach ( $flow_steps as $index => $data ) { if ( intval( $data['id'] ) === $step_id ) { $next_step_index = $index + 1; if ( isset( $flow_steps[ $next_step_index ] ) ) { $next_step_id = intval( $flow_steps[ $next_step_index ]['id'] ); } break; } } } } return $next_step_id; } } /** * Kicking this off by calling 'get_instance()' method */ Cartflows_Flow_Frontend::get_instance(); PK\Cx3)classes/class-cartflows-theme-support.phpnuW+A3{{(Zincludes/admin/cartflows-general-bck.phpnuW+APK\ `includes/importer.phpnuW+APK\܎r *cwoocommerce/template/global/form-login.phpnuW+APK\1+Cowoocommerce/template/cart/cart-shipping.phpnuW+APK\pv-woocommerce/template/checkout/form-coupon.phpnuW+APK\]< < )džwoocommerce/template/checkout/payment.phpnuW+APK\؊VV*\woocommerce/template/checkout/thankyou.phpnuW+APK\fGG0 woocommerce/template/checkout/payment-method.phpnuW+APK\{a /woocommerce/template/checkout/form-shipping.phpnuW+APK\/woocommerce/template/checkout/form-checkout.phpnuW+APK\@:UU. woocommerce/template/checkout/review-order.phpnuW+APK\ .woocommerce/template/checkout/form-billing.phpnuW+APK\5qq,woocommerce/template/checkout/form-login.phpnuW+APK\IC'woocommerce/template/notices/notice.phpnuW+APK\1U(woocommerce/template/notices/success.phpnuW+APK\Mx@9&}woocommerce/template/notices/error.phpnuW+APK\I=I=I"wadmin/meta-assets/js/admin-edit.jsnuW+APK\%n$7admin/meta-assets/css/admin-edit.cssnuW+APK\s) ([Eadmin/meta-assets/css/admin-edit-rtl.cssnuW+APK\o6='pp*Sadmin/assets/fonts/cartflows-logo-icon.eotnuW+APK\c@@@*|Zadmin/assets/fonts/cartflows-logo-icon.svgnuW+APK\[ 6=+aadmin/assets/fonts/cartflows-logo-icon.woffnuW+APK\cH*Ygadmin/assets/fonts/cartflows-logo-icon.ttfnuW+APK\=N^^%Omadmin/assets/css/global-admin-rtl.cssnuW+APK\!igg>admin/assets/css/arrow.pngnuW+APK\"_(admin/assets/css/flow-admin-edit-rtl.cssnuW+APK\eP$admin/assets/css/flow-admin-edit.cssnuW+APK\>3(Kadmin/assets/css/admin-menu-settings.cssnuW+APK\^0'l'l!cadmin/assets/css/setup-wizard.cssnuW+APK\jaI%l%l%hadmin/assets/css/setup-wizard-rtl.cssnuW+APK\7vK^^!Uadmin/assets/css/global-admin.cssnuW+APK\n,74admin/assets/css/admin-menu-settings-rtl.cssnuW+APK\^f*;  &VMadmin/assets/js/admin-menu-settings.jsnuW+APK\D PPRadmin/assets/js/setup-wizard.jsnuW+APK\WZ[  "Xoadmin/assets/js/flow-admin-edit.jsnuW+APK\@0'F4F4yadmin/assets/js/global-admin.jsnuW+APK\a01__Wtheme-support/astra/astra.phpnuW+APK\e*_** changelog.txtnuW+APK\Ulanguages/cartflows.potnuW+APK\)v3 :cartflows.phpnuW+APK\Qոbb5nassets/min-css/checkout-template-flatsome-rtl.min.cssnuW+APK\SFDFD%5assets/min-css/optin-template.min.cssnuW+APK\;mm6assets/min-css/checkout-template-the-seven-rtl.min.cssnuW+APK\BDgg(assets/min-css/checkout-template.min.cssnuW+APK\ *yassets/min-css/optin-template-divi.min.cssnuW+APK\z;';'-assets/min-css/checkout-template-divi.min.cssnuW+APK\ە.*Gassets/min-css/cartflows-normalize.min.cssnuW+APK\(xgg,assets/min-css/checkout-template-rtl.min.cssnuW+APK\c+??4assets/min-css/import.min.cssnuW+APK\(tassets/min-css/frontend-divi-rtl.min.cssnuW+APK\(kk2assets/min-css/checkout-template-the-seven.min.cssnuW+APK\-KvYY#assets/min-css/frontend-rtl.min.cssnuW+APK\֞bb12assets/min-css/checkout-template-flatsome.min.cssnuW+APK\M " .assets/min-css/optin-template-divi-rtl.min.cssnuW+APK\OK;';'1assets/min-css/checkout-template-divi-rtl.min.cssnuW+APK\?.assets/min-css/cartflows-normalize-rtl.min.cssnuW+APK\1$ assets/min-css/frontend-divi.min.cssnuW+APK\NDND)assets/min-css/optin-template-rtl.min.cssnuW+APK\3??!bassets/min-css/import-rtl.min.cssnuW+APK\h\\assets/min-css/frontend.min.cssnuW+APK\p-FTT!Gassets/css/optin-template-rtl.cssnuW+APK\- q.Jassets/css/checkout-template-the-seven-rtl.cssnuW+APK\Zgp11)(assets/css/checkout-template-divi-rtl.cssnuW+APK\[:$Zassets/css/checkout-template-rtl.cssnuW+APK\{, , -assets/css/checkout-template-flatsome-rtl.cssnuW+APK\n((iassets/css/frontend.cssnuW+APK\yӡZZ assets/css/import.cssnuW+APK\"Pj assets/css/frontend-divi.cssnuW+APK\W)@;4;4& assets/css/cartflows-normalize-rtl.cssnuW+APK\5ZZ1 assets/css/import-rtl.cssnuW+APK\fq* assets/css/checkout-template-the-seven.cssnuW+APK\@"K' assets/css/optin-template-divi.cssnuW+APK\ƪ, , ) E assets/css/checkout-template-flatsome.cssnuW+APK\;j|9494"O assets/css/cartflows-normalize.cssnuW+APK\- &0 assets/css/optin-template-divi-rtl.cssnuW+APK\1I  assets/css/checkout-template.cssnuW+APK\Gs11%# assets/css/checkout-template-divi.cssnuW+APK\ 4((PU assets/css/frontend-rtl.cssnuW+APK\(|TT~ assets/css/optin-template.cssnuW+APK\]S | assets/css/frontend-divi-rtl.cssnuW+APK\4ʟEE assets/js/import.jsnuW+APK\kR" assets/js/rest-api.jsnuW+APK\\X9jj assets/js/frontend.jsnuW+APK\D^G G  assets/js/optin-template.jsnuW+APK\z_**[ assets/js/checkout-template.jsnuW+APK\2# # H assets/fonts/cartflows-icon.svgnuW+APK\Ƞ assets/fonts/cartflows-icon.eotnuW+APK\A assets/fonts/cartflows-icon.ttfnuW+APK\N/-dd H% assets/fonts/cartflows-icon.woffnuW+APK\N>>+ assets/min-js/rest-api.min.jsnuW+APK\I}yy3 assets/min-js/import.min.jsnuW+APK\4  assets/min-js/frontend.min.jsnuW+APK\BPg#2 assets/min-js/optin-template.min.jsnuW+APK\ι0& assets/min-js/checkout-template.min.jsnuW+APK\o# > assets/images/400x400.jpgnuW+APK\N ^ ^( assets/images/start-scratch.jpgnuW+APK\ʳo8**!Lassets/images/cartflows-small.svgnuW+APK\>Jn]] Sassets/images/cartflows-logo.svgnuW+APK\4N!! gassets/images/cartflows-icon.svgnuW+APK\2 EE nreadme.txtnuW+APK\$YE  +imodules/widgets/class-cartflows-widgets.phpnuW+APK\|qCC-Ϸmodules/widgets/class-cartflows-next-step.phpnuW+APK\ƈmmomodules/index.phpnuW+APK\hh:modules/checkout/classes/class-cartflows-checkout-meta.phpnuW+APK\FZaa<1modules/checkout/classes/class-cartflows-checkout-markup.phpnuW+APK\YS-gmodules/checkout/class-cartflows-checkout.phpnuW+APK\5n2amodules/checkout/includes/checkout-dynamic-css.phpnuW+APK\f667modules/checkout/includes/checkout-dynamic-divi-css.phpnuW+APK\`=modules/checkout/templates/embed/checkout-template-simple.phpnuW+APK\4hh+Smodules/checkout/templates/wcf-template.phpnuW+APK\<'modules/optin/class-cartflows-optin.phpnuW+APK\xWW1modules/optin/includes/optin-dynamic-divi-css.phpnuW+APK\a,modules/optin/includes/optin-dynamic-css.phpnuW+APK\JJ6(modules/optin/classes/class-cartflows-optin-markup.phpnuW+APK\p/΄$J$J4smodules/optin/classes/class-cartflows-optin-meta.phpnuW+APK\zz1Bmodules/optin/templates/optin-template-simple.phpnuW+APK\O08modules/landing/classes/class-cartflows-landing-meta.phpnuW+APK\q?5 :modules/landing/classes/class-cartflows-landing-markup.phpnuW+APK\+ modules/landing/class-cartflows-landing.phpnuW+APK\)ll%modules/flow/class-cartflows-flow.phpnuW+APK\P%%%modules/flow/view/meta-flow-steps.phpnuW+APK\J1 > >2 modules/flow/classes/class-cartflows-flow-meta.phpnuW+APK\SG$227wQmodules/flow/classes/class-cartflows-step-post-meta.phpnuW+APK\6D((7Tmodules/flow/classes/class-cartflows-flow-post-type.phpnuW+APK\2}modules/flow/classes/class-cartflows-permalink.phpnuW+APK\L~2279modules/flow/classes/class-cartflows-step-post-type.phpnuW+APK\(r[ [ 8modules/flow/classes/class-cartflows-flow-shortcodes.phpnuW+APK\欏EE4|modules/flow/classes/class-cartflows-flow-loader.phpnuW+APK\$M+%modules/flow/templates/template-default.phpnuW+APK\:4IYY :modules/flow/templates/index.phpnuW+APK\#sOll*modules/flow/templates/template-canvas.phpnuW+APK\b---:modules/thankyou/classes/class-cartflows-thankyou-meta.phpnuW+APK\ ''< modules/thankyou/classes/class-cartflows-thankyou-markup.phpnuW+APK\& -M1modules/thankyou/class-cartflows-thankyou.phpnuW+APK\N#TT(B5classes/class-cartflows-default-meta.phpnuW+APK\])Vclasses/class-cartflows-importer-core.phpnuW+APK\6q;;"classes/class-cartflows-loader.phpnuW+APK\G6NN"classes/class-cartflows-helper.phpnuW+APK\RR"-classes/class-cartflows-logger.phpnuW+APK\o o 3=classes/class-cartflows-learndash-compatibility.phpnuW+APK\Hk_k_"Kclasses/class-cartflows-wizard.phpnuW+APK\!boCnn$Lclasses/class-cartflows-tracking.phpnuW+APK\Euu,classes/class-cartflows-bb-compatibility.phpnuW+APK\ܱ$classes/class-cartflows-importer.phpnuW+APK\ fL8"classes/logger/class-cartflows-log-handler-interface.phpnuW+APK\𝑽.classes/logger/class-cartflows-log-handler.phpnuW+APK\>;/ / -classes/logger/class-cartflows-log-levels.phpnuW+APK\$  3classes/logger/class-cartflows-logger-interface.phpnuW+APK\6"",classes/logger/class-cartflows-wc-logger.phpnuW+APK\(]--3classes/logger/class-cartflows-log-handler-file.phpnuW+APK\n]< < "4classes/class-cartflows-update.phpnuW+APK\?00#'classes/class-cartflows-cloning.phpnuW+APK\ƈmmXclasses/index.phpnuW+APK\``%FYclasses/class-cartflows-functions.phpnuW+APK\ V  7wclasses/batch-process/class-cartflows-importer-divi.phpnuW+APK\X<}classes/batch-process/class-cartflows-importer-elementor.phpnuW+APK\љ=classes/batch-process/class-cartflows-importer-divi-batch.phpnuW+APK\+g,,=classes/batch-process/helpers/class-wp-background-process.phpnuW+APK\A= &/ / 8classes/batch-process/helpers/class-wp-async-request.phpnuW+APK\}r@zclasses/batch-process/helpers/class-cartflows-importer-image.phpnuW+APK\:#7classes/batch-process/class-cartflows-batch-process.phpnuW+APK\Bclasses/batch-process/class-cartflows-importer-elementor-batch.phpnuW+APK\.VG}classes/batch-process/class-cartflows-importer-beaver-builder-batch.phpnuW+APK\ $K //Aclasses/batch-process/class-cartflows-importer-beaver-builder.phpnuW+APK\}܏ff?_classes/batch-process/class-cartflows-change-template-batch.phpnuW+APK\A(''4!classes/class-cartflows-api.phpnuW+APK\;Iclasses/fields/typography/class-cartflows-font-families.phpnuW+APK\<<+Kgclasses/fields/typography/google-fonts.jsonnuW+APK\ud@&&).classes/class-cartflows-compatibility.phpnuW+APK\T3Uclasses/class-cartflows-elementor-compatibility.phpnuW+APK\*!Z).^classes/class-cartflows-divi-compatibility.phpnuW+APK\+[MM0cclasses/class-cartflows-thrive-compatibility.phpnuW+APK\.L iclasses/class-cartflows-meta.phpnuW+APK\#qclasses/class-cartflows-metabox.phpnuW+APK\=N !yclasses/class-cartflows-utils.phpnuW+APK\u%B%B$Eclasses/class-cartflows-frontend.phpnuW+APK\lIlI!classes/class-cartflows-admin.phpnuW+APK\"'{&classes/deprecated/deprecated-hooks.phpnuW+APK\ i""(*classes/class-cartflows-admin-fields.phpnuW+APK\2z__'4Hclasses/class-cartflows-meta-fields.phpnuW+APK\!)Oclasses/class-cartflows-flow-frontend.phpnuW+APK\Cx3)'classes/class-cartflows-theme-support.phpnuW+APKK0