bramdeleeuw/silverstripe-openinghours

Add opening hours to a DataObject

Installs: 348

Dependents: 0

Suggesters: 0

Security: 0

Stars: 6

Watchers: 2

Forks: 4

Open Issues: 0

Type:silverstripe-vendormodule

1.1.2 2023-02-23 11:04 UTC

This package is auto-updated.

Last update: 2024-12-14 10:42:04 UTC


README

Add opening hours to a data object. I suggest adding silverstripe-australia/addressable to add opening hours and address data to a Store site. In the future i would suggest using bramdeleeuw/silverstripe-schema to add schema data, like store information, to your site but it's still a work in progress.

To add the opening hours, simply extens on the object that you want to use them on.

YourObject:
  extensions:
    - 'Broarm\OpeningHours\OpeningHours'

The object comes packed with some methods you can use to display the opening hours with:

// Returns the opening hours as a summarized list, this means days with similar opening hours are combined e.g "Mon – Tue"
$openingHourHolder->getOpeningHoursSummarized()
 
// Returns todays opening hours
$openingHourHolder->getOpeningHoursToday()
 
// Return the short localized version for the current day (in the loop)
$openingHour->getShortDay();
 
// Return the short localized version for the current day (in the loop)
$openingHour->getFullDay();
 
// Return the concatnated days list as a range, only used when looping over the summarized days loop.
$openingHour->getConcatenatedDays();
 
// Returns true when the From and Till data are equal (shop is closed for that day)
$openingHour->IsClosed();
 
// Returns true when the current time falls between the opening hours
$openingHour->IsOpenNow();