unserver-unify
Version:
50 lines (44 loc) • 1.49 kB
JavaScript
(function() {
'use strict';
angular.module('bamboo.common').service('timeHelper', timeHelper);
timeHelper.$inject = [];
// var d = new Date();
// var d = new Date(milliseconds);
// var d = new Date(dateString);
// var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);
//
function timeHelper() {
var self = this;
var minutes = 1000 * 60;
var hours = minutes * 60;
var days = hours * 24;
var years = days * 365;
self.MIN = minutes;
self.HOUR = hours;
self.DAY = days;
/**
* calculate end time by start time
* @param {any} startTime sesstion start time
* @param {any} duration hour
* @return {date} sesstion end time
*/
self.calEndTime = function(startTime, duration) {
if (!(startTime && duration)) return;
if (angular.isString(startTime) || angular.isNumber(startTime)) {
startTime = new Date(startTime);
}
var end = startTime.getTime();
var duration = self.HOUR * duration;
return new Date(end + duration);
}
self.validateTime = function(startTimeStr, endTimeStr) {
if (!startTimeStr || !endTimeStr) {
throw new Error('some params is needed!');
}
var now = Date.now();
var startDate = new Date(startTimeStr).getTime();
var endDate = new Date(endTimeStr).getTime();
return (now >= startDate) && (now <= endDate)
}
}
})();