Forum Discussion
Gradebook percentage in moodle
Hi,
I am testing articulate products. Now I have a problem about creating a scorm package with articulate presenter.
I have used this configuration in publish menu of presenter:
- SCORM 1.2 package
- Tracking of slides viewed
I have imported the zipped scorm in moodle and alls ok except the percentage in gradebook. If a have a scorm with a 10 slides and a student have viewed 6 slides, the gradebook don't show 60%, the gradebook shows empty column of percentage. The percentage column only shows the percentage of activitys fully completed, that is 100%
What is the problem?
Exists a tutorial/configuration that explains how publish a scorm from articulate presenter to moodle?
Maybe is a problem of moodle configuration?
I hope somebody can help me.
Thanks in advance and sorry for my poor english.
- StefanoPostiCommunity Member
Ok I need youe email I can't get to upload the 2, 8 MB file here in the blog, don't know why,,,,
It's in italian, I don't have anything in english ready to give you...
- JuanjoBaezaCommunity Member
I'll send you a PM
- JuanjoBaezaCommunity Member
Many thanks Stefano !!!
Finally I have modified the moodle code for calculate the partial percentage of slides viewed. If somebody are interested I can publish the code.
- PhilMayorSuper Hero
I would be interested, Thanks
Phil
- LouiseHCommunity Member
I would be too please - Moodle's tracking is giving me a headache!
- DanMarsdenCommunity Member
Hi Juanjo, if this was implemented as a new grading method I'd be interested in reviewing the patch for inclusion in Moodle 2.2
- PhilMayorSuper Hero
Hi Dan
That would be great, would save me badgering our moodle developers as well
Phil
- JuanjoBaezaCommunity Member
function get_studentshtml
Line 784 approx. of /grade/report/grader/lib.php
//IF finalgrade is null, must be calculated
if ($grade->finalgrade=="") {
$sql="SELECT t.value FROM mdl_scorm_scoes_track t, mdl_grade_items g where g.id=".$grade->itemid." and
t.userid=".$grade->userid." and g.itemmodule='scorm' and g.iteminstance=t.scormid and t.element='cmi.suspend_data'
order by t.timemodified desc limit 1";
$rs = get_recordset_sql($sql);
while ($datos = rs_fetch_next_record($rs)) {
$registros=explode("|", $datos->value, 3);
}
$posicion=strpos($registros[1],"=");
$numDiapos=(int)substr($registros[1],$posicion+1);
$posicionIni=strpos($registros[2],"##,");
if ($posicionIni!=false) {
$posicionFin=strpos(substr($registros[2],$posicionIni),"#");
$strDiapos=substr($registros[2],$posicionIni+3,$posicionFin-($posicionIni+2));
$Diapos=explode(",", $strDiapos);
$totalDiapos=count($Diapos);
}
$grade->finalgrade=($numDiapos * 100) / $totalDiapos;
}This code mus be applied in other scripts where the partial percentaje is empty
- StefanoPostiCommunity Member
Excellent work, Juanjo! Many thanks!
- DanMarsdenCommunity Member
not quite what I was looking for - if someone manages to convert this into something that goes into the functions in mod/scorm that handle grading - please create a patch and add it to the Moodle Tracker for me to take a look.