PHP code example of yaroslawww / laravel-periodic-notice
1. Go to this page and download the library: Download yaroslawww/laravel-periodic-notice library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
yaroslawww / laravel-periodic-notice example snippets
use PeriodicNotice\Concerns\HasPeriodicNotice;
use PeriodicNotice\Contracts\NotificationReceiver;
use PeriodicNotice\PeriodicNoticeDirector;
class User extends \Illuminate\Foundation\Auth\User implements NotificationReceiver
{
use Notifiable;
use HasPeriodicNotice;
public function periodicNoticeDirector(string $group = 'default'): PeriodicNoticeDirector
{
$dayInSeconds = 60 * 60 * 24;
return PeriodicNoticeDirector::defaults($group)
->usePeriodType($this->periodic_notification_type)
->usePeriodTypesMap([
'every_day' => round($dayInSeconds),
'every_week' => round($dayInSeconds * 7),
])
->useQueryToGetEntries(Post::class);
}
public function scopeWithNotificationPeriodType(Builder $query, string $type, string $group = 'default')
{
$query->where('periodic_notification_type', '=', $type);
}
}
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
use PeriodicNotice\Concerns\InPeriodicNotice;
use PeriodicNotice\Contracts\SendableEntity;
use PeriodicNotice\Tests\Fixtures\Factories\PostFactory;
class Post extends Model implements SendableEntity
{
use InPeriodicNotice;
public function scopeReleasedAfter(Builder $query, \DateTimeInterface|string $dateTime, string $group)
{
$query->where('published_at', '>=', $dateTime);
}
}