public function initFromXmlNode(DOMElement $node) { parent::initFromXmlNode($node); if ($node->hasAttribute('userAnswer')) { $this->userAnswer = trim($node->getAttribute('userAnswer')); } }
public function initFromXmlNode(DOMElement $node) { parent::initFromXmlNode($node); $premisesNode = $node->getElementsByTagName('premises')->item(0); $premisesList = $premisesNode->getElementsByTagName('premise'); for ($i = 0; $i < $premisesList->length; ++$i) { $this->premises[] = trim($premisesList->item($i)->textContent); } $responsesNode = $node->getElementsByTagName('responses')->item(0); $responsesList = $responsesNode->getElementsByTagName('response'); for ($i = 0; $i < $responsesList->length; ++$i) { $this->responses[] = trim($responsesList->item($i)->textContent); } $userAnswerMatches = array(); if ($node->getElementsByTagName('userAnswer')->length != 0) { $userAnswerNode = $node->getElementsByTagName('userAnswer')->item(0); $userAnswerMatches = $this->exportMatchesCollection($userAnswerNode); } if (empty($userAnswerMatches)) { return; } $userAnswers = array(); foreach ($userAnswerMatches as $answer) { $userAnswers[$answer->premiseIndex] = $answer; } ksort($userAnswers); foreach ($userAnswers as $i => $answer) { $premiseIndex = $i; $responseIndex = $answer->responseIndex; if ($this->userAnswer != '') { $this->userAnswer .= '; '; } $this->userAnswer .= $this->premises[$premiseIndex] . ' - ' . $this->responses[$responseIndex]; } }
public function initFromXmlNode(DOMElement $node) { parent::initFromXmlNode($node); $statementsNode = $node->getElementsByTagName('statements')->item(0); $statementsCollection = TextCollection::fromXmlNode($statementsNode, 'statement'); $statements = $statementsCollection->toArray(); $labelsNode = $node->getElementsByTagName('scaleLabels')->item(0); $labelsCollection = TextCollection::fromXmlNode($labelsNode, 'label'); $labels = $labelsCollection->toArray(); $userAnswers = array(); if ($node->getElementsByTagName('userAnswer')->length != 0) { $userAnswerNode = $node->getElementsByTagName('userAnswer')->item(0); $userAnswers = $this->exportUserAnswer($userAnswerNode); } $index = 0; foreach ($statements as $statement) { $label = ''; $userAnswer = $this->getUserAnswerByStatementIndex($userAnswers, $index); if ($userAnswer) { $label = $labels[$userAnswer->labelIndex]; } if ($this->userAnswer != '') { $this->userAnswer .= '; '; } $this->userAnswer .= $statement . ' - ' . $label; ++$index; } }
public function initFromXmlNode(DOMElement $node) { parent::initFromXmlNode($node); $answersNode = $node->getElementsByTagName('answers')->item(0); $answersList = $answersNode->getElementsByTagName('answer'); for ($i = 0; $i < $answersList->length; ++$i) { $answerNode = $answersList->item($i); $answer = $this->createAnswer(); $answer->initFromXmlNode($answerNode); $this->answers[] = $answer; } foreach ($this->answers as $answer) { /** @var MultipleResponseSurveyAnswer $answer */ if (!$answer->selected) { continue; } if ($this->userAnswer != '') { $this->userAnswer .= '; '; } $this->userAnswer .= $answer->text; if (!empty($answer->customAnswer)) { $this->userAnswer .= " " . $answer->customAnswer; } } }
public function initFromXmlNode(DOMElement $node) { parent::initFromXmlNode($node); $userAnswerNodeList = $node->getElementsByTagName('userAnswer'); if ($userAnswerNodeList->length > 0) { $userAnswer = trim($userAnswerNodeList->item(0)->textContent); $this->userAnswer = str_replace("\n", PHP_EOL, $userAnswer); } }
public function initFromXmlNode(DOMElement $node) { parent::initFromXmlNode($node); $answersNode = $node->getElementsByTagName('answers')->item(0); $this->answers = $this->createAnswers(); $this->answers->initFromXmlNode($answersNode); $answer = $this->answers->answers[$this->answers->userAnswerIndex]; /** @var MultipleChoiceSurveyAnswer $answer */ $this->userAnswer = $answer->getValue(); }
public function initFromXmlNode(DOMElement $node) { parent::initFromXmlNode($node); $detailsNode = $node->getElementsByTagName('details')->item(0); $this->details = $this->createDetails(); $this->details->initFromXmlNode($detailsNode); foreach ($this->details->items as $item) { if ($this->userAnswer != '') { $this->userAnswer .= '; '; } $this->userAnswer .= $item->userAnswer ? $item->userAnswer : '______'; } }
public function initFromXmlNode(DOMElement $node) { parent::initFromXmlNode($node); $hotspotsNodeList = $node->getElementsByTagName('hotspots'); $hotspotsNode = $hotspotsNodeList->item(0); $hotspots = $this->getHotspotsFromXmlNode($hotspotsNode); foreach ($hotspots as $hotspot) { if ($this->userAnswer != '') { $this->userAnswer .= '; '; } $this->userAnswer .= $hotspot->label . ' - ' . ($hotspot->marked ? 'Marked' : 'Unmarked'); } }
public function initFromXmlNode(DOMElement $node) { parent::initFromXmlNode($node); $answersNode = $node->getElementsByTagName('answers')->item(0); $answersList = $answersNode->getElementsByTagName('answer'); for ($i = 0; $i < $answersList->length; ++$i) { $answerNode = $answersList->item($i); $answer = $this->createAnswer($i); $answer->initFromXmlNode($answerNode); $this->answers[] = $answer; } $userAnswer = array(); foreach ($this->answers as $answer) { $userAnswer[$answer->userDefinedPosition] = $answer; } $answersCount = count($userAnswer); for ($i = 0; $i < $answersCount; ++$i) { if ($this->userAnswer != '') { $this->userAnswer .= '; '; } $this->userAnswer .= $i + 1 . '. ' . $userAnswer[$i]->text; } }