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/Databases/UserItemsDB.php +112 -112 4.3.94.4.8 View file →
@@ -1,112 +1,112 @@
1 -<?php
2 -
3 -namespace LearnPress\Databases;
4 -
5 -use Exception;
6 -use LearnPress\Filters\UserItemsFilter;
7 -use LP_Helper;
8 -
9 -defined( 'ABSPATH' ) || exit();
10 -
11 -/**
12 - * Class UserItemsDB
13 - *
14 - * @since 4.2.9.3
15 - * @version 1.0.0
16 - */
17 -class UserItemsDB extends DataBase {
18 - private static $_instance;
19 -
20 - protected function __construct() {
21 - parent::__construct();
22 - }
23 -
24 - public static function getInstance() {
25 - if ( is_null( self::$_instance ) ) {
26 - self::$_instance = new self();
27 - }
28 -
29 - return self::$_instance;
30 - }
31 -
32 - /**
33 - * Get users items
34 - *
35 - * @return array|null|int|string
36 - * @throws Exception
37 - * @since 4.1.6.9
38 - * @version 1.0.4
39 - */
40 - public function get_user_items( UserItemsFilter $filter, int &$total_rows = 0 ) {
41 - $filter->fields = array_merge( $filter->all_fields, $filter->fields );
42 -
43 - if ( empty( $filter->collection ) ) {
44 - $filter->collection = $this->tb_lp_user_items;
45 - }
46 -
47 - if ( empty( $filter->collection_alias ) ) {
48 - $filter->collection_alias = 'ui';
49 - }
50 -
51 - if ( isset( $filter->ref_id ) ) {
52 - $filter->where[] = $this->wpdb->prepare( 'AND ui.ref_id = %d', $filter->ref_id );
53 - }
54 -
55 - if ( isset( $filter->ref_type ) ) {
56 - $filter->where[] = $this->wpdb->prepare( 'AND ui.ref_type = %s', $filter->ref_type );
57 - }
58 -
59 - if ( isset( $filter->user_item_id ) ) {
60 - $filter->where[] = $this->wpdb->prepare( 'AND ui.user_item_id = %d', $filter->user_item_id );
61 - }
62 -
63 - // Get by user_item_ids
64 - if ( ! empty( $filter->user_item_ids ) ) {
65 - $user_item_ids_format = LP_Helper::db_format_array( $filter->user_item_ids );
66 - $filter->where[] = $this->wpdb->prepare( 'AND ui.user_item_id IN (' . $user_item_ids_format . ')', $filter->user_item_ids );
67 - }
68 -
69 - if ( isset( $filter->user_id ) ) {
70 - $filter->where[] = $this->wpdb->prepare( 'AND ui.user_id = %d', $filter->user_id );
71 - }
72 -
73 - if ( isset( $filter->item_type ) ) {
74 - $filter->where[] = $this->wpdb->prepare( 'AND ui.item_type = %s', $filter->item_type );
75 - }
76 -
77 - if ( ! empty( $filter->item_ids ) ) {
78 - $item_ids_format = LP_Helper::db_format_array( $filter->item_ids );
79 - $filter->where[] = $this->wpdb->prepare( 'AND ui.item_id IN (' . $item_ids_format . ')', $filter->item_ids );
80 - }
81 -
82 - if ( isset( $filter->item_id ) ) {
83 - $filter->where[] = $this->wpdb->prepare( 'AND ui.item_id = %s', $filter->item_id );
84 - }
85 -
86 - if ( isset( $filter->status ) ) {
87 - $filter->where[] = $this->wpdb->prepare( 'AND ui.status = %s', $filter->status );
88 - }
89 -
90 - if ( ! empty( $filter->statues ) ) {
91 - $statues_format = LP_Helper::db_format_array( $filter->statues );
92 - $filter->where[] = $this->wpdb->prepare( 'AND ui.status IN (' . $statues_format . ')', $filter->statues );
93 - }
94 -
95 - if ( isset( $filter->graduation ) ) {
96 - $filter->where[] = $this->wpdb->prepare( 'AND ui.graduation = %s', $filter->graduation );
97 - }
98 -
99 - if ( ! empty( $filter->graduations ) ) {
100 - $graduations_format = LP_Helper::db_format_array( $filter->graduations );
101 - $filter->where[] = $this->wpdb->prepare( 'AND ui.graduation IN (' . $graduations_format . ')', $filter->graduations );
102 - }
103 -
104 - if ( isset( $filter->parent_id ) ) {
105 - $filter->where[] = $this->wpdb->prepare( 'AND ui.parent_id = %s', $filter->parent_id );
106 - }
107 -
108 - $filter = apply_filters( 'lp/user_items/query/filter', $filter );
109 -
110 - return $this->execute( $filter, $total_rows );
111 - }
112 -}
1 +<?php
2 +
3 +namespace LearnPress\Databases;
4 +
5 +use Exception;
6 +use LearnPress\Filters\UserItemsFilter;
7 +use LP_Helper;
8 +
9 +defined( 'ABSPATH' ) || exit();
10 +
11 +/**
12 + * Class UserItemsDB
13 + *
14 + * @since 4.2.9.3
15 + * @version 1.0.0
16 + */
17 +class UserItemsDB extends DataBase {
18 + private static $_instance;
19 +
20 + protected function __construct() {
21 + parent::__construct();
22 + }
23 +
24 + public static function getInstance() {
25 + if ( is_null( self::$_instance ) ) {
26 + self::$_instance = new self();
27 + }
28 +
29 + return self::$_instance;
30 + }
31 +
32 + /**
33 + * Get users items
34 + *
35 + * @return array|null|int|string
36 + * @throws Exception
37 + * @since 4.1.6.9
38 + * @version 1.0.4
39 + */
40 + public function get_user_items( UserItemsFilter $filter, int &$total_rows = 0 ) {
41 + $filter->fields = array_merge( $filter->all_fields, $filter->fields );
42 +
43 + if ( empty( $filter->collection ) ) {
44 + $filter->collection = $this->tb_lp_user_items;
45 + }
46 +
47 + if ( empty( $filter->collection_alias ) ) {
48 + $filter->collection_alias = 'ui';
49 + }
50 +
51 + if ( isset( $filter->ref_id ) ) {
52 + $filter->where[] = $this->wpdb->prepare( 'AND ui.ref_id = %d', $filter->ref_id );
53 + }
54 +
55 + if ( isset( $filter->ref_type ) ) {
56 + $filter->where[] = $this->wpdb->prepare( 'AND ui.ref_type = %s', $filter->ref_type );
57 + }
58 +
59 + if ( isset( $filter->user_item_id ) ) {
60 + $filter->where[] = $this->wpdb->prepare( 'AND ui.user_item_id = %d', $filter->user_item_id );
61 + }
62 +
63 + // Get by user_item_ids
64 + if ( ! empty( $filter->user_item_ids ) ) {
65 + $user_item_ids_format = LP_Helper::db_format_array( $filter->user_item_ids );
66 + $filter->where[] = $this->wpdb->prepare( 'AND ui.user_item_id IN (' . $user_item_ids_format . ')', $filter->user_item_ids );
67 + }
68 +
69 + if ( isset( $filter->user_id ) ) {
70 + $filter->where[] = $this->wpdb->prepare( 'AND ui.user_id = %d', $filter->user_id );
71 + }
72 +
73 + if ( isset( $filter->item_type ) ) {
74 + $filter->where[] = $this->wpdb->prepare( 'AND ui.item_type = %s', $filter->item_type );
75 + }
76 +
77 + if ( ! empty( $filter->item_ids ) ) {
78 + $item_ids_format = LP_Helper::db_format_array( $filter->item_ids );
79 + $filter->where[] = $this->wpdb->prepare( 'AND ui.item_id IN (' . $item_ids_format . ')', $filter->item_ids );
80 + }
81 +
82 + if ( isset( $filter->item_id ) ) {
83 + $filter->where[] = $this->wpdb->prepare( 'AND ui.item_id = %s', $filter->item_id );
84 + }
85 +
86 + if ( isset( $filter->status ) ) {
87 + $filter->where[] = $this->wpdb->prepare( 'AND ui.status = %s', $filter->status );
88 + }
89 +
90 + if ( ! empty( $filter->statues ) ) {
91 + $statues_format = LP_Helper::db_format_array( $filter->statues );
92 + $filter->where[] = $this->wpdb->prepare( 'AND ui.status IN (' . $statues_format . ')', $filter->statues );
93 + }
94 +
95 + if ( isset( $filter->graduation ) ) {
96 + $filter->where[] = $this->wpdb->prepare( 'AND ui.graduation = %s', $filter->graduation );
97 + }
98 +
99 + if ( ! empty( $filter->graduations ) ) {
100 + $graduations_format = LP_Helper::db_format_array( $filter->graduations );
101 + $filter->where[] = $this->wpdb->prepare( 'AND ui.graduation IN (' . $graduations_format . ')', $filter->graduations );
102 + }
103 +
104 + if ( isset( $filter->parent_id ) ) {
105 + $filter->where[] = $this->wpdb->prepare( 'AND ui.parent_id = %s', $filter->parent_id );
106 + }
107 +
108 + $filter = apply_filters( 'lp/user_items/query/filter', $filter );
109 +
110 + return $this->execute( $filter, $total_rows );
111 + }
112 +}