mirror of
https://github.com/moodle/moodle.git
synced 2025-02-11 19:16:23 +01:00
These are the changes from MOODLE_13_STABLE, merged into trunk The tag MOODLE_13_MERGED on the MOODLE_13_STABLE branch now refers to this point The biggest changes here are the fixes for HTML editor in all standard modules
208 lines
10 KiB
HTML
Executable File
208 lines
10 KiB
HTML
Executable File
<!-- This page defines the form to create or edit an instance of the attendance module -->
|
|
<!-- It is used from /course/mod.php. The whole instance is available as $form. -->
|
|
|
|
<!-- RJJ I'm using inline CSS styles for some stuff in this page because I want to centralize -->
|
|
<!-- the logic and styles in a single directory -->
|
|
<?php @include_once("$CFG->dirroot/mod/attendance/lib.php");
|
|
$nohtmleditorneeded = true;
|
|
//require_once("lib.php")
|
|
|
|
// error_reporting(E_ALL);
|
|
// if we're adding a new instance
|
|
if (empty($form->id)) {
|
|
if (isset($CFG->attendance_dynsection) && ($CFG->attendance_dynsection == "1")) { $form->dynsection = 1; }
|
|
if (isset($CFG->attendance_autoattend) && ($CFG->attendance_autoattend == "1")) { $form->autoattend = 1; }
|
|
if (isset($CFG->attendance_grade) && ($CFG->attendance_grade == "1")) { $form->grade = 1; }
|
|
$form->maxgrade = isset($CFG->attendance_maxgrade)?$CFG->attendance_maxgrade:0;
|
|
$form->hours = isset($CFG->attendance_default_hours)?$CFG->attendance_default_hours:1;
|
|
$form->day = time();
|
|
$form->notes = "";
|
|
}
|
|
?>
|
|
<FORM name="form" method="post" action="<?php echo $ME ?>">
|
|
<CENTER>
|
|
<TABLE cellpadding=5>
|
|
|
|
<!-- <?php $options[0] = get_string("no"); $options[1] = get_string("yes"); ?> -->
|
|
<!-- <TR valign=top> -->
|
|
<!-- <TD align=right><P><B><?php print_string("takeroll", "attendance") ?>:</B></P></TD> -->
|
|
<!-- <TD align=left><?php choose_from_menu($options, "roll", $form->roll, "") ?></td> -->
|
|
<!-- </tr> -->
|
|
<tr valign=top>
|
|
<td align=right><p><b><?php print_string("name") ?>:</b></p></td>
|
|
<td colspan="3">
|
|
<input type="text" name="name" size=60 value="<?php p($form->notes)?>">
|
|
</td>
|
|
</tr>
|
|
|
|
<TR valign=top>
|
|
<TD align=right><P><B><?php print_string("dayofroll", "attendance") ?>:</B></P></TD>
|
|
<TD colspan="3"><?php print_date_selector("theday", "themonth", "theyear", $form->day) ?></TD>
|
|
</TR>
|
|
<tr valign=top>
|
|
<TD align="right"><P><B><?php print_string("dynamicsection", "attendance") ?>:</B></P></TD>
|
|
<TD align="left">
|
|
<?php
|
|
$options = array();
|
|
$options[0] = get_string("no");
|
|
$options[1] = get_string("yes");
|
|
choose_from_menu($options, "dynsection", "$form->dynsection", "");
|
|
helpbutton("dynsection", get_string("dynamicsection","attendance"), "attendance");
|
|
?>
|
|
<!-- <input type="checkbox" name="dynsection" <?php echo !empty($form->dynsection) ? 'checked' : '' ?> > -->
|
|
</TD>
|
|
</tr>
|
|
<tr valign=top>
|
|
<TD align="right"><P><B><?php print_string("autoattend", "attendance") ?>:</B></P></TD>
|
|
<TD align="left">
|
|
|
|
<?php
|
|
$options = array();
|
|
$options[0] = get_string("no");
|
|
$options[1] = get_string("yes");
|
|
choose_from_menu($options, "autoattend", "$form->autoattend", "");
|
|
helpbutton("autoattend", get_string("autoattend","attendance"), "attendance");
|
|
?>
|
|
|
|
<!-- <input type="checkbox" name="autoattend" <?php echo !empty($form->autoattend) ? 'checked' : '' ?> > -->
|
|
</TD>
|
|
</tr>
|
|
<?php // starting with 2 to allow for the nothing value in choose_from_menu to be the default of 1
|
|
for ($i=2;$i<=24;$i++){ $opt[$i] = $i; } ?>
|
|
<TR valign=top>
|
|
<TD align=right><P><B><?php print_string("hoursinclass", "attendance") ?>:</B></P></TD>
|
|
<TD colspan="3" align="left"><?php choose_from_menu($opt, "hours", $form->hours, "1","","1") ?>
|
|
<?php helpbutton("hours", get_string("hoursinclass","attendance"), "hours"); ?>
|
|
</td>
|
|
</tr>
|
|
<tr valign=top>
|
|
<TD align="right"><P><B><?php print_string("gradevalue", "attendance") ?>:</B></P></TD>
|
|
<TD align="left">
|
|
<?php
|
|
$options = array();
|
|
$options[0] = get_string("no");
|
|
$options[1] = get_string("yes");
|
|
choose_from_menu($options, "grade", "$form->grade", "");
|
|
helpbutton("grade", get_string("gradevalue","attendance"), "attendance");
|
|
?>
|
|
<!-- <input type="checkbox" name="grade" <?php echo !empty($form->grade) ? 'checked' : '' ?> > -->
|
|
</TD>
|
|
</tr>
|
|
<?php // starting with 2 to allow for the nothing value in choose_from_menu to be the default of 1
|
|
for ($i=0;$i<=100;$i++){ $opt2[$i] = $i; } ?>
|
|
<TR valign=top>
|
|
<TD align=right><P><B><?php print_string("maxgradevalue", "attendance") ?>:</B></P></TD>
|
|
<TD colspan="3" align="left"><?php choose_from_menu($opt2, "maxgrade", $form->maxgrade, "0","","0");
|
|
helpbutton("maxgrade", get_string("maxgradevalue","attendance"), "attendance");
|
|
?></td>
|
|
</tr>
|
|
|
|
</TABLE>
|
|
|
|
|
|
<?php // if we're modifying an existing instance of attendance instead
|
|
// of creating a new one
|
|
if (isset($form->id)) {
|
|
// get the list of attendance records for all hours of the given day and
|
|
// put it in the array for use in the attendance table
|
|
$rolls = get_records("attendance_roll", "dayid", $form->id);
|
|
if ($rolls) {
|
|
foreach ($rolls as $roll) {
|
|
$sroll[$roll->userid][$roll->hour]->status=$roll->status;
|
|
$sroll[$roll->userid][$roll->hour]->notes=$roll->notes;
|
|
}
|
|
}
|
|
// get the list of students along with student ID field
|
|
// get back array of stdclass objects in sorted order, with members:
|
|
// id, username,firstname,lastname,maildisplay,mailformat,email,city,country,
|
|
// lastaccess,lastlogin,picture (picture is null, 0, or 1), idnumber
|
|
// build the table for attendance roll
|
|
// this is the wrapper table
|
|
echo "<table align=\"center\" width=\"80\" class=\"generalbox\"".
|
|
"border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr>".
|
|
"<td bgcolor=\"#ffffff\" class=\"generalboxcontent\">";
|
|
// this is the main table
|
|
echo "<table width=\"100%\" border=\"0\" valign=\"top\" align=\"center\" ".
|
|
"cellpadding=\"5\" cellspacing=\"1\" class=\"generaltable\">";
|
|
if ($form->hours >1) {
|
|
echo "<tr><th valign=\"top\" align=\"right\" colspan=\"3\" nowrap class=\"generaltableheader\">".
|
|
"Hours:</th>\n";
|
|
for($i=1;$i<=$form->hours;$i++) {
|
|
echo "<th valign=\"top\" align=\"center\" colspan=\"3\" nowrap class=\"generaltableheader\">".
|
|
"$i</th>\n";
|
|
}
|
|
echo "</tr>\n";
|
|
} // if more than one hour for each day
|
|
echo "<tr><th valign=\"top\" align=\"left\" nowrap class=\"generaltableheader\">Last Name</th>\n";
|
|
echo "<th valign=\"top\" align=\"left\" nowrap class=\"generaltableheader\">First Name</th>\n";
|
|
echo "<th valign=\"top\" align=\"left\" nowrap class=\"generaltableheader\">ID</th>\n";
|
|
$P=get_string("presentshort","attendance");
|
|
$T=get_string("tardyshort","attendance");
|
|
$A=get_string("absentshort","attendance");
|
|
// generate the headers for the attendance hours
|
|
for($i=1;$i<=$form->hours;$i++) {
|
|
echo "<th valign=\"top\" align=\"center\" nowrap class=\"generaltableheader\">".$P."</th>\n";
|
|
echo "<th valign=\"top\" align=\"center\" nowrap class=\"generaltableheader\">".$T."</th>\n";
|
|
echo "<th valign=\"top\" align=\"center\" nowrap class=\"generaltableheader\">".$A."</th>\n";
|
|
}
|
|
echo "</tr>\n";
|
|
$table->head = array("Last Name","First Name","ID",
|
|
get_string("presentlong","attendance"),
|
|
get_string("tardylong","attendance"),
|
|
get_string("absentlong","attendance"));
|
|
$table->align = array("left", "left", "left", "center","center","center");
|
|
$table->wrap = array("nowrap", "nowrap", "nowrap", "nowrap", "nowrap", "nowrap");
|
|
$table->width = "80";
|
|
|
|
$students = attendance_get_course_students($form->course, "u.lastname ASC");
|
|
$i=0;
|
|
if ($students) foreach ($students as $student) {
|
|
echo "<tr><td align=\"left\" nowrap class=\"generaltablecell\" style=\"border-top: 1px solid;\">".$student->lastname."</td>\n";
|
|
echo "<td align=\"left\" nowrap class=\"generaltablecell\" style=\"border-top: 1px solid;\">".$student->firstname."</td>\n";
|
|
echo "<td align=\"left\" nowrap class=\"generaltablecell\" style=\"border-top: 1px solid;\">".$student->idnumber."</td>\n";
|
|
for($j=1;$j<=$form->hours;$j++) {
|
|
// set the attendance defaults for each student
|
|
$r1c=$r2c=$r3c=" ";
|
|
$rollstatus = (($form->edited==0)?$CFG->attendance_default_student_status:
|
|
((isset($sroll[$student->id][$j]->status)?$sroll[$student->id][$j]->status:0)));
|
|
if ($rollstatus==1) {$r2c="checked";}
|
|
elseif ($rollstatus==2) {$r3c="checked";}
|
|
else {$r1c="checked";}
|
|
$radio1="<input type=\"radio\" name=\"student_".$student->id."_".$j."\" value=\"0\" ".$r1c.">";
|
|
$radio2="<input type=\"radio\" name=\"student_".$student->id."_".$j."\" value=\"1\" ".$r2c.">";
|
|
$radio3="<input type=\"radio\" name=\"student_".$student->id."_".$j."\" value=\"2\" ".$r3c.">";
|
|
echo "<td align=\"left\" nowrap class=\"generaltablecell\" style=\"border-left: 1px dotted; border-top: 1px solid;\">".$radio1."</td>\n";
|
|
echo "<td align=\"left\" nowrap class=\"generaltablecell\" style=\"border-top: 1px solid;\">".$radio2."</td>\n";
|
|
echo "<td align=\"left\" nowrap class=\"generaltablecell\" style=\"border-top: 1px solid;\">".$radio3."</td>\n";
|
|
} // for loop
|
|
echo "</tr>\n";
|
|
// $radio1="<input type=\"radio\" name=\"student_".$student->id."\" value=\"0\" checked>";
|
|
// $radio2="<input type=\"radio\" name=\"student_".$student->id."\" value=\"1\">";
|
|
// $radio3="<input type=\"radio\" name=\"student_".$student->id."\" value=\"2\">";
|
|
// $table->data[$i]=array($student->lastname, $student->firstname,
|
|
// $student->idnumber, $radio1,$radio2,$radio3);
|
|
// $i++;
|
|
}
|
|
// doing the table manually now
|
|
// print_table($table);
|
|
// ending for both the tables
|
|
echo "</table></td></tr></table>\n";
|
|
} // if ($form->id)
|
|
?>
|
|
<!-- These hidden variables are always the same -->
|
|
<INPUT type="hidden" name=course value="<?php p($form->course) ?>">
|
|
<INPUT type="hidden" name=coursemodule value="<?php p($form->coursemodule) ?>">
|
|
<INPUT type="hidden" name=section value="<?php p($form->section) ?>">
|
|
<INPUT type="hidden" name=module value="<?php p($form->module) ?>">
|
|
<INPUT type="hidden" name=modulename value="<?php p($form->modulename) ?>">
|
|
<INPUT type="hidden" name=instance value="<?php p($form->instance) ?>">
|
|
<INPUT type="hidden" name=mode value="<?php p($form->mode) ?>">
|
|
<BR />
|
|
<?php
|
|
echo "<a href=\"../mod/attendance/add.php?id=".$form->course . "§ion=".$form->section ."\">" . get_string("addmultiple","attendance") . "</a><br /><br />";
|
|
?>
|
|
<INPUT type="submit" value="<?php print_string("savechanges") ?>">
|
|
<INPUT type="submit" name="cancel" value="<?php print_string("cancel") ?>">
|
|
</CENTER>
|
|
</FORM>
|