# Padrões em Formulários do LimeSurvey

<p class="callout warning">É necessário incluir "/" antes de depois das expressões regulares a fim de funcionarem no LimeSurvey  
</p>

### Configurações para o Formulário

- Sempre altere o tema para PMS-extends\_fruity\_twentythree 
    - Vá em Configurações &gt; Configurações Gerais &gt; Tema &gt; PMS-extends\_fruity\_twentythree;
- Sempre inclua como Administrador a Secretaria cliente ou o servidor que solicitou o serviço, inclua o nome e o telefone no campo "Administrador"
- Sempre inclua o email da secretaria ou do servidor que solicitou o formulário no campo "endereço de e-mail do administrador"

##### Campo Nome Completo

<table border="1" id="bkmrk-t%C3%ADtulo-do-campo-info" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 21.0495%;"></col><col style="width: 79.0742%;"></col></colgroup><tbody><tr><td>Título do Campo</td><td>Nome Completo</td></tr><tr><td>Ajuda do Campo</td><td>Informe seu nome completo. Caso utilize nome social pode informá-lo.</td></tr><tr><td>Tipo de Campo</td><td>Texto Livre Curto</td></tr><tr><td>Validação</td><td><div class="row"><div class="col-10">/^[A-Za-zÀ-ÖØ-öø-ÿ]+([ '-][A-Za-zÀ-ÖØ-öø-ÿ]+)+ ?$/</div></div></td></tr></tbody></table>

##### Campo Número do CPF, RNE ou RNM

<table border="1" id="bkmrk-t%C3%ADtulo-do-campo-info-0" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 21.0495%;"></col><col style="width: 79.0742%;"></col></colgroup><tbody><tr><td>Título do Campo</td><td>Número do CPF, RNE ou RNM</td></tr><tr><td>Ajuda do Campo</td><td>Informe seu número de CPF. Ex: 999.999.999-99  
  
Para estrangeiros é necessário informar o Registro Nacional de Estrangeiro ou Registro Nacional de Migrante  
</td></tr><tr><td>Tipo de Campo</td><td>Texto Livre Curto</td></tr><tr><td>Validação</td><td>/^(?:\\d{3}\\.?\\d{3}\\.?\\d{3}-?\\d{2}|\[A-Za-z\]\\d{6}-?\\d)$/  
</td></tr></tbody></table>

##### Campo Endereço de E-mail

<table border="1" id="bkmrk-t%C3%ADtulo-do-campo-info-1" style="border-collapse: collapse; width: 100%; height: 135.984px;"><colgroup><col style="width: 21.0049%;"></col><col style="width: 78.9539%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td style="height: 29.7969px;">Título do Campo</td><td style="height: 29.7969px;">Endereço de E-mail</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">Ajuda do Campo</td><td style="height: 46.5938px;">Informe o seu Endereço de E-mail. Pode ser necessário entrar em contato com você para confirmar sua inscrição.</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">Tipo de Campo</td><td style="height: 29.7969px;">Texto Livre Curto</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">Validação</td><td style="height: 29.7969px;">/^\[A-Za-z0-9\]+(\[.\_%+-\]?\[A-Za-z0-9\]+)\*@\[A-Za-z0-9\](?:\[A-Za-z0-9-\]\*\[A-Za-z0-9\])?(?:\\.\[A-Za-z0-9\](?:\[A-Za-z0-9-\]\*\[A-Za-z0-9\])?)+$/  
</td></tr></tbody></table>

##### Campo Telefone

<table border="1" id="bkmrk-t%C3%ADtulo-do-campo-n%C3%BAme" style="border-collapse: collapse; width: 100%; height: 135.984px;"><colgroup><col style="width: 21.0049%;"></col><col style="width: 78.9539%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td style="height: 29.7969px;">Título do Campo</td><td style="height: 29.7969px;">Número de Telefone com WhatsApp</td></tr><tr style="height: 46.5938px;"><td style="height: 46.5938px;">Ajuda do Campo</td><td style="height: 46.5938px;">Informe o seu Número de Telefone para contato através do WhatsApp ou ligação. Ex: 1599999999

Pode ser necessário entrar em contato com você para confirmar sua inscrição.

</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">Tipo de Campo</td><td style="height: 29.7969px;">Texto Livre Curto</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">Validação</td><td style="height: 29.7969px;">/^\\(?\\d{2}\\)?\[\\s-\]?\\d{4,5}-?\\d{4}$/</td></tr></tbody></table>

##### Campo Idade

