Attendance icon

Attendance

Maintained by Dan Marsden
A plugin that allows an attendance log to be kept. - includes an optional block for easy access to relevant functions.
Price option: Free

Supports Moodle 2.3-5.1 See all versions
Latest release: 3 months ago
Installations: 22662
Downloads (last 90 days): 6452

Frankenstyle name: mod_attendance
Activities

Comments

Comments are no longer open for new posts. Existing comments remain available to read.

OK, I solved this by changing the permissions in the .../moodle/mod/attendance directory. All files need to be set to 664 (they were 666) and all folders to 775 (they were 777). And this needs to be done in each of the subdirectories. I did this using the File Manager in the Control Panel for my web host. Perhaps if the module is setting those permissions when installed, this could be adjusted. Thanks.
Dan. Thanks for your reply. I finally got around to contacting the server support people to get the logs. Here is an example:
[Fri Nov 13 10:00:10.872465 2015] [cgi:error] [pid 12269] [client XXXXX:4611] AH01215: suexec policy violation: see suexec log for more details: /home/mysite/www/moodle/mod/attendance/view.php, referer: http://mysite/course/view.php?id=4
[Fri Nov 13 10:00:10.872557 2015] [cgi:error] [pid 12269] [client XXXXX:4611] End of script output before headers: view.php, referer: http://mysite/course/view.php?id=4
The server support person wrote this:
"About the suEXEC policy violation error, which could have caused the 500 server error, please check and make sure all your scripts and their parent directories have no world writable permissions (like 666 or 777). Such permissions are insecure, unnecessary, and result in 500 server errors."
Is there anything I can do about this at my end? Thanks.
@Mad Eye - web server logs are found on your server - (not within Moodle), if you don't know how to find them I'd suggest using Google or asking for help in the community forums on moodle.org
@Tulin - I'm not exactly clear what you are asking for there - but there are a number of requested improvments to the reports within the github tracker.
@ Dan Marsden Thanks for responding. Are the web server logs something that I can access from within Moodle? If so, where? Otherwise, I am not sure how to access them.
Dear all,
I am using this plugin and have a question: is it possible to count the total non existing hours of students at the end of the course? I am doing it via import attendance as a excel data, but I want, that the student can see their attendance in total. Thank for your help!
Error 500 is a generic web server error and does not provide enough information for us to diagnose. Please look at your web server logs for more detailed information - there is also this FAQ which might help: https://docs.moodle.org/en/Errors_FAQ#Error:_.22500:Internal_Server_Error.22
I have the same issue with ERROR 500 after upgrading to version 3.0.0.1 of the plugin. I am in the middle of a course and urgently need to regain access to my Attendance activity. Thanks for any help.
Thanks Your Help...
After the last update the plugin stopped working. Gives the following error: ERROR 500 - INTERNAL SERVER ERROR. Moodle 2.9+.
Hello, colleagues,
I am new here and hoping to get some direction. I am installing the attendance plug-n and received this message. Thank you so much in advance.
"There is a request to install plugin Attendance (mod_attendance) version 2015040500 from the Moodle plugins directory on this site. However, the location /var/www/Moodle_2015_29/moodle/mod is not writable. You need to give write access for the web server user to the location, then press the continue button to repeat the check"
Carlos - it sounds like you have the old attforblock plugin installed. The last version that supported migration from that code was the 2.7 version of the mod_attendance code. it's called in the version.php file here:
https://github.com/danmarsden/moodle-mod_attendance/blob/MOODLE_27_STABLE/version.php#L45
as your db is in a corrupt state you may need to start the upgrade process all over again.
Good afternoon (almost here) Dan.
I was iupgrading my moodle version (from 2.3.1+ to 2.9) using cli. After login I gone to notifications and saw that i missed attendance and other modules. After I have uploaded new versions y have clicked on upgrade and got this error:
Debug info: Table 'attendance' already exists
CREATE TABLE attendance (
id BIGINT(10) NOT NULL auto_increment,
course BIGINT(10) NOT NULL DEFAULT 0,
name VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
grade BIGINT(10) NOT NULL DEFAULT 100,
CONSTRAINT PRIMARY KEY (id)
, KEY atte_cou_ix (course)
)
ENGINE = InnoDB
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE = utf8_unicode_ci
COMMENT='Attendance module table'
;
CREATE TABLE attendance_sessions (
id BIGINT(10) NOT NULL auto_increment,
attendanceid BIGINT(10) NOT NULL DEFAULT 0,
groupid BIGINT(10) NOT NULL DEFAULT 0,
sessdate BIGINT(10) NOT NULL DEFAULT 0,
duration BIGINT(10) NOT NULL DEFAULT 0,
lasttaken BIGINT(10),
lasttakenby BIGINT(10) NOT NULL DEFAULT 0,
timemodified BIGINT(10),
description LONGTEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
descriptionformat TINYINT(2) NOT NULL DEFAULT 0,
studentscanmark TINYINT(1) NOT NULL DEFAULT 0,
CONSTRAINT PRIMARY KEY (id)
, KEY attesess_att2_ix (attendanceid)
, KEY attesess_gro2_ix (groupid)
, KEY attesess_ses2_ix (sessdate)
)
ENGINE = InnoDB
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE = utf8_unicode_ci
COMMENT='attendance_sessions table retrofitted from MySQL'
;
CREATE TABLE attendance_log (
id BIGINT(10) NOT NULL auto_increment,
sessionid BIGINT(10) NOT NULL DEFAULT 0,
studentid BIGINT(10) NOT NULL DEFAULT 0,
statusid BIGINT(10) NOT NULL DEFAULT 0,
statusset VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
timetaken BIGINT(10) NOT NULL DEFAULT 0,
takenby BIGINT(10) NOT NULL DEFAULT 0,
remarks VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
CONSTRAINT PRIMARY KEY (id)
, KEY attelog_ses2_ix (sessionid)
, KEY attelog_stu2_ix (studentid)
, KEY attelog_sta2_ix (statusid)
)
ENGINE = InnoDB
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE = utf8_unicode_ci
COMMENT='attendance_log table retrofitted from MySQL'
;
CREATE TABLE attendance_statuses (
id BIGINT(10) NOT NULL auto_increment,
attendanceid BIGINT(10) NOT NULL DEFAULT 0,
acronym VARCHAR(2) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
description VARCHAR(30) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
grade SMALLINT(3) NOT NULL DEFAULT 0,
visible TINYINT(1) NOT NULL DEFAULT 1,
deleted TINYINT(1) NOT NULL DEFAULT 0,
CONSTRAINT PRIMARY KEY (id)
, KEY attestat_att2_ix (attendanceid)
, KEY attestat_vis2_ix (visible)
, KEY attestat_del2_ix (deleted)
)
ENGINE = InnoDB
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE = utf8_unicode_ci
COMMENT='attendance_statuses table retrofitted from MySQL'
Error code: ddlexecuteerror
Stack trace:
line 449 of /lib/dml/moodle_database.php: ddl_change_structure_exception thrown
line 905 of /lib/dml/mysqli_native_moodle_database.php: call to moodle_database->query_end()
line 76 of /lib/ddl/database_manager.php: call to mysqli_native_moodle_database->change_database_structure()
line 412 of /lib/ddl/database_manager.php: call to database_manager->execute_sql_arr()
line 364 of /lib/ddl/database_manager.php: call to database_manager->install_from_xmldb_structure()
line 671 of /lib/upgradelib.php: call to database_manager->install_from_xmldb_file()
line 424 of /lib/upgradelib.php: call to upgrade_plugins_modules()
line 1630 of /lib/upgradelib.php: call to upgrade_plugins()
line 433 of /admin/index.php: call to upgrade_noncore()
Seem like instead of updating tables script is trying to create them and mysql launch an error because the table already exists.
Could you help me.
Thanks and best regards.
PS: this is no my production modle site, is a test site in order to upgrade it and check possible problems ans errors.
Suggestion for enhancement, filter by cohort: https://github.com/danmarsden/moodle-mod_attendance/issues/146
And well deserved FMP award. Great plugin. and Responsiveness from Dan is about as good as you can get.
-Derek
I'm pleased to announce that the Attendance module has received the Featured Moodle plugin award! See the post Featured plugin: Attendance module for an interview with Dan.
Many thanks Dan, Artem and all other contributors for your work.
Hi, Dan -- Having something like an API within the attendance code that I and others could use probably would be useful. (Ipal can also interact with the EJS module (https://moodle.org/plugins/view/mod_ejsapp) so that EJS simulations that are created in a course can be included in a polling question, and the ipal code uses an API that the EJS module authors created.) This would insure that you could change the attendance module as you wished and, as long as you also updated the API, nothing would get broken. However, I would recommend that we see if this becomes very popular before you spend much time on this. If work on that "gets revived" it probably would be useful if I sent you a list of all the queries that ipal makes on attendance tables.