/** * Prepares and send the review request mail * * @since 1.0.0 * @param $order_id int the order id * @param $days * @param $items_to_review * @param $stored_items * @return void * @author Alberto Ruggiero */ static function send_email($order_id, $days, $items_to_review = array(), $stored_items = array()) { $list = YWRR_Emails::get_review_list($order_id); $wc_email = WC_Emails::instance(); $email = $wc_email->emails['YWRR_Request_Mail']; $email->trigger($order_id, $list, $days); }
/** * Returns single instance of the class * * @return \YWRR_Emails * @since 1.0.0 */ public static function get_instance() { if (is_null(self::$instance)) { self::$instance = new self($_REQUEST); } return self::$instance; }
/** * Handles the daily mail sending * * @since 1.0.0 * @return void * @author Alberto Ruggiero */ static function daily_schedule() { global $wpdb; $orders = $wpdb->get_results($wpdb->prepare("\r\n SELECT order_id\r\n FROM {$wpdb->prefix}ywrr_email_schedule\r\n WHERE mail_status = 'pending' AND scheduled_date <= %s\r\n ", current_time('mysql'))); foreach ($orders as $item) { YWRR_Emails::send_email($item->order_id, get_option('ywrr_mail_schedule_day')); self::change_schedule_status($item->order_id, 'sent'); } }