0, 'started' => time() ); Setting::setValue(self::MAILER_LOG_CONFIG, $mailer_log); return $mailer_log; } static function updateMailerLog($mailer_log) { Setting::setValue(self::MAILER_LOG_CONFIG, $mailer_log); return $mailer_log; } static function isSendingLimitReached() { $mailer = Mailer::getMailer(); $mailer_log = self::getMailerLog(); $elapsed_time = time() - (int)$mailer_log['started']; if($mailer_log['sent'] === $mailer['frequency_limit'] && $elapsed_time <= $mailer['frequency_interval'] ) { return true; } if($elapsed_time > $mailer['frequency_interval']) { self::createOrResetMailerLog(); } return false; } }