<table border="1" id="bkmrk-t%C3%ADtulo-do-campo-info-2" style="border-collapse: collapse; width: 100%; height: 117.833px;"><colgroup><col style="width: 21.0049%;"></col><col style="width: 78.9539%;"></col></colgroup><tbody><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Título do Campo</td><td style="height: 29.4583px;">Idade</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Ajuda do Campo</td><td style="height: 29.4583px;">Informe a sua idade</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Tipo de Campo</td><td style="height: 29.4583px;">Texto Livre Curto</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Validação</td><td style="height: 29.4583px;">/^(?:\[1-9\]|\[1-9\]\\d|1\[01\]\\d|120)$/  
</td></tr></tbody></table>

##### Campo Data de Nascimento

<table border="1" id="bkmrk-t%C3%ADtulo-do-campo-info-3" style="border-collapse: collapse; width: 100%; height: 117.833px;"><colgroup><col style="width: 21.0049%;"></col><col style="width: 78.9539%;"></col></colgroup><tbody><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Título do Campo</td><td style="height: 29.4583px;">Data de Nascimento</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Ajuda do Campo</td><td style="height: 29.4583px;">Informe a sua Data de Nascimento. Ex: dd/mm/aaaa</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Tipo de Campo</td><td style="height: 29.4583px;">Texto Livre Curto</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Validação</td><td style="height: 29.4583px;">/^(0\[1-9\]|\[12\]\[0-9\]|3\[01\])\\/(0\[1-9\]|1\[0-2\])\\/(19|20)\\d{2}$/</td></tr></tbody></table>

##### Campo Gênero

<table border="1" id="bkmrk-t%C3%ADtulo-do-campo-g%C3%AAne" style="border-collapse: collapse; width: 100%; height: 117.833px;"><colgroup><col style="width: 21.0049%;"></col><col style="width: 78.9539%;"></col></colgroup><tbody><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Título do Campo</td><td style="height: 29.4583px;">Gênero</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Ajuda do Campo</td><td style="height: 29.4583px;">Informe o Gênero com que você se identifica</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Tipo de Campo</td><td style="height: 29.4583px;">Lista com comentários</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Validação</td><td style="height: 29.4583px;">/^(0\[1-9\]|\[12\]\[0-9\]|3\[01\])/(0\[1-9\]|1\[0-2\])/(19|20)\\d{2}$/</td></tr><tr><td>Opções</td><td>Masculino

Feminino

Não Binárie

Outro

