Hehehe.
I really can’t stop trying this, though I think the run script solution to be one that works.
Anyhow, I feel that the solution as it is isn’t correct, when the +0100 for time to GMT is not part of the data, so I think it should be represented some way. maybe like a regular time string. The problem is how to represent negative amounts of time, one option being represnting negative times as passed midday, or as hours before midnight.
that is
-0100 may be 1300 or it may be 2300.
As the getdate handler is coded at the moment, it doesn’t handle negative times to GMT, for a user in France, your code will break!
In the same time, I urge you to add a time string, and a convention for sending with the time to GMT, maybe in the understanding that the time was having that difference to GMT, as to avoid double calculations, but still giving the user the opportunity to figure out the UTC time.
I leave you with those ideas
Edit I see you posted a new version while I was posting, interesting!
I really have to stop this for now, it was fun, and I wish you all luck with this.
Edit
I also want to say that I think you are a brilliant coder, and that it was fun participating with you in this!
As it is, and this makes your code no less, but I think I’ll stick with the list version for generic usage, albeit it uses maybe 50% longer to complete, because it is robust, and I am confident it will handle problems and configurations of meta data we havnen’t encountered yet. (Until I at least know and am sure that I deal with a static set of attributes). The rationale is also, that a record, is supposed to have a static set of attributes, and not vary as they do with spotlight meta data. Therefore I find it better to use the list version. At least until I have a static set of properties to deal with.
Good luck with your endeavours!