function commerce_paypal_wps_settings_form in Commerce PayPal 7
Same name and namespace in other branches
- 7.2 modules/wps/commerce_paypal_wps.module \commerce_paypal_wps_settings_form()
Payment method callback: settings form.
File
- modules/
wps/ commerce_paypal_wps.module, line 55 - Implements PayPal Website Payments Standard in Drupal Commerce checkout.
Code
function commerce_paypal_wps_settings_form($settings = array()) {
$form = array();
// Merge default settings into the stored settings array.
$settings = (array) $settings + commerce_paypal_wps_default_settings();
$form['business'] = array(
'#type' => 'textfield',
'#title' => t('PayPal e-mail address'),
'#description' => t('The primary e-mail address of the PayPal account you want to use to receive payments.'),
'#default_value' => $settings['business'],
'#required' => TRUE,
);
$form['currency_code'] = array(
'#type' => 'select',
'#title' => t('Default currency'),
'#description' => t('Transactions in other currencies will be converted to this currency, so multi-currency sites must be configured to use appropriate conversion rates.'),
'#options' => commerce_paypal_wps_currencies(),
'#default_value' => $settings['currency_code'],
);
$form['allow_supported_currencies'] = array(
'#type' => 'checkbox',
'#title' => t('Allow transactions to use any currency in the options list above.'),
'#description' => t('Transactions in unsupported currencies will still be converted into the default currency.'),
'#default_value' => $settings['allow_supported_currencies'],
);
$form['language'] = array(
'#type' => 'select',
'#title' => t('PayPal login page language / locale'),
'#options' => commerce_paypal_wps_languages(),
'#default_value' => $settings['language'],
);
$form['server'] = array(
'#type' => 'radios',
'#title' => t('PayPal server'),
'#options' => array(
'sandbox' => 'Sandbox - use for testing, requires a PayPal Sandbox account',
'live' => 'Live - use for processing real transactions',
),
'#default_value' => $settings['server'],
);
$form['payment_action'] = array(
'#type' => 'radios',
'#title' => t('Payment action'),
'#options' => array(
'sale' => t('Sale - authorize and capture the funds at the time the payment is processed'),
'authorization' => t('Authorization - reserve funds on the card to be captured later through your PayPal account'),
),
'#default_value' => $settings['payment_action'],
);
$form['ipn_logging'] = array(
'#type' => 'radios',
'#title' => t('IPN logging'),
'#options' => array(
'notification' => t('Log notifications during IPN validation and processing.'),
'full_ipn' => t('Log notifications with the full IPN during validation and processing (used for debugging).'),
),
'#default_value' => $settings['ipn_logging'],
);
$form['show_payment_instructions'] = array(
'#type' => 'checkbox',
'#title' => t('Show a message on the checkout form when PayPal WPS is selected telling the customer to "Continue with checkout to complete payment via PayPal."'),
'#default_value' => $settings['show_payment_instructions'],
);
$form['ipn_create_billing_profile'] = array(
'#type' => 'checkbox',
'#title' => t('Create a billing profile based on name and country data in the IPN for any order that does not have one yet.'),
'#description' => t('This is most useful for sites that do not collect billing information locally but still want to have customer names on orders.'),
'#default_value' => $settings['ipn_create_billing_profile'],
);
return $form;
}