2017 © Pedro Peláez
 

silverstripe-module silverstripe-schedulizer

A module for organising stuff to happen at arbitrary times in the future, useful with QueuedJobs

image

silverstripe-australia/silverstripe-schedulizer

A module for organising stuff to happen at arbitrary times in the future, useful with QueuedJobs

  • Friday, June 30, 2017
  • by nyeholt
  • Repository
  • 2 Watchers
  • 0 Stars
  • 1,043 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 3 Open issues
  • 5 Versions
  • 0 % Grown

The README.md

SilverStripe Schedulizer module

Fun module for organising stuff to happen at arbitrary times in the future., (*1)

Maintainer Contacts

Requirements

  • SilverStripe 3.1

Usage

  • Create a Configured Schedule via the CMS admin
  • From code, call
    • ConfiguredSchedule::get()->filter('Title', $name)->first()->getNextScheduledDateTime();

Configuring schedules

For a job, schedules are read in particular precedence; first, the 'default' schedule is loaded. All other schedules are evaluated to see if they are applicable for the "current" time; if so, the desired schedule is substituted for, in increasing order of importance, (*2)

  • A ScheduleRangeDayType (ie weekday, Weekend)
  • A ScheduleRangeDay (ie Monday, Tuesday)
  • A ScheduleRange (ie specific date)

This allows configuration of a schedule set that is, for example, (*3)

  • Default - 6am - 6pm every day until 2020
  • Weekends - 9am - 5pm
  • Thursday - 6am - 9pm
  • 25/12/2015 - 10am - 2pm

The decided upon schedule evaluates each in order, and selects that which is most specific., (*4)

Create a schedule, (*5)

  • Open admin/schedulizer/.
  • Create a new schedule - for QueuedJobs usage, use the same name as the job classname
  • Create a new Schedule Range; the first one should be called "Default" and have a type of "ScheduleRangeDefault". This is the baseline schedule that will be used
  • Add additional schedules if needed
  • Test the schedule by entering a date/time (YYYY-MM-DD hh:mm:ss format) and clicking "Test" - this will update with the next detected 'tick' time for that schedule.

Modifying a schedule, (*6)

  • Open admin/schedulizer/
  • Select the schedule to modify
  • On the "Schedule Ranges" tab, select the schedule to modify
  • Modify the relevant fields
  • Save and close, then test the new schedule as above.

License

This module is licensed under the BSD license at http://silverstripe.org/BSD-license, (*7)

The Versions

30/06 2017

dev-master

9999999-dev

A module for organising stuff to happen at arbitrary times in the future, useful with QueuedJobs

  Sources   Download

BSD-3-Clause

by Stephen McMahon

silverstripe schedule queuedjobs

30/06 2017

2.0.2

2.0.2.0

A module for organising stuff to happen at arbitrary times in the future, useful with QueuedJobs

  Sources   Download

BSD-3-Clause

by Stephen McMahon

silverstripe schedule queuedjobs

29/06 2017

2.0.1

2.0.1.0

A module for organising stuff to happen at arbitrary times in the future, useful with QueuedJobs

  Sources   Download

BSD-3-Clause

by Stephen McMahon

silverstripe schedule queuedjobs

23/06 2017

2.0.0

2.0.0.0

A module for organising stuff to happen at arbitrary times in the future, useful with QueuedJobs

  Sources   Download

BSD-3-Clause

by Stephen McMahon

silverstripe schedule queuedjobs

06/06 2016

1.0.0

1.0.0.0

A module for organising stuff to happen at arbitrary times in the future, useful with QueuedJobs

  Sources   Download

BSD-3-Clause

by Stephen McMahon

silverstripe schedule queuedjobs