Drupal modules for browsing and managing Fedora-based digital repositories.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

88 lines
2.7 KiB

<?php
/**
* @file
* Utility functions for working with DC fields.
*/
/**
* Adds all the DC fields to a bundle.
*
* @param string $bundle_name
* The name of the bundle to give the fields.
*/
function islandora_dc_add_fields_to_bundle($bundle_name) {
module_load_include('inc', 'islandora', 'include/fields');
// Big list of field names/labels/descriptions.
$field_data = array(
ISLANDORA_DC_CONTRIBUTOR_FIELD => array(
'label' => 'DC Contributor',
'description' => 'Dublin Core 1.1 Contributor Metadata',
),
ISLANDORA_DC_COVERAGE_FIELD => array(
'label' => 'DC Coverage',
'description' => 'Dublin Core 1.1 Coverage Metadata',
),
ISLANDORA_DC_CREATOR_FIELD => array(
'label' => 'DC Creator',
'description' => 'Dublin Core 1.1 Creator Metadata',
),
ISLANDORA_DC_DATE_FIELD => array(
'label' => 'DC Date',
'description' => 'Dublin Core 1.1 Date Metadata',
),
ISLANDORA_DC_DESCRIPTION_FIELD => array(
'label' => 'DC Description',
'description' => 'Dublin Core 1.1 Description Metadata',
),
ISLANDORA_DC_FORMAT_FIELD => array(
'label' => 'DC Format',
'description' => 'Dublin Core 1.1 Format Metadata',
),
ISLANDORA_DC_IDENTIFIER_FIELD => array(
'label' => 'DC Identifier',
'description' => 'Dublin Core 1.1 Identifier Metadata',
),
ISLANDORA_DC_LANGUAGE_FIELD => array(
'label' => 'DC Language',
'description' => 'Dublin Core 1.1 Language Metadata',
),
ISLANDORA_DC_PUBLISHER_FIELD => array(
'label' => 'DC Publisher',
'description' => 'Dublin Core 1.1 Publisher Metadata',
),
ISLANDORA_DC_RELATION_FIELD => array(
'label' => 'DC Relation',
'description' => 'Dublin Core 1.1 Relation Metadata',
),
ISLANDORA_DC_RIGHTS_FIELD => array(
'label' => 'DC Rights',
'description' => 'Dublin Core 1.1 Rights Metadata',
),
ISLANDORA_DC_SOURCE_FIELD => array(
'label' => 'DC Source',
'description' => 'Dublin Core 1.1 Source Metadata',
),
ISLANDORA_DC_SUBJECT_FIELD => array(
'label' => 'DC Subject',
'description' => 'Dublin Core 1.1 Subject Metadata',
),
ISLANDORA_DC_TITLE_FIELD => array(
'label' => 'DC Title',
'description' => 'Dublin Core 1.1 Title Metadata',
),
ISLANDORA_DC_TYPE_FIELD => array(
'label' => 'DC Type',
'description' => 'Dublin Core 1.1 Type Metadata',
),
);
// Iterate over fields and add each to the specified bundle.
foreach ($field_data as $field_name => $data) {
$field_label = $data['label'];
$field_description = $data['description'];
islandora_add_field_to_bundle($bundle_name, $field_name, $field_label, $field_description);
}
}