Created
September 29, 2019 18:46
-
-
Save SummittDweller/f9e623c3638be03d4ccf3ab881840a53 to your computer and use it in GitHub Desktop.
My dg7.module implementation of hook_form_islandora_multi_importer_form_alter to select usual option defaults.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Implements hook_form_FORM_ID_alter. | |
* | |
* This function implements hook_form_FORM_ID_alter where FORM_ID is 'islandora_multi_importer_form` with intent | |
* to set #default_value option selections to the usual defaults required for ingest of new objects using | |
* TWIG template "Digital_Grinnell_MODS_Master.twig Revision 14". | |
* | |
* @param $form | |
* @param $form_state | |
* @param $form_id | |
*/ | |
function dg7_form_islandora_multi_importer_form_alter(&$form, &$form_state, $form_id) { | |
global $user; | |
// Attention! Update $mods_template here to the name given to the current DG MODS Master TWIG. | |
$mods_template_name = "Digital_Grinnell_MODS_Master.twig Revision 14"; | |
// Define some arrays for frequent re-use. | |
$default_XSLT = array('default XSLT' => 'xslt|0'); | |
$mods_template = array($mods_template_name => 'template|'.$mods_template_name); | |
$build_derivative_from_OBJ = array('Build using derivative from OBJ' => 'derivative|0'); | |
$build_using_islandora_derivative = array('Build using islandora generated derivative' => 'derivative|0'); | |
$build_derivative_from_PHOTO = array('Build using derivative from PHOTO' => 'derivative|0'); | |
$obj = array('OBJ' => 'column|6'); | |
$transcript = array('TRANSCRIPT' => 'column|7'); | |
$thumbnail = array('TN' => 'column|8'); | |
$workspace = array('WORKSPACE' => 'column|1'); // this column is generally EMPTY | |
// Use these to dump form data structures. | |
// p($form_id); | |
// p($form_state); | |
// p($form); | |
// Always choose the current DG MODS Master TWIG template | |
$form['step4']['group_tabs']['group_twig_tab']['savemenu']['template_chooser']['template_list']['#default_value'] = $mods_template; | |
// Always find the object's CModel in the 'cmodel' column, #4 | |
$form['cmodelmap']['basemapping']['rows']['cmodelmap_row']['cmodelmap']['#default_value'] = array('cmodel' => '4'); | |
// For compoundCModel... | |
$cm = 'islandora:compoundCModel'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $thumbnail; | |
// For sp_large_image_cmodel... | |
$cm = 'islandora:sp_large_image_cmodel'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OBJ']['method']['data']['#default_value'] = $obj; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['JPG']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['JP2']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
// For sp_pdf... | |
$cm = 'islandora:sp_pdf'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OBJ']['method']['data']['#default_value'] = $obj; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['PDFA']['method']['data']['#default_value'] = $workspace; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['FULL_TEXT']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['PREVIEW']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
// For binaryObjectCModel... | |
$cm = 'islandora:binaryObjectCModel'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OBJ']['method']['data']['#default_value'] = $obj; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $thumbnail; | |
// For sp_basic_image... | |
$cm = 'islandora:sp_basic_image'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OBJ']['method']['data']['#default_value'] = $obj; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MEDIUM_SIZE']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
// For oralhistoriesCModel... | |
$cm = 'islandora:oralhistoriesCModel'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OBJ']['method']['data']['#default_value'] = $obj; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TRANSCRIPT']['method']['data']['#default_value'] = $transcript; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $thumbnail; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OGG']['method']['data']['#default_value'] = $workspace; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MKV']['method']['data']['#default_value'] = $workspace; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TECHMD_FITS']['method']['data']['#default_value'] = $workspace; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MP4']['method']['data']['#default_value'] = $workspace; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['PROXY_MP3']['method']['data']['#default_value'] = $workspace; | |
// For sp_videoCModel... | |
$cm = 'islandora:sp_videoCModel'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OBJ']['method']['data']['#default_value'] = $obj; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $thumbnail; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OGG']['method']['data']['#default_value'] = $workspace; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MKV']['method']['data']['#default_value'] = $workspace; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TECHMD_FITS']['method']['data']['#default_value'] = $workspace; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MP4']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
// For sp-audioCModel... | |
$cm = 'islandora:sp-audioCModel'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OBJ']['method']['data']['#default_value'] = $obj; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $thumbnail; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['PROXY_MP3']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
// For bookCModel... | |
$cm = 'islandora:bookCModel'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $thumbnail; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['PDF']['method']['data']['#default_value'] = $build_using_islandora_derivative; | |
// For pageCModel... | |
$cm = 'islandora:pageCModel'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['JP2']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['JPG']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OCR']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['HOCR']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
// For collectionCModel... | |
$cm = 'islandora:collectionCModel'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $thumbnail; | |
// For sp_disk_image... | |
$cm = 'islandora:sp_disk_image'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OBJ']['method']['data']['#default_value'] = $obj; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TECHMD_DFXML']['method']['data']['#default_value'] = $build_derivative_from_OBJ; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['PHOTO']['method']['data']['#default_value'] = $thumbnail; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['JPG']['method']['data']['#default_value'] = $build_derivative_from_PHOTO; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $build_derivative_from_PHOTO; | |
// For sp_web_archive... | |
$cm = 'islandora:sp_web_archive'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['OBJ']['method']['data']['#default_value'] = $obj; | |
// For newspaperCModel... | |
$cm = 'islandora:newspaperCModel'; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['DC']['method']['data']['#default_value'] = $default_XSLT; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['MODS']['method']['data']['#default_value'] = $mods_template; | |
$form['cmodelmap']['cmodels'][$cm]['dsid']['rows']['TN']['method']['data']['#default_value'] = $thumbnail; | |
// Finally, the 'objectmap' portion of the form... | |
$form['objectmap']['objectmapping']['rows']['parentmap_row']['parentmap']['#default_value'] = array('parent' => '3'); | |
$form['objectmap']['objectmapping']['rows']['labelmap_row']['labelmap']['#default_value'] = array('title' => '9'); | |
$form['objectmap']['objectmapping']['rows']['sequencemap_row']['sequencemap']['#default_value'] = array('sequence' => '5'); | |
$form['objectmap']['objectmapping']['rows']['dsmap_row']['dsremote']['#default_value'] = array('local*' => 'LOCAL'); | |
return; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment