= $required_score ); } // If is maximum score trigger, rules engine needs to check the maximum score if( $trigger === 'gamipress_wpep_complete_assessment_max_grade' || $trigger === 'gamipress_wpep_complete_specific_assessment_max_grade' ) { $score = absint( $args[4] ); $required_score = absint( get_post_meta( $requirement_id, '_gamipress_wpep_score', true ) ); // True if there is score is lower than required score $return = (bool) ( $score <= $required_score ); } // If is between score trigger, rules engine needs to check the minimum and maximum score allowed if( $trigger === 'gamipress_wpep_complete_assessment_between_grade' || $trigger === 'gamipress_wpep_complete_specific_assessment_between_grade' ) { $score = absint( $args[4] ); $min_score = absint( get_post_meta( $requirement_id, '_gamipress_wpep_min_score', true ) ); $max_score = absint( get_post_meta( $requirement_id, '_gamipress_wpep_max_score', true ) ); // True if there is score is bigger than min score and lower than max score $return = (bool) ( $score >= $min_score && $score <= $max_score ); } // Send back our eligibility return $return; } add_filter( 'user_has_access_to_achievement', 'gamipress_wpep_user_has_access_to_achievement', 10, 6 );