Face-to-face v1.6

Face-to-face v1.6

by Aaron Barnes -
Number of replies: 15

The latest version of Face-to-face is now in CVS! This version if for Moodle 1.9, and has primarily been tested with Postgresql and PHP 5.

This release changes the back-end database structure of the module substantially so I suggest taking a backup of your database before upgrading. The changes are mainly around storing signups for sessions - so it would pay to check all cancellations and signups are consistent with what was recorded before upgrading the module.

1.6.2 (2010-10-21):

Bug fixes:
- Removed hardcoded references to the mdl_ DB prefix

 

1.6.1 (2010-10-14):

Bug fixes:
- Fix upgrade from 1.5.0
- Fix mysql incompatibilities in upgrade script

 

1.6.0 (2010-09-28):

New features:

- Stateful signups, allow for multiple booking states
Previously, signups were either active or cancelled, and if the session had no time set then active signups were classed as waitlisted bookings. Now in 1.6, signups move between multiple states, and their history is recorded.

- Multiple types of attendance
When attendance is taken there are now multiple values to choose from. These are recorded in the user's signup status history and include partial attendance (a 50% grade), full attendance (100%), or no show (no grade).

- Option to require manager approval before booking's are confirmed
There is a now a configuration option to require manager approval for bookings. When this option is chosen, when a user signs up to a session they are put in a "requested" state and there manager is sent an email. The email contains a link to the attendees page for the session where the manager can choose to approve or decline their report's booking requests. When a user has been approved their status moves to "booked" or "waitlisted" depending on the type of session. A declined status allows the user to re-signup to sessions. The attendees page can still be accessed via the normal fashion through the course, and an users with the takeattendance capability can also approve or deny requests.

- Save booking/attendance history for a session
As described above.

- Allow booking of a session over maximum capacity
Overbooking is now a configurable option for a session. If enabled, users can still sign up to a session when it is at capacity. These users gain the "waitlisted" status, and if a cancellation occurs the first user in the waitlist queue takes the newly available slot and moves to the "booked" status.

- The ability to assign users as trainers to sessions
Trainer roles are now assignable at the site level. If any roles are chosen, users with those roles in the face-to-face activity's course can be assigned to a session and appear in the session's details. They have no extra abilities, this is purely for display purposes.

Improvements:
- Prevent taking attendance for a session that has yet to finish
- Improve session details view
- Only display location pull down if more than one location exists

 

You may be aware there was a previous announced version of Face-to-face in CVS that was last updated in November 2009 (I have tagged this at version 1.5). You may well be using this already, however I have included it's release notes here to show everything that has changed since the last released version (1.4).

 

1.5.0 (UNRELEASED):

New features:
- Calendar entries for students and teachers
- Calendar entries for all sessions (site-wide events)
- Custom fields (defined site-wide) for session details
- Session details can now contain HTML characters

Improvements:
- User timezone is used in reminder emails
- Add a new capability for determining whether or not overbooking is allowed
- Split add/remove attendees into two difference capabilities
- Allow users to enter duration like "1:20" (1 hour and 20 minutes)
- Ability to set the user profile fields to be included in attendance exports
- User search now looks in username and idnumber fields as well
- Support for multiple third-party email addresses
- Support for ID number at the activity level
- Move activity settings over to formslib
- Add an index page for Face-to-face help pages
- Optimised attendance exports
- Add duration column to attendance exports
- Use a date column for timestamp columns
- Moved most forms to formslib
- All pages are now valid XHTML

Bug fixes:
- Prevent users from cancelling after the session has ended
- Fix the order of how multi-day sessions appear
- Check session capacity on the signup page (for direct links)
- Fix backlinks on the attendance and signup pages
- Add missing course parameter to user page links
- Fix broken exports when user profile fields are missing
- Proper redirections from error pages
- Fix SQL error on new instances

 

Due to changes in the database structure, any associated blocks will no longer work. I plan to release an updated version of the Face-to-face block shortly.

 

CVS link: http://cvs.moodle.org/contrib/plugins/mod/facetoface/?pathrev=MAIN

Download (zip) link: http://download.moodle.org/download.php/plugins/mod/facetoface.zip

Git link: http://git.catalyst.net.nz/gw?p=mod-facetoface.git;a=summary

Face-to-face is being actively developed by Catalyst IT, so if you have any bug reports or feature requests please be sure to let me know!

Thanks,
Aaron Barnes

Average of ratings: Useful (1)
In reply to Aaron Barnes

Re: Face-to-face v1.6

by Simon Clegg -

Thanks Aaron,

Some really great features here. Just want to reiterate what a really useful module this is!

Thanks,


Simon

In reply to Aaron Barnes

Re: Face-to-face v1.6

by Amir Elion -

Hi Aaron.

Can you please clarify regarding the version 1.5.0 features listed above - are they included in version 1.6.0 or not?

Also - I also find this module very useful so thanks for the work. I can offer some help in testing, and translations (not enough php programming skills - sorry).

Amir

In reply to Amir Elion

Re: Face-to-face v1.6

by Aaron Barnes -

