I think the question largely describes a dilemma that does not have a good universal selection. For an example of a birthday, the problem is the vague definition of "birthday"; this is a social convention more than anything else.
If you think of something more objective as a βone-day offerβ by a company, then it becomes even more obvious that the decisive problem is how things are defined. In a global review, the company must determine when the offer is valid (for example, on a specific day in a specific time zone) and report it accordingly.
The task of programming is to do this correctly. Basically, it is about creating time references relative to a specific time zone or time zone of users. Usually they require different approaches: server and client side. (The serverβs time zone may not coincide with the specified time zone, but they must have a certain relationship.)
source share