Ordinal survey question GUI representation. More...
Public Member Functions | |
SurveyOrdinalQuestionGUI ($id=-1) | |
SurveyOrdinalQuestionGUI constructor. | |
getQuestionType () | |
Returns the question type string. | |
editQuestion () | |
Creates an output of the edit form for the question. | |
outWorkingForm ($working_data="", $question_title=1, $error_message="") | |
Creates the question output form for the learner. | |
preview () | |
Creates a preview of the question. | |
writePostData () | |
Evaluates a posted edit form and writes the form data in the question object. | |
categories ($add=false) | |
Creates the form to edit the question categories. | |
setQuestionTabs () | |
addPhrase () | |
Creates an output for the addition of phrases. | |
cancelViewPhrase () | |
Cancels the form adding a phrase. | |
addSelectedPhrase () | |
Adds a selected phrase. | |
addStandardNumbers () | |
Creates an output for the addition of standard numbers. | |
cancelStandardNumbers () | |
Cancels the form adding standard numbers. | |
insertStandardNumbers () | |
Insert standard numbers to the question. | |
savePhrase () | |
Creates an output to save a phrase. | |
cancelSavePhrase () | |
Cancels the form saving a phrase. | |
confirmSavePhrase () | |
Save a new phrase to the database. | |
outCumulatedResultsDetails (&$cumulated_results, $counter) |
Ordinal survey question GUI representation.
The SurveyOrdinalQuestionGUI class encapsulates the GUI representation for ordinal survey question types.
class.SurveyOrdinalQuestionGUI.php Survey
Definition at line 38 of file class.SurveyOrdinalQuestionGUI.php.
SurveyOrdinalQuestionGUI::addPhrase | ( | ) |
Creates an output for the addition of phrases.
Creates an output for the addition of phrases
public
Definition at line 468 of file class.SurveyOrdinalQuestionGUI.php.
References $counter, and SurveyQuestionGUI::writeCategoryData().
Referenced by addSelectedPhrase().
{ $this->writeCategoryData(true); $this->ctrl->setParameterByClass(get_class($this), "q_id", $this->object->getId()); $this->ctrl->setParameterByClass("ilobjsurveyquestionpoolgui", "q_id", $this->object->getId()); $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.il_svy_qpl_addphrase.html", true); // set the id to return to the selected question $this->tpl->setCurrentBlock("hidden"); $this->tpl->setVariable("HIDDEN_NAME", "id"); $this->tpl->setVariable("HIDDEN_VALUE", $this->object->getId()); $this->tpl->parseCurrentBlock(); $phrases =& $this->object->getAvailablePhrases(); $colors = array("tblrow1", "tblrow2"); $counter = 0; foreach ($phrases as $phrase_id => $phrase_array) { $this->tpl->setCurrentBlock("phraserow"); $this->tpl->setVariable("COLOR_CLASS", $colors[$counter++ % 2]); $this->tpl->setVariable("PHRASE_VALUE", $phrase_id); $this->tpl->setVariable("PHRASE_NAME", $phrase_array["title"]); $categories =& $this->object->getCategoriesForPhrase($phrase_id); $this->tpl->setVariable("PHRASE_CONTENT", join($categories, ",")); $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("adm_content"); $this->tpl->setVariable("TEXT_CANCEL", $this->lng->txt("cancel")); $this->tpl->setVariable("TEXT_PHRASE", $this->lng->txt("phrase")); $this->tpl->setVariable("TEXT_CONTENT", $this->lng->txt("categories")); $this->tpl->setVariable("TEXT_ADD_PHRASE", $this->lng->txt("add_phrase")); $this->tpl->setVariable("TEXT_INTRODUCTION",$this->lng->txt("add_phrase_introduction")); $this->tpl->setVariable("FORM_ACTION", $this->ctrl->getFormAction($this)); $this->tpl->parseCurrentBlock(); }
SurveyOrdinalQuestionGUI::addSelectedPhrase | ( | ) |
Adds a selected phrase.
Adds a selected phrase
public
Definition at line 525 of file class.SurveyOrdinalQuestionGUI.php.
References $_POST, addPhrase(), addStandardNumbers(), and sendInfo().
{ if (strcmp($_POST["phrases"], "") == 0) { sendInfo($this->lng->txt("select_phrase_to_add")); $this->addPhrase(); } else { if (strcmp($this->object->getPhrase($_POST["phrases"]), "dp_standard_numbers") != 0) { $this->object->addPhrase($_POST["phrases"]); $this->object->saveCategoriesToDb(); } else { $this->addStandardNumbers(); return; } $this->ctrl->redirect($this, "categories"); } }
SurveyOrdinalQuestionGUI::addStandardNumbers | ( | ) |
Creates an output for the addition of standard numbers.
Creates an output for the addition of standard numbers
public
Definition at line 555 of file class.SurveyOrdinalQuestionGUI.php.
References $_POST.
Referenced by addSelectedPhrase(), and insertStandardNumbers().
{ $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.il_svy_qpl_addphrase_standard_numbers.html", true); // set the id to return to the selected question $this->tpl->setCurrentBlock("hidden"); $this->tpl->setVariable("HIDDEN_NAME", "id"); $this->tpl->setVariable("HIDDEN_VALUE", $this->object->getId()); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("adm_content"); $this->tpl->setVariable("ADD_STANDARD_NUMBERS", $this->lng->txt("add_standard_numbers")); $this->tpl->setVariable("TEXT_ADD_LIMITS", $this->lng->txt("add_limits_for_standard_numbers")); $this->tpl->setVariable("TEXT_LOWER_LIMIT",$this->lng->txt("lower_limit")); $this->tpl->setVariable("TEXT_UPPER_LIMIT",$this->lng->txt("upper_limit")); $this->tpl->setVariable("VALUE_LOWER_LIMIT", $_POST["lower_limit"]); $this->tpl->setVariable("VALUE_UPPER_LIMIT", $_POST["upper_limit"]); $this->tpl->setVariable("BTN_ADD",$this->lng->txt("add_phrase")); $this->tpl->setVariable("BTN_CANCEL",$this->lng->txt("cancel")); $this->tpl->setVariable("FORM_ACTION", $this->ctrl->getFormAction($this)); $this->tpl->parseCurrentBlock(); }
SurveyOrdinalQuestionGUI::cancelSavePhrase | ( | ) |
Cancels the form saving a phrase.
Cancels the form saving a phrase
public
Definition at line 673 of file class.SurveyOrdinalQuestionGUI.php.
{
$this->ctrl->redirect($this, "categories");
}
SurveyOrdinalQuestionGUI::cancelStandardNumbers | ( | ) |
Cancels the form adding standard numbers.
Cancels the form adding standard numbers
public
Definition at line 585 of file class.SurveyOrdinalQuestionGUI.php.
{
$this->ctrl->redirect($this, "categories");
}
SurveyOrdinalQuestionGUI::cancelViewPhrase | ( | ) |
Cancels the form adding a phrase.
Cancels the form adding a phrase
public
Definition at line 513 of file class.SurveyOrdinalQuestionGUI.php.
{
$this->ctrl->redirect($this, "categories");
}
SurveyOrdinalQuestionGUI::categories | ( | $ | add = false |
) |
Creates the form to edit the question categories.
Creates the form to edit the question categories
private
Definition at line 355 of file class.SurveyOrdinalQuestionGUI.php.
References $_POST, $_SESSION, $add, ilUtil::getImagePath(), and sendInfo().
{ if ($this->object->getId() < 1) { sendInfo($this->lng->txt("fill_out_all_required_fields_add_category"), true); $this->ctrl->redirect($this, "editQuestion"); } if (strcmp($this->ctrl->getCmd(), "categories") == 0) $_SESSION["spl_modified"] = false; $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.il_svy_qpl_ordinal_answers.html", true); // output of existing single response answers for ($i = 0; $i < $this->object->categories->getCategoryCount(); $i++) { $this->tpl->setCurrentBlock("cat_selector"); $this->tpl->setVariable("CATEGORY_ORDER", $i); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("categories"); $category = $this->object->categories->getCategory($i); $this->tpl->setVariable("CATEGORY_ORDER", $i); $this->tpl->setVariable("CATEGORY_NUMBER", $i+1); $this->tpl->setVariable("VALUE_CATEGORY", $category); $this->tpl->setVariable("TEXT_CATEGORY", $this->lng->txt("category")); $this->tpl->parseCurrentBlock(); } if ($add) { $nrOfCategories = $_POST["nrOfCategories"]; if ($nrOfCategories < 1) $nrOfCategories = 1; // Create template for a new category for ($i = 1; $i <= $nrOfCategories; $i++) { $this->tpl->setCurrentBlock("categories"); $this->tpl->setVariable("CATEGORY_ORDER", $this->object->categories->getCategoryCount() + $i - 1); $this->tpl->setVariable("TEXT_CATEGORY", $this->lng->txt("category")); $this->tpl->parseCurrentBlock(); } } if (is_array($_SESSION["spl_move"])) { if (count($_SESSION["spl_move"])) { $this->tpl->setCurrentBlock("move_buttons"); $this->tpl->setVariable("INSERT_BEFORE", $this->lng->txt("insert_before")); $this->tpl->setVariable("INSERT_AFTER", $this->lng->txt("insert_after")); $this->tpl->parseCurrentBlock(); } } include_once "./classes/class.ilUtil.php"; if ($this->object->categories->getCategoryCount() == 0) { if (!$add) { $this->tpl->setCurrentBlock("nocategories"); $this->tpl->setVariable("NO_CATEGORIES", $this->lng->txt("question_contains_no_categories")); $this->tpl->parseCurrentBlock(); } } else { $this->tpl->setCurrentBlock("selectall"); $this->tpl->setVariable("SELECT_ALL", $this->lng->txt("select_all")); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("existingcategories"); $this->tpl->setVariable("DELETE", $this->lng->txt("delete")); $this->tpl->setVariable("MOVE", $this->lng->txt("move")); $this->tpl->setVariable("VALUE_SAVE_PHRASE", $this->lng->txt("save_phrase")); $this->tpl->setVariable("ARROW", "<img src=\"" . ilUtil::getImagePath("arrow_downright.gif") . "\" alt=\"".$this->lng->txt("arrow_downright")."\">"); $this->tpl->parseCurrentBlock(); } for ($i = 1; $i < 10; $i++) { $this->tpl->setCurrentBlock("numbers"); $this->tpl->setVariable("VALUE_NUMBER", $i); if ($i == 1) { $this->tpl->setVariable("TEXT_NUMBER", $i . " " . $this->lng->txt("category")); } else { $this->tpl->setVariable("TEXT_NUMBER", $i . " " . $this->lng->txt("categories")); } $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("adm_content"); $this->tpl->setVariable("FORM_ACTION", $this->ctrl->getFormAction($this)); $this->tpl->setVariable("VALUE_ADD_CATEGORY", $this->lng->txt("add")); $this->tpl->setVariable("VALUE_ADD_PHRASE", $this->lng->txt("add_phrase")); $this->tpl->setVariable("SAVE", $this->lng->txt("save")); if ($_SESSION["spl_modified"]) { $this->tpl->setVariable("FORM_DATA_MODIFIED_PRESS_SAVE", $this->lng->txt("form_data_modified_press_save")); } $questiontext = $this->object->getQuestiontext(); $this->tpl->setVariable("QUESTION_TEXT", $this->object->prepareTextareaOutput($questiontext, TRUE)); $this->tpl->parseCurrentBlock(); }
SurveyOrdinalQuestionGUI::confirmSavePhrase | ( | ) |
Save a new phrase to the database.
Save a new phrase to the database
public
Definition at line 685 of file class.SurveyOrdinalQuestionGUI.php.
References $_POST, savePhrase(), and sendInfo().
{ if (!$_POST["phrase_title"]) { sendInfo($this->lng->txt("qpl_savephrase_empty")); $this->savePhrase(); return; } if ($this->object->phraseExists($_POST["phrase_title"])) { sendInfo($this->lng->txt("qpl_savephrase_exists")); $this->savePhrase(); return; } $this->object->savePhrase($_POST["chb_category"], $_POST["phrase_title"]); sendInfo($this->lng->txt("phrase_saved"), true); $this->ctrl->redirect($this, "categories"); }
SurveyOrdinalQuestionGUI::editQuestion | ( | ) |
Creates an output of the edit form for the question.
Creates an output of the edit form for the question
public
Definition at line 83 of file class.SurveyOrdinalQuestionGUI.php.
References $_GET, $key, $obj_id, SurveyQuestion::_getInternalLinkHref(), ilRTE::_getRTEClassname(), ilObject::_lookupType(), and ilUtil::prepareFormOutput().
{ $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.il_svy_qpl_ordinal.html", true); $this->tpl->addBlockFile("OTHER_QUESTION_DATA", "other_question_data", "tpl.il_svy_qpl_other_question_data.html", true); $internallinks = array( "lm" => $this->lng->txt("obj_lm"), "st" => $this->lng->txt("obj_st"), "pg" => $this->lng->txt("obj_pg"), "glo" => $this->lng->txt("glossary_term") ); foreach ($internallinks as $key => $value) { $this->tpl->setCurrentBlock("internallink"); $this->tpl->setVariable("TYPE_INTERNAL_LINK", $key); $this->tpl->setVariable("TEXT_INTERNAL_LINK", $value); $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("adm_content"); $this->tpl->setVariable("TEXT_MATERIAL", $this->lng->txt("material")); if (count($this->object->material)) { include_once "./survey/classes/class.SurveyQuestion.php"; $href = SurveyQuestion::_getInternalLinkHref($this->object->material["internal_link"]); $this->tpl->setVariable("TEXT_VALUE_MATERIAL", " <a href=\"$href\" target=\"content\">" . $this->lng->txt("material"). "</a> "); $this->tpl->setVariable("BUTTON_REMOVE_MATERIAL", $this->lng->txt("remove")); $this->tpl->setVariable("BUTTON_ADD_MATERIAL", $this->lng->txt("change")); $this->tpl->setVariable("VALUE_MATERIAL", $this->object->material["internal_link"]); $this->tpl->setVariable("VALUE_MATERIAL_TITLE", $this->object->material["title"]); $this->tpl->setVariable("TEXT_TITLE", $this->lng->txt("title")); } else { $this->tpl->setVariable("BUTTON_ADD_MATERIAL", $this->lng->txt("add")); } $this->tpl->setVariable("TEXT_ORIENTATION", $this->lng->txt("orientation")); switch ($this->object->getOrientation()) { case 0: $this->tpl->setVariable("SELECTED_VERTICAL", " selected=\"selected\""); break; case 1: $this->tpl->setVariable("SELECTED_HORIZONTAL", " selected=\"selected\""); break; case 2: $this->tpl->setVariable("SELECTED_COMBOBOX", " selected=\"selected\""); break; } $this->tpl->setVariable("TXT_VERTICAL", $this->lng->txt("vertical")); $this->tpl->setVariable("TXT_HORIZONTAL", $this->lng->txt("horizontal")); $this->tpl->setVariable("TXT_COMBOBOX", $this->lng->txt("combobox")); $this->tpl->setVariable("QUESTION_ID", $this->object->getId()); $this->tpl->setVariable("VALUE_TITLE", $this->object->getTitle()); $this->tpl->setVariable("VALUE_DESCRIPTION", $this->object->getDescription()); $this->tpl->setVariable("VALUE_AUTHOR", $this->object->getAuthor()); $questiontext = $this->object->getQuestiontext(); $this->tpl->setVariable("VALUE_QUESTION", ilUtil::prepareFormOutput($this->object->prepareTextareaOutput($questiontext))); $this->tpl->setVariable("TEXT_TITLE", $this->lng->txt("title")); $this->tpl->setVariable("TEXT_AUTHOR", $this->lng->txt("author")); $this->tpl->setVariable("TEXT_DESCRIPTION", $this->lng->txt("description")); $this->tpl->setVariable("TEXT_QUESTION", $this->lng->txt("question")); $this->tpl->setVariable("TEXT_QUESTION_TYPE", $this->lng->txt("questiontype")); $this->tpl->setVariable("TEXT_OBLIGATORY", $this->lng->txt("obligatory")); if ($this->object->getObligatory()) { $this->tpl->setVariable("CHECKED_OBLIGATORY", " checked=\"checked\""); } $this->tpl->setVariable("SAVE",$this->lng->txt("save")); $this->tpl->setVariable("TXT_REQUIRED_FLD", $this->lng->txt("required_field")); $this->tpl->setVariable("FORM_ACTION", $this->ctrl->getFormAction($this)); $this->tpl->setVariable("TEXT_QUESTION_TYPE", $this->lng->txt($this->getQuestionType())); $this->tpl->parseCurrentBlock(); include_once "./Services/RTE/classes/class.ilRTE.php"; $rtestring = ilRTE::_getRTEClassname(); include_once "./Services/RTE/classes/class.$rtestring.php"; $rte = new $rtestring(); $rte->addPlugin("latex"); $rte->addButton("latex"); $rte->removePlugin("ibrowser"); include_once "./classes/class.ilObject.php"; $obj_id = $_GET["q_id"]; $obj_type = ilObject::_lookupType($_GET["ref_id"], TRUE); $rte->addRTESupport($obj_id, $obj_type, "survey"); }
SurveyOrdinalQuestionGUI::getQuestionType | ( | ) |
Returns the question type string.
Returns the question type string
Definition at line 71 of file class.SurveyOrdinalQuestionGUI.php.
{ return "SurveyOrdinalQuestion"; }
SurveyOrdinalQuestionGUI::insertStandardNumbers | ( | ) |
Insert standard numbers to the question.
Insert standard numbers to the question
public
Definition at line 597 of file class.SurveyOrdinalQuestionGUI.php.
References $_POST, addStandardNumbers(), and sendInfo().
{ if ((strcmp($_POST["lower_limit"], "") == 0) or (strcmp($_POST["upper_limit"], "") == 0)) { sendInfo($this->lng->txt("missing_upper_or_lower_limit")); $this->addStandardNumbers(); } else if ((int)$_POST["upper_limit"] <= (int)$_POST["lower_limit"]) { sendInfo($this->lng->txt("upper_limit_must_be_greater")); $this->addStandardNumbers(); } else { $this->object->addStandardNumbers($_POST["lower_limit"], $_POST["upper_limit"]); $this->object->saveCategoriesToDb(); $this->ctrl->redirect($this, "categories"); } }
SurveyOrdinalQuestionGUI::outCumulatedResultsDetails | ( | &$ | cumulated_results, | |
$ | counter | |||
) |
Definition at line 706 of file class.SurveyOrdinalQuestionGUI.php.
{ $this->tpl->setCurrentBlock("detail_row"); $this->tpl->setVariable("TEXT_OPTION", $this->lng->txt("question")); $questiontext = $this->object->getQuestiontext(); $this->tpl->setVariable("TEXT_OPTION_VALUE", $this->object->prepareTextareaOutput($questiontext, TRUE)); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("detail_row"); $this->tpl->setVariable("TEXT_OPTION", $this->lng->txt("question_type")); $this->tpl->setVariable("TEXT_OPTION_VALUE", $this->lng->txt($this->getQuestionType())); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("detail_row"); $this->tpl->setVariable("TEXT_OPTION", $this->lng->txt("users_answered")); $this->tpl->setVariable("TEXT_OPTION_VALUE", $cumulated_results["USERS_ANSWERED"]); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("detail_row"); $this->tpl->setVariable("TEXT_OPTION", $this->lng->txt("users_skipped")); $this->tpl->setVariable("TEXT_OPTION_VALUE", $cumulated_results["USERS_SKIPPED"]); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("detail_row"); $this->tpl->setVariable("TEXT_OPTION", $this->lng->txt("mode")); $this->tpl->setVariable("TEXT_OPTION_VALUE", $cumulated_results["MODE"]); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("detail_row"); $this->tpl->setVariable("TEXT_OPTION", $this->lng->txt("mode_nr_of_selections")); $this->tpl->setVariable("TEXT_OPTION_VALUE", $cumulated_results["MODE_NR_OF_SELECTIONS"]); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("detail_row"); $this->tpl->setVariable("TEXT_OPTION", $this->lng->txt("median")); $this->tpl->setVariable("TEXT_OPTION_VALUE", $cumulated_results["MEDIAN"]); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("detail_row"); $this->tpl->setVariable("TEXT_OPTION", $this->lng->txt("categories")); $categories = ""; foreach ($cumulated_results["variables"] as $key => $value) { $categories .= "<li>" . $this->lng->txt("title") . ":" . "<span class=\"bold\">" . $value["title"] . "</span><br />" . $this->lng->txt("category_nr_selected") . ": " . "<span class=\"bold\">" . $value["selected"] . "</span><br />" . $this->lng->txt("percentage_of_selections") . ": " . "<span class=\"bold\">" . sprintf("%.2f", 100*$value["percentage"]) . "</span></li>"; } $categories = "<ol>$categories</ol>"; $this->tpl->setVariable("TEXT_OPTION_VALUE", $categories); $this->tpl->parseCurrentBlock(); // display chart for ordinal question for array $eval["variables"] $this->tpl->setVariable("TEXT_CHART", $this->lng->txt("chart")); $this->tpl->setVariable("ALT_CHART", $data["title"] . "( " . $this->lng->txt("chart") . ")"); $this->tpl->setVariable("CHART","./survey/displaychart.php?grName=" . urlencode($this->object->getTitle()) . "&type=bars" . "&x=" . urlencode($this->lng->txt("answers")) . "&y=" . urlencode($this->lng->txt("users_answered")) . "&arr=".base64_encode(serialize($cumulated_results["variables"]))); $this->tpl->setCurrentBlock("detail"); $this->tpl->setVariable("QUESTION_TITLE", "$counter. ".$this->object->getTitle()); $this->tpl->parseCurrentBlock(); }
SurveyOrdinalQuestionGUI::outWorkingForm | ( | $ | working_data = "" , |
|
$ | question_title = 1 , |
|||
$ | error_message = "" | |||
) |
Creates the question output form for the learner.
Creates the question output form for the learner
public
Definition at line 176 of file class.SurveyOrdinalQuestionGUI.php.
References SurveyQuestion::_getInternalLinkHref().
Referenced by preview().
{ if (count($this->object->material)) { $this->tpl->setCurrentBlock("material_ordinal"); include_once "./survey/classes/class.SurveyQuestion.php"; $href = SurveyQuestion::_getInternalLinkHref($this->object->material["internal_link"]); $this->tpl->setVariable("TEXT_MATERIAL", $this->lng->txt("material") . ": <a href=\"$href\" target=\"content\">" . $this->object->material["title"]. "</a> "); $this->tpl->parseCurrentBlock(); } switch ($this->object->orientation) { case 0: // vertical orientation for ($i = 0; $i < $this->object->categories->getCategoryCount(); $i++) { $category = $this->object->categories->getCategory($i); $this->tpl->setCurrentBlock("ordinal_row"); $this->tpl->setVariable("TEXT_ORDINAL", $category); $this->tpl->setVariable("VALUE_ORDINAL", $i); $this->tpl->setVariable("QUESTION_ID", $this->object->getId()); if (is_array($working_data)) { if (strcmp($working_data[0]["value"], "") != 0) { if ($working_data[0]["value"] == $i) { $this->tpl->setVariable("CHECKED_ORDINAL", " checked=\"checked\""); } } } $this->tpl->parseCurrentBlock(); } break; case 1: // horizontal orientation for ($i = 0; $i < $this->object->categories->getCategoryCount(); $i++) { $category = $this->object->categories->getCategory($i); $this->tpl->setCurrentBlock("radio_col_ordinal"); $this->tpl->setVariable("VALUE_ORDINAL", $i); $this->tpl->setVariable("QUESTION_ID", $this->object->getId()); if (is_array($working_data)) { if (strcmp($working_data[0]["value"], "") != 0) { if ($working_data[0]["value"] == $i) { $this->tpl->setVariable("CHECKED_ORDINAL", " checked=\"checked\""); } } } $this->tpl->parseCurrentBlock(); } for ($i = 0; $i < $this->object->categories->getCategoryCount(); $i++) { $category = $this->object->categories->getCategory($i); $this->tpl->setCurrentBlock("text_col_ordinal"); $this->tpl->setVariable("VALUE_ORDINAL", $i); $this->tpl->setVariable("TEXT_ORDINAL", $category); $this->tpl->setVariable("QUESTION_ID", $this->object->getId()); $this->tpl->parseCurrentBlock(); } break; case 2: // combobox output for ($i = 0; $i < $this->object->categories->getCategoryCount(); $i++) { $category = $this->object->categories->getCategory($i); $this->tpl->setCurrentBlock("comborow"); $this->tpl->setVariable("TEXT_ORDINAL", $category); $this->tpl->setVariable("VALUE_ORDINAL", $i); if (is_array($working_data)) { if (strcmp($working_data[0]["value"], "") != 0) { if ($working_data[0]["value"] == $i) { $this->tpl->setVariable("SELECTED_ORDINAL", " selected=\"selected\""); } } } $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("combooutput"); $this->tpl->setVariable("QUESTION_ID", $this->object->getId()); $this->tpl->setVariable("SELECT_OPTION", $this->lng->txt("select_option")); $this->tpl->setVariable("TEXT_SELECTION", $this->lng->txt("selection")); $this->tpl->parseCurrentBlock(); break; } if ($question_title) { $this->tpl->setVariable("QUESTION_TITLE", $this->object->getTitle()); } $this->tpl->setCurrentBlock("question_data_ordinal"); if (strcmp($error_message, "") != 0) { $this->tpl->setVariable("ERROR_MESSAGE", "<p class=\"warning\">$error_message</p>"); } $questiontext = $this->object->getQuestiontext(); $this->tpl->setVariable("QUESTIONTEXT", $this->object->prepareTextareaOutput($questiontext, TRUE)); if (! $this->object->getObligatory()) { $this->tpl->setVariable("OBLIGATORY_TEXT", $this->lng->txt("survey_question_optional")); } $this->tpl->parseCurrentBlock(); }
SurveyOrdinalQuestionGUI::preview | ( | ) |
Creates a preview of the question.
Creates a preview of the question
private
Definition at line 292 of file class.SurveyOrdinalQuestionGUI.php.
References outWorkingForm().
{ $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.il_svy_qpl_preview.html", true); $this->tpl->addBlockFile("ORDINAL", "ordinal", "tpl.il_svy_out_ordinal.html", true); $this->outWorkingForm(); $this->tpl->parseCurrentBlock(); }
SurveyOrdinalQuestionGUI::savePhrase | ( | ) |
Creates an output to save a phrase.
Creates an output to save a phrase
public
Definition at line 624 of file class.SurveyOrdinalQuestionGUI.php.
References $_POST, $counter, sendInfo(), and SurveyQuestionGUI::writeCategoryData().
Referenced by confirmSavePhrase().
{ $this->writeCategoryData(true); $nothing_selected = true; if (array_key_exists("chb_category", $_POST)) { if (count($_POST["chb_category"])) { $nothing_selected = false; $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.il_svy_qpl_savephrase.html", true); $rowclass = array("tblrow1", "tblrow2"); $counter = 0; foreach ($_POST["chb_category"] as $category) { $this->tpl->setCurrentBlock("row"); $this->tpl->setVariable("TXT_TITLE", $this->object->categories->getCategory($category)); $this->tpl->setVariable("COLOR_CLASS", $rowclass[$counter % 2]); $this->tpl->parseCurrentBlock(); $this->tpl->setCurrentBlock("hidden"); $this->tpl->setVariable("HIDDEN_NAME", "chb_category[]"); $this->tpl->setVariable("HIDDEN_VALUE", $category); $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("adm_content"); $this->tpl->setVariable("SAVE_PHRASE_INTRODUCTION", $this->lng->txt("save_phrase_introduction")); $this->tpl->setVariable("TEXT_PHRASE_TITLE", $this->lng->txt("enter_phrase_title")); $this->tpl->setVariable("TXT_TITLE", $this->lng->txt("category")); $this->tpl->setVariable("VALUE_PHRASE_TITLE", $_POST["phrase_title"]); $this->tpl->setVariable("BTN_CANCEL",$this->lng->txt("cancel")); $this->tpl->setVariable("BTN_CONFIRM",$this->lng->txt("confirm")); $this->tpl->setVariable("FORM_ACTION", $this->ctrl->getFormAction($this)); $this->tpl->parseCurrentBlock(); } } if ($nothing_selected) { sendInfo($this->lng->txt("check_category_to_save_phrase"), true); $this->ctrl->redirect($this, "categories"); } }
SurveyOrdinalQuestionGUI::setQuestionTabs | ( | ) |
Definition at line 456 of file class.SurveyOrdinalQuestionGUI.php.
References SurveyQuestionGUI::setQuestionTabsForClass().
{ $this->setQuestionTabsForClass("surveyordinalquestiongui"); }
SurveyOrdinalQuestionGUI::SurveyOrdinalQuestionGUI | ( | $ | id = -1 |
) |
SurveyOrdinalQuestionGUI constructor.
The constructor takes possible arguments an creates an instance of the SurveyOrdinalQuestionGUI object.
integer | $id The database id of a ordinal question object public |
Definition at line 49 of file class.SurveyOrdinalQuestionGUI.php.
References $id, and SurveyQuestionGUI::SurveyQuestionGUI().
{ $this->SurveyQuestionGUI(); include_once "./survey/classes/class.SurveyOrdinalQuestion.php"; $this->object = new SurveyOrdinalQuestion(); if ($id >= 0) { $this->object->loadFromDb($id); } }
SurveyOrdinalQuestionGUI::writePostData | ( | ) |
Evaluates a posted edit form and writes the form data in the question object.
Evaluates a posted edit form and writes the form data in the question object
Definition at line 308 of file class.SurveyOrdinalQuestionGUI.php.
References $_POST, $result, ilObjAdvancedEditing::_getUsedHTMLTagsAsString(), and ilUtil::stripSlashes().
{ $result = 0; if ((!$_POST["title"]) or (!$_POST["author"]) or (!$_POST["question"])) $result = 1; // Set the question id from a hidden form parameter if ($_POST["id"] > 0) $this->object->setId($_POST["id"]); include_once "./classes/class.ilUtil.php"; $this->object->setTitle(ilUtil::stripSlashes($_POST["title"])); $this->object->setAuthor(ilUtil::stripSlashes($_POST["author"])); $this->object->setDescription(ilUtil::stripSlashes($_POST["description"])); $this->object->setOrientation($_POST["orientation"]); if (strlen($_POST["material"])) { $this->object->setMaterial($_POST["material"], 0, ilUtil::stripSlashes($_POST["material_title"])); } include_once "./classes/class.ilObjAdvancedEditing.php"; $questiontext = ilUtil::stripSlashes($_POST["question"], true, ilObjAdvancedEditing::_getUsedHTMLTagsAsString("survey")); $this->object->setQuestiontext($questiontext); if ($_POST["obligatory"]) { $this->object->setObligatory(1); } else { $this->object->setObligatory(0); } if ($saved) { // If the question was saved automatically before an upload, we have to make // sure, that the state after the upload is saved. Otherwise the user could be // irritated, if he presses cancel, because he only has the question state before // the upload process. $this->object->saveToDb(); } return $result; }