Browse Source

Allow for multiple fields to be selected (#165)

pull/729/head
Joe Corall 5 years ago committed by dannylamb
parent
commit
eb0014da4d
  1. 8
      modules/islandora_iiif/src/Plugin/views/style/IIIFManifest.php

8
modules/islandora_iiif/src/Plugin/views/style/IIIFManifest.php

@ -145,7 +145,8 @@ class IIIFManifest extends StylePluginBase {
*/ */
protected function getTileSourceFromRow(ResultRow $row, $iiif_address, $iiif_base_id) { protected function getTileSourceFromRow(ResultRow $row, $iiif_address, $iiif_base_id) {
$canvases = []; $canvases = [];
$viewsField = $this->view->field[$this->options['iiif_tile_field']]; foreach ($this->options['iiif_tile_field'] as $iiif_tile_field) {
$viewsField = $this->view->field[$iiif_tile_field];
$entity = $viewsField->getEntity($row); $entity = $viewsField->getEntity($row);
if (isset($entity->{$viewsField->definition['field_name']})) { if (isset($entity->{$viewsField->definition['field_name']})) {
@ -186,6 +187,7 @@ class IIIFManifest extends StylePluginBase {
]; ];
} }
} }
}
return $canvases; return $canvases;
} }
@ -242,8 +244,8 @@ class IIIFManifest extends StylePluginBase {
} }
$form['iiif_tile_field'] = [ $form['iiif_tile_field'] = [
'#title' => $this->t('Tile source field'), '#title' => $this->t('Tile source field(s)'),
'#type' => 'select', '#type' => 'checkboxes',
'#default_value' => $this->options['iiif_tile_field'], '#default_value' => $this->options['iiif_tile_field'],
'#description' => $this->t("The source of image for each entity."), '#description' => $this->t("The source of image for each entity."),
'#options' => $field_options, '#options' => $field_options,

Loading…
Cancel
Save