You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

95 lines
2.0 KiB
JavaScript

/**
* Sets all checkboxes to the wanted state
8 years ago
*
* @param {string} id Id of the element containing all the checkboxes
* @param {bool} checked True if the checkboxes should be checked
*/
global.checkAll = (id, checked) => {
$("#" + id + " input[type='checkbox']").each(function () {
this.checked = checked;
});
}
/**
* Sets the checkboxes according to the given type
*
* @param {string} id The elements ID
* @param {list} shifts_list A list of numbers
*/
global.checkOwnTypes = (id, shifts_list) => {
7 years ago
$("#" + id + " input[type='checkbox']").each(function () {
this.checked = $.inArray(parseInt(this.value), shifts_list) != -1;
});
}
/**
* @param {moment} date
*/
global.formatDay = (date) => {
return date.format("YYYY-MM-DD");
}
/**
* @param {moment} date
*/
global.formatTime = (date) => {
return date.format("HH:mm");
}
/**
* @param {moment} from
* @param {moment} to
*/
global.setInput = (from, to) => {
var fromDay = $("#start_day"), fromTime = $("#start_time"), toDay = $("#end_day"), toTime = $("#end_time");
fromDay.val(formatDay(from));
fromTime.val(formatTime(from));
toDay.val(formatDay(to));
toTime.val(formatTime(to));
}
global.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);
}
global.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);
}
8 years ago
$(function () {
/**
* Disable every submit button after clicking (to prevent double-clicking)
*/
$("form").submit(function (ev) {
$("input[type='submit']").prop("readonly", true).addClass("disabled");
return true;
});
$(".dropdown-menu").css("max-height", function () {
return ($(window).height() - 50) + "px";
}).css("overflow-y", "scroll");
});