You are here

function i18n_commerce_product_product_form_submit in Internationalization for commerce product 7

Submit callback for commerce_product_product_form().

1 string reference to 'i18n_commerce_product_product_form_submit'
i18n_commerce_product_form_commerce_product_ui_product_form_alter in ./i18n_commerce_product.forms.inc
Implements hook_form_FORM_ID_alter().

File

./i18n_commerce_product.forms.inc, line 145
Internationalization (i18n) module - Commerce product handling.

Code

function i18n_commerce_product_product_form_submit($form, &$form_state) {
  global $user;
  $product =& $form_state['commerce_product'];

  // Save default parameters back into the $product object.
  $product->sku = $form_state['values']['sku'];
  $product->title = $form_state['values']['title'];
  $product->status = $form_state['values']['status'];
  $product->language = $form_state['values']['language'];
  $product->tproduct_id = $form_state['values']['tproduct_id'];

  // Set the product's uid if it's being created at this time.
  if (empty($product->product_id)) {
    $product->uid = $user->uid;
  }

  // Trigger a new revision if the checkbox was enabled or a log message supplied.
  if (user_access('administer commerce_product entities') && !empty($form_state['values']['revision']) || !user_access('administer commerce_product entities') && !empty($form['change_history']['revision']['#default_value']) || !empty($form_state['values']['log'])) {
    $product->revision = TRUE;
    $product->log = $form_state['values']['log'];
  }

  // Notify field widgets.
  field_attach_submit('commerce_product', $product, $form, $form_state);

  // Save the product.
  commerce_product_save($product);

  // Redirect based on the button clicked.
  drupal_set_message(t('Product saved.'));
}