PluginProbe
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses / 4.4.9.1
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses v4.4.9.1
4.4.9.1 4.4.9 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 All 141 releases
← All changes | inc/Ajax/SendEmailAjax.php +74 -0 4.3.7 → 4.4.9.1 View file →
@@ -34,8 +34,12 @@
34 34 use LP_Email_New_Order_Instructor;
35 35 use LP_Email_New_Order_User;
36 36 use LP_Email_Processing_Order_Guest;
37 37 use LP_Email_Processing_Order_User;
38 +use LP_Email_Refund_Request_Order_Admin;
39 +use LP_Email_Refunded_Order_Admin;
40 +use LP_Email_Refunded_Order_Instructor;
41 +use LP_Email_Refunded_Order_User;
38 42 use LP_Helper;
39 43 use LP_REST_Response;
40 44 use Throwable;
41 45
@@ -170,8 +174,78 @@
170 174 LP_Email_Cancelled_Order_User::class,
171 175 LP_Email_Cancelled_Order_Admin::class,
172 176 LP_Email_Cancelled_Order_Guest::class,
173 177 LP_Email_Cancelled_Order_Instructor::class,
178 + ]
179 + );
180 +
181 + foreach ( $email_classes as $email_class ) {
182 + if ( class_exists( $email_class ) ) {
183 + $email = new $email_class();
184 + /** @var LP_Email $email */
185 + $email->handle( $data_send );
186 + }
187 + }
188 + } catch ( Throwable $e ) {
189 + $response->status = 'error';
190 + $response->message = $e->getMessage();
191 + }
192 +
193 + wp_send_json( $response );
194 + }
195 +
196 + /**
197 + * Send mail when order status update to refunded.
198 + *
199 + * @since 4.3.4
200 + * @version 1.0.0
201 + */
202 + public function send_mail_order_status_update_to_refunded() {
203 + $response = new LP_REST_Response();
204 +
205 + try {
206 + $data_send = LP_Helper::sanitize_params_submitted( $_POST['params'] ?? [] );
207 +
208 + $email_classes = apply_filters(
209 + 'learn-press/order-status-update-to-refunded/send-mail',
210 + [
211 + LP_Email_Refunded_Order_User::class,
212 + LP_Email_Refunded_Order_Admin::class,
213 + LP_Email_Refunded_Order_Instructor::class,
214 + ]
215 + );
216 +
217 + foreach ( $email_classes as $email_class ) {
218 + if ( class_exists( $email_class ) ) {
219 + $email = new $email_class();
220 + /** @var LP_Email $email */
221 + $email->handle( $data_send );
222 + }
223 + }
224 + } catch ( Throwable $e ) {
225 + $response->status = 'error';
226 + $response->message = $e->getMessage();
227 + }
228 +
229 + wp_send_json( $response );
230 + }
231 +
232 + /**
233 + * Send mail when order has a refund request from user.
234 + *
235 + * @since 4.3.4
236 + * @version 1.0.0
237 + */
238 + public function send_mail_order_refund_requested() {
239 + $response = new LP_REST_Response();
240 +
241 + try {
242 + $data_send = LP_Helper::sanitize_params_submitted( $_POST['params'] ?? [] );
243 +
244 + $email_classes = apply_filters(
245 + 'learn-press/order-refund-requested/send-mail',
246 + [
247 + LP_Email_Refund_Request_Order_Admin::class,
174 248 ]
175 249 );
176 250
177 251 foreach ( $email_classes as $email_class ) {