Hi Amir,

The 1.5.0 features are indeed included in 1.6.0 smile

Any testing and translation help is always very welcome!

Thanks,
Aaron

Average of ratings: Useful (1)
In reply to Aaron Barnes

Tárgy: Face-to-face v1.6

by Deni Nagy -

Hello Aaron,

 

I like this plugin it is very useful for booking participation for online lessons. (I mean, I hope as we will only start...)

I have one problem/question: I can book only for one session at a time (with my demo user) while I would be happy to be able to book for more sessions. I can't book for more even after that the first booked session has finished. Do you have any idea how to resolve this issue? I would be happy if you could reply very soon... wink

 

Looking forward to your reply, Deni

In reply to Deni Nagy

Re: Tárgy: Face-to-face v1.6

by Aaron Barnes -

Hi Deni,

Yes, only being able to be booked to one session at a time is a feature - however there have been a few requests to disable this so it would be worth investigating making it a configurable option in the next release.

Once attendance has been taken for a user, they should be able to book into another session.

Cheers,
Aaron

In reply to Aaron Barnes

Tárgy: Re: Tárgy: Face-to-face v1.6

by Deni Nagy -

Hello Aaron,

 

Yes, I figured it out by now.

One more thing. I upgraded to 1.6 from an older version. The previous version had the following session fields: Location, Venue and Room. The new version doesn't have them. I created similar fields in the admin page, I have found their names (like custom_room, etc.) but they still can't be included into the outgoing confirmation mails. Did I make something wrong or the new version works this way?

 

Denes

In reply to Deni Nagy

Re: Tárgy: Re: Tárgy: Face-to-face v1.6

by Aaron Barnes -

Hi Deni,

Are you using the placeholders [session:$customfield] ? e.g. [session:custom_room] If not, give that a try.

Cheers,
Aaron

In reply to Aaron Barnes

Re: Tárgy: Re: Tárgy: Face-to-face v1.6

by Jim Cook -

Aaron,

I too have the same issue with not being able to utilize Session, Room, & Venue in the outgoing email notifications in the current version of Face-to-Face.  I am sorry, but not being a php programmer I am not exactly sure what you mean with "using the paceholders..."  I did try creating a custom field name for session:room and also [session:room] but that did not work.  I can change/add to php code if I know when to make the changes.

THANKS

Jim

In reply to Jim Cook

Re: Tárgy: Re: Tárgy: Face-to-face v1.6

by Aaron Barnes -

Hi Jim,

Sorry for the late reply.

When you set up a custom field in Face-to-face you can choose a shortname e.g. room. The placeholder for the customfields then becomes [session:shortname] e.g. [session:room].

Does this make more sense?

Cheers,
Aaron

In reply to Aaron Barnes

Re: Face-to-face v1.6

by Aaron Barnes -

Face-to-face 1.6.1 now available, containing the following:

- Fix upgrade from 1.5.0
- Fix mysql incompatibilities in upgrade script

The best upgrade path if you are running 1.4.0 is still to upgrade to 1.5.0 first.

Follow the links in the first post to download.

Cheers,
Aaron

In reply to Aaron Barnes

Re: Face-to-face v1.6

by maarten b -

Hi,

Please be aware that you used hardcoded db table prefixes in the Lib.php file . You'll find them in the facetoface_get_user_submissions function:

In the sql query you're using hardcoded table prefixes (mld_***) instead of using {$CFG->prefix}

This has cost me a lot of debug time  smile

Average of ratings: Useful (1)
In reply to maarten b

Re: Face-to-face v1.6

by Aaron Barnes -

Hi Maarten,

Thank you for your bug report, this has now been fixed and a new version has been uploaded (1.6.2), which should be available in the zip archive later today. Please note, people only need to upgrade to this version if they use a different database prefix (as opposed to the default mdl_).

Regards,
Aaron

In reply to Aaron Barnes

Re: Face-to-face v1.6

by Dustin Elliott -

Aaron,

This looks like a very nice upgrade to a module that has been extreamly helpful to me.

I have made some significant customizations to moodle and the current F2F module but testing in my DEV environment it looks like this upgarde will go pretty smoothly, I do have one question though.

I'm try to figure out where in the code for the upgrade is the piece that updates the "mdl_grade_grades" table when attendance is taken?

One of my customizations uses the "timemodified" field in the mdl_grade_grades tables to determine the date printed on the users certificate.  My problem is that if a user takes and passes a F2F class and then a period of time later they signup for the same class and pass it again the "timemodified" in the grades table doesn't change.  However, it will change if they are first marked as a "no show" or "partially attended" then marked as "fully attended".

I would like to modify the code so that anytime they are marked as fully attended it will update the "timemodified" field for that F2F class in the mdl_grade_grades table.  Can you point me in the right direction?

Thanks again for a great update!

Dustin

In reply to Dustin Elliott

Re: Face-to-face v1.6

by Aaron Barnes -

Hi Dustin,

Sorry for the late reply.

The function that updates the grade is called facetoface_take_individual_attendance().

Let me know if you have any more problems.

Thanks,
Aaron