Ticket #1060 (closed melhoria: fixed)

Opened 14 years ago

Last modified 13 years ago

Compatibilidade de timezone com eventos do GoogleCalendar

Reported by: fpcorrea Owned by: alexandrecorreia
Priority: alta Milestone: Expresso 2.2
Component: Calendar Version: branch 2.2
Severity: média Keywords: calendar timezone google import
Cc: WorkGroup:

Description

Ao importar a agenda do Google no ExpressoCalendar?, os eventos trazem o campo X-WR-TIMEZONE com valor semelhante ao do locale, como "America/Brazil?/Sao_Paulo". Como o Expresso não reconhece, todos os eventos acabam 3hs a frente no nosso Calendar. Favor tratar esta string de modo a reconhecer o timezone.

Attachments

Fernando Correa_mulder81pr@gmail.com.ics Download (3.1 KB) - added by rodsouza 13 years ago.
Arquivo que apresentava problema com horário

Change History

comment:1 follow-up: ↓ 2 Changed 13 years ago by eduardoalex

  • Owner changed from alguem to thiagoaos
  • Severity set to média

Thiago,

Favor verificar se a correção do timezone que fizemos mata esse ticket.

comment:2 in reply to: ↑ 1 Changed 13 years ago by alexandrecorreia

Eduardo ou Thiago

Qual foi a correção que foi feita ?

Replying to eduardoalex:

Thiago,

Favor verificar se a correção do timezone que fizemos mata esse ticket.

comment:3 follow-up: ↓ 4 Changed 13 years ago by thiagoaos

Ticket  1234 Revisão  3429

O que foi feito nesse ticket é na hora que exportar um vcard seta o horário para GMT. E na hora de importar um vcard verifica se o mesmo tem o atributo TZID ( TZID=/freeassociation.sourceforge.net/Tzfile/America/Bahia: ), se tiver pega o horário inicial e final e retira esse time zone para ficar com o horário GMT. Depois aplica o timezone das preferências do expresso.

comment:4 in reply to: ↑ 3 Changed 13 years ago by alexandrecorreia

Thiago

Na Revisão 3429 no arquivo class.boicalendar.inc.php, linha 2968, existe uma método chamado print_r2, vc estava usando para debugar o código ?

Replying to thiagoaos:

Ticket  1234 Revisão  3429

O que foi feito nesse ticket é na hora que exportar um vcard seta o horário para GMT. E na hora de importar um vcard verifica se o mesmo tem o atributo TZID ( TZID=/freeassociation.sourceforge.net/Tzfile/America/Bahia: ), se tiver pega o horário inicial e final e retira esse time zone para ficar com o horário GMT. Depois aplica o timezone das preferências do expresso.

comment:5 Changed 13 years ago by thiagoaos

Não foi eu que realizei o commit referente a essa revisão. Foi um membro que era da nossa equipe. Acredito que ele utilizava para debugar sim, ajeitando a formatação quando utiliza o print_r. As vezes utilizo função similar também. Porém ele esqueceu de apagar antes de commitar.

Corrigir isso. Revisão  3565

comment:6 Changed 13 years ago by alexandrecorreia

Thiago

E conforme foi perguntando pelo Eduardo, a correção feita ( Revisão [3429] ) mata este ticket tb ?

comment:7 Changed 13 years ago by thiagoaos

Alexandre,

Tem algum meio estranho no arquivo exportado pelo google calendar. Eu criei um evento de 10h às 10:30 e quando exporta a rotina deles já pega esse horário e joga para GMT, conforme o trecho de código abaixo. Sendo assim o expresso importa normalmente. Ele pega esse horário do DTSTART e DTEND e aplica o fuso horário definido nas preferências obrigatórias do usuário. Com isso para mim, depois de importado o evento em questão, com o fuso horário definido como -3, no módulo calendar aparece das 10 às 10:30.

As mudanças realizadas na revisão que Eduardo comentou, de nada afetou nesse comportamento. O que mudou foi, quando tem o atributo TZID dentro de DTSTART ou DTEND, quando vai importar, o expresso pega os respectivos horários e aplica esse fuso horário definido no TZID para colocar o horário no GMT, e depois disso aplica o time zone definido nas preferências do usuário para exibir no módulo do calendário.

<pre> BEGIN:VEVENT DTSTART:20101209T130000Z DTEND:20101209T133000Z DTSTAMP:20101209T191921Z UID:ipq45813fbondg95a8lt9sl9vc@google.com CREATED:20101209T183556Z DESCRIPTION: LAST-MODIFIED:20101209T191836Z LOCATION: SEQUENCE:1 STATUS:CONFIRMED SUMMARY:Expresso Teste TRANSP:OPAQUE END:VEVENT </pre>

Exemplo de arquivo quando tem o TZID dentro do DTSTART e DTEND. Esse trecho do arquivo foi exportado do evolution.

<pre> BEGIN:VEVENT DTSTART;TZID=America/Bahia:20101209T100000Z DTEND;TZID=America/Bahia:20101209T123000Z UID:Expresso-110384-@10.15.21.189 X-LIC-ERROR;X-LIC-ERRORTYPE=VALUE-PARSE-ERROR:Can't parse as DATE-TIME

value in LAST-MODIFIED property. Removing entire property: 1276274787

DESCRIPTION:Atividades internas2 SUMMARY:Atividades internas2 LOCATION:CPE DTSTAMP:20100611T165712Z CREATED:20100611T165712Z LAST-MODIFIED:20100611T165712Z END:VEVENT </pre>

comment:8 Changed 13 years ago by niltonneto

  • Priority changed from pequena to alta

Thiago, resumindo a ópera: a revisão [3429] então não resolve este ticket? Precisamos saber, para conforme for, corrermos atrás desta correção.

comment:9 Changed 13 years ago by thiagoaos

Resumindo,

Eu não conseguir simular o error reportado por fpcorrea. Conforme dito antes, comigo funcionou quando eu exportei o calendário do google calendar.

Caso ele queira compartilhar o arquivo que ele exportou pelo google calendar e também informar o horário do evento criado para poder comparar com o horário no arquivo, eu posso tentar simular e resolver o problema.

comment:10 Changed 13 years ago by alexandrecorreia

Então não resolveu !!! Resolveremos por aqui !!!

Changed 13 years ago by rodsouza

Arquivo que apresentava problema com horário

comment:11 Changed 13 years ago by rodsouza

O arquivo "Fernando Correa_mulder81pr@…" apresentava problema com a hora.

Testando com a revisão r3619, o problema não foi mais verificado.

Existe mais alguem que consiga verificar se o problema foi realmente corrigido?

comment:12 Changed 13 years ago by diogenesduarte

  • Owner changed from thiagoaos to alexandrecorreia

Vou passar o ticket para o alexandre que disse que ia resolver por lá, e se for o caso de não acontecer mais esse problema, ele mesmo fecha.

comment:13 Changed 13 years ago by rodsouza

  • Status changed from new to closed
  • Resolution set to fixed

Isso significa que não existe mais problemas?

O "ics" que anexei era um que apresentava problemas como o horário não apresenta mais divergência e não houve outras manifestações então estou finalizando o ticket.

comment:14 Changed 13 years ago by niltonneto

  • Version changed from trunk to branch 2.2
Note: See TracTickets for help on using tickets.