I think a more customizable selectConstraint would be a very nice feature to have. Here is what I thought of:
Currently the selectConstraint option's value is a single value, which is mandatory for all selections. I think it could be customized to have separate values for 'normal' events and for all day events.
I would use this to allow selecting allDay slots beyond the constraint of normal events (In my usecase, an allDay event represents a holiday request, while normal events represent working hours.)
I think this could be implemented in two ways:
1. array
The selectConstraint option should accept an array of two objects, each having two entries:
1. 'authority' with the value of either 'allDay' or 'normal' and
2. 'constraint' with the already used value types (id, 'businessHours', object)
2. object
The selectConstraint option should accept an object, just as it does now, but should check for the presence of an 'allDay' and/or a 'normal' key, indicating that this is a compound constraint. The values of each key could be the same ones that are currently accepted.
When making a selection, the code should decide whether the current selection is in an allDay slot or not, and then use the appropriate constraint value for checking.
I looked into the sources, but couldn't quite grasp the whole picture. I saw that the range checking function doesn't know whether the selection was started in an allDay slot or not. If this could be passed down to that function, I believe the rest shouldn't be too difficult to implement.
Mergedinto: 2475