From d2e53b6b5abb0a32af99b8923b16396a36134876 Mon Sep 17 00:00:00 2001 From: Kylea Jackson Date: Mon, 6 Apr 2015 11:18:47 -0300 Subject: [PATCH] cleaning up --- includes/admin.form.inc | 6 ++++ islandora.api.php | 80 +++++++++++++++++++++++++++++++++-------- 2 files changed, 71 insertions(+), 15 deletions(-) diff --git a/includes/admin.form.inc b/includes/admin.form.inc index 0d932697..5db13f73 100644 --- a/includes/admin.form.inc +++ b/includes/admin.form.inc @@ -74,6 +74,12 @@ function islandora_repository_admin(array $form, array &$form_state) { '#description' => t('Displays an extra print tab, allowing an object to be printed'), '#default_value' => variable_get('islandora_show_print_option', FALSE), ), + 'islandora_render_drupal_breadcrumbs' => array( + '#type' => 'checkbox', + '#title' => t('Render Drupal breadcrumbs'), + '#description' => t('Larger sites may experience a notable performance improvement when disabled due to how breadcrumbs are constructed.'), + '#default_value' => variable_get('islandora_render_drupal_breadcrumbs', TRUE), + ), ), 'islandora_namespace' => array( '#type' => 'fieldset', diff --git a/islandora.api.php b/islandora.api.php index a912991c..95e08f1d 100644 --- a/islandora.api.php +++ b/islandora.api.php @@ -1,8 +1,10 @@ $object->label, 'path' => $resource_url, ); + // Theme the image seperatly. $variables['islandora_img'] = theme('image', $params); $output = theme('islandora_default_print', array( 'islandora_content' => $variables['islandora_img'])); } + return $output; } /** @@ -55,6 +59,8 @@ function hook_islandora_view_print_object($object) { */ function hook_cmodel_pid_islandora_view_object($object) { } + + /** * Alter display output after it has been generated. * @@ -65,6 +71,7 @@ function hook_cmodel_pid_islandora_view_object($object) { */ function hook_islandora_view_object_alter(&$object, &$rendered) { } + /** * Alter display output if the object has the given model. * @@ -77,6 +84,7 @@ function hook_islandora_view_object_alter(&$object, &$rendered) { */ function hook_cmodel_pid_islandora_view_object_alter(&$object, &$rendered) { } + /** * Generate an object's datastreams management display. * @@ -88,6 +96,7 @@ function hook_cmodel_pid_islandora_view_object_alter(&$object, &$rendered) { */ function hook_islandora_edit_object($object) { } + /** * Generate an object's datastreams management display based on content model. * @@ -102,6 +111,7 @@ function hook_islandora_edit_object($object) { */ function hook_cmodel_pid_islandora_edit_object($object) { } + /** * Allow datastreams management display output to be altered. * @@ -112,6 +122,7 @@ function hook_cmodel_pid_islandora_edit_object($object) { */ function hook_islandora_edit_object_alter(&$object, &$rendered) { } + /** * Allows modules to alter the object or block/modify the given action. * @@ -143,6 +154,7 @@ function hook_islandora_edit_object_alter(&$object, &$rendered) { */ function hook_islandora_object_alter(AbstractObject $object, array &$context) { } + /** * Allows modules to alter the object or block/modify the given action. * @@ -150,6 +162,7 @@ function hook_islandora_object_alter(AbstractObject $object, array &$context) { */ function hook_cmodel_pid_islandora_object_alter(AbstractObject $object, array &$context) { } + /** * Allows modules to alter the datastream or block/modify the given action. * @@ -190,6 +203,7 @@ function hook_cmodel_pid_islandora_object_alter(AbstractObject $object, array &$ */ function hook_islandora_datastream_alter(AbstractObject $object, AbstractDatastream $datastream, array &$context) { } + /** * Allows modules to alter the datastream or block/modify the given action. * @@ -197,6 +211,7 @@ function hook_islandora_datastream_alter(AbstractObject $object, AbstractDatastr */ function hook_cmodel_pid_dsid_islandora_datastream_alter(AbstractObject $object, AbstractDatastream $datastream, array &$context) { } + /** * Notify modules that the given object was ingested. * @@ -212,6 +227,7 @@ function hook_cmodel_pid_dsid_islandora_datastream_alter(AbstractObject $object, */ function hook_islandora_object_ingested(AbstractObject $object) { } + /** * Notify modules that the given object was ingested. * @@ -219,6 +235,7 @@ function hook_islandora_object_ingested(AbstractObject $object) { */ function hook_cmodel_pid_islandora_object_ingested(AbstractObject $object) { } + /** * Notify modules that the given object was modified. * @@ -228,20 +245,22 @@ function hook_cmodel_pid_islandora_object_ingested(AbstractObject $object) { * modifications, where as manipulating an object's datstreams are not. * * @param AbstractObject $object - * The object that was modified. + * The object that was ingested. * * @todo We should also include what changes were made in a additional * parameter. */ function hook_islandora_object_modified(AbstractObject $object) { } + /** - * Notify modules that the given object was modified. + * Notify modules that the given object was ingested. * * @see hook_islandora_object_modified() */ function hook_cmodel_pid_islandora_object_modified(AbstractObject $object) { } + /** * Notify modules that the given object was purged/deleted. * @@ -253,6 +272,7 @@ function hook_cmodel_pid_islandora_object_modified(AbstractObject $object) { */ function hook_islandora_object_purged($pid) { } + /** * Notify modules that the given object was purged/deleted. * @@ -260,6 +280,7 @@ function hook_islandora_object_purged($pid) { */ function hook_cmodel_pid_islandora_object_purged($pid) { } + /** * Notify modules that the given datastream was ingested. * @@ -276,6 +297,7 @@ function hook_cmodel_pid_islandora_object_purged($pid) { */ function hook_islandora_datastream_ingested(AbstractObject $object, AbstractDatastream $datastream) { } + /** * Notify modules that the given datastream was ingested. * @@ -283,6 +305,7 @@ function hook_islandora_datastream_ingested(AbstractObject $object, AbstractData */ function hook_cmodel_pid_dsid_islandora_datastream_ingested(AbstractObject $object, AbstractDatastream $datastream) { } + /** * Notify modules that the given datastream was modified. * @@ -301,6 +324,7 @@ function hook_cmodel_pid_dsid_islandora_datastream_ingested(AbstractObject $obje */ function hook_islandora_datastream_modified(AbstractObject $object, AbstractDatastream $datastream) { } + /** * Notify modules that the given datastream was modified. * @@ -308,6 +332,7 @@ function hook_islandora_datastream_modified(AbstractObject $object, AbstractData */ function hook_cmodel_pid_islandora_datastream_modified(AbstractObject $object, AbstractDatastream $datastream) { } + /** * Notify modules that the given datastream was purged/deleted. * @@ -321,6 +346,7 @@ function hook_cmodel_pid_islandora_datastream_modified(AbstractObject $object, A */ function hook_islandora_datastream_purged(AbstractObject $object, $dsid) { } + /** * Notify modules that the given datastream was purged/deleted. * @@ -328,27 +354,18 @@ function hook_islandora_datastream_purged(AbstractObject $object, $dsid) { */ function hook_cmodel_pid_islandora_datastream_purged(AbstractObject $object, $dsid) { } + /** * Register a datastream edit route/form. * * @param AbstractObject $object * The object to check. * @param string $dsid - * A string indicating the datastream for which to get the registry. - * - * @return array - * An array of associative arrays, each mapping: - * - name: A string containg a human-readable name for the entry. - * - url: A string containing the URL to which to the user will be routed. + * todo */ function hook_islandora_edit_datastream_registry($object, $dsid) { - $routes = array(); - $routes[] = array( - 'name' => t('My Awesome Edit Route'), - 'url' => "go/edit/here/{$object->id}/{$dsid}", - ); - return $routes; } + /** * Registry hook for required objects. * @@ -362,6 +379,7 @@ function hook_islandora_edit_datastream_registry($object, $dsid) { */ function hook_islandora_required_objects() { } + /** * Registry hook for viewers that can be implemented by solution packs. * @@ -373,6 +391,7 @@ function hook_islandora_required_objects() { */ function hook_islandora_viewer_info() { } + /** * Returns a list of datastreams that are determined to be undeletable. * @@ -387,6 +406,7 @@ function hook_islandora_viewer_info() { function hook_islandora_undeletable_datastreams(array $models) { return array('DC', 'MODS'); } + /** * Define steps used in the islandora_ingest_form() ingest process. * @@ -446,6 +466,7 @@ function hook_islandora_ingest_steps(array $form_state) { ), ); } + /** * Alter the generated ingest steps. * @@ -457,6 +478,7 @@ function hook_islandora_ingest_steps(array $form_state) { */ function hook_islandora_ingest_steps_alter(array &$steps, array &$form_state) { } + /** * Content model specific version of hook_islandora_ingest_steps(). * @@ -469,6 +491,7 @@ function hook_islandora_ingest_steps_alter(array &$steps, array &$form_state) { */ function hook_cmodel_pid_islandora_ingest_steps(array $form_state) { } + /** * Alter the generated ingest steps for the given content model. * @@ -480,6 +503,7 @@ function hook_cmodel_pid_islandora_ingest_steps(array $form_state) { */ function hook_cmodel_pid_islandora_ingest_steps_alter(array &$steps, array &$form_state) { } + /** * Object-level access callback hook. * @@ -501,12 +525,16 @@ function hook_islandora_object_access($op, $object, $user) { switch ($op) { case 'create stuff': return TRUE; + case 'break stuff': return FALSE; + case 'do a barrel roll!': return NULL; + } } + /** * Content model specific version of hook_islandora_object_access(). * @@ -514,6 +542,7 @@ function hook_islandora_object_access($op, $object, $user) { */ function hook_cmodel_pid_islandora_object_access($op, $object, $user) { } + /** * Datastream-level access callback hook. * @@ -535,12 +564,16 @@ function hook_islandora_datastream_access($op, $object, $user) { switch ($op) { case 'create stuff': return TRUE; + case 'break stuff': return FALSE; + case 'do a barrel roll!': return NULL; + } } + /** * Content model specific version of hook_islandora_datastream_access(). * @@ -548,12 +581,14 @@ function hook_islandora_datastream_access($op, $object, $user) { */ function hook_cmodel_pid_islandora_datastream_access($op, $object, $user) { } + /** * Lets one add to the overview tab in object management. */ function hook_islandora_overview_object(AbstractObject $object) { return drupal_render(drupal_get_form('some_form', $object)); } + /** * Lets one add to the overview tab in object management. * @@ -568,14 +603,21 @@ function hook_cmodel_pid_islandora_overview_object(AbstractObject $object) { function hook_islandora_overview_object_alter(AbstractObject &$object, &$output) { $output = $output . drupal_render(drupal_get_form('some_form', $object)); } + /** * Lets one alter the overview tab in object management. * * Content model specific. */ function hook_cmodel_pid_islandora_overview_object_alter(AbstractObject &$object, &$output) { - $output = $output . drupal_render(drupal_get_form('some_form', $object)); + $view = views_embed_view('usage_collection'); + $form['islandora_manage_overview_object'] = array( + '#type' => 'item', + '#markup' => $view, + ); + $output = $output . $form . drupal_render(drupal_get_form('some_form', $object)); } + /** * Defines derivative functions to be executed based on certain conditions. * @@ -619,6 +661,7 @@ function hook_cmodel_pid_islandora_overview_object_alter(AbstractObject &$object * is being called from. */ function hook_islandora_derivative(AbstractObject $object = NULL) { + $derivatives[] = array( 'source_dsid' => 'OBJ', 'destination_dsid' => 'DERIV', @@ -638,6 +681,7 @@ function hook_islandora_derivative(AbstractObject $object = NULL) { ), ); } + $derivatives[] = array( 'source_dsid' => NULL, 'destination_dsid' => 'NOSOURCE', @@ -646,15 +690,19 @@ function hook_islandora_derivative(AbstractObject $object = NULL) { 'islandora_derivatives_test_create_nosource_datastream', ), ); + return $derivatives; } + /** * Content model specific version of hook_islandora_derivative(). * * @see hook_islandora_derivative() */ function hook_cmodel_pid_islandora_derivative() { + } + /** * Retrieves PIDS of related objects for property updating. * @@ -680,7 +728,9 @@ function hook_islandora_update_related_objects_properties(AbstractObject $object * (Optional) AbstractObject representing object providing breadcrumb path */ function hook_islandora_breadcrumbs_alter(&$breadcrumbs, $context, $object = NULL) { + } + /** * Registry hook for metadata display viewers. *