public function matchLabel($text, $score = 0) { $label = new Label(); $label->setFeedback('feedback...'); $label->setValue($text); $label->setScoreRightResponse($score); $this->om->persist($label); return $label; }
/** * Create Labels in BDD. */ protected function createLabels() { $ordre = 0; $ib = $this->assessmentItem->getElementsByTagName('itemBody')->item(0); $mi = $ib->getElementsByTagName('matchInteraction')->item(0); $sms = $mi->getElementsByTagName('simpleMatchSet')->item(1); foreach ($sms->getElementsByTagName('simpleAssociableChoice') as $simpleLabel) { //create a new Label and set attributes $label = new Label(); $feedback = $simpleLabel->getElementsByTagName('feedbackInline'); if ($feedback->item(0)) { $feedbackVal = $this->domElementToString($feedback->item(0)); $feedbackVal = html_entity_decode($feedbackVal); $label->setFeedback($feedbackVal); $simpleLabel->removeChild($feedback->item(0)); } $label->setValue($this->value($simpleLabel)); $identifiant = $simpleLabel->getAttribute('identifier'); $label->setScoreRightResponse($this->notation($identifiant)); $label->setInteractionMatching($this->interactionMatching); $label->setOrdre($ordre); if ($simpleLabel->hasAttribute('fixed') && $simpleLabel->getAttribute('fixed') == 'true') { $label->setPositionForce(true); } else { $label->setPositionForce(false); } //recording in the DBB $this->om->persist($label); $this->associatedLabels[$identifiant] = $label; ++$ordre; } $this->om->flush(); }