private function parseAddAppreciation($templateName) { $finalTemplate = ''; $blankHtmlTemplate = wpvq_get_view($templateName); $blankHtmlTemplate = preg_replace('#<div>\\n*(.*)\\n*<\\/div>#m', '$1', $blankHtmlTemplate); $i = 1; foreach ($this->appreciations as $index => $appreciation) { // Parsing elements $appreciationTemplate = $blankHtmlTemplate; $elements = array('%%scoreCondition%%' => $appreciation->getScoreCondition(), '%%appreciationLabel%%' => htmlentities($appreciation->getLabel(), ENT_COMPAT, 'UTF-8'), '%%appreciationIndex%%' => $i, '%%appreciationId%%' => $appreciation->getId(), '%%appreciationContent%%' => stripslashes($appreciation->getContent()), '£scoreCondition£' => "vqappreciations[{$i}][scoreCondition]", '£appreciationLabel£' => "vqappreciations[{$i}][label]", '£appreciationId£' => "vqappreciations[{$i}][id]", '£appreciationContent£' => "vqappreciations[{$i}][content]"); foreach ($elements as $tag => $value) { $appreciationTemplate = str_replace($tag, $value, $appreciationTemplate); } $finalTemplate .= "\n {$appreciationTemplate}"; $i++; } return $finalTemplate; }
$vqData['template']['answer'] = wpvq_get_view('WPVQAddQuestion.WPVQGamePersonality.answer.append.php'); // Multipliers templates (depends on the appreciations saved in the DB) $multiplier_view_template = wpvq_get_view('WPVQAddQuestion.WPVQGamePersonality.answer.append.multiplier.php'); if ($vqData['quizId'] != NULL) { foreach ($quiz->getAppreciations() as $index => $appreciation) { $multiplier_view = $multiplier_view_template; $multiplier_view = str_replace('%%personalityLabel%%', $appreciation->getLabel(), $multiplier_view); $multiplier_view = str_replace('%%personalityId%%', $appreciation->getId(), $multiplier_view); $multiplier_view = str_replace('%%multiplierValue%%', 0, $multiplier_view); $vqData['template']['multipliers'] .= $multiplier_view; } } } else { $vqData['template']['appreciation'] = wpvq_get_view('WPVQAddQuestion.WPVQGameTrueFalse.appreciation.append.php'); $vqData['template']['question'] = wpvq_get_view('WPVQAddQuestion.WPVQGameTrueFalse.append.php'); $vqData['template']['answer'] = wpvq_get_view('WPVQAddQuestion.WPVQGameTrueFalse.answer.append.php'); } // Create ou update the quiz when submited by user if (isset($_POST['activeTab']) && !empty($_POST['activeTab']) && isset($_POST['quizId'])) { // Useful var $activeTab = htmlentities($_POST['activeTab']); $quizId = intval($_POST['quizId']); $quizType = htmlentities($_POST['type']); $param = array(); // Is it a new quiz ? (creation process) if ($newQuiz = $_POST['quizId'] == '') { $quiz = new $quizType(); // todo : check $type $quiz->add($param); $quizId = $quiz->getId(); }