</td></tr><tr><td>Referência Legal</td><td>[https://www.gov.br/mdh/pt-br/assuntos/noticias/2024/dezembro/ministerio-disponibiliza-formulario-padrao-para-uniformizar-coleta-de-dados-da-populacao-lgbtqia](https://www.gov.br/mdh/pt-br/assuntos/noticias/2024/dezembro/ministerio-disponibiliza-formulario-padrao-para-uniformizar-coleta-de-dados-da-populacao-lgbtqia)

\- https://www.gov.br/mdh/pt-br/navegue-por-temas/lgbt/ApresentaodoPowerPoint.pdf

</td></tr></tbody></table>

##### Campo Termo de Autorização de Participação para Menor de Idade

<table border="1" id="bkmrk-t%C3%ADtulo-do-campo-term" style="border-collapse: collapse; width: 100%; height: 324.312px;"><colgroup><col style="width: 21.0049%;"></col><col style="width: 78.9539%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td style="height: 29.7969px;">Título do Campo</td><td style="height: 29.7969px;">Termo de Autorização de Participação para Menor de Idade</td></tr><tr style="height: 124.953px;"><td style="height: 124.953px;">Ajuda do Campo</td><td style="height: 124.953px;">Menores de idade precisam encaminhar Autorização manuscrita para participação do evento.

Modelo:  
Eu, \_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_ responsável legal de \_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_ portador do RG \_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_ e CPF\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_ residente no endereço \_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_ autorizo a participar do evento Patinação no Gelo que ocorrerá {G1Q00005.shown}. Assinatura\_\_\_\_\_\_\_

</td></tr><tr><td>Observação</td><td>Substitua "G1Q00005" em {G1Q00005.shown} pelo id da Pergunta que contem o agendamento

</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">Tipo de Campo</td><td style="height: 29.7969px;">Envio de Arquivo</td></tr></tbody></table>

### Padrão de Formulário

#### Comportamentos Personalizados

Caso seja necessário algum comportamento personalizado no Formulário os scripts de cada campo estão no repositório: [http://ti.sorocaba.sp.gov.br/gitlab/laferreira/limesurvey-scripts](http://ti.sorocaba.sp.gov.br/gitlab/laferreira/limesurvey-scripts)

<p class="callout warning">Sempre faça a atualização dos scripts no repositório a fim de compartilhar as soluções.</p>

#### Grupo "Informações sobre o Evento"

Este grupo de informações deve conter o limite de inscrições e também os campos para escolha de Data e Horário caso seja necessário agendamento.

##### Limite de Inscrição

É opcional o limite de inscrições para um evento contudo esta deve ser a primeira pergunta que o Munícipe deve ter contato.

<table border="1" id="bkmrk-t%C3%ADtulo-do-campo-veri" style="border-collapse: collapse; width: 100%; height: 117.833px;"><colgroup><col style="width: 21.0049%;"></col><col style="width: 78.9539%;"></col></colgroup><tbody><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Título do Campo</td><td style="height: 29.4583px;"><div class="row"><div class="col-10">Verificar se há vagas disponíveis para este evento</div></div></td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Ajuda do Campo</td><td style="height: 29.4583px;">  
</td></tr><tr><td>Texto da Pergunta</td><td>Verificar</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Tipo de Campo</td><td style="height: 29.4583px;">Múltipla escolha (Type: M)</td></tr><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Validação</td><td style="height: 29.4583px;">  
</td></tr></tbody></table>

<table border="1" id="bkmrk-nome-da-quota%3A-limit" style="border-collapse: collapse; width: 100%; height: 109.312px;"><colgroup><col style="width: 21.0049%;"></col><col style="width: 78.9539%;"></col></colgroup><tbody><tr style="height: 29.4583px;"><td style="height: 29.4583px;">Nome da quota:</td><td style="height: 29.4583px;"><div class="row"><div class="col-10">Limite de Inscrições</div></div></td></tr><tr style="height: 79.8542px;"><td style="height: 79.8542px;">Mensagem da quota:</td><td style="height: 79.8542px;">&lt;h1&gt;O limite de inscrições foi atingido!&lt;/h1&gt;

&lt;p&gt;Infelizmente atingimos o limite de inscrições para este evento.&lt;br /&gt;&lt;br /&gt;Sua inscrição não poderá ser realizada.&lt;/p&gt;

</td></tr></tbody></table>

#### Grupo "Informações sobre a Inscrição"

Este grupo de informações deve as Informações Pessoas sobre o Munícipe.

##### Agendamento de Data e Hora

Sempre que um evento exigir a escolha de agendamento em que há muitas opções de data e horário, resultando numa lista muito grande de escolhas para o usuário o agendamento deve ser Personalizado através da adaptação do script

Referência:

- Casamento Comunitário

##### Agendamento Progressivo (Semanal ou Mensal)

Sempre que um evento exigir a escolha de agendamento em que há muitas opções préviamente cadastradas em que precisam ser liberadas periódicamente o agendamento deve ser Personalizado através de adaptação do script

Referência:

- City Tour

### Elementos de Texto

#### Mensagem de Boas-Vindas

- Sempre inclua uma imagem. A largura deve ser 100% e a altura deve permanecer em branco. Em avançado adicione a classe CSS "arredondar-tudo"
- Sempre adicione um bloco de texto com Informações Importantes, é um resumo das informações presentes no texto 
    - Audiência do Evento;
    - Limitações;
    - Documentos necessários;
    - Local do Evento;
    - Data do Evento.
- Sempre adicione informações de contato para dúvidas: 
    - Nome do contato;
    - Telefone;
    - E-mail.

#### Mensagem Final

- Sempre inclua a informação que a inscrição foi concluída
- Sempre inclua o botão para direcionar a pessoa de volta ao Site da Prefeitura
- Sempre adicione informações de contato para dúvidas: 
    - Nome do contato;
    - Telefone;
    - E-mail.
- 

Exemplo:

```
<h1>Sua inscrição foi concluída</h1>

<p>O seu número de protocolo é {SID * 100000 + SAVEDID}.</p>
<a class="btn btn-primary" href="https://sorocaba.sp.gov.br" width="">Voltar para o Site da Prefeitura de Sorocaba </a>
```

##### Padrão para Emitir Protocolo ao Usuário

Multiplicar o Número do Formulário {SID} por 100.000 e somar o ID da Resposta do Usuário {SAVEDID}

`O seu número de protocolo é {SID * 100000 + SAVEDID}.`

####   


##### Padrão para Exibir Resposta do Usuário a uma Lista em Botão de Radio

Utilizar o ID da Pergunta, exemplo {G1Q00002}, e usar o método shown

`Data e Horário: {G1Q00002.shown}`