//button "export to excel"
echo '<div align="center">';
$export_button_link = 'analysis_to_excel.php';
- $export_button_options = array('sesskey'=>$USER->sesskey, 'id'=>$id);
+ $export_button_options = array('sesskey'=>$USER->sesskey, 'id'=>$id, 'coursefilter'=>$coursefilter);
$export_button_label = get_string('export_to_excel', 'feedback');
print_single_button($export_button_link, $export_button_options, $export_button_label, 'post');
echo '</div>';
require_once('easy_excel.php');
$id = required_param('id', PARAM_INT); //the POST dominated the GET
+ $coursefilter = optional_param('coursefilter', '0', PARAM_INT);
$formdata = data_submitted();
//print the analysed sheet
////////////////////////////////////////////////////////////////////////
//get the completeds
- $completedscount = feedback_get_completeds_group_count($feedback, $mygroupid);
+ $completedscount = feedback_get_completeds_group_count($feedback, $mygroupid, $coursefilter);
if($completedscount > 0){
//write the count of completeds
$rowOffset1++;
$itemclass = 'feedback_item_'.$item->typ;
//get the instance of the item-class
$itemobj = new $itemclass();
- $rowOffset1 = $itemobj->excelprint_item($worksheet1, $rowOffset1, $item, $mygroupid);
+ $rowOffset1 = $itemobj->excelprint_item($worksheet1, $rowOffset1, $item, $mygroupid, $coursefilter);
}
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
//get the completeds
- $completeds = feedback_get_completeds_group($feedback, $mygroupid);
+ $completeds = feedback_get_completeds_group($feedback, $mygroupid, $coursefilter);
//important: for each completed you have to print each item, even if it is not filled out!!!
//therefor for each completed we have to iterate over all items of the feedback
//this is done by feedback_excelprint_detailed_items
* @param int $groupid
* @return mixed array of found completeds otherwise false
*/
-function feedback_get_completeds_group($feedback, $groupid = false) {
+function feedback_get_completeds_group($feedback, $groupid = false, $courseid = false) {
global $CFG, $DB;
if (intval($groupid) > 0){
return false;
}
} else {
- if ($values = $DB->get_records('feedback_completed', array('feedback'=>$feedback->id))) {
- return $values;
- } else {
- return false;
+ if($courseid) {
+ $query = "SELECT DISTINCT fbc.*
+ FROM {feedback_completed} AS fbc, {feedback_value} AS fbv
+ WHERE fbc.id = fbv.completed
+ AND fbc.feedback = ?
+ AND fbv.course_id = ?
+ ORDER BY random_response";
+ if ($values = $DB->get_records_sql($query, array($feedback->id, $courseid))) {
+ return $values;
+ } else {
+ return false;
+ }
+ }else {
+ if ($values = $DB->get_records('feedback_completed', array('feedback'=>$feedback->id))) {
+ return $values;
+ } else {
+ return false;
+ }
}
}
}