function commerce_sermepa_settings_form in Commerce sermepa 7
Payment method callback: settings form.
Return value
array Form elements for the payment method's settings form included as part of the payment method's enabling action in Rules.
File
- ./
commerce_sermepa.module, line 214 - Provides a payment method for Drupal Commerce using Sermepa/Redsys gateway.
Code
function commerce_sermepa_settings_form($settings = NULL) {
libraries_load('sermepa');
$form = array();
$settings = (array) $settings + array(
'mode' => 'test',
'Ds_MerchantName' => '',
'Ds_MerchantCode' => '',
'Ds_MerchantPassword' => '',
'Ds_Merchant_Terminal' => '',
'Ds_Merchant_PayMethods' => array(
'C',
),
'Ds_Merchant_ConsumerLanguage' => '001',
'currency' => '978',
'advanced' => array(
'override_url' => '',
),
);
$form['mode'] = array(
'#type' => 'radios',
'#title' => t('Mode of the transactions'),
'#default_value' => $settings['mode'],
'#options' => array(
'test' => t('Test'),
'live' => t('Live'),
),
'#required' => TRUE,
);
$form['Ds_MerchantName'] = array(
'#type' => 'textfield',
'#title' => t('Merchant Name'),
'#default_value' => $settings['Ds_MerchantName'],
'#size' => 80,
'#maxlength' => Sermepa::getMerchantNameMaxLength(),
'#required' => TRUE,
);
$form['Ds_MerchantCode'] = array(
'#type' => 'textfield',
'#title' => t('Merchant Code'),
'#default_value' => $settings['Ds_MerchantCode'],
'#size' => 80,
'#maxlength' => Sermepa::getMerchantCodeMaxLength(),
'#required' => TRUE,
);
$form['Ds_MerchantPassword'] = array(
'#type' => 'textfield',
'#title' => t('SHA256 Merchant Password'),
'#default_value' => $settings['Ds_MerchantPassword'],
'#size' => 80,
'#maxlength' => Sermepa::getMerchantPasswordMaxLength(),
'#required' => TRUE,
);
$form['Ds_Merchant_Terminal'] = array(
'#type' => 'textfield',
'#title' => t('Merchant Terminal'),
'#default_value' => $settings['Ds_Merchant_Terminal'],
'#size' => 5,
'#maxlength' => Sermepa::getMerchantTerminalMaxLength(),
'#required' => TRUE,
);
$form['Ds_Merchant_PayMethods'] = array(
'#type' => 'select',
'#multiple' => TRUE,
'#title' => t('Merchant Consumer Language'),
'#default_value' => $settings['Ds_Merchant_PayMethods'],
'#options' => Sermepa::getAvailablePaymentMethods(),
'#required' => FALSE,
);
$form['Ds_Merchant_ConsumerLanguage'] = array(
'#type' => 'select',
'#title' => t('Merchant Consumer Language'),
'#default_value' => $settings['Ds_Merchant_ConsumerLanguage'],
'#options' => Sermepa::getAvailableConsumerLanguages(),
'#required' => TRUE,
);
$form['currency'] = array(
'#type' => 'select',
'#title' => t('Currency'),
'#default_value' => $settings['currency'],
'#options' => Sermepa::getAvailableCurrencies(),
'#required' => TRUE,
);
$form['description'] = array(
'#type' => 'textarea',
'#title' => t('Payment instructions'),
'#description' => t('Instructions for customers on the checkout page. Use <br /> for line break.'),
'#default_value' => isset($settings['description']) ? $settings['description'] : '',
'#required' => FALSE,
'#rows' => 3,
);
$form['advanced'] = array(
'#type' => 'fieldset',
'#title' => t('Advanced options'),
'#collapsible' => TRUE,
'#collapsed' => TRUE,
);
$form['advanced']['override_url'] = array(
'#type' => 'textfield',
'#title' => t('Override bank connect url'),
'#default_value' => $settings['advanced']['override_url'],
'#size' => 80,
'#maxlength' => 255,
'#element_validate' => array(
'commerce_sermepa_settings_override_url_validate',
),
);
return $form;
}