Changeset 3009587
- Timestamp:
- 12/13/2023 05:20:01 PM (2 years ago)
- Location:
- woo-commerce-addon-for-wp-courseware
- Files:
-
- 13 added
- 3 edited
-
tags/1.5.0 (added)
-
tags/1.5.0/includes (added)
-
tags/1.5.0/includes/class-wpcw-wc-addon.php (added)
-
tags/1.5.0/includes/class-wpcw-wc-admin.php (added)
-
tags/1.5.0/includes/class-wpcw-wc-members.php (added)
-
tags/1.5.0/includes/class-wpcw-wc-membership.php (added)
-
tags/1.5.0/includes/class-wpcw-wc-menu-courses.php (added)
-
tags/1.5.0/includes/deprecated.php (added)
-
tags/1.5.0/includes/functions.php (added)
-
tags/1.5.0/languages (added)
-
tags/1.5.0/languages/wpcw-wc-addon.pot (added)
-
tags/1.5.0/readme.txt (added)
-
tags/1.5.0/wp-courseware-woo-commerce.php (added)
-
trunk/includes/class-wpcw-wc-membership.php (modified) (4 diffs)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/wp-courseware-woo-commerce.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
woo-commerce-addon-for-wp-courseware/trunk/includes/class-wpcw-wc-membership.php
r2946879 r3009587 114 114 // WC Memberships: De-enroll on status 'expired' and 'cancelled'. 115 115 add_action( 'wc_memberships_user_membership_status_changed', array( $this, 'handle_wc_membership_user_course_status_change' ), 10, 3 ); 116 117 // WC Teams 118 add_action( 'wc_memberships_for_teams_add_team_member', array( $this, 'handle_wc_teams_membership_user_course_enrollment' ), 10, 3 ); 119 add_action( 'wc_memberships_for_teams_after_remove_team_member', array( $this, 'handle_wc_teams_membership_user_course_de_enrollment' ), 10, 2 ); 116 120 117 121 } … … 340 344 // the $courseIDToKeep that's the valuable bit. 341 345 $courseIDList[ $courseIDToKeep ] = $levelID; 342 if ( true === apply_filters( 'wpcw_wc_addon_enroll_current_date', false ) ) { 346 if ( WPCW_check_course_expiration( $courseIDToKeep ) ){ 347 if ( true === apply_filters( 'wpcw_wc_addon_enroll_current_date', false ) ) { 343 348 $enrollment_dates[ $courseIDToKeep ] = current_time( 'timestamp' ); 349 } 344 350 } 345 351 } 346 352 } 347 353 } 348 wpcw_log($enrollment_dates);349 354 } 350 355 // By this point, $courseIDList may or may not contain a list of courses. … … 462 467 $this->handle_wc_membership_user_course_de_enrollment( $user_membership ); 463 468 } 469 } 470 471 /** 472 * Handle Teams Membership Course Enrollment. 473 * @param \SkyVerge\WooCommerce\Memberships\Teams\Team_Member $member the team member instance 474 * @param \SkyVerge\WooCommerce\Memberships\Teams\Team $team the team instance 475 * @param \WC_Memberships_User_Membership $user_membership the related user membership instance 476 */ 477 public function handle_wc_teams_membership_user_course_enrollment( $member, $team, $user_membership ) { 478 $enroll_statuses = apply_filters( 'wpcw_wc_addon_wc_membership_enroll_statuses', array( 'active', 'complimentary' ) ); 479 480 if ( in_array( $user_membership->get_status(), $enroll_statuses, true ) ) { 481 $this->handle_wc_membership_user_course_enrollment( $user_membership ); 482 } 483 } 484 485 /** 486 * Handle Teams Membership Course De-enrollment. 487 * @param int $user_id the id of the user (team member) 488 * @param \SkyVerge\WooCommerce\Memberships\Teams\Team the team instance 489 */ 490 public function handle_wc_teams_membership_user_course_de_enrollment( $user_id, $team ) { 491 global $wpdb, $wpcwdb; 492 $product_id = $team->get_product_id(); 493 $course_ids = array(); 494 495 $courses = $this->getCourseAccessListForLevel( $product_id ); 496 if ( ! empty( $courses ) ) { 497 foreach ( $courses as $course_id => $course_level_id ) { 498 $course_ids[] = $course_id; 499 } 500 } 501 502 if ( empty( $course_ids ) || ! is_array( $course_ids ) ) { 503 return; 504 } 505 506 $csv_course_ids = implode( ',', $course_ids ); 507 $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpcwdb->user_courses} WHERE user_id = %d AND course_id IN ({$csv_course_ids})", $user_id ) ); 464 508 } 465 509 … … 617 661 public function wc_check_wpcw_course_access( $access, $course_id, $user_id, $ignore = false ) { 618 662 global $wpdb, $wpcwdb; 663 664 if( 'WPCW_showPage_UserProgess' === wpcw_get_var( 'page' ) ) { 665 return $access; 666 } 619 667 620 668 $post = get_post($course_id); -
woo-commerce-addon-for-wp-courseware/trunk/readme.txt
r2949019 r3009587 4 4 Tags: learning management system, selling online courses 5 5 Requires at least: 4.8 6 Tested up to: 6. 2.27 Stable tag: 1. 4.96 Tested up to: 6.4.2 7 Stable tag: 1.5.0 8 8 License: GPLv3 9 9 License URI: http://www.gnu.org/licenses/gpl-3.0.html … … 74 74 75 75 == Changelog == 76 77 = 1.5.0 = 78 * New: Teams for WooCommerce Memberships integration 79 * Tweak: Modified retroactive enrollment to utilize batch process in order to accomodate a large number of students 80 * Tweak: Only display courses associated with product on the WooCommerce & Automatic Course Access Settings page 81 * Fix: Fixed so that only enrolled courses will display on the Detailed Student Progress Report page for a single student 76 82 77 83 = 1.4.9 = -
woo-commerce-addon-for-wp-courseware/trunk/wp-courseware-woo-commerce.php
r2949019 r3009587 2 2 /** 3 3 * Plugin Name: Woo Commmerce Addon for WP Courseware 4 * Version: 1. 4.94 * Version: 1.5.0 5 5 * Plugin URI: http://flyplugins.com 6 6 * Description: The official extension for WP Courseware to add integration for WooCommmerce. … … 12 12 * 13 13 * @package WPCW_WC_Addon 14 * @since 1. 4.914 * @since 1.5.0 15 15 */ 16 16 … … 19 19 20 20 // Constants. 21 define( 'WPCW_WC_ADDON_VERSION', '1. 4.9' );21 define( 'WPCW_WC_ADDON_VERSION', '1.5.0' ); 22 22 23 23 /**
Note: See TracChangeset
for help on using the changeset viewer.