ILIAS
Release_4_4_x_branch Revision 61816
|
Class for cloze tests. More...
Public Member Functions | |
__construct ($title="", $comment="", $author="", $owner=-1, $question="") | |
assClozeTest constructor | |
isComplete () | |
Returns TRUE, if a cloze test is complete for use. | |
cleanQuestiontext ($text) | |
Cleans cloze question text to remove attributes or tags from older ILIAS versions. | |
loadFromDb ($question_id) | |
Loads a assClozeTest object from a database. | |
saveToDb ($original_id="") | |
Saves a assClozeTest object to a database. | |
saveAnswerSpecificDataToDb () | |
Save all gaps to the database. | |
saveAdditionalQuestionDataToDb () | |
Saves the data for the additional data table. | |
getGaps () | |
Returns the array of gaps. | |
flushGaps () | |
Deletes all gaps without changing the cloze text. | |
setClozeText ($cloze_text="") | |
Evaluates the text gap solutions from the cloze text. | |
getClozeText () | |
Returns the cloze text. | |
getStartTag () | |
Returns the start tag of a cloze gap. | |
setStartTag ($start_tag="[gap]") | |
Sets the start tag of a cloze gap. | |
getEndTag () | |
Returns the end tag of a cloze gap. | |
setEndTag ($end_tag="[/gap]") | |
Sets the end tag of a cloze gap. | |
createGapsFromQuestiontext () | |
Create gap entries by parsing the question text. | |
setGapType ($gap_index, $gap_type) | |
Set the type of a gap with a given index. | |
setGapShuffle ($gap_index=0, $shuffle=1) | |
Sets the shuffle state of a gap with a given index. | |
clearGapAnswers () | |
Removes all answers from the gaps. | |
getGapCount () | |
Returns the number of gaps. | |
addGapAnswer ($gap_index, $order, $answer) | |
Sets the answer text of a gap with a given index. | |
getGap ($gap_index=0) | |
Returns the gap at a given index. | |
setGapAnswerPoints ($gap_index, $order, $points) | |
Sets the points of a gap with a given index and an answer with a given order. | |
addGapText ($gap_index) | |
Adds a new answer text value to a text gap with a given index. | |
addGapAtIndex ($gap, $index) | |
Adds a ClozeGap object at a given index. | |
setGapAnswerLowerBound ($gap_index, $order, $bound) | |
Sets the lower bound of a gap with a given index and an answer with a given order. | |
setGapAnswerUpperBound ($gap_index, $order, $bound) | |
Sets the upper bound of a gap with a given index and an answer with a given order. | |
getMaximumPoints () | |
Returns the maximum points, a learner can reach answering the question. | |
duplicate ($for_test=true, $title="", $author="", $owner="", $testObjId=null) | |
Duplicates an assClozeTest. | |
copyObject ($target_questionpool_id, $title="") | |
Copies an assClozeTest object. | |
createNewOriginalFromThisDuplicate ($targetParentId, $targetQuestionTitle="") | |
updateClozeTextFromGaps () | |
Updates the gap parameters in the cloze text from the form input. | |
deleteAnswerText ($gap_index, $answer_index) | |
Deletes the answer text of a gap with a given index and an answer with a given order. | |
deleteGap ($gap_index) | |
Deletes a gap with a given index. | |
getTextgapPoints ($a_original, $a_entered, $max_points) | |
Returns the points for a text gap and compares the given solution with the entered solution using the text gap rating options. | |
getNumericgapPoints ($a_original, $a_entered, $max_points, $lowerBound, $upperBound) | |
Returns the points for a text gap and compares the given solution with the entered solution using the text gap rating options. | |
calculateReachedPoints ($active_id, $pass=NULL, $returndetails=FALSE) | |
Returns the points, a learner has reached answering 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. | |
getTextgapRating () | |
Returns the rating option for text gaps. | |
setTextgapRating ($a_textgap_rating) | |
Sets the rating option for text gaps. | |
getIdenticalScoring () | |
Returns the identical scoring status of the question. | |
setIdenticalScoring ($a_identical_scoring) | |
Sets the identical scoring option for cloze questions. | |
getAdditionalTableName () | |
Returns the name of the additional question data table in the database. | |
getAnswerTableName () | |
Returns the name of the answer table in the database. | |
setFixedTextLength ($a_text_len) | |
Sets a fixed text length for all text fields in the cloze question. | |
getFixedTextLength () | |
Gets the fixed text length for all text fields in the cloze question. | |
getMaximumGapPoints ($gap_index) | |
Returns the maximum points for a gap. | |
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. | |
toJSON () | |
Returns a JSON representation of the question. | |
Public Member Functions inherited from assQuestion | |
setProcessLocker ($processLocker) | |
getProcessLocker () | |
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. | |
supportsNonJsOutput () | |
requiresJsSwitch () | |
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. | |
setExternalId ($external_id) | |
getExternalId () | |
_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. | |
getAdjustedReachedPoints ($active_id, $pass=NULL) | |
returns the reached points ... | |
calculateResultsFromSolution ($active_id, $pass=NULL, $obligationsEnabled=false) | |
Calculates the question results from a previously saved question solution. | |
persistWorkingState ($active_id, $pass=NULL, $obligationsEnabled=false) | |
persists the working state for current testactive and testpass | |
_updateTestResultCache ($active_id, ilAssQuestionProcessLocker $processLocker=null) | |
Move this to a proper place. | |
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 ($question_id=null, $object_id=null) | |
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 ($a_create_page=true) | |
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="") | |
setNewOriginalId ($newId) | |
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. | |
_resolveInternalLink ($internal_link) | |
_resolveIntLinks ($question_id) | |
_getInternalLinkHref ($target="") | |
syncWithOriginal () | |
createRandomSolution ($test_id, $user_id) | |
_questionExists ($question_id) | |
Returns true if the question already exists in the database. | |
_questionExistsInPool ($question_id) | |
Returns true if the question already exists in the database and is assigned to a question pool. | |
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. | |
adjustReachedPointsByScoringOptions ($points, $active_id, $pass=NULL) | |
Adjust the given reached points by 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, $manualscoring, $obligationsEnabled) | |
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. | |
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. | |
__get ($value) | |
Object getter. | |
__set ($key, $value) | |
Object setter. | |
getNrOfTries () | |
setNrOfTries ($a_nr_of_tries) | |
setExportImagePath ($a_path) | |
_questionExistsInTest ($question_id, $test_id) | |
formatSAQuestion ($a_q) | |
Format self assessment question. | |
setPreventRteUsage ($a_val) | |
Set prevent rte usage. | |
getPreventRteUsage () | |
Get prevent rte usage. | |
setSelfAssessmentEditingMode ($a_selfassessmenteditingmode) | |
Set Self-Assessment Editing Mode. | |
getSelfAssessmentEditingMode () | |
Get Self-Assessment Editing Mode. | |
setDefaultNrOfTries ($a_defaultnroftries) | |
Set Default Nr of Tries. | |
getDefaultNrOfTries () | |
Get Default Nr of Tries. | |
isAnswered ($active_id, $pass=null) | |
returns boolean wether the question is answered during test pass or not | |
setObligationsToBeConsidered ($obligationsToBeConsidered=true) | |
sets the flag wether obligations are to be considered or not | |
areObligationsToBeConsidered () | |
gets the flag wether obligations are to be considered or not | |
isAutosaveable () | |
getAdditionalContentEditingMode () | |
getter for additional content editing mode for this question | |
setAdditionalContentEditingMode ($additinalContentEditingMode) | |
setter for additional content editing mode for this question | |
isAdditionalContentEditingModePageObject () | |
isser for additional "pageobject" content editing mode | |
isValidAdditionalContentEditingMode ($additionalContentEditingMode) | |
returns the fact wether the passed additional content mode is valid or not | |
getValidAdditionalContentEditingModes () | |
getter for valid additional content editing modes | |
addQuestionChangeListener (ilQuestionChangeListener $listener) | |
getQuestionChangeListeners () | |
getHtmlUserSolutionPurifier () |
Data Fields | |
$gaps | |
$start_tag | |
$end_tag | |
$textgap_rating | |
$identical_scoring | |
$fixedTextLength | |
Data Fields inherited from assQuestion | |
const | ADDITIONAL_CONTENT_EDITING_MODE_DEFAULT = 'default' |
constant for additional content editing mode "default" | |
const | ADDITIONAL_CONTENT_EDITING_MODE_PAGE_OBJECT = 'pageobject' |
constant for additional content editing mode "pageobject" | |
$feedbackOBJ = null | |
$prevent_rte_usage = false | |
$selfassessmenteditingmode = false | |
$defaultnroftries = false |
Protected Member Functions | |
saveClozeGapItemsToDb ($gap, $key) | |
Save all items belonging to one cloze gap to the db. | |
saveClozeTextGapRecordToDb ($next_id, $key, $item, $gap) | |
Saves a gap-item record. | |
saveClozeSelectGapRecordToDb ($next_id, $key, $item, $gap) | |
Saves a gap-item record. | |
saveClozeNumericGapRecordToDb ($next_id, $key, $item, $gap) | |
Saves a gap-item record. | |
reworkWorkingData ($active_id, $pass, $obligationsAnswered) | |
Reworks the allready saved working data if neccessary. | |
Protected Member Functions inherited from assQuestion | |
deletePageOfQuestion ($question_id) | |
Deletes the page object of a question with a given ID. | |
onDuplicate ($originalParentId, $originalQuestionId, $duplicateParentId, $duplicateQuestionId) | |
Will be called when a question is duplicated (inside a question pool or for insertion in a test) | |
onSyncWithOriginal ($originalQuestionId, $duplicateQuestionId) | |
onCopy ($sourceParentId, $sourceQuestionId, $targetParentId, $targetQuestionId) | |
Will be called when a question is copied (into another question pool) | |
duplicateSuggestedSolutionFiles ($parent_id, $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) | |
duplicateQuestionHints ($originalQuestionId, $duplicateQuestionId) |
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 | _getOriginalId ($question_id) |
Returns the original id of a question. | |
static | originalQuestionExists ($questionId) |
static | _instanciateQuestion ($question_id) |
Creates an instance of a question with a given question id. | |
static | _instantiateQuestion ($question_id) |
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 | getGuiClassNameByQuestionType ($questionType) |
static | getObjectClassNameByQuestionType ($questionType) |
static | getFeedbackClassNameByQuestionType ($questionType) |
static | isCoreQuestionType ($questionType) |
static | includeCoreClass ($questionType, $withGuiClass) |
static | includePluginClass ($questionType, $withGuiClass) |
static | _getQuestionTypeName ($type_tag) |
Return the translation for a given question type tag. | |
static & | _instanciateQuestionGUI ($question_id) |
Creates an instance of a question gui with a given question id. | |
static | instantiateQuestionGUI ($a_question_id) |
Creates an instance of a question gui with a given question id. | |
static | lookupParentObjId ($questionId) |
ilDB $ilDB | |
static | lookupOriginalParentObjId ($originalQuestionId) |
returns the parent object id for given original question id (should be a qpl id, but theoretically it can be a tst id, too) | |
static | isObligationPossible ($questionId) |
returns boolean wether it is possible to set this question type as obligatory or not considering the current question configuration | |
Static Protected Member Functions inherited from assQuestion | |
static | doesSolutionRecordsExist ($activeId, $pass, $questionId) |
checks wether there are existing solution records for the given test active / pass and given 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 | |
$external_id = '' | |
$questionChangeListeners = array() | |
$processLocker |
Class for cloze tests.
Definition at line 20 of file class.assClozeTest.php.
assClozeTest::__construct | ( | $title = "" , |
|
$comment = "" , |
|||
$author = "" , |
|||
$owner = -1 , |
|||
$question = "" |
|||
) |
assClozeTest constructor
The constructor takes possible arguments an creates an instance of the assClozeTest 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 numerical ID to identify the owner/creator |
string | $question |
Reimplemented from assQuestion.
Definition at line 92 of file class.assClozeTest.php.
References assQuestion\$author, assQuestion\$comment, assQuestion\$owner, assQuestion\$question, assQuestion\$title, and setClozeText().
assClozeTest::addGapAnswer | ( | $gap_index, | |
$order, | |||
$answer | |||
) |
Sets the answer text of a gap with a given index.
The index of the first gap is 0, the index of the second gap is 1 and so on.
integer | $gap_index | A nonnegative index of the n-th gap |
integer | $order | The order of the answer text |
string | $answer | The answer text public |
Definition at line 674 of file class.assClozeTest.php.
References CLOZE_NUMERIC.
assClozeTest::addGapAtIndex | ( | $gap, | |
$index | |||
) |
Adds a ClozeGap object at a given index.
object | $gap | The gap object |
integer | $index | A nonnegative index of the n-th gap public |
Definition at line 755 of file class.assClozeTest.php.
assClozeTest::addGapText | ( | $gap_index | ) |
Adds a new answer text value to a text gap with a given index.
The index of the first gap is 0, the index of the second gap is 1 and so on.
integer | $gap_index | A nonnegative index of the n-th gap public |
Definition at line 733 of file class.assClozeTest.php.
assClozeTest::calculateReachedPoints | ( | $active_id, | |
$pass = NULL , |
|||
$returndetails = FALSE |
|||
) |
Returns the points, a learner has reached answering the question.
The points are calculated from the given answers.
public
integer | $active_id | |
integer | $pass | |
boolean | $returndetails | (deprecated !!) |
Reimplemented from assQuestion.
Definition at line 1150 of file class.assClozeTest.php.
References $pass, assQuestion\$points, $result, CLOZE_NUMERIC, CLOZE_SELECT, CLOZE_TEXT, assQuestion\getId(), getIdenticalScoring(), getMaximumGapPoints(), getNumericgapPoints(), assQuestion\getSolutionMaxPass(), and getTextgapPoints().
assClozeTest::cleanQuestiontext | ( | $text | ) |
Cleans cloze question text to remove attributes or tags from older ILIAS versions.
string | $text | The cloze question text |
Definition at line 134 of file class.assClozeTest.php.
Referenced by loadFromDb(), and setClozeText().
assClozeTest::clearGapAnswers | ( | ) |
Removes all answers from the gaps.
public
Definition at line 637 of file class.assClozeTest.php.
assClozeTest::copyObject | ( | $target_questionpool_id, | |
$title = "" |
|||
) |
Copies an assClozeTest object.
public
Definition at line 909 of file class.assClozeTest.php.
References assQuestion\$original_id, assQuestion\$title, assQuestion\_getOriginalId(), assQuestion\getId(), and assQuestion\getObjId().
assClozeTest::createGapsFromQuestiontext | ( | ) |
Create gap entries by parsing the question text.
public
Definition at line 577 of file class.assClozeTest.php.
References CLOZE_TEXT, and getClozeText().
Referenced by setClozeText().
assClozeTest::createNewOriginalFromThisDuplicate | ( | $targetParentId, | |
$targetQuestionTitle = "" |
|||
) |
Definition at line 941 of file class.assClozeTest.php.
References assQuestion\$id, and assQuestion\getObjId().
assClozeTest::deleteAnswerText | ( | $gap_index, | |
$answer_index | |||
) |
Deletes the answer text of a gap with a given index and an answer with a given order.
The index of the first gap is 0, the index of the second gap is 1 and so on.
integer | $gap_index | A nonnegative index of the n-th gap |
integer | $answer_index | The order of the answer text public |
Definition at line 1006 of file class.assClozeTest.php.
References deleteGap(), and updateClozeTextFromGaps().
assClozeTest::deleteGap | ( | $gap_index | ) |
Deletes a gap with a given index.
The index of the first gap is 0, the index of the second gap is 1 and so on.
integer | $gap_index | A nonnegative index of the n-th gap public |
Definition at line 1032 of file class.assClozeTest.php.
References getClozeText(), and getGaps().
Referenced by deleteAnswerText().
assClozeTest::duplicate | ( | $for_test = true , |
|
$title = "" , |
|||
$author = "" , |
|||
$owner = "" , |
|||
$testObjId = null |
|||
) |
Duplicates an assClozeTest.
public
Reimplemented from assQuestion.
Definition at line 852 of file class.assClozeTest.php.
References assQuestion\$author, assQuestion\$original_id, assQuestion\$owner, assQuestion\$title, assQuestion\_getOriginalId(), assQuestion\getId(), and assQuestion\getObjId().
assClozeTest::flushGaps | ( | ) |
Deletes all gaps without changing the cloze text.
public
Definition at line 489 of file class.assClozeTest.php.
assClozeTest::getAdditionalTableName | ( | ) |
Returns the name of the additional question data table in the database.
Reimplemented from assQuestion.
Definition at line 1467 of file class.assClozeTest.php.
Referenced by loadFromDb(), and saveAdditionalQuestionDataToDb().
assClozeTest::getAnswerTableName | ( | ) |
Returns the name of the answer table in the database.
Reimplemented from assQuestion.
Definition at line 1478 of file class.assClozeTest.php.
assClozeTest::getClozeText | ( | ) |
Returns the cloze text.
Definition at line 518 of file class.assClozeTest.php.
References assQuestion\$question.
Referenced by createGapsFromQuestiontext(), deleteGap(), isComplete(), and updateClozeTextFromGaps().
assClozeTest::getEndTag | ( | ) |
Returns the end tag of a cloze gap.
Definition at line 554 of file class.assClozeTest.php.
References $end_tag.
assClozeTest::getFixedTextLength | ( | ) |
Gets the fixed text length for all text fields in the cloze question.
Definition at line 1500 of file class.assClozeTest.php.
References $fixedTextLength.
Referenced by saveAdditionalQuestionDataToDb().
assClozeTest::getGap | ( | $gap_index = 0 | ) |
Returns the gap at a given index.
integer | $gap_index | A nonnegative index of the n-th gap |
Definition at line 695 of file class.assClozeTest.php.
Referenced by saveWorkingData().
assClozeTest::getGapCount | ( | ) |
Returns the number of gaps.
Definition at line 652 of file class.assClozeTest.php.
assClozeTest::getGaps | ( | ) |
Returns the array of gaps.
Definition at line 477 of file class.assClozeTest.php.
References $gaps.
Referenced by deleteGap(), isComplete(), setExportDetailsXLS(), toJSON(), and updateClozeTextFromGaps().
assClozeTest::getIdenticalScoring | ( | ) |
Returns the identical scoring status of the question.
Definition at line 1444 of file class.assClozeTest.php.
Referenced by calculateReachedPoints(), and saveAdditionalQuestionDataToDb().
assClozeTest::getMaximumGapPoints | ( | $gap_index | ) |
Returns the maximum points for a gap.
integer | $gap_index | The index of the gap |
Definition at line 1513 of file class.assClozeTest.php.
References assQuestion\$points.
Referenced by calculateReachedPoints().
assClozeTest::getMaximumPoints | ( | ) |
Returns the maximum points, a learner can reach answering the question.
public
Reimplemented from assQuestion.
Definition at line 802 of file class.assClozeTest.php.
References assQuestion\$points, CLOZE_NUMERIC, CLOZE_SELECT, and CLOZE_TEXT.
Referenced by isComplete().
assClozeTest::getNumericgapPoints | ( | $a_original, | |
$a_entered, | |||
$max_points, | |||
$lowerBound, | |||
$upperBound | |||
) |
Returns the points for a text gap and compares the given solution with the entered solution using the text gap rating options.
string | $a_original | The original (correct) text |
string | $a_entered | The text entered by the user |
integer | $max_points | The maximum number of points for the solution public |
Definition at line 1110 of file class.assClozeTest.php.
References $result.
Referenced by calculateReachedPoints().
assClozeTest::getQuestionType | ( | ) |
Returns the question type of the question.
Reimplemented from assQuestion.
Definition at line 1394 of file class.assClozeTest.php.
Referenced by toJSON().
assClozeTest::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 1537 of file class.assClozeTest.php.
assClozeTest::getStartTag | ( | ) |
Returns the start tag of a cloze gap.
Definition at line 530 of file class.assClozeTest.php.
References $start_tag.
assClozeTest::getTextgapPoints | ( | $a_original, | |
$a_entered, | |||
$max_points | |||
) |
Returns the points for a text gap and compares the given solution with the entered solution using the text gap rating options.
string | $a_original | The original (correct) text |
string | $a_entered | The text entered by the user |
integer | $max_points | The maximum number of points for the solution public |
Definition at line 1069 of file class.assClozeTest.php.
References $result, getTextgapRating(), 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().
assClozeTest::getTextgapRating | ( | ) |
Returns the rating option for text gaps.
Definition at line 1406 of file class.assClozeTest.php.
References $textgap_rating.
Referenced by getTextgapPoints(), and saveAdditionalQuestionDataToDb().
assClozeTest::isComplete | ( | ) |
Returns TRUE, if a cloze test is complete for use.
Reimplemented from assQuestion.
Definition at line 114 of file class.assClozeTest.php.
References assQuestion\getAuthor(), getClozeText(), getGaps(), getMaximumPoints(), and assQuestion\getTitle().
assClozeTest::loadFromDb | ( | $question_id | ) |
Loads a assClozeTest object from a database.
integer | $question_id | A unique key which defines the cloze test in the database |
Reimplemented from assQuestion.
Definition at line 148 of file class.assClozeTest.php.
References $result, ilRTE\_replaceMediaObjectImageSrc(), cleanQuestiontext(), CLOZE_NUMERIC, CLOZE_SELECT, CLOZE_TEXT, getAdditionalTableName(), assQuestion\setAdditionalContentEditingMode(), assQuestion\setAuthor(), assQuestion\setComment(), assQuestion\setEstimatedWorkingTime(), setFixedTextLength(), assQuestion\setId(), setIdenticalScoring(), assQuestion\setNrOfTries(), assQuestion\setObjId(), assQuestion\setOriginalId(), assQuestion\setOwner(), assQuestion\setPoints(), assQuestion\setQuestion(), setTextgapRating(), and assQuestion\setTitle().
|
protected |
Reworks the allready saved working data if neccessary.
protected
integer | $active_id | |
integer | $pass | |
boolean | $obligationsAnswered |
Reimplemented from assQuestion.
Definition at line 1383 of file class.assClozeTest.php.
assClozeTest::saveAdditionalQuestionDataToDb | ( | ) |
Saves the data for the additional data table.
This method uses the ugly DELETE-INSERT. Here, this does no harm.
Implements ilObjQuestionScoringAdjustable.
Definition at line 287 of file class.assClozeTest.php.
References getAdditionalTableName(), getFixedTextLength(), assQuestion\getId(), getIdenticalScoring(), and getTextgapRating().
Referenced by saveToDb().
assClozeTest::saveAnswerSpecificDataToDb | ( | ) |
Save all gaps to the database.
Implements ilObjAnswerScoringAdjustable.
Definition at line 267 of file class.assClozeTest.php.
References assQuestion\getId(), and saveClozeGapItemsToDb().
Referenced by saveToDb().
|
protected |
Save all items belonging to one cloze gap to the db.
$gap | |
$key |
Definition at line 319 of file class.assClozeTest.php.
References $query, CLOZE_NUMERIC, CLOZE_SELECT, CLOZE_TEXT, saveClozeNumericGapRecordToDb(), saveClozeSelectGapRecordToDb(), and saveClozeTextGapRecordToDb().
Referenced by saveAnswerSpecificDataToDb().
|
protected |
Saves a gap-item record.
$next_id | int Next Id for the record. |
$key | int Gap Id |
$item | gap Gap item data object. |
$gap | gap Gap data object. |
Definition at line 417 of file class.assClozeTest.php.
References assQuestion\getId().
Referenced by saveClozeGapItemsToDb().
|
protected |
Saves a gap-item record.
$next_id | int Next Id for the record. |
$key | int Gap Id |
$item | gap Gap item data object. |
$gap | gap Gap data object. |
Definition at line 382 of file class.assClozeTest.php.
References assQuestion\getId().
Referenced by saveClozeGapItemsToDb().
|
protected |
Saves a gap-item record.
$next_id | int Next Id for the record. |
$key | int Gap Id |
$item | gap Gap item data object. |
$gap | gap Gap data object. |
Definition at line 349 of file class.assClozeTest.php.
References assQuestion\getId().
Referenced by saveClozeGapItemsToDb().
assClozeTest::saveToDb | ( | $original_id = "" | ) |
Saves a assClozeTest object to a database.
int | string | $original_id | ID of the original question |
public
Reimplemented from assQuestion.
Definition at line 255 of file class.assClozeTest.php.
References assQuestion\$original_id, saveAdditionalQuestionDataToDb(), saveAnswerSpecificDataToDb(), and assQuestion\saveQuestionDataToDb().
assClozeTest::saveWorkingData | ( | $active_id, | |
$pass = NULL |
|||
) |
Saves the learners input of the question to the database.
public
integer | $active_id | Active id of the user |
integer | $pass | Test pass |
Reimplemented from assQuestion.
Definition at line 1294 of file class.assClozeTest.php.
References $_POST, $ilUser, $pass, ilObjAssessmentFolder\_enabledAssessmentLogging(), ilObjAssessmentFolder\_getLogLanguage(), ilObjTest\_getPass(), CLOZE_NUMERIC, CLOZE_SELECT, getGap(), assQuestion\getId(), assQuestion\getProcessLocker(), assQuestion\logAction(), and ilUtil\stripSlashes().
assClozeTest::setClozeText | ( | $cloze_text = "" | ) |
Evaluates the text gap solutions from the cloze text.
A single or multiple text gap solutions could be entered using the following syntax in the cloze text: solution1 [, solution2, ..., solutionN] enclosed in the text gap selector gap[]
string | $cloze_text | The cloze text with all gaps and gap gaps public |
Definition at line 503 of file class.assClozeTest.php.
References cleanQuestiontext(), and createGapsFromQuestiontext().
Referenced by __construct().
assClozeTest::setEndTag | ( | $end_tag = "[/gap]" | ) |
Sets the end tag of a cloze gap.
string | $end_tag | The end tag for a cloze gap public |
Definition at line 566 of file class.assClozeTest.php.
References $end_tag.
assClozeTest::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 1554 of file class.assClozeTest.php.
References $pass, ilExcelUtils\_convert_text(), CLOZE_NUMERIC, CLOZE_SELECT, CLOZE_TEXT, getGaps(), assQuestion\getSolutionValues(), and assQuestion\getTitle().
assClozeTest::setFixedTextLength | ( | $a_text_len | ) |
Sets a fixed text length for all text fields in the cloze question.
integer | $a_text_len | The text field length public |
Definition at line 1489 of file class.assClozeTest.php.
Referenced by loadFromDb().
assClozeTest::setGapAnswerLowerBound | ( | $gap_index, | |
$order, | |||
$bound | |||
) |
Sets the lower bound of a gap with a given index and an answer with a given order.
The index of the first gap is 0, the index of the second gap is 1 and so on.
integer | $gap_index | A nonnegative index of the n-th gap |
integer | $order | The order of the answer text |
string | $answer | The lower bound of the answer public |
Definition at line 770 of file class.assClozeTest.php.
assClozeTest::setGapAnswerPoints | ( | $gap_index, | |
$order, | |||
$points | |||
) |
Sets the points of a gap with a given index and an answer with a given order.
The index of the first gap is 0, the index of the second gap is 1 and so on.
integer | $gap_index | A nonnegative index of the n-th gap |
integer | $order | The order of the answer text |
string | $answer | The points of the answer public |
Definition at line 717 of file class.assClozeTest.php.
References assQuestion\$points.
assClozeTest::setGapAnswerUpperBound | ( | $gap_index, | |
$order, | |||
$bound | |||
) |
Sets the upper bound of a gap with a given index and an answer with a given order.
The index of the first gap is 0, the index of the second gap is 1 and so on.
integer | $gap_index | A nonnegative index of the n-th gap |
integer | $order | The order of the answer text |
string | $answer | The upper bound of the answer public |
Definition at line 788 of file class.assClozeTest.php.
assClozeTest::setGapShuffle | ( | $gap_index = 0 , |
|
$shuffle = 1 |
|||
) |
Sets the shuffle state of a gap with a given index.
The index of the first gap is 0, the index of the second gap is 1 and so on.
integer | $index | A nonnegative index of the n-th gap |
integer | $shuffle | Turn shuffle on (=1) or off (=0) public |
Definition at line 623 of file class.assClozeTest.php.
References assQuestion\$shuffle.
assClozeTest::setGapType | ( | $gap_index, | |
$gap_type | |||
) |
Set the type of a gap with a given index.
private
Definition at line 606 of file class.assClozeTest.php.
assClozeTest::setIdenticalScoring | ( | $a_identical_scoring | ) |
Sets the identical scoring option for cloze questions.
boolean | $a_identical_scoring | The identical scoring option for cloze questions |
Definition at line 1456 of file class.assClozeTest.php.
Referenced by loadFromDb().
assClozeTest::setStartTag | ( | $start_tag = "[gap]" | ) |
Sets the start tag of a cloze gap.
string | $start_tag | The start tag for a cloze gap public |
Definition at line 542 of file class.assClozeTest.php.
References $start_tag.
assClozeTest::setTextgapRating | ( | $a_textgap_rating | ) |
Sets the rating option for text gaps.
string | $a_textgap_rating | The rating option for text gaps |
Definition at line 1418 of file class.assClozeTest.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().
assClozeTest::toJSON | ( | ) |
Returns a JSON representation of the question.
Definition at line 1589 of file class.assClozeTest.php.
References $gaps, $mobs, $result, ilObjMediaObject\_getMobsOfObject(), CLOZE_NUMERIC, assQuestion\formatSAQuestion(), getGaps(), assQuestion\getId(), assQuestion\getNrOfTries(), assQuestion\getQuestion(), getQuestionType(), assQuestion\getShuffle(), and assQuestion\getTitle().
assClozeTest::updateClozeTextFromGaps | ( | ) |
Updates the gap parameters in the cloze text from the form input.
private
Definition at line 981 of file class.assClozeTest.php.
References getClozeText(), getGaps(), and assQuestion\prepareTextareaOutput().
Referenced by deleteAnswerText().
assClozeTest::$end_tag |
Definition at line 47 of file class.assClozeTest.php.
Referenced by getEndTag(), and setEndTag().
assClozeTest::$fixedTextLength |
Definition at line 77 of file class.assClozeTest.php.
Referenced by getFixedTextLength().
assClozeTest::$gaps |
Definition at line 29 of file class.assClozeTest.php.
assClozeTest::$identical_scoring |
Definition at line 70 of file class.assClozeTest.php.
assClozeTest::$start_tag |
Definition at line 38 of file class.assClozeTest.php.
Referenced by getStartTag(), and setStartTag().
assClozeTest::$textgap_rating |
Definition at line 59 of file class.assClozeTest.php.
Referenced by getTextgapRating().