'', 'coupon' => array(), 'discount_type' => 'smart_coupon', 'smart_coupon_type' => '', 'receiver_name' => '', 'message_from_sender' => '', 'gift_certificate_sender_name' => '', 'gift_certificate_sender_email' => '', 'from' => '', 'sender' => '', 'is_gift' => false, ); /** * Get shop page url * * @return string $url Shop page url */ public function get_url() { global $woocommerce_smart_coupon; if ( $woocommerce_smart_coupon->is_wc_gte_30() ) { $page_id = wc_get_page_id( 'shop' ); } else { $page_id = woocommerce_get_page_id( 'shop' ); } $url = ( get_option( 'permalink_structure' ) ) ? get_permalink( $page_id ) : get_post_type_archive_link( 'product' ); return $url; } /** * Function to get sender name. * * @return string $sender_name Sender name. */ public function get_sender_name() { if ( isset( $this->email_args['gift_certificate_sender_name'] ) && ! empty( $this->email_args['gift_certificate_sender_name'] ) ) { $sender_name = $this->email_args['gift_certificate_sender_name']; } else { $sender_name = is_callable( array( $this, 'get_blogname' ) ) ? $this->get_blogname() : ''; } return $sender_name; } /** * Function to get sender email. * * @return string $sender_email Sender email. */ public function get_sender_email() { $sender_email = isset( $this->email_args['gift_certificate_sender_email'] ) ? $this->email_args['gift_certificate_sender_email'] : ''; return $sender_email; } /** * Initialize Settings Form Fields */ public function init_form_fields() { /* translators: %s: list of placeholders */ $placeholder_text = sprintf( __( 'Available placeholders: %s', 'woocommerce-smart-coupons' ), '' . implode( ', ', array_keys( $this->placeholders ) ) . '' ); $this->form_fields = array( 'enabled' => array( 'title' => __( 'Enable/Disable', 'woocommerce-smart-coupons' ), 'type' => 'checkbox', 'label' => __( 'Enable this email notification', 'woocommerce-smart-coupons' ), 'default' => 'yes', ), 'email_type' => array( 'title' => __( 'Email type', 'woocommerce-smart-coupons' ), 'type' => 'select', 'description' => __( 'Choose which format of email to send.', 'woocommerce-smart-coupons' ), 'default' => 'html', 'class' => 'email_type wc-enhanced-select', 'options' => $this->get_email_type_options(), 'desc_tip' => true, ), 'subject' => array( 'title' => __( 'Subject', 'woocommerce-smart-coupons' ), 'type' => 'text', 'desc_tip' => true, 'description' => $placeholder_text, 'placeholder' => $this->get_default_subject(), 'default' => '', ), 'heading' => array( 'title' => __( 'Email heading', 'woocommerce-smart-coupons' ), 'type' => 'text', 'desc_tip' => true, 'description' => $placeholder_text, 'placeholder' => $this->get_default_heading(), 'default' => '', ), ); } /** * Function to update SC admin email settings when WC email settings get updated */ public function process_admin_options() { // Save regular options. parent::process_admin_options(); $is_email_enabled = $this->get_field_value( 'enabled', $this->form_fields['enabled'] ); if ( ! empty( $is_email_enabled ) ) { update_option( 'smart_coupons_is_send_email', $is_email_enabled, 'no' ); } } } }