function cacheflush_cron_cacheflush_update in CacheFlush 8
Implements hook_ENTITY_TYPE_update().
1 call to cacheflush_cron_cacheflush_update()
- cacheflush_cron_cacheflush_insert in modules/
cacheflush_cron/ cacheflush_cron.module - Implements hook_ENTITY_TYPE_insert().
File
- modules/
cacheflush_cron/ cacheflush_cron.module, line 82 - Cacheflush cron module.
Code
function cacheflush_cron_cacheflush_update(EntityInterface $entity) {
$cron_job = CronJob::load('cacheflush_preset_' . $entity
->id());
$has_cron_assigned = (bool) $entity->cron
->getValue()[0]['value'];
if ($has_cron_assigned === TRUE) {
if (!$cron_job) {
$values = [
'id' => 'cacheflush_preset_' . $entity
->id(),
'callback' => 'cacheflush_cron_clear_preset',
'module' => 'cacheflush_cron',
'status' => TRUE,
'title' => 'Cacheflush cron preset ' . $entity
->id(),
];
$cron_job = CronJob::create($values);
$cron_job
->save();
}
else {
if ($cron_job && $cron_job
->status() === FALSE) {
$cron_job
->setStatus(TRUE);
$cron_job
->save();
}
}
}
else {
if (!$has_cron_assigned && $cron_job && $cron_job
->status() === TRUE) {
$cron_job
->setStatus(FALSE);
$cron_job
->save();
}
}
}