-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathServiceProvider.php
More file actions
32 lines (28 loc) · 1.14 KB
/
ServiceProvider.php
File metadata and controls
32 lines (28 loc) · 1.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
namespace TransformStudios\Events;
use Statamic\Facades\Collection;
use Statamic\Facades\Field;
use Statamic\Providers\AddonServiceProvider;
use Statamic\Statamic;
class ServiceProvider extends AddonServiceProvider
{
public function bootAddon()
{
Field::computedDefault('default-events-timezone', fn () => Statamic::displayTimezone());
Field::computedDefault('default-event-timezone', fn () => Events::defaultTimezone());
// has to be in booted so that the `events::event` fieldset is properly registered and loaded
$this->booted(function () {
collect(Events::setting('collections', ['events']))
->each(function (string $collection) {
Collection::findByHandle($collection)?->entryBlueprint()->ensureField(
'timezone',
[
'dictionary' => 'timezones',
'max_items' => '1',
'type' => 'dictionary',
'default' => 'computed:default-event-timezone',
]);
});
});
}
}