# Correção V7.1 — Login e arranque local

## Problema do superutilizador

A página `/portal/login/` validava apenas contas associadas a clientes. Por esse motivo, um superutilizador criado com:

```bash
python manage.py createsuperuser
```

podia entrar diretamente em `/admin/`, mas era rejeitado na página de entrada do portal.

A V7.1 passa a utilizar uma entrada unificada:

- clientes são encaminhados para `/portal/`;
- superutilizadores e colaboradores `is_staff` são encaminhados para `/admin/`;
- é possível autenticar com nome de utilizador **ou email**, desde que o email seja único.

A página inicial `http://127.0.0.1:8000/` apresenta agora dois acessos claramente separados.

## Problema do `runserver`

O comando foi reforçado para desenvolvimento local:

- garante o endereço `127.0.0.1`;
- mostra no terminal todas as URLs disponíveis;
- desativa temporariamente redirecionamentos HTTPS e cookies seguros durante o `runserver`;
- evita que configurações de produção no `.env` tornem o endereço HTTP inacessível;
- mantém uma rota de diagnóstico em `/health/`.

Executar:

```bash
python manage.py diagnose_local
python manage.py runserver 127.0.0.1:8000
```

Depois abrir explicitamente:

```text
http://127.0.0.1:8000/
```

Não utilizar `https://` no servidor local.

## Recuperar o acesso administrativo

Listar o estado do projeto:

```bash
python manage.py diagnose_local
```

Criar um administrador, caso ainda não exista:

```bash
python manage.py createsuperuser
```

Alterar a palavra-passe de uma conta existente:

```bash
python manage.py changepassword NOME_DO_UTILIZADOR
```

## Porta ocupada

Se a porta 8000 estiver ocupada:

```bash
python manage.py runserver 127.0.0.1:8001
```

Abrir:

```text
http://127.0.0.1:8001/
```
