You are here

protected function TypeProcessor::getScoreSettings in Opigno module 8

Same name and namespace in other branches
  1. 3.x ActivityTypes/opigno_h5p/src/TypeProcessors/TypeProcessor.php \Drupal\opigno_h5p\TypeProcessors\TypeProcessor::getScoreSettings()

Get score settings.

1 call to TypeProcessor::getScoreSettings()
TypeProcessor::generateReport in ActivityTypes/opigno_h5p/src/TypeProcessors/TypeProcessor.php
Generate HTML for report.

File

ActivityTypes/opigno_h5p/src/TypeProcessors/TypeProcessor.php, line 55

Class

TypeProcessor
Class TypeProcessor.

Namespace

Drupal\opigno_h5p\TypeProcessors

Code

protected function getScoreSettings($xapiData) {
  $scoreSettings = (object) [];
  if (!isset($xapiData->score_raw) || !isset($xapiData->score_max)) {
    return $scoreSettings;
  }

  // Grab scores and score labels.
  $scoreSettings->rawScore = $xapiData->score_raw;
  $scoreSettings->maxScore = $xapiData->score_max;
  $scoreSettings->scoreLabel = 'Score:';
  if (isset($xapiData->score_label)) {
    $scoreSettings->scoreLabel = $xapiData->score_label;
  }
  $scoreSettings->scoreDelimiter = 'out of';
  if (isset($xapiData->score_delimiter)) {
    $scoreSettings->scoreDelimiter = $xapiData->score_delimiter;
  }
  $scoreSettings->scaledScoreDelimiter = ',';
  if (isset($xapiData->scaled_score_delimiter)) {
    $scoreSettings->scaledScoreDelimiter = $xapiData->scaled_score_delimiter;
  }

  // Scaled score.
  if (isset($xapiData->score_scale)) {
    $scoreSettings->scoreScale = $xapiData->score_scale;
    $scoreSettings->scaledScoreLabel = 'Scaled score:';
    if (isset($xapiData->score_label)) {
      $scoreSettings->scaledScoreLabel = $xapiData->scaled_score_label;
    }
  }
  return $scoreSettings;
}