Earlier quoted context omitted.
The GUI elements should have nothing to do with storing and interchanging timestamps. What you display can query the browser timezone to make it look nice, then send it down converted, over.
You cannot convert a time string in the future to a timestamp. You must keep it as a string with timezone information until the time actually comes.
I guess it needs to be a 4-dimensional coordinate, where 1 axis can slide around...