/home3/bmscom/webinar.bmice.com/wp-content/plugins/webinar-ignition/inc/schedule_email_live.php
<?php defined( 'ABSPATH' ) || exit;
use Carbon\Carbon;
if (!isset($campaignID))
{
require_once('schedule_notifications.php');
}
else
{
// Get Results
$webinar_data = WebinarignitionManager::get_webinar_data($campaignID);
if( !empty($webinar_data->time_format ) && ( $webinar_data->time_format == '12hour' || $webinar_data->time_format == '24hour' ) ){ //old formats
$webinar_data->time_format = get_option( "time_format", 'H:i' );
}
$time_format = $webinar_data->time_format;
// SETUP :: Core Time Settings
$TZID = webinarignition_convert_utc_to_tzid($webinar_data->webinar_timezone);
date_default_timezone_set("$TZID");
$date_and_time = date('Y-m-d H:i');
$date_only = date('Y-m-d');
$time_only = date('H:i');
$time_only_e = explode(":", $time_only);
// SETUP :: Buffer Zone
$time = strtotime($time_only);
$startTime = date("H:i", strtotime('-30 minutes', $time));
$endTime = date("H:i", strtotime('+30 minutes', $time));
$time_buffer = $time_only_e[1] - 10;
$time_buffer2 = $time_only_e[1] + 10;
$dt_buffer_n = $date_only . " " . $startTime;
$dt_buffer_p = $date_only . " " . $endTime;
// #####################################
//
// ### Schedule Checks - Match Time/Date
//
// #####################################
//
// NOTIFICATION EMAIL #1
//
// #####################################
//
$time = time();
$timeonly = ( empty($webinar_data->display_tz ) || ( !empty($webinar_data->display_tz) && ($webinar_data->display_tz == 'yes') ) ) ? false : true;
$webinar_utc = trim(webinarignition_get_time_tz($time, $time_format, $webinar_data->webinar_timezone, true, $timeonly));
$date = date('Y-m-d', $time);
$today = date('Y-m-d');
for ($num = 5; $num > 0; $num--) {
if( isset( $webinar_data->{"email_notiff_date_{$num}"} ) && isset( $webinar_data->{"email_notiff_time_{$num}"} ) ) {
$notification_date = webinarignition_build_time($webinar_data->{"email_notiff_date_{$num}"}, $webinar_data->{"email_notiff_time_{$num}"});
} else {
$notification_date = '';
}
if ( isset( $webinar_data->{"email_notiff_" . $num} ) && $webinar_data->{"email_notiff_" . $num} != "off" && isset( $webinar_data->{"email_notiff_status_{$num}"} ) && $webinar_data->{"email_notiff_status_{$num}"} != "sent" && ($time - strtotime($notification_date)) >= 0 ) {
$dateInWebinarTz = new Carbon( 'today', $webinar_data->webinar_timezone );
$formattedDate = $dateInWebinarTz->format('m-d-Y');
//if this is the day-before notification "WEBINAR REMINDER :: Goes Live Tomorrow" and the webinar is today, do not send.
if( ( $num == 1 ) && ( $formattedDate == $webinar_data->webinar_date ) ){
$webinar_data->{"email_notiff_status_{$num}"} = "sent";
update_option('webinarignition_campaign_' . $campaignID, $webinar_data);
continue;
}
if( isset( $webinar_data->webinar_date ) ) {
WebinarIgnition_Logs::add(webinarignition_prettifyNotificationTitle($num) . " ($notification_date) ".__( "triggered for webinar starting on", 'webinarignition')." {$webinar_data->webinar_date} @ {$webinar_data->webinar_start_time} ($webinar_utc)", $campaignID, WebinarIgnition_Logs::LIVE_EMAIL);
}
$webinar_data->{"email_notiff_status_{$num}"} = "sent";
update_option('webinarignition_campaign_' . $campaignID, $webinar_data);
webinarignition_send_email($campaignID, $num, $webinar_data);
}
}
//
// #####################################
//
// NOTIFICATION TXT
//
// #####################################
//
if( isset( $webinar_data->email_twilio ) && $webinar_data->email_twilio != "off" ) {
$notification_date = webinarignition_build_time($webinar_data->email_twilio_date, $webinar_data->email_twilio_time);
if ( isset( $webinar_data->email_twilio_status ) && $webinar_data->email_twilio_status != "sent" && ($time - strtotime($notification_date)) >= 0 ) {
WebinarIgnition_Logs::add("TXT notification ($notification_date) ".__( "triggered for webinar starting on", 'webinarignition')." {$webinar_data->webinar_date} @ {$webinar_data->webinar_start_time} ($webinar_utc)", $campaignID, WebinarIgnition_Logs::LIVE_SMS);
if( !empty( $webinar_data->twilio_id ) && !empty( $webinar_data->twilio_token ) ){
webinarignition_send_txt($webinar_data);
$webinar_data->email_twilio_status = "sent";
}
update_option('webinarignition_campaign_' . $campaignID, $webinar_data);
}
}
}