2013-01-31 8 views
6

A mio parere, Arshaw FullCalendar visualizza gli eventi in base al fuso orario del sistema operativo del computer locale. Presumo che ciò sia fatto dall'oggetto javascript Date(), anch'esso basato sul sistema operativo del computer locale. Ho un'applicazione con calendari di gruppo e un fuso orario di gruppo, voglio essere in grado di forzare ogni calendario Arshaw locale da visualizzare in base al fuso orario di quel gruppo, indipendentemente dal fuso orario del computer. Come fai a fare questo?Change timezone in Arshaw FullCalendar

Nota: ho esaminato abbastanza accuratamente la documentazione e non ho trovato alcuna opzione. Spero che javascript abbia qualcosa di equivalente a date_default_timezone_set() di php, il che mi sembra il modo in cui questo potrebbe essere risolto.

* Modifica 2013/01/31 12:23 CST: io mando tutto per il calendario come timestamp Unix, quindi immagino che l'opzione ignoreTimezone non si applica qui, come descritto in questa discussione StackOverflow: jQuery FullCalendar timezone synchronization

+0

hai fatto la domanda? –

+0

Ho lo stesso problema, ma impostare il fuso orario da solo potrebbe non fare il trucco, poiché ci sono diversi periodi di risparmio dell'ora legale (es: Mex ha date diverse) ... quindi, chiunque ha una soluzione elegante per forzare il client ad usare un dato tempo, indipendentemente dall'ora locale nel sistema del cliente (che potrebbe anche essere sbagliato) ??? – MaxD

+1

http://stackoverflow.com/questions/2771609/how-to-ignore-users-time-zone-and-force-date-use-specific-time-zone – Dom

risposta

5

Probabilmente dovresti provare a impostare l'opzione "ignoreTimezone" su "false" e dare ad Arshaw la data FullCalendar in ISO8601.

È possibile ottenere ulteriori informazioni su quella qui: http://arshaw.com/fullcalendar/docs/event_data/ignoreTimezone/

Per convertire timestamp unix a ISO8601, è possibile utilizzare questo in javascript:

var d = new Date(1360412434000).toISOString(); 

Questo è ECMAScript 5. Vedi qui per la compatibilità e codice di fallback: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date/toISOString