function commerce_pricelist_form_commerce_product_ui_product_form_alter in Commerce Pricelist 7
Add price list fieldgroup to product form. Implements hook_form_BASE_FORM_ID_alter().
File
- ./
commerce_pricelist.module, line 604 - Implements the basic functionality required for price lists
Code
function commerce_pricelist_form_commerce_product_ui_product_form_alter(&$form, &$form_state, $form_id) {
if (user_access('view any commerce_pricelist_list entity') && ($sku = $form['sku']['#default_value'])) {
module_load_include('inc', 'commerce_pricelist', 'includes/commerce_pricelist.admin');
$pricelists = commerce_pricelist_list_load_multiple();
$prices = array();
foreach ($pricelists as $pricelist) {
$table = commerce_pricelist_item_list_entities($pricelist->list_id, $sku);
if (isset($table['entity_table'])) {
$table['entity_table']['#prefix'] = check_plain($pricelist->title);
$prices[$pricelist->list_id] = $table;
}
}
$prices['actions'] = array(
'#type' => 'container',
'#attributes' => array(
'class' => array(
'form-actions',
'container-inline',
),
),
'#weight' => 100,
);
$options = array(
'attributes' => array(
'class' => array(
'button',
),
),
);
$prices['actions']['administer'] = array(
'#type' => 'item',
'#markup' => l(t('Administer price lists'), 'admin/commerce/pricelist/commerce_pricelist_list', $options),
'#weight' => 50,
);
$product = $form['#entity'];
$product_id = $product->product_id;
if ($product_id) {
$prices['actions']['add'] = array(
'#type' => 'item',
'#markup' => l(t('Add price'), 'admin/commerce/products/' . $product_id . '/add_price', $options + array(
'query' => array(
'destination' => current_path(),
),
)),
'#weight' => 49,
);
}
$form['commerce_pricelists'] = array(
'#type' => 'fieldset',
'#title' => t('Price lists'),
'#collapsible' => TRUE,
'#collapsed' => TRUE,
'#weight' => 100,
'prices' => $prices,
);
}
}