calendar-scheduler
v0.1.2
Published
Simple calendar scheduler.
Downloads
13
Readme
Calendar scheduler
With this package you can create schedule for different events.
Daily event
For calculate next date for daily event you can use:
const {calcDay} = require('calendar-scheduler');
let options = {
date: 1483264800000 //GMT: Sunday, January 1, 2017 10:00:00 AM
}
let nextDate = calcDay(options); // nextDate = 1483351200000 //GMT: Monday, January 2, 2017 10:00:00 AM
Also you can use it with different parameters 'everynday' or 'daysofweek':
const {calcDay} = require('calendar-scheduler');
let options1 = {
date: 1483264800000,//GMT: Sunday, January 1, 2017 10:00:00 AM
everynday: 3
}
let options2 = {
date: 1483264800000,//GMT: Sunday, January 1, 2017 10:00:00 AM
daysofweek: '2;4;7'// next date will be calculated at one of the enable days "1-Monday, 2-Tuesday,...,7-Sunday"
}
let nextDate = calcDay(options1); // nextDate = 1483524000000 //GMT: Wednesday, January 4, 2017 10:00:00 AM
nextDate = calcDay(options2);// nextDate = 1483437600000 //GMT: Tuesday, January 3, 2017 10:00:00 AM
Weekly event
For calculate next date for weekly event you can use:
const {calcWeek} = require('calendar-scheduler');
let options = {
date: 1483264800000 //GMT: Sunday, January 1, 2017 10:00:00 AM
}
let nextDate = calcWeek(options); // nextDate = 1483869600000//GMT: Sunday, January 8, 2017 10:00:00 AM
Also you can use it with different parameters 'everynweek' or 'daysofweek':
const {calcWeek} = require('calendar-scheduler');
let options1 = {
date: 1483264800000, //GMT: Sunday, January 1, 2017 10:00:00 AM
everynweek: 3
}
let options2 = {
date: 1483264800000, //GMT: Sunday, January 1, 2017 10:00:00 AM
daysofweek: '5'
}
let nextDate = calcWeek(options1); // nextDate = 1485079200000 //GMT: Sunday, January 22, 2017 10:00:00 AM
nextDate = calcWeek(options2); // nextDate = 1484301600000 // Friday, January 13, 2017 10:00:00 AM
Monthly event
For calculate next date for monthly event you can use:
const {calcMonth} = require('calendar-scheduler');
let options = {
date: 1483264800000 //GMT: Sunday, January 1, 2017 10:00:00 AM
}
let nextDate = calcMonth(options); // nextDate = 1485943200000 //GMT: Wednesday, February 1, 2017 10:00:00 AM
Also you can use it with different parameters 'day', 'weekofmonth', 'daysofweek', 'months':
const {calcMonth} = require('calendar-scheduler');
let options1 = {
date: 1483264800000, //GMT: Sunday, January 1, 2017 10:00:00 AM
day: 5
};
let options2 = {
date: 1483264800000, //GMT: Sunday, January 1, 2017 10:00:00 AM
day: 31 //if in month less days it will take last date
};
let nextDate = calcMonth(options1); // nextDate = 1486288800000 //GMT: Sunday, February 5, 2017 10:00:00 AM
nextDate = calcMonth(options2);//nextDate = 1488276000000 //GMT: Tuesday, February 28, 2017 10:00:00 AM
You can choose week of month 1,2,3,4:
const {calcMonth} = require('calendar-scheduler');
let options = {
date: 1483264800000, //GMT: Sunday, January 1, 2017 10:00:00 AM
weekofmonth: 2
}
let nextDate = calcMonth(options); // nextDate = 1487152800000 //GMT: Wednesday, February 15, 2017 10:00:00 AM
You can choose last week day(s) in month:
const {calcMonth} = require('calendar-scheduler');
let options = {
date: 1483264800000, //GMT: Sunday, January 1, 2017 10:00:00 AM
weekofmonth: 5,
daysofweek: '3;4'
}
let nextDate = calcMonth(options); // nextDate = 1487844000000 //GMT: Thursday, February 23, 2017 10:00:00 AM
With all monthly options above you can use 'months' option:
const {calcMonth} = require('calendar-scheduler');
let options = {
date: 1483264800000, //GMT: Sunday, January 1, 2017 10:00:00 AM
weekofmonth: 2,
daysofweek: '1',
monthes: '4'
}
let nextDate = calcMonth(options); // nextDate = 1492419600000 //GMT: Monday, April 17, 2017 9:00:00 AM
First date
All of the events calculate next date but if you need calculate first event date you can use:
const {firstDate} = require('calendar-scheduler');
let options1 = {
date: 1483264800000 //GMT: Sunday, January 1, 2017 10:00:00 AM
}
let options2 = {
date: 1483264800000, //GMT: Sunday, January 1, 2017 10:00:00 AM
daysofweek: '5'
}
let firstDate = firstDate(options1); // nextDate = 1483264800000 //GMT: Sunday, January 1, 2017 10:00:00 AM
firstDate = firstDate(options2); // nextDate = 1483696800000 //GMT: Friday, January 6, 2017 10:00:00 AM