I think I am not grasping correctly what you want to achieve and depict to me as the issue, otherwise you would just use a date filter, but re-reading your report, I think I did not understand correctly.
I need more details.
1. How exactly do you store the information you want to filter by?
My understanding was a Date/Time Field but it seems if I re-read this, you use a single Field or ranges in a select?
Can you explain how you store, for the "CPT for offices", the data you want to filter by, and what format that data has?
2. I think, re-reading this, that you need a filter, which compares the values which are NOT in a timestamp or classic "time" format, to a classic time format or even exact UNIX timestamp (compare the 08:00-22:00 to NOW)
That should be possible.
But, it requires more code that is not using Toolset API at all, than actual Toolset API.
1. Getting the NOW time is easy, as you say, even easier since you just would have one location to get it from.
2. Then you need to compare the Field you have (Weekday, Weekend will be handled separately depending on above #1 result) with that NOW time.
3. This should be easy after you convert either of both formats of time to the same.
4. Then, you filter the View output, and only return posts where the Fields match above compared time values.
However you compare both values, and convert them is a question of PHP generic coding.
You can then file the Post that the View returns with https://toolset.com/documentation/programmer-reference/views-filters/#wpv_filter_query
That filter allows you to modify the query.
So, if you have a value which you want to match (NOW time) you can simply filter those posts for all posts field fields matching the NOW value.
But, since those fields have a value that first needs to be converted to something that makes sense to the Machine (if I understand your setup right) then you need to convert that value ahead of using it.
For example you could fake a time.
Let's say you have stored 08:00-22:00
You can use that to fake a timestamp that is at a max and minimum of TODAY, that time.
Now you have some values to compare in your code with the NOW timestamp, and can filter the query by it.
But this requires complex custom code, which is not related to Toolset.
Our Support capabilities are restricted here:
https://toolset.com/toolset-support-policy/
I could help, if we can do this on a more abstract and slimmed down example that we can use for other users as well.
I can try to find a solution with minimal code involved.
I need clear specifications or confirmation of what I outline above.
I would, if I understand it right, use a Field with options to store those 08:00-22:00 values. That is how you have set it up, right?
There are 2 of them (weekday and weekend?)
Can you outline this to me, so I may come up with a complete sample for such a scenario or a different solution.
As well, I am aware of the requirement of recurring events in the date field of Toolset - something that is filed as request and would help here too.
But I have no ETA on that.
I am waiting for your specifications