# Editor de horário de abertura do OpenStreetMap

A especificação dos horários de aberturas no OpenStreetMap é bastante complexa e não permite uma utilização simples e intuitiva.

No entanto, na maioria das vezes só se usa uma pequena parte da especificação. O editor tem isto em conta e tenta simplificar não mostrando outras opções avançadas nos menus, assim como mostrar pequenos modelos de preenchimento úteis em levantamentos no terreno.

Esta documentação é temporária e encontra-se em desenvolvimento

## Usar o editor de horário de abertura

Num processo normal, o objeto que está a editar irá ter uma etiqueta de horário de abertura (opening_hours, service_times e collection_times) ou então poderá tornar a aplicar o modelo de etiquetas ao objeto para obter um campo de horário de abertura limpo. Se necessitar de adicionar o campo manualmente e estiver a usar o Vespucci, pode introduzir a chave na página de detalhes e então mudar para a aba baseada em formulário para editá-la. Se acreditar que a etiqueta de horário de abertura devia fazer parte do modelo de etiquetas, por favor abra um relatório para o seu editor.

Se definiu um modelo padrão (através do menu "Gerir modelos"), este será carregado automaticamente quando o editor for iniciado com um valor vazio. Com a funcionalidade "Carregar modelo" pode carregar um modelo qualquer gravado e com a função "Gravar modelo" pode gravar o valor atual num modelo. Pode definir modelos separados e valores padrão nas etiquetas "opening_hours" (horário de abertura) "collection_times" (hora de recolha) e "service_times" (horário de serviços).

Claro que pode construir um valor de abertura a partir do nada, mas recomendamos usar um dos modelos existentes como ponto de partida.

Se for carregado um valor de horário de abertura existente, é feita uma tentativa para corrigir automaticamente para estar conforme a especificação do horário de abertura. Se isso não for possível, a localização onde o erro se encontra é destacada e poderá corrigir manualmente. Certa de um quarto de todos os valores de horários de abertura no OpenStreetMap têm problemas, mas menos de 10% não podem ser corrigidos. Veja OpeningHoursParser para mais informação sobre que desvios da especificação são tolerados.

### Botão do menu principal

- Adicionar regra: adiciona uma nova regra.
- Adicionar regra para feriado: adiciona uma nova regra para feriado junto com um alteração de estado.
- Adicionar regra para 24/7: adiciona uma regra para um elemento que está sempre aberto, a especificação de horário de abertura não suporta mais nenhum sub valor para 24/7, no entanto permite-se adicionar seletores de alto nível (por exemplo, intervalos de tempo).
- Carregar modelo: carrega um modelo existente.
- Gravar no modelo: grava os valores do horário de abertura atual num modelo para futura reutilização.
- Gerir modelos: editar, por exemplo alterar o nome e eliminar os modelos existentes.
- Atualizar: torna a processar os valores das horas.
- Eliminar tudo: elimina todas as regras.

### Regras

As regras padrão são adicionadas como regras normais, isto implica que elas irão gravar por cima que quaisquer valores existentes para os mesmo dias. Isto pode ser um problema ao especificar horas expandidas, normalmente irá querer mudar as regras através do menu Mostrar tipo de regra para aditivo.

#### Menu de regras

- Adicionar estado/comentário: altera o efeito desta regra e permite adicionar um comentário opcional.
- Adicionar feriado: adiciona um seletor para feriados civis ou escolares.
- Adicionar segmento de tempo...
  - Hora - hora: uma hora inicial e final no mesmo dia.
  - Hora - tempo alargado: uma hora inicial e uma final no dia seguinte (por exemplo 26:00 corresponde às 02:00 do dia seguinte)
  - Hora variável - hora: de uma hora inicial variável (amanhecer, anoitecer, nascer do sol e pôr do sol) até uma hora de fecho no mesmo dia.
  - Hora variável - tempo alargado: de uma hora inicial variável até uma hora de fecho no dia seguinte.
  - Hora - hora variável: de uma hora de início até uma hora de fim.
  - Hora variável - hora variável: de uma hora de início variável até uma hora de fim variável.
  - Hora: um ponto no tempo.
  - Hora-fecho após últ.cliente: começa numa hora inicial.
  - Hora variável: na hora variável
  - Hora variável-fecho após últ.cliente: começa numa hora inicial variável.
- Adicionar intervalo de dia da semana: adiciona um seletor baseado no dia da semana.
- Adicionar intervalo de datas...
  - Data - data: de uma data inicial (ano, mês, dia) até uma data de fim.
  - Data variável - data: de uma data inicial variável (atualmente a especificação apenas define a páscoa) até uma data de fim.
  - Data - data variável: de uma data inicial até uma data variável.
  - Data variável - data variável: de uma data inicial variável até uma data de fim variável.
  - Ocorrência no mês - ocorrência no mês: de uma ocorrência no mês do dia da semana até ao mesmo.
  - Ocorrência num mês - data: de uma ocorrência no mês do dia da semana até a uma data de fim.
  - Data - ocorrência num mês: de uma data de início até uma ocorrência no mês do dia da semana.
  - Ocorrência no mês - data variável: de uma ocorrência no dia da semana num mês até uma data de fim variável.
  - Data variável - ocorrência no mês: de uma data inicial variável até uma ocorrência no dia da semana num mês.
  - Data - fecho após últ.cliente: começa numa data inicial.
  - Data variável - fecho após últ.cliente: começa numa data inicial variável.
  - Ocorrência no mês - fecho após últ.cliente: começa num dia da semana num mês inicial.
  - Com deslocamentos...: como as mesmas entradas de cima mas com deslocamentos especificados (isto raramente é usado)
- Adicionar intervalo de anos: adiciona um seletor baseado em anos.
- Adicionar intervalo de semanas: adiciona um seletor baseado no número da semana
- Duplicar: cria uma cópia da regra atual e insere-a após a posição atual.
- Mostrar tipo de regra: mostra e permite mudar o tipo de regra normal, aditivo e alternativo (ou) (não disponível na primeira regra).
- Mover para cima: move uma posição para cima a regra atual (não disponível na primeira regra).
- Mover para baixo: move uma posição para baixo a regra atual
- Eliminar: elimina a regra atual.

### Segmentos de tempo

Para tornar a edição de segmentos de tempo o mais fácil possível, tentamos escolher o melhor intervalo de tempo e granularidade para as barras de intervalo ao carregar valores existentes. Para novos segmentos de tempo novos, as barras começam às 6:00 e têm incrementos de minutos. Isto pode ser alterado no menu.

Clicking (not on the pins) the time bar will open the large time picker, when using the bars directly is too difficult. The time pickers extend in to the next day, so they are a simple way to extend a time range without having to delete and re-add the the range.

#### Menu de segmento de tempo

- Display time picker: show a large time picker for selecting start and end time, on very small displays this is the preferred way of changing times.
- Mudar para intervalos de 15 minutos: usa intervalos de 15 minutos na barra de intervalo.
- Mudar para intervalos de 5 minutos: usa intervalos de 5 minutos na barra de intervalo.
- Mudar para intervalos de 1 minuto: usa intervalos de 1 minuto na barra de intervalo, pode ser difícil de usar esta opção num ecrã pequeno.
- Começar à meia-noite: a barra de intervalo começa à meia-noite.
- Mostrar intervalo: mostra o campo de intervalo para especificar um intervalo em minutos.
- Eliminar: eliminar este segmento de tempo.