PluginProbe
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses / 4.4.8
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses v4.4.8
4.4.8 4.4.7 4.4.6 4.4.5 4.4.4 4.4.3 4.4.2 4.4.1 4.4.0 4.3.9.1 4.3.9 4.3.8 4.3.7 4.1.6.9 4.1.6.9.1 4.1.6.9.2 4.1.6.9.3 4.1.6.9.4 4.1.7 4.1.7.1 4.1.7.2 4.1.7.3 4.1.7.3.1 4.1.7.3.2 4.2.0 All 139 releases
← All changes | inc/settings/class-lp-settings-courses.php +23 -31 4.2.04.4.8 View file →
@@ -1,7 +1,7 @@
1 1 <?php
2 2
3 -use LP\Helpers\Config;
3 +use LearnPress\Helpers\Config;
4 4
5 5 /**
6 6 * Class LP_Settings_Courses
7 7 *
@@ -18,39 +18,22 @@
18 18 parent::__construct();
19 19 }
20 20
21 21 public function save() {
22 - $course_permalink = LP_Helper::sanitize_params_submitted( $_POST['learn_press_course_base'] ?? '' );
23 -
24 - if ( ! $course_permalink ) {
25 - return;
26 - }
27 -
28 - if ( $course_permalink == 'custom' ) {
29 - $course_permalink = trim( $_POST['course_permalink_structure'], '/' );
30 -
31 - if ( '%course_category%' == $course_permalink ) {
32 - $course_permalink = _x( 'courses', 'slug', 'learnpress' ) . '/' . $course_permalink;
22 + // Check role publish course of user teacher
23 + if ( ! empty( $_POST ) && isset( $_GET['tab'] ) && $_GET['tab'] === 'courses' ) {
24 + $teacher = get_role( LP_TEACHER_ROLE );
25 + if ( $teacher ) {
26 + $course_cap = LP_COURSE_CPT . 's';
27 + $review_course_instructor = $_POST['learn_press_required_review'] ?? false;
28 + if ( $review_course_instructor ) {
29 + $teacher->remove_cap( 'publish_' . $course_cap );
30 + } else {
31 + $teacher->add_cap( 'publish_' . $course_cap );
32 + }
33 33 }
34 -
35 - $course_permalink = '/' . $course_permalink;
36 - update_option( 'learn_press_course_base_type', 'custom' );
37 -
38 - } else {
39 - delete_option( 'learn_press_course_base_type' );
40 34 }
41 -
42 - $course_base = untrailingslashit( $course_permalink );
43 -
44 - update_option( 'learn_press_course_base', $course_base );
45 - $courses_page_id = learn_press_get_page_id( 'courses' );
46 - $courses_permalink = ( $courses_page_id > 0 && get_post( $courses_page_id ) ) ? get_page_uri( $courses_page_id ) : _x( 'courses', 'default-slug', 'learnpress' );
47 -
48 - if ( $courses_page_id && trim( $course_base, '/' ) === $courses_permalink ) {
49 - update_option( 'learn_press_use_verbose_page_rules', 'yes' );
50 - } else {
51 - delete_option( 'learn_press_use_verbose_page_rules' );
52 - }
35 + // End check role publish course of user teacher
53 36 }
54 37
55 38 /**
56 39 * Get config settings courses.
@@ -78,7 +61,16 @@
78 61 *
79 62 * @return bool
80 63 */
81 64 public static function is_no_load_ajax_first_courses(): bool {
82 - return self::is_ajax_load_courses() && LP_Settings::get_option( 'courses_first_no_ajax', 'no' ) === 'yes';
65 + return LP_Settings::get_option( 'courses_first_no_ajax', 'no' ) === 'yes';
66 + }
67 +
68 + /**
69 + * Get option type Pagination.
70 + *
71 + * @return string
72 + */
73 + public static function get_type_pagination(): string {
74 + return LP_Settings::get_option( 'course_pagination_type', 'number' );
83 75 }
84 76 }