Browse Source

Work on #1521; fixed function comment.

pull/778/head
Mark Jordan 6 years ago
parent
commit
09902d3fa4
  1. 73
      src/Controller/RdfMappingsReportController.php
  2. 2
      src/IslandoraUtils.php

73
src/Controller/RdfMappingsReportController.php

@ -3,6 +3,8 @@
namespace Drupal\islandora\Controller;
use Drupal\Core\Controller\ControllerBase;
use Drupal\taxonomy\Entity\Vocabulary;
use Drupal\taxonomy\Entity\Term;
/**
* RDF mappings report controller.
@ -20,6 +22,23 @@ class RdfMappingsReportController extends ControllerBase {
$markup = '';
$entity_types = ['node', 'media'];
$namespaces = rdf_get_namespaces();
$namespaces_table_rows = [];
foreach ($namespaces as $alias => $namespace_uri) {
$namespaces_table_rows[] = [$alias, $namespace_uri];
}
$namespaces_table_header = [t('Namespace alias'), t('Namespace URI')];
$namespaces_table = [
'#theme' => 'table',
'#header' => $namespaces_table_header,
'#rows' => $namespaces_table_rows,
];
$namespaces_table_markup = \Drupal::service('renderer')->render($namespaces_table);
$markup .= '<details><summary>' . t('RDF namespaces used in field mappings') .
'</summary><div class="details-wrapper">' . $namespaces_table_markup . '</div></details>';
$markup .= '<h2>' . t('Field mappings') . '</h2>';
foreach ($entity_types as $entity_type) {
$bundles = \Drupal::service('entity_type.bundle.info')->getBundleInfo($entity_type);
foreach ($bundles as $name => $attr) {
@ -51,21 +70,47 @@ class RdfMappingsReportController extends ControllerBase {
}
}
$markup .= '<h3>RDF namespaces</h3>';
$namespaces = rdf_get_namespaces();
$namespaces_table_rows = [];
foreach ($namespaces as $alias => $namespace_uri) {
$namespaces_table_rows[] = [$alias, $namespace_uri];
// Taxonomy terms with external URIs.
$markup .= '<h2>' . t('Taxonomy terms with external URIs') . '</h2>';
$utils = \Drupal::service('islandora.utils');
$vocabs = Vocabulary::loadMultiple();
foreach ($vocabs as $vid => $vocab) {
$vocab_table_header = [];
$vocab_table_rows = [];
$markup .= '<h3>' . $vocab->label() . ' (' . $vid . ')</h3>';
$terms = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->loadTree($vid);
if (count($terms) == 0) {
$vocab_table_rows[] = [t('No terms in this vocabulary.')];
$vocab_table = [
'#theme' => 'table',
'#header' => $vocab_table_header,
'#rows' => $vocab_table_rows,
];
$vocab_table_markup = \Drupal::service('renderer')->render($vocab_table);
$markup .= $vocab_table_markup;
}
else {
$vocab_table_header = [t('Term'), t('Term ID'), t('External URI')];
$vocab_table_rows = [];
foreach ($terms as $t) {
$term = Term::load($t->tid);
$uri = $utils->getUriForTerm($term);
if (is_null($uri)) {
$vocab_table_rows[] = [$term->getName(), $term->id(), t('None')];
}
else {
$vocab_table_rows[] = [$term->getName(), $term->id(), $uri];
}
}
$vocab_table = [
'#theme' => 'table',
'#header' => $vocab_table_header,
'#rows' => $vocab_table_rows,
];
}
$vocab_table_markup = \Drupal::service('renderer')->render($vocab_table);
$markup .= $vocab_table_markup;
}
$namespaces_table_header = [t('Namespace alias'), t('Namespace URI')];
$namespaces_table = [
'#theme' => 'table',
'#header' => $namespaces_table_header,
'#rows' => $namespaces_table_rows,
];
$namespaces_table_markup = \Drupal::service('renderer')->render($namespaces_table);
$markup .= $namespaces_table_markup;
return ['#markup' => $markup];
}

2
src/IslandoraUtils.php

@ -265,7 +265,7 @@ class IslandoraUtils {
}
/**
* Gets the taxonomy term associated with an external uri.
* Gets the external uri associated with a taxonomy term.
*
* @param \Drupal\taxonomy\TermInterface $term
* Taxonomy term.

Loading…
Cancel
Save