title: Get the real time of a user
body: <p>I'm facing a problem to get the real 'trusted' user time, preventing them to cheat if they change their computer's time. </p>
  
  <p>Weather I use a plain date object, or moment timezone or even google timezone api I just can't get the 'real' time of a user if I try manipulating the current time.</p>
  
  <p>If we are at 20:00 (no matther the location) and the user tempers with the time to set it as 11:00 then I always end up with that time and not the real one, either by</p>
  
  <pre><code>const time = new Date();
  const timestamp = (time.getTime() / 1000 + time.getTimezoneOffset() * 60);
  const url = 'https://maps.googleapis.com/maps/api/timezone/json?location=-31.369926900000003,-64.2218601&amp;timestamp=1568396292&amp;key=MY_API_KEY';
  this.httpDuplicate.get(url ).subscribe((res: any) =&gt; {
     if (res) {
        const dst = res.dstOffset;
        const raw = res.rawOffset;
        const fixed = (timestamp + raw + dst) * 1000;
        const timezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
        const currentTime = momenttz().tz(timezone).format();
        console.warn('initial time ', new Date(time), 
                     ' - google time ', new Date(fixed), 
                     ' - moment timezone ', currentTime);
        // all these values are wrong and point to 11:00 rather than 20:00
     }
  });
  </code></pre>
  
  <p>Is there a way to achieve this ? What I want in the end is to get the right time for a certain position... clearly not trusting the user's system time, but do trust its location (though there are ways to alter this as well)</p>