/** * Create a copy of an answer set. * * @param int $p_fk_debate_nr * @param int $p_fk_language_id * @param int $p_parent_nr * @param array $p_answers * @return Debate */ function CreateCopySet($p_fk_debate_nr, $p_fk_language_id, $p_parent_nr, $p_answers) { // Construct the duplicate DebateAnswer object. foreach ($p_answers as $answer) { if (isset($answer['number']) && !empty($answer['number']) && strlen($answer['text'])) { $answer_copy = new DebateAnswer($p_fk_language_id, $p_fk_debate_nr, $answer['number']); $answer_copy->create($answer['text']); if (isset($answer['nr_of_votes']) && !empty($answer['nr_of_votes'])) { $answer_copy->setProperty('nr_of_votes', $answer['nr_of_votes']); } if (isset($answer['value']) && !empty($answer['nr_of_votes'])) { $answer_copy->setProperty('value', $answer['value']); $answer_copy->setProperty('average_value', $answer_copy->getProperty('value') / $answer_copy->getProperty('nr_of_votes')); } } } // Copy DebateAnswerAttachments DebateAnswerAttachment::CreateCopySet($p_fk_debate_nr, $p_fk_language_id, $p_parent_nr); /* if (function_exists("camp_load_translation_strings")) { camp_load_translation_strings("api"); } $logtext = getGS('Article #$1 "$2" ($3) translated to "$5" ($4)', $this->getArticleNumber(), $this->getTitle(), $this->getLanguageName(), $articleCopy->getTitle(), $articleCopy->getLanguageName()); Log::Message($logtext, null, 31); */ return $debateAnswerCopy; }
$debate->setProperty('allow_not_logged_in', $f_allow_not_logged_in); foreach ($f_answers as $nr_answer => $text) { if (trim($text) != '') { $answer = new DebateAnswer($f_fk_language_id, $f_debate_nr, $nr_answer); if ($answer->exists()) { $answer->setProperty('answer', $text); } else { $answer->create($text); } } } DebateAnswer::SyncNrOfAnswers($f_fk_language_id, $f_debate_nr); } else { // create new debate $debate = new Debate($f_fk_language_id); $f_date_begin = strftime("%F %H:%M:%S", strtotime($f_date_begin . " " . $f_time_begin)); $f_date_end = strftime("%F %H:%M:%S", strtotime($f_date_end . " " . $f_time_end)); $success = $debate->create($f_title, $f_question, $f_date_begin, $f_date_end, $f_nr_of_answers, $f_votes_per_user); if ($success) { $debate->setProperty('is_extended', $f_is_extended); foreach ($f_answers as $nr_answer => $text) { if (trim($text) != '') { $answer = new DebateAnswer($f_fk_language_id, $debate->getNumber(), $nr_answer); $success = $answer->create($text); } } } } $f_from = Input::Get('f_from', 'string', 'index.php'); header('Location: ' . $f_from); exit;