summaryrefslogtreecommitdiff
path: root/public
diff options
context:
space:
mode:
authorIgor Scheller <igor.scheller@igorshp.de>2017-11-29 13:23:38 +0100
committerIgor Scheller <igor.scheller@igorshp.de>2017-11-29 13:30:41 +0100
commit0b45d2a88febf2aac299fe504bb68b2fafcef068 (patch)
tree20f14f210cd5b6b904345ebeba3bf01a3f6496a0 /public
parent599f2fd264bfc7b1b6826fe206442806e317340f (diff)
#366 Feature: Time Interval Buttons (on Shifts page), closes #366
Diffstat (limited to 'public')
-rw-r--r--public/js/forms.js57
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)