function find_closest($question, $currentanswer, $correct_response = false, $hintadded = false)
{
    global $CFG;
    // JR dec 2011 moved get alternate answers to new function
    $alternateanswers = get_alternateanswers($question);
    $alternatecorrectanswers = array();
    // JR jan 2012 changed contents of alternateanswers
    if (isset($question->id)) {
        $qid = $question->id;
        if (!isset($SESSION->qtype_regexp_question->alternatecorrectanswers[$qid])) {
            foreach ($alternateanswers as $key => $alternateanswer) {
                foreach ($alternateanswer['answers'] as $alternate) {
                    $alternatecorrectanswers[] = $alternate;
                }
            }
            $SESSION->qtype_regexp_question->alternatecorrectanswers[$qid] = $alternatecorrectanswers;
        }
    }
    // testing ignorecase
    $ignorecase = 'i';
    if ($question->usecase) {
        $ignorecase = '';
    }
    // only use ishint value if hint button has been clicked
    $ishint = $question->usehint * $hintadded;
    // find closest answer matching student response
    if (!isset($currentanswer) && !$correct_response) {
        return null;
    }
    if ($correct_response) {
        return $alternatecorrectanswers;
    }
    $closest = get_closest($currentanswer, $alternatecorrectanswers, $ignorecase, $ishint);
    if ($closest[2] == 'complete') {
        return $closest;
    }
    // give first character of firstcorrectanswer to student (if option usehint for this question)
    // TODO JR maybe not?
    /*if ($closest[0] == '' && ($question->usehint == true) && $closest[2] == 'nil' ) {
        $closest[0] = $textlib->substr($firstcorrectanswer, 0, 1);
    }*/
Exemple #2
0
    echo "<bR>mwiki while loop: {$ttime}<br>";
    echo "iterations: {$i}<br>";
    echo "<br>--------mediawiki()--------<br>";
    if ($i > 4) {
        // =>redirected more than 4 times
        return false;
    } else {
        if (!isset($arrXml['query']) || isset($arrXml['query']['pages']['page']['@attributes']['missing']) || $arrXml['query']['pages']['page'] == '') {
            return false;
        } else {
            return $arrXml['query']['pages']['page'];
        }
    }
}
echo "<h1>wikihow:" . $req . "</h1>";
$e = get_closest($spell_checked);
$ret = wikihow($e);
$content = $ret['revisions']['rev'];
$out = get_content($content);
//file_put_contents("out.txt",$out);
// echo "<br>------------<br>";
//echo $out;
if ($out) {
    $current_file = "/how/{$global_id}";
    $files = DATA_PATH . "/how/{$global_id}";
    @unlink($files);
    file_put_contents($files, $out);
    $wikihow_return = $out;
    echo "<br>length here: " . strlen($wikihow_return) . '<br>';
} else {
    $wikihow_return = '';