Browse Source

Merge pull request #289 from nigelgbanks/7.x-code-review

7.x code review
pull/290/merge
Nigel Banks 12 years ago
parent
commit
266f10b8ba
  1. 2
      includes/add_datastream.form.inc
  2. 4
      includes/dublin_core.inc
  3. 12
      theme/theme.inc

2
includes/add_datastream.form.inc

@ -32,7 +32,7 @@ function islandora_add_datastream_form(array $form, array &$form_state, FedoraOb
'#attributes' => array(
'enctype' => 'multipart/form-data',
),
'fieldset' => array(
'dsid' => array(
'#type' => 'fieldset',
'#title' => 'Add a datastream',
'#collapsible' => FALSE,

4
includes/dublin_core.inc

@ -151,7 +151,7 @@ class DublinCore {
*/
public static function importFromXMLString($dc_xml) {
$dc_doc = new DomDocument();
if ($dc_doc->loadXML($dc_xml)) {
if (!empty($dc_xml) && $dc_doc->loadXML($dc_xml)) {
$oai_dc = $dc_doc->getElementsByTagNameNS('http://purl.org/dc/elements/1.1/', '*');
$new_dc = new DublinCore();
foreach ($oai_dc as $child) {
@ -161,9 +161,7 @@ class DublinCore {
}
return $new_dc;
}
else {
return NULL;
}
}
}

12
theme/theme.inc

@ -107,20 +107,16 @@ function islandora_preprocess_islandora_default(&$variables) {
}
}
$variables['datastreams'] = $datastreams;
try {
$dc = $islandora_object['DC']->content;
$dc_object = DublinCore::importFromXMLString($dc);
// Objects in fcrepo4 don't always contain a DC datastream.
if (isset($islandora_object['DC'])) {
$dc_object = DublinCore::importFromXMLString($islandora_object['DC']->content);
$dc_array = $dc_object->asArray();
}
catch (Exception $e) {
drupal_set_message(t('Error retrieving object %s %t', array('%s' => $islandora_object->id, '%t' => $e->getMessage())), 'error', FALSE);
}
$variables['dc_array'] = isset($dc_array) ? $dc_array : array();
$variables['islandora_dublin_core'] = isset($dc_object) ? $dc_object : NULL;
$variables['islandora_object_label'] = $islandora_object->label;
global $base_url;
if (isset($islandora_object['TN'])) {
$variables['islandora_thumbnail_url'] = $base_url . '/islandora/object/' . $islandora_object->id . '/datastream/TN/view';
$variables['islandora_thumbnail_url'] = url("islandora/object/{$islandora_object->id}/datastream/TN/view");
}
}

Loading…
Cancel
Save