Points earned for enrolling in courses

Points earned for enrolling in courses

by Corey Zinn -
Number of replies: 6

I previously posted this in the Usability forum, but received no responses, so I'm posting here in hopes that more people will see it and someone might have some suggestions.

We are using Moodle v3.1 and want to know if there is a way (via core Moodle or plugins) to assign and accumulate points for a student based on enrollment. We know there are ways to assign badges, and even experience points, for activity completion. That is all well and good, but not what we need here. What we are looking for is something more like if a student enrolls in course A, their account receives 10 points - even if they don't complete any activities in the course. This is for a frequent-flyer type program, where after paying for/enrolling in several courses, they get another course free.

Any thoughts/suggestions on how best to handle this situation would be greatly appreciated!

Thanks.


Average of ratings: -
In reply to Corey Zinn

Re: Points earned for enrolling in courses

by Rick Jerz -
Picture of Particularly helpful Moodlers Picture of Testers

I cannot think of any automatic way of doing this.

What I would do is to create a grade book item called "Enrollment Points".  Then periodically I would manually grade this single item and award all points, meaning "perform bulk insert".

It seems a little odd to me to give points to students for not doing anything except enrolling in a course, but that's just me.  In my courses, I have an set of introductory exercises that cause students to use the quiz engine, assignment, and forum features.  Then I know that they have learned something that they will again need to use.

In reply to Rick Jerz

Re: Points earned for enrolling in courses

by Corey Zinn -

The reason we would want to award points for enrolling is really to award points for purchasing the course. Then, after so many purchased courses, the user is eligible for a free course. It doesn't matter whether the user completes any activities within the courses (those are still being tracked, of course, and badges/certifications awarded accordingly), but rather just the act of purchasing the course.

Thank you for the suggestion. We'll check this route out!


In reply to Corey Zinn

Re: Points earned for enrolling in courses

by Rick Jerz -
Picture of Particularly helpful Moodlers Picture of Testers

Okay.

What system are you using to keep track of their payments?  Maybe the free course could be watched in your accounting system?  (This is just another suggestion.)

I still cannot think of any way to accumulate "points" across multiple courses in moodle.  My guess is that if you are skilled with SQL, that you could write a query using the mySQL database.  It would be something like "show me a summary of how many courses each student is enrolled in, and which ones are enrolled in at least 5 (any x) courses."

In reply to Rick Jerz

Re: Points earned for enrolling in courses

by Corey Zinn -

Your first response has pointed us in a direction that may work. There will be some manual involvement, but it will still be better than the whole process being manual.

If we add a hidden grade item for enrollment points and use the bulk insert periodically, that will update individual courses. We can then add a profile field for total points, and run a periodic script to update that field as the sum of the individual course enrollment points for each user. Not the most elegant solution, but it may just work, and is the best path we have right now!

Thanks for pointing us in this direction smile


In reply to Corey Zinn

Re: Points earned for enrolling in courses

by Rick Jerz -
Picture of Particularly helpful Moodlers Picture of Testers

You will also need to think through your logic of whether or not you want this hidden enrollment item being included in the student's grade book.  If you don't want it included, make sure to exclude it, or put it into a zero point grade book category.

In reply to Rick Jerz

Re: Points earned for enrolling in courses

by Corey Zinn -

Thanks again for the help and thoroughness. Setting it to be excluded is an important step so it doesn't keep the grade from being calculated. While there is some manual involvement, I believe the solution will work. We have queries that will update user profile fields based on the enrollment points, and can be run periodically via the event scheduler.

Thanks smile