|
|
|
@ -381,9 +381,16 @@ function islandora_entity_extra_field_info() { |
|
|
|
* Implements hook_entity_view(). |
|
|
|
* Implements hook_entity_view(). |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
function islandora_entity_view(array &$build, EntityInterface $entity, EntityViewDisplayInterface $display, $view_mode) { |
|
|
|
function islandora_entity_view(array &$build, EntityInterface $entity, EntityViewDisplayInterface $display, $view_mode) { |
|
|
|
$route_match_item = \Drupal::routeMatch()->getParameters()->get($entity->getEntityTypeId()); |
|
|
|
$config_factory = \Drupal::service('config.factory')->get(IslandoraSettingsForm::CONFIG_NAME); |
|
|
|
// Ensure the entity matches the route. |
|
|
|
$gemini_url = $config_factory->get(IslandoraSettingsForm::GEMINI_URL); |
|
|
|
if ($entity === $route_match_item) { |
|
|
|
$pseudo_fields = $config_factory->get(IslandoraSettingsForm::GEMINI_PSEUDO); |
|
|
|
|
|
|
|
// If we aren't configured then don't display. |
|
|
|
|
|
|
|
if (!empty($gemini_url) && count($pseudo_fields) > 0) { |
|
|
|
|
|
|
|
$route_match_item = \Drupal::routeMatch()->getParameters()->all(); |
|
|
|
|
|
|
|
// Get the parameter, which might be node, media or taxonomy term. |
|
|
|
|
|
|
|
$current_entity = reset($route_match_item); |
|
|
|
|
|
|
|
// Match exactly to ensure they are the same entity type too. |
|
|
|
|
|
|
|
if ($entity === $current_entity) { |
|
|
|
if ($display->getComponent('field_gemini_uri')) { |
|
|
|
if ($display->getComponent('field_gemini_uri')) { |
|
|
|
$gemini = \Drupal::service('islandora.gemini.lookup'); |
|
|
|
$gemini = \Drupal::service('islandora.gemini.lookup'); |
|
|
|
if ($gemini instanceof GeminiLookup) { |
|
|
|
if ($gemini instanceof GeminiLookup) { |
|
|
|
@ -409,6 +416,7 @@ function islandora_entity_view(array &$build, EntityInterface $entity, EntityVie |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* Implements hook_preprocess_views_view_table(). |
|
|
|
* Implements hook_preprocess_views_view_table(). |
|
|
|
|