file.php 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <?php
  2. // This file is part of the Sloodle project (www.sloodle.org)
  3. /**
  4. * Displays summary information about a Sloodle Object assignment submission.
  5. *
  6. * @package sloodleprimdrop
  7. * @copyright Copyright (c) 2008 Sloodle (various contributors)
  8. * @license http://www.gnu.org/licenses/gpl-3.0.html GNU GPL v3
  9. *
  10. * @contributor (various Moodle guys!)
  11. * @contributor Peter R. Bloomfield
  12. */
  13. /** Includes the Moodle configuration */
  14. require_once("../../../../config.php");
  15. /** Includes the assignment library. */
  16. require_once("../../lib.php");
  17. /** Includes the Sloodle Object assignment type. */
  18. require_once("assignment.class.php");
  19. $id = required_param('id', PARAM_INT); // Course Module ID
  20. $userid = required_param('userid', PARAM_INT); // User ID
  21. if (! $cm = get_coursemodule_from_id('assignment', $id)) {
  22. error("Course Module ID was incorrect");
  23. }
  24. if (! $assignment = sloodle_get_record("assignment", "id", $cm->instance)) {
  25. error("Assignment ID was incorrect");
  26. }
  27. if (! $course = sloodle_get_record("course", "id", $assignment->course)) {
  28. error("Course is misconfigured");
  29. }
  30. if (! $user = sloodle_get_record("user", "id", $userid)) {
  31. error("User is misconfigured");
  32. }
  33. require_login($course->id, false, $cm);
  34. if (($USER->id != $user->id) && !has_capability('mod/assignment:grade', get_context_instance(CONTEXT_MODULE, $cm->id))) {
  35. error("You can not view this assignment");
  36. }
  37. if ($assignment->assignmenttype != 'sloodleobject') {
  38. error("Incorrect assignment type");
  39. }
  40. $assignmentinstance = new assignment_sloodleobject($cm->id, $assignment, $cm, $course);
  41. if ($submission = $assignmentinstance->get_submission($user->id)) {
  42. print_header(fullname($user,true).': '.$assignment->name);
  43. // Get the Sloodle submission data
  44. $sloodle_submission = new assignment_sloodleobject_submission();
  45. $sloodle_submission->load_submission($submission);
  46. print_simple_box_start('center', '', '', '', 'generalbox', 'dates');
  47. echo '<table>';
  48. if ($assignment->timedue) {
  49. echo '<tr><td class="c0">'.get_string('duedate','assignment').':</td>';
  50. echo ' <td class="c1">'.userdate($assignment->timedue).'</td></tr>';
  51. }
  52. echo '<tr><td class="c0">'.get_string('lastedited').':</td>';
  53. echo ' <td class="c1">'.userdate($submission->timemodified);
  54. // Show the number of prims
  55. $num_prims = $sloodle_submission->num_prims;
  56. if ($num_prims == 0) $num_prims = '?';
  57. echo ' ('.get_string('numprims', 'sloodle', $num_prims).')</td></tr>';
  58. echo '</table>';
  59. print_simple_box_end();
  60. // Display the summary info
  61. print_simple_box($sloodle_submission->text_summary(), 'center', '100%');
  62. close_window_button();
  63. print_footer('none');
  64. } else {
  65. print_string('emptysubmission', 'assignment');
  66. }
  67. ?>