Achievements 7.x-1.4, 2011-XX-XX -------------------------------- * (todo) Write up a "Getting started" part of the README? * (todo) Add some links for good achievement design? * Achievement popups do not fade out if you hover over them (thanks Poetro). * New hook added: hook_achievements_leaderboard_alter(). * Lets you add new table columns or heavily modify leaderboard display. * Context (type of leaderboard, block, etc.) and raw data is passed. * See achievements.api.php for full details about the new hook. Achievements 7.x-1.3, 2011-09-29 -------------------------------- * The following hooks have been added. See achievements.api.php for details: * hook_achievements_info_alter() - modify the achievement information. * hook_achievements_unlocked() - respond to achievement unlocks. * hook_achievements_locked() - respond to a user losing an achievement. * Relative leaderboards have been added. * The block and global leaderboard can now show user-specific stats. * The current user's ranking can be displayed, along with "nearby" users. * "Nearby" users are a number of ranks before and after the current user. * The number of nearby ranks shown can be 0 through 10. * The block and global leaderboard can be configured separately. * The global leaderboard now shows a user's latest achievement. * New leaderboard CSS class added: achievements-leaderboard-current-user. * The global leaderboard is now a paged view instead of a set limit. * Control number of ranks per page at admin/config/people/achievements/. * achievements_totals() no longer exists; moved inline to leaderboard page. * achievements_totals_user() has been rewritten with different parameters. * We now load all of a user's unlocks in achievements_unlocked_already(). * This is then cached for all future lookups during that page load. * a_u_a and a_u can be called a lot per page for heavy achievement sites. * Loading all and caching is better, performance-wise, then lots of singles. * The database tables have been tweaked to support latest-unlock lookups. * Issue #1274350 by makononov: added query tags for the leaderboards. * Fixed some warnings that appeared in a first-time installation. Achievements 7.x-1.2, 2011-09-07 -------------------------------- * Achievement unlock notifications are now JS fadeins and offline-able. * We no longer use drupal_set_message() to inform of an unlock. * A new achievement-notification.tpl.php controls the appearance. * Unlock notifications now fade in and out at the window's bottom right. * We now track whether a user has seen an achievement unlock notification. * If they haven't, they will the next time they login or access the site. * Leaderboard top rank counts can now be tweaked in the relevant configs. * This is in preparation for "relative leaderboards" planned for 7.x-1.3. * Unlocked achievements on user/#/achievements can now be unsorted. * That is, instead of "move to top" they can remain "as defined in code". * Defaults to "move to top". Config at admin/config/people/achievements. * Block 'achievements-leaderboard' renamed with underscores not dashes. * If you're using this block, you'll need to place it again upon upgrade. * Fixed a few PHP warnings when a user has yet to unlock any achievements. * Achievement unlocks are now logged in watchdog. * Variables are now properly deleted on uninstall. Achievements 7.x-1.1, 2011-07-18 -------------------------------- * Achievements can now be categorized into groups. * Grouped achievements will be displayed within jQuery UI tabs. * If groups exist, ungrouped achievements "upgrade" automatically. * See achievements.api.php for more on how to define achievement groups. * Achievements can now have images. * Three possible display states: locked, unlocked, and hidden. * Admins may set the default images at admin/config/people/achievements. * An 'images' array has been added to hook_achievements_info() definitions. * Per-achievement images can override the default on a per-state basis. * CSS tweaks were made for a more flexible achievement display. * Default images have been provided for each of the three states. * Administrators can now manually give and take achievements from users. * It's problematic on progression-based achievements and internal statistics. * hook_achievements_info() gets 'storage' to define where statistics are kept. * If 'storage' is not specified, assume it exists under the achievement ID. * See admin/config/people/achievements for the disclaimer text on usage. * See achievements.api.php for more on 'storage' and a revised HOWTO. * A new permission, "Earn achievements", has been added. * It is REQUIRED and NECESSARY for all roles that can unlock achievements. * Core functions check for it so you shouldn't need it in your own code. * If you think you need to check, use achievements_user_is_achiever(). * Removing this permission from a role does NOT delete data or ranks. * It does stop, however, the collection of new data, points, or unlocks. * achievements/leaderboard/NONEXISTENT now returns a 404. * Locked achievements are now displayed on a user's achievements tab. * No more warnings when viewing a user with no achievement unlocks. * 'id' is no longer duplicated in hook_achievements_info() definitions. * achievements.tpl.php has had its PHP moved to template_preprocess_hook(). * New variables have been added to streamline the display code. Achievements 7.x-1.0, 2011-07-07 -------------------------------- * First release for Drupal 7.x.