You are here

function commerce_file_license_form_after_build in Commerce File 7

After build callback for commerce_file_license_form().

  • alter form after all element process callbacks
1 string reference to 'commerce_file_license_form_after_build'
commerce_file_license_form in includes/commerce_file_license.forms.inc
Form callback: create or edit a license.

File

includes/commerce_file_license.forms.inc, line 260
Forms for creating / editing, deleting, issuing licenses

Code

function commerce_file_license_form_after_build($form, &$form_state) {
  $entity = $form_state[COMMERCE_FILE_LICENSE_ENTITY_NAME];
  $field_names = _commerce_file_get_field_names();
  $license_info = _commerce_file_collate_license_info();
  $file_fieldset_description = t('<strong>These settings are added to the cumulative value of all of the limit settings in the line item references.</strong>');
  $have_line_items = !empty($form_state['have_line_items']);

  // file field processing
  $file_field_name = $field_names['license_file'];
  if (isset($form[$file_field_name])) {
    $file_lang = isset($form[$file_field_name]['#language']) ? $form[$file_field_name]['#language'] : LANGUAGE_NONE;
    if (!empty($form[$file_field_name][$file_lang])) {
      foreach (element_children($form[$file_field_name][$file_lang]) as $file_delta) {
        $element =& $form[$file_field_name][$file_lang][$file_delta];

        // unset remove button for files if we have line items
        $element['remove_button']['#access'] = !$have_line_items;

        // alter settings
        if (isset($element['data'])) {
          if (!empty($element['data']['#description'])) {
            $element['data']['#description'] .= ' ' . $file_fieldset_description;
          }
          else {
            $element['data']['#description'] = $file_fieldset_description;
          }
        }
      }
      unset($element);
    }
  }
  return $form;
}