You are here

protected function TypeProcessor::generateScoreHtml 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::generateScoreHtml()

Generate score html.

Parameters

object $scoreSettings: Score settings.

Return value

string Score html.

5 calls to TypeProcessor::generateScoreHtml()
ChoiceProcessor::generateHeader in ActivityTypes/opigno_h5p/src/TypeProcessors/ChoiceProcessor.php
Generate header element.
FillInProcessor::generateHeader in ActivityTypes/opigno_h5p/src/TypeProcessors/FillInProcessor.php
Generate header element.
LongChoiceProcessor::generateHeader in ActivityTypes/opigno_h5p/src/TypeProcessors/LongChoiceProcessor.php
Generate header element.
MatchingProcessor::generateHeader in ActivityTypes/opigno_h5p/src/TypeProcessors/MatchingProcessor.php
Generate header element.
TrueFalseProcessor::generateHeader in ActivityTypes/opigno_h5p/src/TypeProcessors/TrueFalseProcessor.php
Generate header element.

File

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

Class

TypeProcessor
Class TypeProcessor.

Namespace

Drupal\opigno_h5p\TypeProcessors

Code

protected function generateScoreHtml($scoreSettings) {
  $showScores = isset($scoreSettings->rawScore) && isset($scoreSettings->maxScore) && !$this->disableScoring;
  if (!$showScores) {
    return '';
  }

  // Generate html for score.
  $scoreLabel = $scoreSettings->scoreLabel;
  $scoreDelimiter = $scoreSettings->scoreDelimiter;
  $scaleDelimiter = '';

  // Generate html for scaled score.
  $scaledHtml = "";
  if (isset($scoreSettings->scoreScale)) {
    $scaleDelimiter = $scoreSettings->scaledScoreDelimiter;
    $scaledHtml = "<div class='h5p-reporting-scaled-container'>" . "<span class='h5p-reporting-scaled-label'>{$scoreSettings->scaledScoreLabel}</span>" . "<span class='h5p-reporting-scaled-score'>{$scoreSettings->scoreScale}</span>" . "</div>";
  }
  $scoreHtml = "<div class='h5p-reporting-score-container'>" . "<span class='h5p-reporting-score-label'>{$scoreLabel}</span>" . "<span class='h5p-reporting-score'>" . $scoreSettings->rawScore . " " . $scoreDelimiter . " " . $scoreSettings->maxScore . $scaleDelimiter . "</span></div>";
  $html = "<div class='h5p-reporting-score-wrapper'>{$scoreHtml}{$scaledHtml}</div>";
  return $html;
}