ILIAS
Release_4_0_x_branch Revision 61816
|
Class for TextSubset questions. More...
Public Member Functions | |
__construct ($title="", $comment="", $author="", $owner=-1, $question="") | |
assTextSubset constructor | |
isComplete () | |
Returns true, if a TextSubset question is complete for use. | |
saveToDb ($original_id="") | |
Saves a assTextSubset object to a database. | |
loadFromDb ($question_id) | |
Loads a assTextSubset object from a database. | |
addAnswer ($answertext, $points, $order) | |
Adds an answer to the question. | |
duplicate ($for_test=true, $title="", $author="", $owner="") | |
Duplicates an assTextSubsetQuestion. | |
copyObject ($target_questionpool, $title="") | |
Copies an assTextSubset object. | |
getAnswerCount () | |
Returns the number of answers. | |
getAnswer ($index=0) | |
Returns an answer with a given index. | |
deleteAnswer ($index=0) | |
Deletes an answer with a given index. | |
flushAnswers () | |
Deletes all answers. | |
getMaximumPoints () | |
Returns the maximum points, a learner can reach answering the question. | |
& | getAvailableAnswers () |
Returns the available answers for the question. | |
isAnswerCorrect ($answers, $answer) | |
Returns the index of the found answer, if the given answer is in the set of correct answers and matchess the matching options, otherwise FALSE is returned. | |
getTextRating () | |
Returns the rating option for text comparisons. | |
setTextRating ($a_text_rating) | |
Sets the rating option for text comparisons. | |
calculateReachedPoints ($active_id, $pass=NULL) | |
Returns the points, a learner has reached answering the question The points are calculated from the given answers including checks for all special scoring options in the test container. | |
setCorrectAnswers ($a_correct_answers) | |
Sets the number of correct answers needed to solve the question. | |
getCorrectAnswers () | |
Returns the number of correct answers needed to solve the question. | |
saveWorkingData ($active_id, $pass=NULL) | |
Saves the learners input of the question to the database. | |
getQuestionType () | |
Returns the question type of the question. | |
& | joinAnswers () |
Returns the answers of the question as a comma separated string. | |
getMaxTextboxWidth () | |
Returns the maximum width needed for the answer textboxes. | |
getAdditionalTableName () | |
Returns the name of the additional question data table in the database. | |
getAnswerTableName () | |
Returns the name of the answer table in the database. | |
getRTETextWithMediaObjects () | |
Collects all text in the question which could contain media objects which were created with the Rich Text Editor. | |
setExportDetailsXLS (&$worksheet, $startrow, $active_id, $pass, &$format_title, &$format_bold) | |
Creates an Excel worksheet for the detailed cumulated results of this question. | |
getAnswers () | |
Public Member Functions inherited from assQuestion | |
fromXML (&$item, &$questionpool_id, &$tst_id, &$tst_object, &$question_counter, &$import_mapping) | |
Receives parameters from a QTI parser and creates a valid ILIAS question object. | |
toXML ($a_include_header=true, $a_include_binary=true, $a_shuffle=false, $test_output=false, $force_image_references=false) | |
Returns a QTI xml representation of the question. | |
questionTitleExists ($questionpool_id, $title) | |
Returns TRUE if the question title exists in the database. | |
setTitle ($title="") | |
Sets the title string of the assQuestion object. | |
setId ($id=-1) | |
Sets the id of the assQuestion object. | |
setTestId ($id=-1) | |
Sets the test id of the assQuestion object. | |
setComment ($comment="") | |
Sets the comment string of the assQuestion object. | |
setOutputType ($outputType=OUTPUT_HTML) | |
Sets the output type. | |
setShuffle ($shuffle=true) | |
Sets the shuffle flag. | |
setEstimatedWorkingTime ($hour=0, $min=0, $sec=0) | |
Sets the estimated working time of a question. | |
keyInArray ($searchkey, $array) | |
returns TRUE if the key occurs in an array | |
setAuthor ($author="") | |
Sets the authors name of the assQuestion object. | |
setOwner ($owner="") | |
Sets the creator/owner ID of the assQuestion object. | |
getTitle () | |
Gets the title string of the assQuestion object. | |
getId () | |
Gets the id of the assQuestion object. | |
getShuffle () | |
Gets the shuffle flag. | |
getTestId () | |
Gets the test id of the assQuestion object. | |
getComment () | |
Gets the comment string of the assQuestion object. | |
getOutputType () | |
Gets the output type. | |
supportsJavascriptOutput () | |
Returns true if the question type supports JavaScript output. | |
getEstimatedWorkingTime () | |
Gets the estimated working time of a question. | |
getAuthor () | |
Gets the authors name of the assQuestion object. | |
getOwner () | |
Gets the creator/owner ID of the assQuestion object. | |
getObjId () | |
Get the object id of the container object. | |
setObjId ($obj_id=0) | |
Set the object id of the container object. | |
_getMaximumPoints ($question_id) | |
Returns the maximum points, a learner can reach answering the question. | |
& | _getQuestionInfo ($question_id) |
Returns question information from the database. | |
getSuggestedSolutionOutput () | |
& | _getSuggestedSolution ($question_id, $subquestion_index=0) |
Returns a suggested solution for a given subquestion index. | |
getSuggestedSolutions () | |
Return the suggested solutions. | |
_getReachedPoints ($active_id, $question_id, $pass=NULL) | |
Returns the points, a learner has reached answering the question. | |
getReachedPoints ($active_id, $pass=NULL) | |
Returns the points, a learner has reached answering the question This is the fast way to get the points directly from the database. | |
calculateResultsFromSolution ($active_id, $pass=NULL) | |
Calculates the question results from a previously saved question solution. | |
_updateTestResultCache ($active_id) | |
_updateTestPassResults ($active_id, $pass) | |
logAction ($logtext="", $active_id="", $question_id="") | |
Logs an action into the Test&Assessment log. | |
_logAction ($logtext="", $active_id="", $question_id="") | |
Logs an action into the Test&Assessment log. | |
moveUploadedMediaFile ($file, $name) | |
Move an uploaded media file to an public accessible temp dir to present it. | |
getSuggestedSolutionPath () | |
Returns the path for a suggested solution. | |
getJavaPath () | |
Returns the image path for web accessable images of a question. | |
getImagePath () | |
Returns the image path for web accessable images of a question. | |
getFlashPath () | |
Returns the image path for web accessable flash files of a question. | |
getJavaPathWeb () | |
Returns the web image path for web accessable java applets of a question. | |
getSuggestedSolutionPathWeb () | |
Returns the web path for a suggested solution. | |
getImagePathWeb () | |
Returns the web image path for web accessable images of a question. | |
getFlashPathWeb () | |
Returns the web image path for web accessable flash applications of a question. | |
& | getSolutionValues ($active_id, $pass=NULL) |
Loads solutions of a given user from the database an returns it. | |
isInUse ($question_id="") | |
Checks whether the question is in use or not. | |
isClone ($question_id="") | |
Checks whether the question is a clone of another question or not. | |
pcArrayShuffle ($array) | |
Shuffles the values of a given array. | |
getQuestionTypeFromDb ($question_id) | |
get question type for question id | |
deleteAnswers ($question_id) | |
Deletes datasets from answers tables. | |
deleteAdditionalTableData ($question_id) | |
Deletes datasets from the additional question table in the database. | |
delete ($question_id) | |
Deletes a question and all materials from the database. | |
getTotalAnswers () | |
get total number of answers | |
_getTotalAnswers ($a_q_id) | |
get number of answers for question id (static) note: do not use $this inside this method | |
_getTotalRightAnswers ($a_q_id) | |
get number of answers for question id (static) note: do not use $this inside this method | |
_getTitle ($a_q_id) | |
Returns the title of a question. | |
_getQuestionText ($a_q_id) | |
Returns question text. | |
copyXHTMLMediaObjectsOfQuestion ($a_q_id) | |
syncXHTMLMediaObjectsOfQuestion () | |
createPageObject () | |
create page object of question | |
copyPageOfQuestion ($a_q_id) | |
getPageOfQuestion () | |
_getQuestionType ($question_id) | |
Returns the question type of a question with a given id. | |
_getQuestionTitle ($question_id) | |
Returns the question title of a question with a given id. | |
setOriginalId ($original_id) | |
getOriginalId () | |
createNewQuestion () | |
Creates a new question without an owner when a new question is created This assures that an ID is given to the question if a file upload or something else occurs. | |
saveQuestionDataToDb ($original_id="") | |
deleteSuggestedSolutions () | |
Deletes all suggestes solutions in the database. | |
getSuggestedSolution ($subquestion_index=0) | |
Returns a suggested solution for a given subquestion index. | |
getSuggestedSolutionTitle ($subquestion_index=0) | |
Returns the title of a suggested solution at a given subquestion_index. | |
setSuggestedSolution ($solution_id="", $subquestion_index=0, $is_import=false) | |
Sets a suggested solution for the question. | |
updateSuggestedSolutions ($original_id="") | |
Update the suggested solutions of a question based on the suggested solution array attribute. | |
saveSuggestedSolution ($type, $solution_id="", $subquestion_index=0, $value="") | |
Saves a suggested solution for the question. | |
_resolveInternalLink ($internal_link) | |
_resolveIntLinks ($question_id) | |
_getInternalLinkHref ($target="") | |
_getOriginalId ($question_id) | |
Returns the original id of a question. | |
syncWithOriginal () | |
createRandomSolution ($test_id, $user_id) | |
_questionExists ($question_id) | |
Returns true if the question already exists in the database. | |
& | _instanciateQuestion ($question_id) |
Creates an instance of a question with a given question id. | |
getPoints () | |
Returns the maximum available points for the question. | |
setPoints ($a_points) | |
Sets the maximum available points for the question. | |
getSolutionMaxPass ($active_id) | |
Returns the maximum pass a users question solution. | |
_getSolutionMaxPass ($question_id, $active_id) | |
Returns the maximum pass a users question solution. | |
_isWriteable ($question_id, $user_id) | |
Returns true if the question is writeable by a certain user. | |
_isUsedInRandomTest ($question_id="") | |
Checks whether the question is used in a random test or not. | |
calculateReachedPoints ($active_id, $pass=NULL, $points=0) | |
Returns the points, a learner has reached answering the question The points are calculated from the given answers including checks for all special scoring options in the test container. | |
isHTML ($a_text) | |
Checks if a given string contains HTML or not. | |
prepareTextareaOutput ($txt_output, $prepare_for_latex_output=FALSE) | |
Prepares a string for a text area output in tests. | |
QTIMaterialToString ($a_material) | |
Reads an QTI material tag an creates a text string. | |
addQTIMaterial (&$a_xml_writer, $a_material, $close_material_tag=TRUE, $add_mobs=TRUE) | |
Creates a QTI material tag from a plain text or xhtml text. | |
createNewImageFileName ($image_filename) | |
_setReachedPoints ($active_id, $question_id, $points, $maxpoints, $pass=NULL, $manualscoring=FALSE) | |
Sets the points, a learner has reached answering the question Additionally objective results are updated. | |
getQuestion () | |
Gets the question string of the question object. | |
setQuestion ($question="") | |
Sets the question string of the question object. | |
getQuestionTypeID () | |
Returns the question type of the question. | |
saveFeedbackGeneric ($correctness, $feedback) | |
Saves generic feedback to the database. | |
getFeedbackGeneric ($correctness) | |
Returns the generic feedback for a given question state. | |
duplicateFeedbackGeneric ($original_id) | |
Duplicates the generic feedback of a question. | |
syncFeedbackGeneric () | |
cleanupMediaObjectUsage () | |
synchronises appearances of media objects in the question with media object usage table | |
& | getInstances () |
Gets all instances of the question. | |
_needsManualScoring ($question_id) | |
getActiveUserData ($active_id) | |
Returns the user id and the test id for a given active id. | |
& | _instanciateQuestionGUI ($question_id) |
Creates an instance of a question gui with a given question id. | |
__get ($value) | |
Object getter. | |
__set ($key, $value) | |
Object setter. | |
getNrOfTries () | |
setNrOfTries ($a_nr_of_tries) |
Data Fields | |
$answers | |
$correctanswers | |
$text_rating |
Additional Inherited Members | |
Static Public Member Functions inherited from assQuestion | |
static | _getSuggestedSolutionCount ($question_id) |
Returns the number of suggested solutions associated with a question. | |
static | _getSuggestedSolutionOutput ($question_id) |
Returns the output of the suggested solution. | |
static | _isWorkedThrough ($active_id, $question_id, $pass=NULL) |
Returns true if the question was worked through in the given pass Worked through means that the user entered at least one value. | |
static | _areAnswered ($a_user_id, $a_question_ids) |
Checks if an array of question ids is answered by an user or not. | |
static | _includeClass ($question_type, $gui=0) |
Include the php class file for a given question type. | |
static | _getQuestionTypeName ($type_tag) |
Return the translation for a given question type tag. | |
Protected Member Functions inherited from assQuestion | |
deletePageOfQuestion ($question_id) | |
Deletes the page object of a question with a given ID. | |
onDuplicate ($source_question_id) | |
Will be called when a question is duplicated (inside a question pool or for insertion in a test) | |
onCopy ($source_questionpool_id, $source_question_id) | |
Will be called when a question is copied (into another question pool) | |
duplicateSuggestedSolutionFiles ($question_id) | |
Duplicates the files of a suggested solution if the question is duplicated. | |
syncSuggestedSolutionFiles ($original_id) | |
Syncs the files of a suggested solution if the question is synced. | |
copySuggestedSolutionFiles ($source_questionpool_id, $source_question_id) | |
Protected Attributes inherited from assQuestion | |
$id | |
$title | |
$comment | |
$owner | |
$author | |
$question | |
$points | |
$est_working_time | |
$shuffle | |
$test_id | |
$obj_id | |
$ilias | |
$tpl | |
$lng | |
$outputType | |
$suggested_solutions | |
$original_id | |
$page |
Class for TextSubset questions.
assTextSubset is a class for TextSubset questions. To solve a TextSubset question, a learner has to enter a TextSubsetal value in a defined range
Definition at line 37 of file class.assTextSubset.php.
assTextSubset::__construct | ( | $title = "" , |
|
$comment = "" , |
|||
$author = "" , |
|||
$owner = -1 , |
|||
$question = "" |
|||
) |
assTextSubset constructor
The constructor takes possible arguments an creates an instance of the assTextSubset object.
string | $title | A title string to describe the question |
string | $comment | A comment string to describe the question |
string | $author | A string containing the name of the questions author |
integer | $owner | A TextSubsetal ID to identify the owner/creator |
string | $question | The question string of the TextSubset question public |
Reimplemented from assQuestion.
Definition at line 79 of file class.assTextSubset.php.
References assQuestion\$author, assQuestion\$comment, assQuestion\$owner, assQuestion\$question, and assQuestion\$title.
assTextSubset::addAnswer | ( | $answertext, | |
$points, | |||
$order | |||
) |
Adds an answer to the question.
public
Definition at line 218 of file class.assTextSubset.php.
References $changed, and assQuestion\$points.
assTextSubset::calculateReachedPoints | ( | $active_id, | |
$pass = NULL |
|||
) |
Returns the points, a learner has reached answering the question The points are calculated from the given answers including checks for all special scoring options in the test container.
integer | $user_id | The database ID of the learner |
integer | $test_id | The database Id of the test containing the question public |
Definition at line 532 of file class.assTextSubset.php.
References $data, $ilDB, $pass, assQuestion\$points, $result, getAvailableAnswers(), assQuestion\getId(), assQuestion\getSolutionMaxPass(), and isAnswerCorrect().
assTextSubset::copyObject | ( | $target_questionpool, | |
$title = "" |
|||
) |
Copies an assTextSubset object.
public
Definition at line 303 of file class.assTextSubset.php.
References assQuestion\$original_id, assQuestion\$title, assQuestion\_getOriginalId(), assQuestion\getId(), and assQuestion\getObjId().
assTextSubset::deleteAnswer | ( | $index = 0 | ) |
Deletes an answer with a given index.
The index of the first answer is 0, the index of the second answer is 1 and so on.
integer | $index | A nonnegative index of the n-th answer public |
Definition at line 372 of file class.assTextSubset.php.
assTextSubset::duplicate | ( | $for_test = true , |
|
$title = "" , |
|||
$author = "" , |
|||
$owner = "" |
|||
) |
Duplicates an assTextSubsetQuestion.
public
Definition at line 251 of file class.assTextSubset.php.
References assQuestion\$author, assQuestion\$original_id, assQuestion\$owner, assQuestion\$title, assQuestion\_getOriginalId(), and assQuestion\getId().
assTextSubset::flushAnswers | ( | ) |
Deletes all answers.
public
Definition at line 394 of file class.assTextSubset.php.
assTextSubset::getAdditionalTableName | ( | ) |
Returns the name of the additional question data table in the database.
Reimplemented from assQuestion.
Definition at line 702 of file class.assTextSubset.php.
Referenced by loadFromDb(), and saveToDb().
assTextSubset::getAnswer | ( | $index = 0 | ) |
Returns an answer with a given index.
The index of the first answer is 0, the index of the second answer is 1 and so on.
integer | $index | A nonnegative index of the n-th answer |
Definition at line 355 of file class.assTextSubset.php.
assTextSubset::getAnswerCount | ( | ) |
Returns the number of answers.
Definition at line 341 of file class.assTextSubset.php.
assTextSubset::getAnswers | ( | ) |
Definition at line 754 of file class.assTextSubset.php.
References $answers.
assTextSubset::getAnswerTableName | ( | ) |
Returns the name of the answer table in the database.
Reimplemented from assQuestion.
Definition at line 713 of file class.assTextSubset.php.
& assTextSubset::getAvailableAnswers | ( | ) |
Returns the available answers for the question.
private
Definition at line 430 of file class.assTextSubset.php.
Referenced by calculateReachedPoints().
assTextSubset::getCorrectAnswers | ( | ) |
Returns the number of correct answers needed to solve the question.
Definition at line 579 of file class.assTextSubset.php.
References $correctanswers.
Referenced by getMaximumPoints(), and saveToDb().
assTextSubset::getMaximumPoints | ( | ) |
Returns the maximum points, a learner can reach answering the question.
public
Reimplemented from assQuestion.
Definition at line 405 of file class.assTextSubset.php.
References assQuestion\$points, and getCorrectAnswers().
Referenced by isComplete().
assTextSubset::getMaxTextboxWidth | ( | ) |
Returns the maximum width needed for the answer textboxes.
Definition at line 685 of file class.assTextSubset.php.
assTextSubset::getQuestionType | ( | ) |
Returns the question type of the question.
Reimplemented from assQuestion.
Definition at line 654 of file class.assTextSubset.php.
assTextSubset::getRTETextWithMediaObjects | ( | ) |
Collects all text in the question which could contain media objects which were created with the Rich Text Editor.
Reimplemented from assQuestion.
Definition at line 722 of file class.assTextSubset.php.
assTextSubset::getTextRating | ( | ) |
Returns the rating option for text comparisons.
Definition at line 492 of file class.assTextSubset.php.
References $text_rating.
Referenced by isAnswerCorrect(), and saveToDb().
assTextSubset::isAnswerCorrect | ( | $answers, | |
$answer | |||
) |
Returns the index of the found answer, if the given answer is in the set of correct answers and matchess the matching options, otherwise FALSE is returned.
array | $answers | An array containing the correct answers |
string | $answer | The text of the given answer |
Definition at line 450 of file class.assTextSubset.php.
References $answers, $key, $result, getTextRating(), ilStr\strToLower(), TEXTGAP_RATING_CASEINSENSITIVE, TEXTGAP_RATING_CASESENSITIVE, TEXTGAP_RATING_LEVENSHTEIN1, TEXTGAP_RATING_LEVENSHTEIN2, TEXTGAP_RATING_LEVENSHTEIN3, TEXTGAP_RATING_LEVENSHTEIN4, and TEXTGAP_RATING_LEVENSHTEIN5.
Referenced by calculateReachedPoints().
assTextSubset::isComplete | ( | ) |
Returns true, if a TextSubset question is complete for use.
Reimplemented from assQuestion.
Definition at line 98 of file class.assTextSubset.php.
References getMaximumPoints().
& assTextSubset::joinAnswers | ( | ) |
Returns the answers of the question as a comma separated string.
Definition at line 665 of file class.assTextSubset.php.
assTextSubset::loadFromDb | ( | $question_id | ) |
Loads a assTextSubset object from a database.
object | $db | A pear DB object |
integer | $question_id | A unique key which defines the multiple choice test in the database public |
Reimplemented from assQuestion.
Definition at line 169 of file class.assTextSubset.php.
References $data, $ilDB, $result, ilRTE\_replaceMediaObjectImageSrc(), getAdditionalTableName(), assQuestion\setAuthor(), assQuestion\setComment(), setCorrectAnswers(), assQuestion\setEstimatedWorkingTime(), assQuestion\setId(), assQuestion\setNrOfTries(), assQuestion\setObjId(), assQuestion\setOriginalId(), assQuestion\setOwner(), assQuestion\setPoints(), assQuestion\setQuestion(), setTextRating(), and assQuestion\setTitle().
assTextSubset::saveToDb | ( | $original_id = "" | ) |
Saves a assTextSubset object to a database.
object | $db | A pear DB object public |
Reimplemented from assQuestion.
Definition at line 116 of file class.assTextSubset.php.
References $ilDB, $key, assQuestion\$original_id, $query, getAdditionalTableName(), getCorrectAnswers(), assQuestion\getId(), getTextRating(), and assQuestion\saveQuestionDataToDb().
assTextSubset::saveWorkingData | ( | $active_id, | |
$pass = NULL |
|||
) |
Saves the learners input of the question to the database.
@param integer $test_id The database id of the test containing this question
Reimplemented from assQuestion.
Definition at line 592 of file class.assTextSubset.php.
References $_POST, $ilDB, $key, $pass, ilObjAssessmentFolder\_enabledAssessmentLogging(), ilObjAssessmentFolder\_getLogLanguage(), ilObjTest\_getPass(), assQuestion\getId(), and assQuestion\logAction().
assTextSubset::setCorrectAnswers | ( | $a_correct_answers | ) |
Sets the number of correct answers needed to solve the question.
integer | $a_correct_anwers | The number of correct answers public |
Definition at line 568 of file class.assTextSubset.php.
Referenced by loadFromDb().
assTextSubset::setExportDetailsXLS | ( | & | $worksheet, |
$startrow, | |||
$active_id, | |||
$pass, | |||
& | $format_title, | ||
& | $format_bold | ||
) |
Creates an Excel worksheet for the detailed cumulated results of this question.
object | $worksheet | Reference to the parent excel worksheet |
object | $startrow | Startrow of the output in the excel worksheet |
object | $active_id | Active id of the participant |
object | $pass | Test pass |
object | $format_title | Excel title format |
object | $format_bold | Excel bold format |
array | $eval_data | Cumulated evaluation data public |
Reimplemented from assQuestion.
Definition at line 739 of file class.assTextSubset.php.
References $pass, ilExcelUtils\_convert_text(), assQuestion\getSolutionValues(), and assQuestion\getTitle().
assTextSubset::setTextRating | ( | $a_text_rating | ) |
Sets the rating option for text comparisons.
string | $a_textgap_rating | The rating option for text comparisons |
Definition at line 504 of file class.assTextSubset.php.
References TEXTGAP_RATING_CASEINSENSITIVE, TEXTGAP_RATING_CASESENSITIVE, TEXTGAP_RATING_LEVENSHTEIN1, TEXTGAP_RATING_LEVENSHTEIN2, TEXTGAP_RATING_LEVENSHTEIN3, TEXTGAP_RATING_LEVENSHTEIN4, and TEXTGAP_RATING_LEVENSHTEIN5.
Referenced by loadFromDb().
assTextSubset::$answers |
Definition at line 46 of file class.assTextSubset.php.
Referenced by getAnswers(), and isAnswerCorrect().
assTextSubset::$correctanswers |
Definition at line 55 of file class.assTextSubset.php.
Referenced by getCorrectAnswers().
assTextSubset::$text_rating |
Definition at line 64 of file class.assTextSubset.php.
Referenced by getTextRating().