Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Calculated question back to quiz button: Difference between revisions

From MoodleDocs
No edit summary
Line 1: Line 1:
==Controlling the display of the '''Back to quiz editing''' button==
==Controlling the display of the '''Back to quiz editing''' button==
The question\type\datasetdependent\datasetitems.php which code the display of the third and last form of the creation of a calculated question have been modified so that when there is no data the '''Back to quiz editing''' button does not appears items but instead there is a warning.
The question\type\datasetdependent\datasetitems.php which code the display of the third and last form of the creation of a calculated question have been modified so that when there is no data the '''Back to quiz editing''' button does not appears items but instead there is a warning.
[[Image:nobackbutton.jpg]]
[[Image:nobackbutton.jpg]]
When there is at least one set of data items, the '''Back to quiz editing''' button appears.
 
[[Image:Example.jpg]]
When the user as clicked once on the '''Add''' button,
#the question parameters are save.
#the dataset definitions are updated
#the first data items set is saved
 
and a '''valid''' but perhaps incomplete calculated question is created.
 
== The '''Back to quiz editing''' button appears.==
 
[[Image:backtoquizbutton.jpg]]
 
the following code in question\type\datasetdependent\datasetitems.php do the trick.
    $strdataitemneed = get_string('dataitemneed', 'quiz');
    if (!empty($table->data)) {
        echo "<form method=\"post\" action=\"question.php\">
            <input type=\"hidden\" name=\"id\" value=\"$question->id\"/>
            <input type=\"hidden\" name=\"category\" value=\"$question->category\"/>
            <input type=\"hidden\" name=\"qtype\" value=\"$question->qtype\"/>
            <input type=\"hidden\" name=\"sesskey\" value=\"".sesskey()."\"/>
            <input type=\"hidden\" name=\"wizardpage\" value=\"datasetitems\"/>";
 
        echo " ".$datatableoption."<\p>";
   
        print_table($table); // this prints the remove button and the actual sets of data items
        echo "</form>";      // this form returns to datasetitems.php to remove one set of  data items
 
        echo "<center><br /><br /><form method=\"post\" action=\"question.php\">
          <input type=\"hidden\" name=\"id\" value=\"$question->id\"/>
          <input type=\"hidden\" name=\"category\" value=\"$question->category\"/>
          <input type=\"hidden\" name=\"qtype\" value=\"$question->qtype\"/>
          <input type=\"hidden\" name=\"sesskey\" value=\"".sesskey()."\"/>
          <input type=\"hidden\" name=\"wizardpage\" value=\"datasetitems\"/>
          <input type=\"submit\" name=\"backtoquiz\" value=\"$strbacktoquiz\">
          </form></center>\n";// this form returns to datasetitems.php and exits to quiz edition
 
    } else {
          notify( $strdataitemneed );//
    }
 
in /;lib/quiz.php
    $string['dataitemneed'] = 'You need to add at least one set of data items to get a valid question';

Revision as of 04:27, 14 June 2006

Controlling the display of the Back to quiz editing button

The question\type\datasetdependent\datasetitems.php which code the display of the third and last form of the creation of a calculated question have been modified so that when there is no data the Back to quiz editing button does not appears items but instead there is a warning.

nobackbutton.jpg

When the user as clicked once on the Add button,

  1. the question parameters are save.
  2. the dataset definitions are updated
  3. the first data items set is saved

and a valid but perhaps incomplete calculated question is created.

The Back to quiz editing button appears.

File:backtoquizbutton.jpg

the following code in question\type\datasetdependent\datasetitems.php do the trick.

   $strdataitemneed = get_string('dataitemneed', 'quiz');
   if (!empty($table->data)) {
       echo "<form method=\"post\" action=\"question.php\">
           <input type=\"hidden\" name=\"id\" value=\"$question->id\"/>
           <input type=\"hidden\" name=\"category\" value=\"$question->category\"/>
           <input type=\"hidden\" name=\"qtype\" value=\"$question->qtype\"/>
           <input type=\"hidden\" name=\"sesskey\" value=\"".sesskey()."\"/>
           <input type=\"hidden\" name=\"wizardpage\" value=\"datasetitems\"/>";
       echo " ".$datatableoption."<\p>";
   
       print_table($table); // this prints the remove button and the actual sets of data items
       echo "</form>";      // this form returns to datasetitems.php to remove one set of  data items
  

echo "



<form method=\"post\" action=\"question.php\">
         <input type=\"hidden\" name=\"id\" value=\"$question->id\"/>
         <input type=\"hidden\" name=\"category\" value=\"$question->category\"/>
         <input type=\"hidden\" name=\"qtype\" value=\"$question->qtype\"/>
         <input type=\"hidden\" name=\"sesskey\" value=\"".sesskey()."\"/>
         <input type=\"hidden\" name=\"wizardpage\" value=\"datasetitems\"/>
         <input type=\"submit\" name=\"backtoquiz\" value=\"$strbacktoquiz\">
</form>

\n";// this form returns to datasetitems.php and exits to quiz edition

   } else {
         notify( $strdataitemneed );//
   }
in /;lib/quiz.php 
   $string['dataitemneed'] = 'You need to add at least one set of data items to get a valid question';