public function OpignoScormFieldFormatter::viewElements in Opigno SCORM 8
Same name and namespace in other branches
- 3.x src/Plugin/Field/FieldFormatter/OpignoScormFieldFormatter.php \Drupal\opigno_scorm\Plugin\Field\FieldFormatter\OpignoScormFieldFormatter::viewElements()
Builds a renderable array for a field value.
Parameters
\Drupal\Core\Field\FieldItemListInterface $items: The field values to be rendered.
string $langcode: The language that should be used to render the field.
Return value
array A renderable array for $items, as an array of child elements keyed by consecutive numeric indexes starting from 0.
Overrides FormatterInterface::viewElements
File
- src/
Plugin/ Field/ FieldFormatter/ OpignoScormFieldFormatter.php, line 24
Class
- OpignoScormFieldFormatter
- Plugin implementation of the 'opigno_evaluation_method_formatter' formatter.
Namespace
Drupal\opigno_scorm\Plugin\Field\FieldFormatterCode
public function viewElements(FieldItemListInterface $items, $langcode) {
$elements = [];
$scorm_service = \Drupal::service('opigno_scorm.scorm');
$scorm_player = \Drupal::service('opigno_scorm.scorm_player');
$first = TRUE;
foreach ($this
->getEntitiesToView($items, $langcode) as $delta => $file) {
if ($first) {
$scorm = $scorm_service
->scormLoadByFileEntity($file);
$elements[$delta] = $scorm_player
->toRendarableArray($scorm);
$first = FALSE;
}
else {
$elements[$delta] = [
'#markup' => $this
->t("As per <a href='!link' target='_blank'>SCORM.2004.3ED.ConfReq.v1.0</a>, only <em>only one SCO can be launched at a time.</em> To enforce this, only one SCORM package is loaded inside the player on this page at a time.", [
'!link' => 'http://www.adlnet.gov/wp-content/uploads/2011/07/SCORM.2004.3ED.ConfReq.v1.0.pdf',
]),
];
}
}
return $elements;
}