Please add this code in your wp-content/plugins/wplms-customizer/wplms-customizer.php file :
add_action('wplms_submit_course','course_reset_on_finish',999,2); function course_reset_on_finish($course_id,$user_id){ bp_course_update_user_course_status($user_id,$course_id,0); // New function $course_curriculum = bp_course_get_curriculum($course_id); bp_course_update_user_progress($user_id,$course_id,0); //NEw drip feed use case delete_user_meta($user_id,'start_course_'.$course_id); do_action('wplms_student_course_reset',$course_id,$user_id); foreach($course_curriculum as $c){ if(is_numeric($c)){ if(bp_course_get_post_type($c) == 'quiz'){ bp_course_remove_user_quiz_status($user_id,$c); bp_course_reset_quiz_retakes($c,$user_id); $questions = bp_course_get_quiz_questions($c,$user_id); if(isset($questions) && is_array($questions) && is_Array($questions['ques'])){ foreach($questions['ques'] as $question){ global $wpdb; if(isset($question) && $question !='' && is_numeric($question)){ bp_course_reset_question_marked_answer($c,$question,$user_id); } } } }else{ bp_course_reset_unit($user_id,$c,$course_id); } } } /*=== Fix in 1.5 : Reset Badges and CErtificates on Course Reset === */ $user_badges = vibe_sanitize(get_user_meta($user_id,'badges',false)); $user_certifications = vibe_sanitize(get_user_meta($user_id,'certificates',false)); if(isset($user_badges) && is_Array($user_badges) && in_array($course_id,$user_badges)){ $key=array_search($course_id,$user_badges); unset($user_badges[$key]); $user_badges = array_values($user_badges); update_user_meta($user_id,'badges',$user_badges); } if(isset($user_certifications) && is_Array($user_certifications) && in_array($course_id,$user_certifications)){ $key=array_search($course_id,$user_certifications); unset($user_certifications[$key]); $user_certifications = array_values($user_certifications); global $wpdb; $certificate_name = 'certificate_'.$course_id.'_'.$user_id; $attachment_id = $wpdb->get_var($wpdb->prepare("SELECT ID FROM {$wpdb->posts} WHERE post_type = 'attachment' AND post_name = %s AND post_parent = %d AND post_author = %d",$certificate_name,$course_id,$user_id)); if(is_numeric($attachment_id)){ wp_delete_attachment($attachment_id); } update_user_meta($user_id,'certificates',$user_certifications); } /*==== End Fix ======*/ echo '<p>'.__('Course Reset for User','vibe').'</p>'; do_action('wplms_course_reset',$course_id,$user_id); }