Flow for processProblem
| 1. Obtain information from the submitted form. |
| 2. Verify that the user, psvn(problem set version number) and key are consistent. |
| 3. Check
the dates and permissions and determine the various displayed buttons
and information for users with that level of permission. |
| 1. Determine
whether the source template is to be obtained from the HTML form (when
using on-line editing) or to be read from the hard disk. |
| 2. Determine whether or not to save the HTML form source to the disk |
| 3. Determine
whether or not the source is to be saved in the OUTGOING form (so it
can be edited on line) -- This is permissible only for users with
professor privileges. |
| 1. The bulk of the work in rendering the problem is done by PGtranslator.pm. Follow the previous link for details. |
| 6. Build the preview page and exit if in preview mode. |
| 7. If not in preview mode the entire problem is graded. Again the bulk of the work is done by PGtranslator.pm. |
| 8. The new problem state (grade, number of attempts, etc. ) is recorded. |
| 9. A few of the final error and reporting messages are constructed. |
| 10. The HTML text is printed to the standard output. |
| 5. Submit button and show answers check box |
| 6. Hidden variables, user, course, key, source (for professors ), etc. |
<| Post or View Comments |> |