Refactor Cron class to improve query fetching and enhance email configuration with settings

This commit is contained in:
2024-11-16 09:13:08 +01:00
parent 13e9c2f054
commit d2daa98f7e
2 changed files with 9 additions and 8 deletions

View File

@@ -129,18 +129,19 @@ class Cron
. 'FROM '
. 'tasks AS t '
. 'WHERE '
. 'reminders_interval IS NOT NULL AND reminders_send = 0 AND status != 2 AND deleted = 0 AND date_end IS NOT NULL' ) -> fetchAll();
. 'reminders_interval IS NOT NULL AND reminders_send = 0 AND status != 2 AND deleted = 0 AND date_end IS NOT NULL' ) -> fetchAll( \PDO::FETCH_ASSOC );
if ( is_array( $results ) and!empty( $results ) ) foreach ( $results as $row )
{
$days_counter = explode( ',', $row['reminders_interval'] );
rsort( $days_counter );
if ( is_array( $days_counter ) and!empty( $days_counter ) ) foreach ( $days_counter as $dc )
if ( is_array( $days_counter ) ) foreach ( $days_counter as $dc )
{
if ( !$mdb -> count( 'tasks_reminders', ['AND' => ['task_id' => $row['id'], 'day_counter' => $dc]] ) )
if ( !$mdb -> count( 'tasks_reminders', [ 'AND' => [ 'task_id' => $row['id'], 'day_counter' => $dc ] ] ) )
{
$send = false;
$date_tmp = date( 'Y-m-d', strtotime( '+' . $dc . 'days', strtotime( date( 'Y-m-d' ) ) ) );
if ( $date_tmp >= $row['date_end'] )
{
if ( !$mdb -> count( 'tasks_reminders', ['AND' => ['task_id' => $row['id'], 'day_counter' => $dc]] ) )
@@ -151,7 +152,7 @@ class Cron
{
foreach ( $users as $user )
{
$user_email = $mdb -> get( 'users', 'email', ['id' => $user] );
$user_email = $mdb -> get( 'users', 'email', ['id' => $user] ); echo $user_mail;
date( 'Y-m-d', strtotime( $row['date_end'] ) ) == date( 'Y-m-d' ) ? $date = 'dzisiaj' : $date = date( 'Y-m-d', strtotime( $row['date_end'] ) );

View File

@@ -209,10 +209,10 @@ class S
$mail = new PHPMailer;
$mail -> IsSMTP();
$mail -> SMTPAuth = true;
$mail -> Host = 'host117523.hostido.net.pl';
$mail -> Port = 25;
$mail -> Username = 'www@projectpro.pl';
$mail -> Password = 'pMCZHCHBywtDGaVz';
$mail -> Host = $settings['email_host'];
$mail -> Port = $settings['email_port'];
$mail -> Username = $settings['email_login'];
$mail -> Password = $settings['email_password'];
$mail -> CharSet = "UTF-8";
$mail -> SMTPOptions = array(
'ssl' => array(