$datastream->id)), "islandora/object/{$datastream->parent->id}", t('This action cannot be undone.'), t('Delete'), t('Cancel') ); } /** * Submit handler for the delete datastream form. Purges/Delete's the given FedoraDatastream if possible. * * The ISLANDORA_PRE_PURGE_DATASTREAM_HOOK will query other modules as to whether the given FedoraDatastream * should be: blocked from purging; state set to 'Deleted'; or purged. * * @see islanodra_delete_datastream(). * * @param string $object_id * ID of the object * @param string $datastream_id * ID of the datastream */ function islandora_delete_datastream_form_submit(array $form, array &$form_state) { $datastream = $form_state['datastream']; $datastream_id = $datastream->id; $object = $datastream->parent; $deleted = FALSE; try { $deleted = islandora_delete_datastream($datastream); } catch (Exception $e) { drupal_set_message(t('Error deleting %s datastream from object %o %e', array('%s' => $datastream_id, '%o' => $object->label, '%e' => $e->getMessage())), 'error'); } if ($deleted) { drupal_set_message(t('%d datastream sucessfully deleted from Islandora object %o', array('%d' => $datastream_id, '%o' => $object->label))); } else { drupal_set_message(t('Error deleting %s datastream from object %o', array('%s' => $datastream_id, '%o' => $object->label)), 'error'); } $form_state['redirect'] = "islandora/object/{$object->id}"; }