aboutsummaryrefslogtreecommitdiff
path: root/lib/date.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/date.js')
-rw-r--r--lib/date.js118
1 files changed, 76 insertions, 42 deletions
diff --git a/lib/date.js b/lib/date.js
index afe9fdc9..2c53a4e4 100644
--- a/lib/date.js
+++ b/lib/date.js
@@ -1,56 +1,90 @@
-var faker = require("../index");
+var _Date = function (faker) {
+ var self = this;
+ self.past = function (years, refDate) {
+ var date = (refDate) ? new Date(Date.parse(refDate)) : new Date();
+ var range = {
+ min: 1000,
+ max: (years || 1) * 365 * 24 * 3600 * 1000
+ };
-var date = {
+ var past = date.getTime();
+ past -= faker.random.number(range); // some time from now to N years ago, in milliseconds
+ date.setTime(past);
- past: function (years, refDate) {
- var date = (refDate) ? new Date(Date.parse(refDate)) : new Date();
- var range = {
- min: 1000,
- max: (years || 1) * 365 * 24 * 3600 * 1000
- };
+ return date;
+ };
- var past = date.getTime();
- past -= faker.random.number(range); // some time from now to N years ago, in milliseconds
- date.setTime(past);
+ self.future = function (years, refDate) {
+ var date = (refDate) ? new Date(Date.parse(refDate)) : new Date();
+ var range = {
+ min: 1000,
+ max: (years || 1) * 365 * 24 * 3600 * 1000
+ };
- return date;
- },
+ var future = date.getTime();
+ future += faker.random.number(range); // some time from now to N years later, in milliseconds
+ date.setTime(future);
- future: function (years, refDate) {
- var date = (refDate) ? new Date(Date.parse(refDate)) : new Date();
- var range = {
- min: 1000,
- max: (years || 1) * 365 * 24 * 3600 * 1000
- };
+ return date;
+ };
- var future = date.getTime();
- future += faker.random.number(range); // some time from now to N years later, in milliseconds
- date.setTime(future);
+ self.between = function (from, to) {
+ var fromMilli = Date.parse(from);
+ var dateOffset = faker.random.number(Date.parse(to) - fromMilli);
- return date;
- },
+ var newDate = new Date(fromMilli + dateOffset);
- between: function (from, to) {
- var fromMilli = Date.parse(from);
- var dateOffset = faker.random.number(Date.parse(to) - fromMilli);
+ return newDate;
+ };
- var newDate = new Date(fromMilli + dateOffset);
+ self.recent = function (days) {
+ var date = new Date();
+ var range = {
+ min: 1000,
+ max: (days || 1) * 24 * 3600 * 1000
+ };
- return newDate;
- },
+ var future = date.getTime();
+ future -= faker.random.number(range); // some time from now to N days ago, in milliseconds
+ date.setTime(future);
- recent: function (days) {
- var date = new Date();
- var range = {
- min: 1000,
- max: (days || 1) * 24 * 3600 * 1000
- };
+ return date;
+ };
- var future = date.getTime();
- future -= faker.random.number(range); // some time from now to N days ago, in milliseconds
- date.setTime(future);
+ self.month = function (options) {
+ options = options || {};
- return date;
- }
+ var type = 'wide';
+ if (options.abbr) {
+ type = 'abbr';
+ }
+ if (options.context && typeof faker.definitions.date.month[type + '_context'] !== 'undefined') {
+ type += '_context';
+ }
+
+ var source = faker.definitions.date.month[type];
+
+ return faker.random.arrayElement(source);
+ };
+
+ self.weekday = function (options) {
+ options = options || {};
+
+ var type = 'wide';
+ if (options.abbr) {
+ type = 'abbr';
+ }
+ if (options.context && typeof faker.definitions.date.weekday[type + '_context'] !== 'undefined') {
+ type += '_context';
+ }
+
+ var source = faker.definitions.date.weekday[type];
+
+ return faker.random.arrayElement(source);
+ };
+
+ return self;
+
};
-module.exports = date;
+
+module['exports'] = _Date; \ No newline at end of file