NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky

Výmena modelov

Nasmerujte models.calendar, models.schedule alebo models.exception_rule na podtriedu modelu z balíka — zámerne nie sú final. Kľúče nastavte v konfigurácii, nie za behu; trieda, ktorá nie je modelom balíka ani jeho podtriedou, vyhodí InvalidConfigurationException z toolkitu s názvom kľúča — nikdy sa potichu nenahradí:

// app/Models/Calendar.php
namespace App\Models;

final class Calendar extends \RoundlyConsulting\OpeningHours\Models\Calendar
{
    protected $connection = 'tenant';
}

// config/opening-hours.php
'models' => [
    'calendar' => App\Models\Calendar::class,
    'schedule' => RoundlyConsulting\OpeningHours\Models\Schedule::class,
    'exception_rule' => RoundlyConsulting\OpeningHours\Models\ExceptionRule::class,
],

Transakcie používajú vlastné pripojenie modelu kalendára, takže vymenený model na inom pripojení funguje.

Hooky vlastníka

  • openingHoursTimezone(): ?string — časové pásmo pre kalendáre bez vlastného.
  • openingHoursDynamicExceptions(): array — inštancie DynamicExceptionProvider uplatnené na kalendáre vlastníka.

Vlastní poskytovatelia

Implementujte DynamicExceptionProvider pre vypočítané sviatky (pozri Výnimky a sviatky) a BusyPeriodProvider pre akýkoľvek zdroj obsadeného času (pozri Poskytovatelia obsadenosti). Nič z toho netreba registrovať — odovzdajte ich hooku vlastníka, withDynamicExceptions() alebo withBusyPeriods().

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

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

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.