Example #1
0
            switch($mid){
                case 1: section_activities($secid,$cid);break;
                case 2: set_activity_status($aid);break;
                case 3: set_activity_completiondate($aid);break;
                case 4: get_activity_status();break;
				case 5: get_student_sections($cid);break;
				case 6: add_student_to_watchlist($cid,$uid);break;
				case 7: get_loggedin_users_by_section($section);break;
				case 8: get_user_quiz_grade($aid,$uid);break;
				case 9: get_user_quiz_instance($aid);break;
				case 10: get_itemid_from_grade_table($aid,$am_type_name,$cid);break;
				case 11: get_course_absenties($cid);
				case 12: set_course_absenties($cid,$aid);
				case 13: getCntofAbsentActivities($sid,$cid);
				case 14:getStudentAttandanceofActivity($sid,$aid,$cid);
            }

            function section_activities($secid,$cid){
                $course=get_course($cid);
                $modinfo = get_fast_modinfo($course);
                $mods = $modinfo->get_cms();
                $sections = $modinfo->get_section_info_all();
                $sec_array = get_sections($sections);
                $arr = array();
                $cnt=0;

            //preparing an array which contains sections and activities
                foreach ($mods as $mod) {
                    $arr[$cnt++]=array('secid'=>$mod->section,'modid'=>$mod->id,'modname'=>$mod->name,'modcontent'=>$mod->content);
                    //print_r($mod->name);
Example #2
0
function getStudentReportbyCourse($studentid,$courseid){
global $DB;
    $course = $DB->get_record('course', array('id' => $courseid), '*', MUST_EXIST);
    $modinfo = get_fast_modinfo($course);
    $mods = $modinfo->get_cms();
    $sections = $modinfo->get_section_info_all();

    $html=" <h4 style='text-align:center;'>$course->fullname Report</h4>";
    $html .= "<table class='generaltable reporttab' id='cours' width='100%'>
            <thead>
            <tr>
                <!--<th style='width: 10%;'>Select</th>-->
                <th >Topics</th>
                <th >Activity</th>
                <th >Completed On</th>
                <th >Grade</th>
                <th >Submissions</th>
                <th >Attendance</th>
            </tr>
            </thead>
            <tbody id='cbody'>";

    $arr = array();
    $main_array = array();
    $arr = array();
    $main_array = array();
    foreach ($sections as $sec) {
        $main_array[$sec->id] = $sec->name;
    }
    $arr = array();


    foreach ($mods as $mod) {

        // var_dump($mod);
        //$attandance=getStudentAttandanceofActivity($studentid,$aid,$courseid)
        if ($main_array[$mod->section] == "")
            continue;
        $arr1[$mod->section][$mod->id] =array("actid"=>$mod->id,"name"=>$mod->modname,"modname"=>get_string($mod->modname),"actname"=>$mod->name);
        if (array_key_exists($mod->section, $arr)) {
            $count=$arr[$mod->section][get_string($mod->modname)]['count'];
            $comp=(int)$arr[$mod->section][get_string($mod->modname)]['completion']+(int)getActStatus($mod->id);
            $arr[$mod->section][get_string($mod->modname)] = array("actid"=>$mod->id,"name"=>$mod->modname,"modname"=>get_string($mod->modname),"actname"=>$mod->name,"completion"=>$comp,'count'=>++$count);
        } else {
            $arr[$mod->section][get_string($mod->modname)] =array("actid"=>$mod->id,"name"=>$mod->modname,"modname"=>get_string($mod->modname),"actname"=>$mod->name,"completion"=>getActStatus($mod->id),"count"=>1);
        }

    }
    //var_dump($arr);
    $ptop = '';
    $com=0;$tot=0;
    $ht='';$ht1='';$ht2='';$ht3='';$ht4='';
    foreach ($mods as $mod) {

        $top = $main_array[$mod->section];
        if ($main_array[$mod->section] == "")
            continue;
        if ($ptop != $mod->section) {
            $activitycounter=0;$completioncounter=0;
            foreach ($arr1[$mod->section] as $modsec) {
                // var_dump($modsec);
                $activitycounter++;
                $com+=(int)$modsec['completion'];
                $tot+=(int)$modsec['count'];
                $ht.=$modsec['actname']."<hr/>";
                if($modsec['completion']==$modsec['count'])
                    $completioncounter++;
            }

            foreach ($arr1[$mod->section] as $modsec) {
                //var_dump($modsec);

                $actid= $modsec['actid'];
                $modname=$modsec['name'];
		if($DB->get_field('course_modules', 'completionexpected', array('course' => $courseid,'id'=>$modsec['actid']))){
                    $date=$DB->get_field('course_modules', 'completionexpected', array('course' => $courseid,'id'=>$modsec['actid']));
                    $completionDate=date("d-m-Y",$date);//userdate();
                }
                else{
                    $completionDate='--';
                }

                $ht4.=$completionDate."<hr/>";
                // activity grade
                $instace= $DB->get_field_sql("SELECT  `instance`FROM `mdl_course_modules`
                    WHERE id=$actid");
                $grading_info=grade_get_grades($course->id, 'mod', $modname, $instace , $studentid ); // course mod name instance sid
                $item = $grading_info->items[0];
                $grade= $item->grades[$studentid];
                $mygrade =round($grade->grade+0,2); // Convert to number.
                $ht1.=$mygrade."<hr/>";

            }

            foreach ($arr1[$mod->section] as $modsec) {
                $actid= $modsec['actid'];
                $modname=$modsec['name'];
                // activity grade
                $insid= $DB->get_field_sql("SELECT  `instance`FROM `mdl_course_modules`
                    WHERE id=$actid");
                if($modname=$modsec['name']=='vpl')
                $submissions= $DB->get_field_sql("SELECT count(*) as submissions FROM `mdl_vpl_submissions`
                    WHERE vpl=$insid and userid=$studentid" );
                if($modname=$modsec['name']=='quiz')
                    $submissions= $DB->get_field_sql("SELECT count(*) as submissions FROM `mdl_quiz_attempts`
                    WHERE quiz=$insid and userid=$studentid" );

                $ht2.=$submissions."<hr/>";

            }
            foreach ($arr1[$mod->section] as $modsec) {
                $actid= $modsec['actid'];
               $ht3.=getStudentAttandanceofActivity($studentid,$actid,$courseid)."<hr/>";

            }


            $html .= html_writer::start_tag('tr', array('class' => $course->id));
            $html .= "<td style='vertical-align: middle;'>";
            $html .= "<span style='color:dimgray;font-weight: bold;'>".$top."</span>";
            $html .= html_writer::end_tag('td');
            $html .= html_writer::start_tag('td');
            $html .=$ht;
            $ht='';
            $html .= html_writer::end_tag('td');
	    $html .= html_writer::start_tag('td');
            $html .=$ht4;
            $ht4='';
            $html .= html_writer::end_tag('td');
            $html .= html_writer::start_tag('td');
            $html .=$ht1;
            $ht1='';
            $html .= html_writer::end_tag('td');
            $html .= html_writer::start_tag('td');
            $html .=$ht2;
            $ht2='';
            $html .= html_writer::end_tag('td');
            $html .= html_writer::start_tag('td');
            $html.=$ht3;
            $ht3='';
            $html .= html_writer::end_tag('td');
            $html .= html_writer::end_tag('tr');
        }
        $ptop = $mod->section;
    }
global $CFG;
    $html.="</tbody></table>";
    $sta=$com.','.$tot;

       
    $html.="<input type='hidden' id='cstatus' value='$sta'/>";
    return $html;


}