PluginProbe
SupportCandy – AI Customer Support Ticket System & Live Chatbot Agent / 3.3.8
SupportCandy – AI Customer Support Ticket System & Live Chatbot Agent v3.3.8
3.5.4 3.5.3 3.5.2 3.5.1 3.4.9 3.5.0 3.4.8 3.4.7 trunk 2.3.1 3.3.6 3.3.7 3.3.8 3.3.9 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.6
supportcandy / includes / admin / email-notifications / class-wpsc-en-delete-ticket.php

class-wpsc-en-delete-ticket.php in SupportCandy – AI Customer Support Ticket System & Live Chatbot Agent 3.3.8, at includes/admin/email-notifications/class-wpsc-en-delete-ticket.php

99 lines 2.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 if ( ! defined( 'ABSPATH' ) ) {
3 exit; // Exit if accessed directly!
4 }
5
6 if ( ! class_exists( 'WPSC_EN_Delete_Ticket' ) ) :
7
8 final class WPSC_EN_Delete_Ticket extends WPSC_Email_Notifications {
9
10 /**
11 * Slug for this event (must be unique)
12 *
13 * @var string
14 */
15 private static $slug = 'delete-ticket';
16
17 /**
18 * Ticket object
19 *
20 * @var WPSC_Ticket
21 */
22 public $ticket;
23
24 /**
25 * Initialize this class
26 */
27 public static function init() {
28
29 // process event.
30 add_action( 'wpsc_delete_ticket', array( __CLASS__, 'process_event' ), 200 );
31 }
32
33 /**
34 * Load this event for email notifications
35 *
36 * @param array $events - event.
37 * @return array
38 */
39 public static function load_event( $events ) {
40
41 $events[ self::$slug ] = esc_attr__( 'Delete ticket', 'supportcandy' );
42 return $events;
43 }
44
45 /**
46 * Process emails for this event
47 *
48 * @param WPSC_Ticket $ticket - ticket info.
49 * @return void
50 */
51 public static function process_event( $ticket ) {
52
53 $gs = get_option( 'wpsc-en-general' );
54 $email_templates = get_option( 'wpsc-email-templates', array() );
55
56 foreach ( $email_templates as $key => $et ) {
57
58 if ( $et['event'] != self::$slug ) {
59 continue;
60 }
61
62 // email notification object.
63 $en = new self();
64
65 // set properties.
66 $en->ticket = $ticket;
67
68 // set template.
69 $en->template = $et;
70 $en->template_key = $key;
71
72 // check whether conditions matches (if any).
73 if ( ! $en->is_valid() ) {
74 continue;
75 }
76
77 $en = apply_filters( 'wpsc_en_before_sending', $en );
78
79 // send an email.
80 WPSC_Background_Email::insert(
81 array(
82 'from_name' => $en->from_name,
83 'from_email' => $en->from_email,
84 'reply_to' => $gs['reply-to'],
85 'subject' => $en->subject,
86 'body' => $en->body,
87 'to_email' => implode( '|', $en->to ),
88 'cc_email' => implode( '|', $en->cc ),
89 'bcc_email' => implode( '|', $en->bcc ),
90 'priority' => 2,
91 )
92 );
93 }
94 }
95 }
96 endif;
97
98 WPSC_EN_Delete_Ticket::init();
99