Page MenuHomePhorge

GroupSettingObserver.php
No OneTemporary

Authored By
Unknown
Size
1 KB
Referenced Files
None
Subscribers
None

GroupSettingObserver.php

<?php
namespace App\Observers;
use App\GroupSetting;
class GroupSettingObserver
{
/**
* Handle the group setting "created" event.
*
* @param \App\GroupSetting $groupSetting Settings object
*
* @return void
*/
public function created(GroupSetting $groupSetting)
{
$this->dispatchUpdateJob($groupSetting);
}
/**
* Handle the group setting "updated" event.
*
* @param \App\GroupSetting $groupSetting Settings object
*
* @return void
*/
public function updated(GroupSetting $groupSetting)
{
$this->dispatchUpdateJob($groupSetting);
}
/**
* Handle the group setting "deleted" event.
*
* @param \App\GroupSetting $groupSetting Settings object
*
* @return void
*/
public function deleted(GroupSetting $groupSetting)
{
$this->dispatchUpdateJob($groupSetting);
}
/**
* Dispatch group update job (if needed).
*
* @param \App\GroupSetting $groupSetting Settings object
*/
private function dispatchUpdateJob(GroupSetting $groupSetting): void
{
if (
(\config('app.with_ldap') && in_array($groupSetting->key, \App\Backends\LDAP::GROUP_SETTINGS))
|| (\config('app.with_imap') && in_array($groupSetting->key, \App\Backends\IMAP::GROUP_SETTINGS))
) {
\App\Jobs\Group\UpdateJob::dispatch($groupSetting->group_id);
}
}
}

File Metadata

Mime Type
text/x-php
Expires
Fri, Apr 24, 1:11 PM (5 d, 23 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18732489
Default Alt Text
GroupSettingObserver.php (1 KB)

Event Timeline