diff --git a/fedora_repository.module b/fedora_repository.module index 1a980368..4c3acb91 100644 --- a/fedora_repository.module +++ b/fedora_repository.module @@ -2217,7 +2217,9 @@ function _is_added_to_basket($pid, $account = NULL) { /** * fedora repository display schema + * * @param type $file + * * @return type */ function fedora_repository_display_schema($file) { @@ -2236,14 +2238,20 @@ function fedora_repository_display_schema($file) { * * @param array $object * An array defining an object to ingest. - * @param type $context - * @return type + * @param string $module_name + * The string needed in the finished callback to be + * sent out in the postprocess hook. + * @param array $context + * Variables shared between batch iterations + * and finished callback */ -function fedora_repository_batch_reingest_object($object, &$context) { +function fedora_repository_batch_reingest_object($object, $module_name, &$context) { module_load_include('inc', 'fedora_repository', 'api/fedora_item'); module_load_include('inc', 'fedora_repository', 'api/fedora_utils'); + $context['results']['module_name'] = $module_name; + if (!empty($object) && is_array($object)) { $pid = $object['pid']; if (!valid_pid($pid)) { @@ -2316,8 +2324,8 @@ function fedora_repository_batch_reingest_object($object, &$context) { function fedora_repository_solutionpack_send_postprocess($success, $results, $operations) { // Hook to let solution pack objects be modified. // Not using module_invoke so solution packs can be expanded by other modules. - if($success) { - module_invoke_all('postprocess_solution_pack', $_SESSION['solution_pack_module_name']); + if ($success) { + module_invoke_all('postprocess_solution_pack', $results['module_name']); } } @@ -2341,7 +2349,7 @@ function fedora_repository_get_islandora_datastream_version($item = NULL, $dsid $doc = simplexml_load_file($datastream_file); } - if (!empty($doc) && $version = (int)$doc->attributes()->version) { + if (!empty($doc) && $version = (int) $doc->attributes()->version) { $return = $version; } @@ -2350,7 +2358,9 @@ function fedora_repository_get_islandora_datastream_version($item = NULL, $dsid /** * theme fedora repository solution pack list + * * @param type $solution_packs + * * @return string */ function theme_fedora_repository_solution_packs_list($solution_packs) { @@ -2365,8 +2375,10 @@ function theme_fedora_repository_solution_packs_list($solution_packs) { } /** - * Implementation of hook_forms() + * Implements hook_forms() + * * @param string $form_id + * * @return array */ function fedora_repository_forms($form_id) { @@ -2380,7 +2392,7 @@ function fedora_repository_forms($form_id) { } /** - * Implementation of hook_imagecache_default_presets(). + * Implements hook_imagecache_default_presets(). */ function fedora_repository_imagecache_default_presets() { return array( diff --git a/fedora_repository.solutionpacks.inc b/fedora_repository.solutionpacks.inc index 0951a799..6a5129a0 100644 --- a/fedora_repository.solutionpacks.inc +++ b/fedora_repository.solutionpacks.inc @@ -58,8 +58,10 @@ function fedora_repository_solution_packs_page() { * some objects are missing. * * @param array &$form_state - * @param array $solution_pack_module - * @param array $solution_pack_name + * @param unknown $solution_pack_module + * @param string $solution_pack_name + * @param array $objects + * Defaults to an empty array. */ function fedora_repository_solution_pack_form(&$form_state, $solution_pack_module, $solution_pack_name, $objects = array()) { @@ -200,12 +202,10 @@ function fedora_repository_solution_pack_form_submit($form, &$form_state) { foreach ($solution_pack_info[$module_name]['objects'] as $object) { // Add this object to the batch job queue. - $batch['operations'][] = array('fedora_repository_batch_reingest_object', array($object)); + // Module name is needed in the finished callback. + $batch['operations'][] = array('fedora_repository_batch_reingest_object', array($object, $module_name)); } - // Used in postprocess hook. - $_SESSION['solution_pack_module_name'] = $module_name; - // Tell the batch to call the function to send out a postprocess hook. $batch['finished'] = 'fedora_repository_solutionpack_send_postprocess'; @@ -216,8 +216,10 @@ function fedora_repository_solution_pack_form_submit($form, &$form_state) { /** * Writes a form entry into the database. * - * @param unknown_type $form_name + * @param string $form_name + * The name of the form. * @param unknown_type $form_xml + * The form definition. */ function solution_pack_add_form($form_name, $form_xml) { $result = db_result(db_query('Select name from {xml_forms} where name = "%s"', $form_name)); @@ -233,8 +235,10 @@ function solution_pack_add_form($form_name, $form_xml) { /** * Writes a form association to the database * - * @param unknown_type $content_model - * @param unknown_type $form_name + * @param string $content_model + * content model PID + * @param string $form_name + * Name of the form */ function solution_pack_add_form_association($content_model, $form_name) { $result = db_result(db_query('Select content_model from {islandora_content_model_forms} where content_model = "%s" and form_name = "%s"',