| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 | 
							- <?php
 
- function get_comments($cmid, $id){
 
-   global $DB, $USER, $CFG;
 
-   $tp = $CFG->prefix; // gets moodle tables prefix, not everyone uses mdl_
 
-   $sql = "
 
-           SELECT gf.id gf_id,
 
-                 gf.grade,
 
-                 gf.comment gf_comment,
 
-                 gf.contextid gf_contextid,
 
-                 gf.fileid gf_fileid,
 
-                 gf.name gf_name,
 
-                 gs.name gs_name,
 
-                 gs.description gs_description,
 
-                 gst.name gst_name,
 
-                 gst.description gst_description,
 
-                 fileid
 
-             FROM ".$tp."gradeimporter_feedback gf
 
-             JOIN ".$tp."gradeimporter_submission gs
 
-               ON gf.submissionid = gs.id
 
-             JOIN ".$tp."gradeimporter_submissiontype gst
 
-               ON gs.type = gst.id
 
-           WHERE gf.studentid = ?";
 
-   $records = $DB->get_records_sql($sql, array('studentid' => $USER->id));
 
-   $data = array();
 
-   if (count($records)) {
 
-     foreach ($records as $value) {
 
-       if (!array_key_exists($value->gst_name, $data)) $data[$value->gst_name] = array();
 
-       $fileurl = buildurl($cmid, $value->gf_id, $value->gf_name);
 
-       $data[$value->gst_name][] = array($value->gs_name, $value->grade, $value->gf_comment, $fileurl);
 
-     }
 
-   }
 
-   return $data;
 
- }
 
- function get_teacher_view($cmid, $gradeimporterid, $enrolledusers){
 
-   global $DB, $CFG;
 
-   
 
-   $tp = $CFG->prefix; // gets moodle tables prefix, not everyone uses mdl_
 
-   $table = new html_table();
 
-   $table->align = array('center');
 
-   $table->attributes = array('class'=>'generaltable mod_index');
 
-   //creates table head
 
-   $subrow = new html_table_row();
 
-   
 
-   $cell = new html_table_cell(get_string('nameCol', 'gradeimporter'));
 
-   $cell->style = "border:1px solid black";
 
-   $cell->colspan = 1;
 
-   $subrow->cells[] = $cell;
 
-   $submissionsSQL = "SELECT id, name 
 
-                       FROM ".$tp."gradeimporter_submission 
 
-                       WHERE gradeimporterid = $gradeimporterid
 
-                       ORDER BY id";
 
-   $submissions = $DB->get_records_sql($submissionsSQL);
 
-   foreach ($submissions as $submission){
 
-     $subname = editSub($submission->name, $gradeimporterid, $cmid, $submission->id);
 
-     $cell = new html_table_cell($subname);
 
-     $cell->colspan = 2;
 
-     $cell->style = "border:1px solid black";
 
-     $subrow->cells[] = $cell;
 
-     //adds 2 align, one for grade and another to the file
 
-     $table->align[] = 'center';
 
-     $table->align[] = 'center';
 
-   }
 
-   $table->data[] = $subrow;
 
-   
 
-   //all submissions names are on the table
 
-   
 
-   $sql = " SELECT gs.id gs_id,
 
-                   gs.gradeimporterid gs_gradeimporterid,
 
-                   gs.type gs_type,
 
-                   gs.name gs_name, 
 
-                   gst.name  gst_name,
 
-                   gf.id gf_id,
 
-                   gf.studentid  gf_studentid,
 
-                   gf.grade  gf_grade,
 
-                   gf.fileid gf_fileid,
 
-                   gf.contextid  gf_contextid,
 
-                   gf.name gf_name,
 
-                   user.firstname  user_firstname,
 
-                   user.lastname user_lastname
 
-                   FROM ".$tp."gradeimporter_feedback gf
 
-                   JOIN ".$tp."user user
 
-                       ON user.id = gf.studentid
 
-                   JOIN ".$tp."gradeimporter_submission gs
 
-                       ON gs.id = gf.submissionid
 
-                   JOIN ".$tp."gradeimporter_submissiontype gst
 
-                       ON gst.id = gs.type
 
-                   WHERE gs.gradeimporterid = $gradeimporterid
 
-                   ORDER BY user.firstname, user.lastname, gs.id, gf.id";
 
-   $records = $DB->get_recordset_sql($sql);
 
-   
 
-   $usersList = array();
 
-   foreach ($enrolledusers as $user){
 
-     $usersList[$user->id] = array('name'=>$user->firstname." ".$user->lastname);
 
-   }
 
-   //ksort($usersList);
 
-   foreach ($records as $record){
 
-     $url = buildurl($cmid, $record->gf_id, $record->gf_name);
 
-     $usersList[$record->gf_studentid][$record->gs_id] = array('grade'=>$record->gf_grade, 'file'=>$url);
 
-   }
 
-   
 
-   foreach($usersList as $user){
 
-     $row = new html_table_row();
 
-     $cell = new html_table_cell($user['name']);
 
-     $cell->style = "border:1px solid black";
 
-     $row->cells[] = $cell;
 
-     foreach ($submissions as $submission){
 
-       if (array_key_exists($submission->id, $user)){
 
-         $url = $user[$submission->id]['file'];
 
-         $grade = $user[$submission->id]['grade'];
 
-       } else{
 
-         $url = '-';
 
-         $grade = '-';
 
-       }
 
-       $cell = new html_table_cell ($grade);
 
-       $cell->style = "border:1px solid black; border-right:0";
 
-       $row->cells[] = $cell;
 
-       $cell = new html_table_cell ($url);
 
-       $cell->style = "border:1px solid black; border-left:0";
 
-       $row->cells[] = $cell;
 
-     }
 
-     $table->data[] = $row;
 
-   }
 
-   echo html_writer::table($table);
 
- }
 
- require_once($CFG->libdir . '/filelib.php');
 
- require_once("$CFG->libdir/csvlib.class.php");
 
- function buildurl($cmid, $fileid, $filename){
 
-   $fileurl = new moodle_url("/mod/gradeimporter/view.php", array('id' => $cmid, 'fileid' => $fileid, 'filename' => $filename, 'action' => 1));
 
-   return "<a href=$fileurl target=_blank> $filename</a>";
 
- }
 
- function editSub($subname, $gradeimporterid, $cmid, $subid){
 
-   $url = new moodle_url("/mod/gradeimporter/submission.php", array('id'=>$gradeimporterid, 'cmid'=>$cmid, 'subid'=>$subid, 'update'=>1));
 
-   return $subname.'<a href='.$url.' target="_blank"><i class="icon fa fa-pencil fa-fw"  title="'.get_string('editSub','gradeimporter').'" aria-label="'.get_string('editSub','gradeimporter').'"></i>';
 
- }
 
- function exportCSV($context){
 
-   $enrolledusers = get_enrolled_users($context, 'mod/gradeimporter:student');
 
-   $header = array('id', 'name', 'email', 'grade', 'comment', 'file');
 
-   $csvexport = new csv_export_writer();
 
-   $csvexport->set_filename('config');
 
-   $csvexport->add_data($header);
 
-   foreach ($enrolledusers as $value) {
 
-     $name = $value->firstname . ' ' . $value->lastname;
 
-     $studententry = array($value->id, $name, $value->email, '', '', '');
 
-     $csvexport->add_data($studententry);
 
-   }
 
-   $csvexport->download_file();
 
-   //$dlfile = $csvexporter->download_array('config', $data);
 
- }
 
 
  |