diff options
author | Igor Scheller <igor.scheller@igorshp.de> | 2017-11-29 13:23:38 +0100 |
---|---|---|
committer | Igor Scheller <igor.scheller@igorshp.de> | 2017-11-29 13:30:41 +0100 |
commit | 0b45d2a88febf2aac299fe504bb68b2fafcef068 (patch) | |
tree | 20f14f210cd5b6b904345ebeba3bf01a3f6496a0 /public | |
parent | 599f2fd264bfc7b1b6826fe206442806e317340f (diff) |
#366 Feature: Time Interval Buttons (on Shifts page), closes #366
Diffstat (limited to 'public')
-rw-r--r-- | public/js/forms.js | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/public/js/forms.js b/public/js/forms.js index c4eb68df..d75a4391 100644 --- a/public/js/forms.js +++ b/public/js/forms.js @@ -17,6 +17,63 @@ function checkAll(id, checked) { } } +/** + * @param {moment} date + */ +function formatDay(date) { + return date.format('YYYY-MM-DD') +} + +/** + * @param {moment} date + */ +function formatTime(date) { + return date.format('HH:mm') +} + +/** + * @param {moment} from + * @param {moment} to + */ +function setInput(from, to) { + var from_day = $('#start_day'), from_time = $('#start_time'), to_day = $('#end_day'), to_time = $('#end_time'); + + from_day.val(formatDay(from)); + from_time.val(formatTime(from)); + + to_day.val(formatDay(to)); + to_time.val(formatTime(to)); +} + +function setDay(days) { + days = days || 0; + + var from = moment(); + from.hours(0).minutes(0).seconds(0); + + from.add(days, 'd'); + + var to = from.clone(); + to.hours(23).minutes(59); + + setInput(from, to) +} + +function setHours(hours) { + hours = hours || 1; + + var from = moment(); + var to = from.clone(); + + to.add(hours, 'h'); + if (to < from) { + setInput(to, from); + return; + } + + setInput(from, to); +} + $(function () { /** * Disable every submit button after clicking (to prevent double-clicking) |