Ranking block
Certified Partner Plugin
Maintained by
Willian Araujo
A ranking block to improve the gamification into the course.
Comments
Comments are no longer open for new posts. Existing comments remain available to read.
First of all, thank you for maintaining this great plugin. Please, could you update plugin info with the latest changelog? I'm talking about September 18th release (today).
Thank you for your plug-in. I have a question about the first screenshot on this plugin presentation. How did you display items in "course information" ("guias e manuals", "biblioteca virtual", "cafe virtual", etc.) ?
It's a theme feature ?
Best regards.
Quando adiciono o bloco na página do curso simplesmente gera um erro ao ler base de dados.
No debug deu o seguinte:
Debug info: ERRO: coluna "u.picture" deve aparecer na cláusula GROUP BY ou ser utilizada em uma função de agregação
LINE 2: DISTINCT u.id,u.picture,u.firstname,u.lastna...
^
SELECT
DISTINCT u.id,u.picture,u.firstname,u.lastname,u.imagealt,u.email,u.username,
sum(rl.points) as points
FROM
mdl_user u
INNER JOIN mdl_role_assignments a ON a.userid = u.id
INNER JOIN mdl_ranking_points r ON r.userid = u.id AND r.courseid = $1
INNER JOIN mdl_ranking_logs rl ON rl.rankingid = r.id
INNER JOIN mdl_context c ON c.id = a.contextid
WHERE a.contextid = $2
AND a.userid = u.id
AND a.roleid = $3
AND c.instanceid = $4
AND r.courseid = $5
AND rl.timecreated BETWEEN $6 AND $7
GROUP BY u.id
ORDER BY points DESC, u.firstname ASC
LIMIT 10
[array (
0 => '5',
1 => '1346',
2 => 5,
3 => '5',
4 => '5',
5 => 1447545600,
6 => 1447852189,
)]
Error code: dmlreadexception
Stack trace:
line 407 of /lib/dml/moodle_database.php: dml_read_exception thrown
line 239 of /lib/dml/pgsql_native_moodle_database.php: call to moodle_database->query_end()
line 708 of /lib/dml/pgsql_native_moodle_database.php: call to pgsql_native_moodle_database->query_end()
line 135 of /blocks/ranking/lib.php: call to pgsql_native_moodle_database->get_records_sql()
line 83 of /blocks/ranking/block_ranking.php: call to block_ranking_get_students_by_date()
line 281 of /blocks/moodleblock.class.php: call to block_ranking->get_content()
line 232 of /blocks/moodleblock.class.php: call to block_base->formatted_contents()
line 937 of /lib/blocklib.php: call to block_base->get_content_for_output()
line 989 of /lib/blocklib.php: call to block_manager->create_block_contents()
line 352 of /lib/blocklib.php: call to block_manager->ensure_content_created()
line 5 of /theme/ftecflorense/layout/default.php: call to block_manager->region_has_content()
line 768 of /lib/outputrenderers.php: call to include()
line 715 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
line 232 of /course/view.php: call to core_renderer->header()
O que posso fazer pra resolver?
It works like a charm, my students love it. Thank you. Can I make a ranking block for several certain courses? If so, how can I make it?
Thank you,
I installed the Ranking Block this week (works perfectly).
However, it seems to only recognize tasks completed SINCE it was installed. Is there a way to update the rankings with ALL of the course data, or to refresh the course data to register on the ranking block?
Thank you,
William Michael
Classical Liberal Arts Academy
I have the same problem as Tanya. My moodle version is 2.6.11+, my server works with database Mysql version 5.1.56 and PHP version 5.6.5. I installed the last version of your plugin and I followed all the instructions you indicate above.
Best regards
The new version of the plugin uses the events of moodle. The cron is not necessary anymore. I will remove the video from youtube.
Are you using moodle 2.6, can send me more information about your server enviroment, like database, php version...
The Ranking Block isn't working on my site 2.6. Installed fine without errors but doesn't update when assessments are graded.
Have I missed a step?
Cheers
Tanya
Issue was: No matter what you set for each activity, it takes the default point hard coded in the source ie 2.
File: classes/manager.php
Method: add_default_points
Change: trim($points) != ' ' ... to ... trim($points) == ' '