0], $atts, 'formipay');
if ($atts['form'] == 0) {
return false;
}
$post_id = intval($atts['form']);
$currency = 'Rp. ';
if ($post_id > 0) {
$currency = formipay_post_currency($post_id);
self::$form_ids[] = $post_id;
}
$isDonation = formipay_is_donation($post_id);
$form_settings = get_post_meta($post_id, 'formipay_settings', true);
$point_symbol = formipay_get_post_meta($post_id, 'multistep_point_symbol');
$point_icons = formipay_get_post_meta($post_id, 'multistep_point_icons');
$page_breaks = [];
if(!empty($form_settings['fields'])){
foreach($form_settings['fields'] as $field){
if($field['field_type'] == 'page_break'){
if($point_symbol == 'icon'){
$icons = json_decode($point_icons, true);
foreach($icons as $icon){
if($icon['field_id'] == $field['field_id']){
$field['icon'] = $icon['script'];
}
}
}
$page_breaks[] = $field;
}
}
}
ob_start();
$timezone = get_option('timezone_string', 'Asia/Jakarta');
$require_login = formipay_get_post_meta($post_id, 'require_login') === 'on';
$scheduled = formipay_get_post_meta($post_id, 'schedule_toggle') === 'on';
$render = true;
if ($require_login && !is_user_logged_in()) {
$render = false;
echo '
' . wp_kses_post(formipay_get_post_meta($post_id, 'require_login_message')) . '
';
} elseif ($scheduled) {
$date_range = explode(',', formipay_get_post_meta($post_id, 'daterange'));
$date_from = new DateTime($date_range[0], new DateTimeZone($timezone));
$date_to = new DateTime($date_range[1], new DateTimeZone($timezone));
$now = new DateTime('now', new DateTimeZone($timezone));
if ($date_from > $now) {
$render = false;
?>
$date_to) {
$render = false;
?>
0) {
$this->public_enqueue_scripts();
$button_background_color = json_decode(formipay_get_post_meta($post_id, 'button_bg_color'), true );
$button_text_color = json_decode(formipay_get_post_meta($post_id, 'button_text_color'), true );
$button_border_color = json_decode( formipay_get_post_meta($post_id, 'button_border_color'), true );
?>
$method($field);
} else {
// Optionally handle unknown field types
do_action('formipay/render/custom-field-type', $type, $field);
}
}
/**
* Render payment options
*/
private function render_payment_options($post_id) {
$payments = apply_filters( 'formipay/frontend/payment-list', [], $post_id );
?>
';
}
if(!empty($page_breaks)){
?>
admin_url('admin-ajax.php'),
'frontend_nonce' => wp_create_nonce('formipay-frontend-nonce'),
'nonce' => wp_create_nonce('formipay_order_submit'),
'forms' => $this->get_form_data()
];
wp_localize_script('formipay-form', 'formipay_form', $form_data);
}
private function get_form_data(){
$form_data = [];
foreach (array_unique(self::$form_ids) as $post_id) {
$form_data[$post_id] = [
'form_id' => $post_id,
'currency' => formipay_post_currency($post_id),
'buyer_phone_field' => formipay_get_post_meta($post_id, 'buyer_phone'),
'buyer_country_field' => formipay_get_post_meta($post_id, 'buyer_country'),
'buyer_phone_allow' => (bool) formipay_get_post_meta($post_id, 'buyer_allow_choose_country_code'),
'buyer_phone_country_code' => formipay_get_post_meta($post_id, 'buyer_phone_country_code'),
'decimal_digits' => formipay_get_post_meta($post_id, 'product_currency_decimal_digits'),
'decimal_symbol' => formipay_get_post_meta($post_id, 'product_currency_decimal_symbol'),
'thousand_separator' => formipay_get_post_meta($post_id, 'product_currency_thousand_separator'),
'notice_empty_text_message' => formipay_get_post_meta($post_id, 'empty_required_text_field'),
'notice_empty_select_message' => formipay_get_post_meta($post_id, 'empty_required_select_field'),
'notice_empty_agreement_message' => formipay_get_post_meta($post_id, 'empty_required_agreement_field'),
'quantity_toggle' => formipay_get_post_meta($post_id, 'product_quantity_toggle'),
'quantity_step' => formipay_get_post_meta($post_id, 'product_quantity_range'),
'quantity_min' => formipay_get_post_meta($post_id, 'product_minimum_purchase'),
'quantity_stock' => formipay_get_post_meta($post_id, 'product_stock'),
'button_text' => formipay_get_post_meta($post_id, 'button_text'),
'button_processing_text' => formipay_get_post_meta($post_id, 'button_processing_text'),
'isPopup' => formipay_isPopup($post_id),
'trigger_selector' => formipay_get_post_meta($post_id, 'popup_click_selector') ?
formipay_get_post_meta($post_id, 'popup_trigger_selector') :
'.formipay-open-popup-button',
'modal_selector' => '#formipay-popup-' . $post_id
];
}
return $form_data;
}
}
?>