---
title: "Tiché hodiny a časové pásma — Notifications for Laravel | Roundly"
description: "Podržanie neurgentných e-mailov počas miestnych tichých hodín používateľa, určenie časového pásma, zmena času a predvoľba pre ostatných."
url: https://roundly-consulting.com/sk/open-source/navody/notifications-for-laravel/tiche-hodiny
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[Notifications for Laravel](https://roundly-consulting.com/sk/open-source/navody/notifications-for-laravel.md)

# Tiché hodiny a časové pásma

Tiché hodiny sú miestne časy HH:MM v časovom pásme používateľa a môžu prechádzať cez polnoc:

```php
$prefs = Notifications::preferences($user);

$prefs->quietHours('22:00', '07:00');   // local HH:MM, may cross midnight; equal times are refused
$prefs->quietHours(null);               // clears them
$prefs->quietHoursPreference();         // the user's, else notifications.quiet_hours.default, else null

$prefs->timezone('Europe/Bratislava');  // an IANA id; null clears it
$prefs->resolvedTimezone();
```

```php
// config/notifications.php — for users without their own
'quiet_hours' => [
    'enabled' => true,
    'default' => ['start' => '22:00', 'end' => '07:00'],
],
```

- Neurgentný e-mail vytvorený počas tichých hodín sa podrží do ich konca (spustí sa NotificationMailHeld).
- Urgentné druhy sa nikdy nepodržia. Povinný znamená „nedá sa stlmiť“, nie „zobudí vás“: povinný neurgentný druh sa podrží.
- Podržaný e-mail alebo e-mail na konci okna sa pri doručení overí znova a ak medzitým začali tiché hodiny, znova sa podrží.
- Čas súhrnu, ktorý padne do tichých hodín, sa posunie na ich koniec.
- Zmena času: miestny koniec, ktorý neexistuje (jarný posun), sa posunie dopredu (02:30 → 03:30); nejednoznačný použije prvý výskyt.
- notifications.quiet\_hours.enabled je globálny prepínač.

## Určenie časového pásma

Predvolený resolver (notifications.timezone.resolver) použije prvé platné IANA id z:

- HasNotificationTimezone::notificationTimezone() príjemcu;
- uloženej preferencie ($prefs->timezone('Europe/Bratislava'));
- atribútu notifications.timezone.attribute (timezone; prázdna hodnota ho vypne), čítaného len ak je medzi atribútmi — bezpečné aj v strict mode;
- config('app.timezone').

Neplatné id sa preskočí a zaloguje raz na príjemcu a proces; pri doručení nikdy nevyhodí výnimku. Ak ho potrebujete čítať inde, naviažte vlastný ResolvesTimezone:

```php
use Illuminate\Database\Eloquent\Model;
use RoundlyConsulting\Notifications\Contracts\ResolvesTimezone;

final class WorkspaceTimezoneResolver implements ResolvesTimezone
{
    public function timezone(Model $recipient): string
    {
        return $recipient->workspace?->timezone ?? config('app.timezone');
    }
}

// config/notifications.php
'timezone' => ['resolver' => App\Notifications\WorkspaceTimezoneResolver::class, 'attribute' => 'timezone'],
```

## Jazyk

E-maily sa vykresľujú v preferredLocale() príjemcu; nadpisy v schránke v jazyku požiadavky čitateľa so snímkou v jazyku príjemcu. Samostatná jazyková preferencia neexistuje.

## Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

[Ďalšie spôsoby podpory vrátane kryptomien](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/notifications-for-laravel.md)
