Skip to content

Commit

Permalink
Added methods of dates
Browse files Browse the repository at this point in the history
dateDaysAfterToday, dateYearsAfterToday, dateDaysBeforeToday, dateYearsBeforeToday
  • Loading branch information
SergiBanos committed Feb 22, 2019
1 parent 9bcb52d commit e8aaa42
Show file tree
Hide file tree
Showing 6 changed files with 80 additions and 0 deletions.
4 changes: 4 additions & 0 deletions src/messages/en/messages.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@ module.exports = {
creditCard: 'The :attribute value must be a valid card number.',
date: 'The :attribute must be a valid date.',
dateAfter: 'The :attribute must be a date after :arg0.',
dateDaysAfterToday : 'The :attribute must be a date after :arg0.',
dateYearsAfterToday : 'The :attribute must be a date after :arg0.',
dateDaysBeforeToday : 'The :attribute must be a date after :arg0.',
dateYearsBeforeToday : 'The :attribute must be a date after :arg0.',
dateBefore: 'The :attribute must be a date before :arg0.',
dateFormat: 'The :attribute does not match the date format :arg0.',
decimal: 'The :attribute must be a valid decimal value.',
Expand Down
18 changes: 18 additions & 0 deletions src/rules/dateDaysAfterToday.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
const moment = require('moment'),
{ dateFormats } = require('../lib/date');

module.exports = async function dateDaysAfterToday(field, value, days) {


let mAfterDate, mDate;

mAfterDate = moment('', dateFormats).add(days, 'days');
mDate = moment(value, dateFormats);

/* istanbul ignore next */
if (!mAfterDate.isValid() || !mDate.isValid() || mAfterDate.valueOf() > mDate.valueOf()) {
return false;
}

return true;
}
18 changes: 18 additions & 0 deletions src/rules/dateDaysBeforeToday.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
const moment = require('moment'),
{ dateFormats } = require('../lib/date');

module.exports = async function dateDaysBeforeToday(field, value, days) {


let mAfterDate, mDate;

mAfterDate = moment('', dateFormats).add(days, 'days');
mDate = moment(value, dateFormats);

/* istanbul ignore next */
if (!mAfterDate.isValid() || !mDate.isValid() || mAfterDate.valueOf() < mDate.valueOf()) {
return false;
}

return true;
}
18 changes: 18 additions & 0 deletions src/rules/dateYearsAfterToday.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
const moment = require('moment'),
{ dateFormats } = require('../lib/date');

module.exports = async function dateYearsAfterToday(field, value, days) {


let mAfterDate, mDate;

mAfterDate = moment('', dateFormats).add(days, 'years');
mDate = moment(value, dateFormats);

/* istanbul ignore next */
if (!mAfterDate.isValid() || !mDate.isValid() || mAfterDate.valueOf() > mDate.valueOf()) {
return false;
}

return true;
}
18 changes: 18 additions & 0 deletions src/rules/dateYearsBeforeToday.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
const moment = require('moment'),
{ dateFormats } = require('../lib/date');

module.exports = async function dateYearsBeforeToday(field, value, days) {


let mAfterDate, mDate;

mAfterDate = moment('', dateFormats).add(days, 'years');
mDate = moment(value, dateFormats);

/* istanbul ignore next */
if (!mAfterDate.isValid() || !mDate.isValid() || mAfterDate.valueOf() < mDate.valueOf()) {
return false;
}

return true;
}
4 changes: 4 additions & 0 deletions src/rules/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ exports.creditCard = require('./creditCard');
exports.date = require('./date');
exports.dateFormat = require('./dateFormat');
exports.dateAfter = require('./dateAfter');
exports.dateDaysAfterToday = require('./dateDaysAfterToday');
exports.dateYearsAfterToday = require('./dateYearsAfterToday');
exports.dateDaysBeforeToday = require('./dateDaysBeforeToday');
exports.dateYearsBeforeToday = require('./dateYearsBeforeToday');
exports.dateBefore = require('./dateBefore');
exports.decimal = require('./decimal');
exports.digits = require('./digits');
Expand Down

0 comments on commit e8aaa42

Please sign in to comment.