Forum Replies Created
- 
		
			
Okay, I’ve been able to correct most of the problems like the avatar achievement, blog creation achievement, account activation achievement, etc by correcting the code in the dp-achievements-defaultachievements.php file. However, there are two sets of achievements that are still not working. Starting A Forum Topic (one, thirty, and 100) – this hooks into action – bp_forums_new_topic function dpa_register_forumranked() { add_action( ‘bp_forums_new_topic’, ‘dpa_handle_forumranked’, 10, 0 ); } Replying To A Forum Topic (one, thirty, and 100) – this hooks into action – bp_forums_new_post function dpa_register_replyranked() { add_action( ‘bp_forums_new_post’, ‘dpa_handle_replyranked’, 10, 0 ); } I’ve been checking all of the code both in this file and in the bp-forums.php file and cannot see why it’s not working. The actions are correct, I can’t find any typos, why is it not unlocking the achievements? function dpa_handle_forumranked() { global $bp; if ( !function_exists( ‘bp_forums_is_installed_correctly’ ) || !bp_forums_is_installed_correctly() || defined( ‘DPA_CHECKING’ ) ) return; $user_id = $bp->loggedin_user->id; $one = new dpa_achievement( array( ‘user_id’ => $user_id, ‘name’ => ‘forumranked_1’, ‘counter’ => true ) ); $thirty = new dpa_achievement( array( ‘user_id’ => $user_id, ‘name’ => ‘forumranked_30’ ) ); $hundred = new dpa_achievement( array( ‘user_id’ => $user_id, ‘name’ => ‘forumranked_100’ ) ); if ( $hundred->is_unlocked() ) return; $one->increment_counter(); if ( $one->counter >= 1 && !$one->is_unlocked() ) { $one->unlock_achievement(); } if ( $one->counter >= 30 && !$thirty->is_unlocked() ) { $thirty->unlock_achievement(); } if ( $one->counter >= 100 && !$hundred->is_unlocked() ) { $hundred->unlock_achievement(); } } function dpa_handle_replyranked() { global $bp; if ( !function_exists( ‘bp_forums_is_installed_correctly’ ) || !bp_forums_is_installed_correctly() || defined( ‘DPA_CHECKING’ ) ) return; $user_id = $bp->loggedin_user->id; $one = new dpa_achievement( array( ‘user_id’ => $user_id, ‘name’ => ‘replyranked_1’, ‘counter’ => true ) ); $thirty = new dpa_achievement( array( ‘user_id’ => $user_id, ‘name’ => ‘replyranked_30’ ) ); $hundred = new dpa_achievement( array( ‘user_id’ => $user_id, ‘name’ => ‘replyranked_100’ ) ); if ( $hundred->is_unlocked() ) return; $one->increment_counter(); if ( $one->counter >= 1 && !$one->is_unlocked() ) { $one->unlock_achievement(); } if ( $one->counter >= 30 && !$thirty->is_unlocked() ) { $thirty->unlock_achievement(); } if ( $one->counter >= 100 && !$hundred->is_unlocked() ) { $hundred->unlock_achievement(); } } Any help would be appreciated. Thanks. Yes, I recently upgraded both Buddypress and WPMU.