mediamosa_browse_asset_form_submit

Versions
mediamosa-21
mediamosa_browse_asset_form_submit($form, &$form_state)

Submit form.

Code

sites/all/modules/mediamosa/maintenance/browse/mediamosa_maintenance_browse_asset.inc, line 913

<?php
function mediamosa_browse_asset_form_submit($form, &$form_state) {

  $asset_id = $form_state['values']['asset_id'];

  // Get the asset REST call.
  $url = strtr('asset/@asset_id', array('@asset_id' => $asset_id));

  // Do REST call.
  $result_asset = mediamosa_response_connector::static_do_restcall_drupal('asset/' . $asset_id, 'GET', array());

  if (!mediamosa_response_connector::static_result_okay($result_asset)) {
    drupal_set_message(t('Asset with ID @asset_id does not exists.', array('@asset_id' => $asset_id)), 'warning');
    drupal_goto('admin/mediamosa/browse/asset');
  }

  // Get the asset from the result.
  $asset = reset($result_asset['items']);

  // Collect was what made empty.
  $empty_names = array();
  $changed_names = array();

  foreach ($form_state['values'] as $name_rpl => $value) {

    // Must start with rpl_.
    if (substr($name_rpl, 0, 4) != 'rpl_') {
      continue;
    }

    // Get the original name.
    $name = substr($name_rpl, 4);
    $changed_names[$name] = $value;
  }

  // Save the changes.
  $params = array(
    'app_id' => $asset['app_id'], // Need to this under the app of the asset.
    'user_id' => $asset['owner_id'], // Need the owner.
  );

  $params = array_merge($changed_names, $params);

  if (!empty($form_state['values']['new_metadata_property']) && $form_state['values']['new_metadata_value'] != '') {
    $params[$form_state['values']['new_metadata_property']] = $form_state['values']['new_metadata_value'];
  }

  $uri = strtr('asset/@asset_id/metadata', array('@asset_id' => $asset_id));

  // Execute the metadata post.
  $result = mediamosa_response_connector::static_do_restcall($uri, 'POST', $params);

  if (mediamosa_response_connector::static_result_okay($result)) {
    drupal_set_message(t('The changes to the asset metadata have been saved.'));
    drupal_goto('admin/mediamosa/browse/asset/' . rawurlencode($asset_id));
  }

  // Set failed.
  drupal_set_message(t('Failed to save changes to the asset metadata.'));
}
?>