Ejemplo n.º 1
0
function vpl_user_complete($course, $user, $mod, $vpl)
{
    require_once 'vpl_submission.class.php';
    //TODO Print a detailed report of what a user has done with a given particular instance
    //Search submisions for $user $instance
    $vpl = new mod_vpl(null, $vpl->id);
    $sub = $vpl->last_user_submission($user->id);
    if (!$sub) {
        $return = null;
    } else {
        $submission = new mod_vpl_submission($vpl, $sub);
        $submission->print_info(true);
        $submission->print_grade(true);
    }
    return true;
}
Ejemplo n.º 2
0
$vpl->network_check();
$vpl->password_check();
$instance = $vpl->get_instance();
$manager = $vpl->has_capability(VPL_MANAGE_CAPABILITY);
$grader = $vpl->has_capability(VPL_GRADE_CAPABILITY);
//This code allow to edit previous versions (only managers)
if ($subid && $vpl->has_capability(VPL_MANAGE_CAPABILITY)) {
    $parms = array('id' => $subid, 'vpl' => $instance->id, 'userid' => $userid);
    $res = $DB->get_records('vpl_submissions', $parms);
    if (count($res) == 1) {
        $lastsub = $res[$subid];
    } else {
        $lastsub = false;
    }
} else {
    $lastsub = $vpl->last_user_submission($userid);
}
$options = array();
$options['id'] = $id;
$options['restrictededitor'] = $instance->restrictededitor && !$grader;
$options['save'] = !$instance->example;
$options['run'] = $instance->run || $manager;
$options['debug'] = $instance->debug || $manager;
$options['evaluate'] = $instance->evaluate || $manager;
$options['example'] = true && $instance->example;
$linkuserid = $copy ? $USER->id : $userid;
$options['ajaxurl'] = "edit.json.php?id={$id}&userid={$linkuserid}&action=";
$options['download'] = "../views/downloadsubmission.php?id={$id}&userid={$linkuserid}";
//Get files
$files = array();
$req_fgm = $vpl->get_required_fgm();
Ejemplo n.º 3
0
 $vpl = new mod_vpl($id);
 $userid = optional_param('userid', FALSE, PARAM_INT);
 $submissionid = optional_param('submissionid', FALSE, PARAM_INT);
 if (!$vpl->has_capability(VPL_GRADE_CAPABILITY)) {
     $userid = FALSE;
     $submissionid = FALSE;
 }
 //Read record
 if ($userid && $userid != $USER->id) {
     //Grader
     $vpl->require_capability(VPL_GRADE_CAPABILITY);
     $grader = TRUE;
     if ($submissionid) {
         $subinstance = $DB->get_record('vpl_submissions', array('id' => $submissionid));
     } else {
         $subinstance = $vpl->last_user_submission($userid);
     }
 } else {
     //Download own submission
     $vpl->require_capability(VPL_VIEW_CAPABILITY);
     $userid = $USER->id;
     $grader = FALSE;
     if ($submissionid && $vpl->has_capability(VPL_GRADE_CAPABILITY)) {
         $subinstance = $DB->get_record('vpl_submissions', array('id' => $submissionid));
     } else {
         $subinstance = $vpl->last_user_submission($userid);
     }
     $vpl->password_check();
 }
 //Check consistence
 if (!$subinstance) {
Ejemplo n.º 4
0
                                $user_complete = $mod->modname."_user_complete";
                                $image = $OUTPUT->pix_icon('icon', $mod->modfullname, 'mod_'.$mod->modname, array('class'=>'icon'));
                                echo "<h4>$image $mod->modfullname: ".format_string($instance->name,true).
                                     "</h4>";

                               // echo '<a href=\"$CFG->wwwroot/mod/$mod->modname/view.php?id=$mod->id\">".
                            //format_string($instance->name,true)."</a>';

                                ob_start();

                                echo "<ul>";
                                if (function_exists($user_complete)) {
                                    //$user_complete($course, $user, $mod, $instance);
                                    if($mod->modname=='vpl'){
                                        $vpl = new mod_vpl(null,$instance->id);
                                        $sub = $vpl->last_user_submission($user->id);
                                        if(!$sub) {
                                            $return = null;
                                        }
                                        else{
                                            $submission = new mod_vpl_submission($vpl,$sub);
                                            $submission->student_print_info(true);
                                            $submission->print_grade(true);
                                        }
                                    }
                                    else{
                                        $user_complete($course, $user, $mod, $instance);
                                    }
                                } else {
                                    //echo 'modname='.$mod->modname;
                                    echo report_outline_user_complete($user->id, $cmid, $mod->modname, $instance->id);