PluginProbe
YayMail – WooCommerce Email Customizer / 4.3.4
YayMail – WooCommerce Email Customizer v4.3.4
4.4.4 4.4.3 4.4.2 4.4.1 trunk 1.9.6 2.1.4 2.1.5 3.2.2 3.2.6 3.2.7.1 3.2.8.1 3.2.9 3.3 3.3.1 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9 3.4 3.4.1 3.4.2 3.4.3 All 55 releases
yaymail / src / Emails / CustomerOnHoldOrder.php

CustomerOnHoldOrder.php in YayMail – WooCommerce Email Customizer 4.3.4, at src/Emails/CustomerOnHoldOrder.php

90 lines 3.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace YayMail\Emails;
4
5 use YayMail\Abstracts\BaseEmail;
6 use YayMail\Elements\ElementsLoader;
7 use YayMail\Utils\SingletonTrait;
8
9 /**
10 * CustomerOnHoldOrder Class
11 *
12 * @method static CustomerOnHoldOrder get_instance()
13 */
14 class CustomerOnHoldOrder extends BaseEmail {
15 use SingletonTrait;
16
17 protected function __construct() {
18 $emails = \WC_Emails::instance()->get_emails();
19
20 $email = $emails['WC_Email_Customer_On_Hold_Order'];
21 if ( ! $email ) {
22 return;
23 }
24
25 $this->id = $email->id;
26 $this->title = $email->get_title();
27 $this->root_email = $email;
28 $this->recipient = function_exists( 'yaymail_get_email_recipient_zone' ) ? yaymail_get_email_recipient_zone( $email ) : '';
29
30 $this->render_priority = apply_filters( 'yaymail_email_render_priority', $this->render_priority, $this->id );
31 add_filter( 'wc_get_template', [ $this, 'get_template_file' ], $this->render_priority ?? 10, 3 );
32 $this->maybe_disable_block_email_editor();
33 }
34
35 public function get_default_elements() {
36 $email_title = __( 'Thank you for your order', 'woocommerce' );
37 // translators: customer name.
38 $email_hi = sprintf( esc_html__( 'Hi %s,', 'woocommerce' ), '[yaymail_billing_first_name]' );
39 $email_text = esc_html__( 'Thanks for your order. It\'s on-hold until we confirm that payment has been received. In the meantime, here\'s a reminder of what you ordered:', 'woocommerce' );
40 $additional_text = __( 'We look forward to fulfilling your order soon.', 'woocommerce' );
41
42 $default_elements = ElementsLoader::load_elements(
43 [
44 [
45 'type' => 'Logo',
46 ],
47 [
48 'type' => 'Heading',
49 'attributes' => [
50 'rich_text' => $email_title,
51 ],
52 ],
53 [
54 'type' => 'Text',
55 'attributes' => [
56 'rich_text' => '<p><span>' . $email_hi . '<br /><br /></span></p><p><span>' . $email_text . '</span></p>',
57 ],
58 ],
59 [
60 'type' => 'OrderDetails',
61 ],
62 [
63 'type' => 'BillingShippingAddress',
64 ],
65 [
66 'type' => 'Text',
67 'attributes' => [
68 'rich_text' => '<p><span>' . $additional_text . '</span></p>',
69 'padding' => [
70 'top' => '0',
71 'right' => '50',
72 'bottom' => '38',
73 'left' => '50',
74 ],
75 ],
76 ],
77 [
78 'type' => 'Footer',
79 ],
80 ]
81 );
82
83 return $default_elements;
84 }
85
86 public function get_template_path() {
87 return yaymail_get_template( 'emails/customer-on-hold-order.php', '', YAYMAIL_PLUGIN_PATH . 'templates/' );
88 }
89 }
90