Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/tutor/models/BillingModel.php

Keine Baseline-Datei – Diff nur gegen leer.
Zur Liste
1 -
1 + <?php
2 + /**
3 + * Billing Model
4 + *
5 + * @package Tutor\Models
6 + * @author Themeum <support@themeum.com>
7 + * @link https://themeum.com
8 + * @since 3.0.0
9 + */
10 +
11 + namespace Tutor\Models;
12 +
13 + use Tutor\Helpers\QueryHelper;
14 +
15 + /**
16 + * Billing model class for performing billing functionalities
17 + */
18 + class BillingModel {
19 +
20 + /**
21 + * Fillable fields
22 + *
23 + * @var array
24 + */
25 + private $fillable_fields = array(
26 + 'billing_first_name',
27 + 'billing_last_name',
28 + 'billing_email',
29 + 'billing_phone',
30 + 'billing_zip_code',
31 + 'billing_address',
32 + 'billing_country',
33 + 'billing_state',
34 + 'billing_city',
35 + );
36 +
37 + /**
38 + * Required fields
39 + *
40 + * @var array
41 + */
42 + private $required_fields = array(
43 + 'billing_first_name',
44 + 'billing_last_name',
45 + 'billing_email',
46 + 'billing_phone',
47 + 'billing_zip_code',
48 + 'billing_address',
49 + 'billing_country',
50 + 'billing_state',
51 + 'billing_city',
52 + );
53 +
54 + /**
55 + * Get fillable fields
56 + *
57 + * @return array
58 + */
59 + public function get_fillable_fields() {
60 + return $this->fillable_fields;
61 + }
62 +
63 + /**
64 + * Get required fields
65 + *
66 + * @return array
67 + */
68 + public function get_required_fields() {
69 + return $this->required_fields;
70 + }
71 +
72 + /**
73 + * Insert billing info
74 + *
75 + * @param array $data Bulling info data.
76 + *
77 + * @return int The ID of the inserted row on success, or 0 on failure.
78 + */
79 + public function insert( $data ) {
80 + global $wpdb;
81 +
82 + return QueryHelper::insert(
83 + "{$wpdb->prefix}tutor_customers",
84 + $data,
85 + );
86 + }
87 +
88 + /**
89 + * Update billing info
90 + *
91 + * @param array $data Bulling info data.
92 + * @param array $where Where condition.
93 + *
94 + * @return bool True on success, false on failure.
95 + */
96 + public function update( $data, $where ) {
97 + global $wpdb;
98 +
99 + return QueryHelper::update(
100 + "{$wpdb->prefix}tutor_customers",
101 + $data,
102 + $where,
103 + );
104 + }
105 +
106 + /**
107 + * Get billing info
108 + *
109 + * @param int $user_id User ID.
110 + *
111 + * @return object|false The billing info as an object if found, or false if not found.
112 + */
113 + public function get_info( $user_id ) {
114 + global $wpdb;
115 +
116 + $billing_info = QueryHelper::get_row(
117 + "{$wpdb->prefix}tutor_customers",
118 + array(
119 + 'user_id' => $user_id,
120 + ),
121 + 'id'
122 + );
123 + return $billing_info;
124 + }
125 + }
126 +