I have a website wich have multiple users and each user has its own availabilty calendar.
The admin has the ability to filter in these calendars for given free dates.
But I want him to be able to select eg. a month march, and then views would return every calendar wich has available dates in that given month...
Is this possible in some way?
thank you,
Lorenzo
Comments
Comment #1
fietserwinThis is not possible out of the box, but with a bit of programming it should not be too hard to get this functionality;
This should be possible by exchanging the code from the if and else branch and changing the operators/methods (notexists => exists; IN 0 => < duration)
Though, that very last part may give problems due to #1267508: Subselects don't work in DBTNG conditions, except when used as value for IN.
You may change this issue into a feature request, but that will be limited to change the query_available function to also search on partial availability.
Comment #2
fietserwinChanging scope to: Let query_available function also search on partial availability. Assigning to myself as to create a todo list for 7.x-3.3.
Comment #3
fietserwinComment #4
steffenrHI i just stumbled across this issue - i also have the same problem and try to search for partial availability - could you give me any information about the progress on this issue?
Thx in advance.
SteffenR
Comment #5
fietserwinNot given any attention so far. Patches are welcome. Start with a patch that changes the availability_calendar_is_available() function in the module's inc file by adding an additional parameter: minimum availability. I think it will be easy to search for partial availability, but difficult to search for partial consecutive availability which is what you probably want
Comment #6
fietserwinI changed the API function availability_calendar_is_available() by adding a parameter minimum_days, but to do the same with availability_calendar_query_available(), #1267508: Subselects don't work in DBTNG conditions, except when used as value for IN needs to be solved first :(.