yf_shop__order_step_select_payment user module| File | plugins/shop/modules/shop/yf_shop__order_step_select_payment.class.php |
|---|---|
| Use | module('shop__order_step_select_payment'), URL ?object=shop__order_step_select_payment |
| Property | Default | Description |
|---|---|---|
| None declared in this class. | ||
None without a leading underscore.
_ hooks and helpers; not routable as page actionspublic function _order_step_select_payment($FORCE_DISPLAY_FORM = false)
Order step.
public function _order_step_select_payment($FORCE_DISPLAY_FORM = false)
{
$SELF_METHOD_ID = null;
// Show previous form if needed
if (common()->_error_exists() || empty($_POST)) {
return module('shop')->_order_step_delivery();
}
if (module('shop')->FORCE_PAY_METHOD) {
$_POST['pay_type'] = module('shop')->FORCE_PAY_METHOD;
$FORCE_DISPLAY_FORM = false;
}
if (main()->is_post() && ! $FORCE_DISPLAY_FORM) {
module('shop')->_order_validate_select_payment();
// Verify products
if ( ! common()->_error_exists()) {
$ORDER_ID = module('shop')->_order_create();
$ORDER_ID = (int) $ORDER_ID;
}
// Order id is required to continue, check it again
if (empty($ORDER_ID) && ! common()->_error_exists()) {
_re("SHOP: Error while creating `order`, please <a href='" . process_url('./?object=support') . "'>contact</a> site admin");
}
// Display next form if we have no errors
if ( ! common()->_error_exists()) {
module('shop')->_CUR_ORDER_ID = $ORDER_ID;
return module('shop')->_order_step_do_payment(true);
}
}
$DATA = $_POST;
if ( ! isset($DATA['pay_type'])) {
$DATA['pay_type'] = key(module('shop')->_pay_types);
}
$hidden_fields = '';
$hidden_fields .= module('shop')->_hidden_field('ship_type', ($_POST['ship_type'] ?? null));
foreach ((array) module('shop')->_b_fields as $_field) {
$hidden_fields .= module('shop')->_hidden_field($_field, ($_POST[$_field] ?? null));
}
$hidden_fields .= module('shop')->_hidden_field('card_num', $_POST['card_num']);
$hidden_fields .= module('shop')->_hidden_field('exp_date', $_POST['exp_date']);
$SELF_METHOD_ID = substr(__FUNCTION__, strlen('_order_step_'));
$replace = [
'form_action' => './?object=shop&action=' . ($_GET['action'] ?? null) . '&id=' . $SELF_METHOD_ID,
'error_message' => _e(),
'pay_type_box' => module('shop')->_box('pay_type', $DATA['pay_type']),
'hidden_fields' => $hidden_fields,
'back_link' => './?object=shop&action=order&id=delivery',
'cats_block' => module('shop')->_categories_show(),
];
return tpl()->parse('shop/order_select_payment', $replace);
}