Página 1 de 1

As datas estão confusas

Enviado: 23 Out 2013, 19:47
por MMGuedes
Olá pessoal.

Encontrei mais uma "pedra" no meu caminho para a qual não encontrei uma resposta clara aqui no fórum:

- Em diversos locais da "Administração" as datas aparecem em formatos diferentes: "DD-MM-AAAA", "DD/MM/AAAA" e "AAAA-MM-DD", porém, quando vou cadastrar alguma data, o sistema abre uma janela para que eu o faça no "padrão brasileiro", conforme a imagem anexa.

Como eu citei anteriormente, eu li aqui no fórum que existem arquivos dentro da estrutura do OpenCart que não devemos alterar/editar, por isso eu pergunto:

- Qual(is) arquivo(s) eu devo editar para que todas as datas sejam cadastradas e visualizadas apenas no padrão brasileiro (DD/MM/AAAA)???

Encontrei diversos tópicos mas, as questões são, praticamente, apenas sobre a tradução do calendário.

Obrigado.


Imagem

Re: As datas estão confusas

Enviado: 25 Out 2013, 22:02
por denisgomes
MMGuedes, o banco de dados do servidor armazena as datas no formato AAAA-MM-DD HH:MM:SS. Por esse motivo, sempre que é necessário salvar um campo de data, a informação precisa estar neste formato para que seja salva adequadamente. Se você enviar uma data no formato errado para o banco de dados, a Skynet se tornará autoconsciente e destruirá o mundo :D

O problema que você apresentou ocorre simplesmente porque os programadores do Opencart esqueceram (ou não quiseram) adicionar uma rotina que faça a conversão da data de e para o formato correto nestes campos do backend. Ou seja: ao digitar a data inicial e a data final, o Opencart deveria primeiro saber qual formato de data você está usando (segundo as configurações regionais da loja), e então converter a data antes de salvar no banco de dados (e fazer o processo inverso para exibi-la no campo).

Resumindo: mudar isso envolveria criar algumas rotinas no núcleo do Opencart para cuidar dessa conversão, e, acredito, criar um sistema de configurações regionais (formato de data, hora, idioma, etc) pois parece que a única configuração de formato de data disponível fica apenas nos arquivos de tradução, o que pode não ser suficiente. Talvez os programadores nem tenham ido atrás disso justamente porque há o calendário ali a disposição, e ele já colocaria a data no formato correto.

Talvez ajude se você postar um relatório de bug no fórum oficial, mas não há garantias de que eles vão incluir a sua sugestão nas próximas versões.

Re: As datas estão confusas

Enviado: 26 Out 2013, 00:59
por MMGuedes
Olá denisgomes.

Entendi perfeitamente, mas, pelos exemplos que mostrei, será que o John Connor já não incluiu esta "rotina" em alguma parte do sistema, antes da Skynet ser ativada???

Na tela principal da Administração, no quadro "Últimos 10 Pedidos" e, nos "Detalhes do Pedido" as datas são mostradas corretamente (DD/MM/AAAA).

Se por ventura o Luke Skywalker, com a ajuda do C-3PO, criaram uma "rotina" em apenas uma parte do sistema (sem que a maravilhosa Kate Beckett soubesse), as linhas de comandos dessa "rotina" seguem um padrão obrigatório, ou cada programador cria a sua própria estrutura???

Eu pergunto isto porque, se o padrão é obrigatório, eu posso tentar encontrar estas linhas de comando e inseri-las onde está precisando.

Hoje eu vou dar uma vasculhada nos arquivos da "Administração" para ver se encontro algo diferente em relação às datas.

Obrigado.

Que a força esteja com você".

:D :D :D

Re: As datas estão confusas

Enviado: 26 Out 2013, 08:27
por denisgomes
mmguedes, as partes onde as datas já estão corretas são apenas para exibição, por isso a conversão foi feita. As partes em que você tem de informar a data são salvas no banco de dados, e provavelmente um programador preguiçoso resolveu deixar assim pra não ter que converter antes de salvar nem antes de exibir. Dessa forma ele simplesmente pegaria o conteúdo do campo e salvaria no banco de dados, sem alterar, o que é mais fácil.

Você pode fazer essas modificações, sim, mas lembre-se de que isso envolverá mexer no núcleo do Opencart. O ideal talvez seria criar um vqmod, mas você deverá sempre verificar se funciona com cada versão do Opencart. Deverão, portanto, ser criadas duas alterações: uma que converta a data para que ela seja exibida no campo quando a tela for aberta, e outra que converta a data de novo antes de salvá-la no banco de dados.

Re: As datas estão confusas

Enviado: 27 Out 2013, 17:41
por MMGuedes
Ok denisgomes.

Não vou arriscar em mexer em uma área desconhecida e perigosa.

Vou terminar de fazer todas as alterações/adaptações que preciso fazer na loja e, quando ela estiver 100% de acordo com minhas necessidades eu vou tentar resolver este detalhe.

Quem sabe até lá vai existir um vqmod específico, pois, infelizmente eu ainda não sei trabalhar com criação de vqmod's.

De qualquer forma agradeço pelas orientações.

Obrigadão.