M

Manual Rede das Artes

Funcionalidades

Eventos

Eventos representam atividades culturais com suporte a agendamento, incluindo ocorrências únicas e recorrentes.

Um evento é uma atividade cultural que acontece em um tempo e lugar específicos. Eventos vão de apresentações de um único dia a exposições de longa duração com recorrência complexa. Eles pertencem a agentes, são agendados em espaços e podem ser agrupados em projetos.

Apresentações

Shows, peças de teatro, espetáculos de dança e apresentações ao vivo.

Exposições

Exposições de arte, feiras e mostras que acontecem ao longo de períodos estendidos.

Oficinas e palestras

Oficinas, palestras, seminários e atividades formativas.

Campos principais

CampoDescrição
nameNome do evento. Obrigatório.
shortDescriptionResumo curto, com até 400 caracteres. Obrigatório.
longDescriptionDescrição completa com suporte a texto rico.
typeIdentificador numérico do tipo. Configurado por instalação.
rulesRegras ou condições adicionais do evento.
projectVínculo opcional com o projeto ao qual este evento pertence.
status1 = publicado, 0 = rascunho, -2 = arquivado, -9 = desabilitado, -10 = lixeira.
createTimestampMomento em que o evento foi criado. Somente leitura.
updateTimestampMomento da última modificação do evento. Somente leitura.

Campos adicionais, como preço, informações de acessibilidade, classificação indicativa e idiomas, são armazenados como metadados e variam conforme a instalação.

Ocorrências e recorrência

O evento em si é um descritor: ele define o que o evento é. Quando e onde ele acontece é registrado em EventOccurrence. Um mesmo evento pode ter várias ocorrências em diferentes espaços e datas.

Campos de EventOccurrence

CampoDescrição
spaceEspaço onde a ocorrência acontece.
_startsOnData de início.
_endsOnData de término (para eventos com vários dias).
_startsAtHora de início.
_endsAtHora de término.
frequencyFrequência da recorrência (diária, semanal, mensal).
countNúmero de recorrências.
_untilData final da recorrência.
ruleRegra completa de recorrência em formato iCal RRULE.
descriptionObservações específicas da ocorrência.

Eventos recorrentes

A plataforma usa uma função armazenada no PostgreSQL (recurring_event_occurrence_for) para expandir regras de recorrência em instâncias concretas de ocorrência para um intervalo de datas. Isso significa que a recorrência é calculada dinamicamente a partir da regra armazenada, evitando gravar cada data individualmente no banco.

-- Usado internamente para expandir eventos recorrentes em ocorrências
SELECT *
FROM recurring_event_occurrence_for(
    :date_from,
    :date_to,
    'Etc/UTC',
    NULL
)
WHERE event_id = :event_id;

Consultas de ocorrências aceitam os parâmetros date_from e date_to. Quando não são informados, ambos assumem a data atual, retornando apenas as ocorrências de hoje.

Relação com espaços

Uma ocorrência de evento está sempre ligada a um espaço específico. Você pode consultar ocorrências filtradas por espaço e intervalo de datas usando findOccurrencesBySpace():

// Busca todas as ocorrências de um evento em um espaço específico entre duas datas
$occurrences = $event->findOccurrencesBySpace(
    $space,
    '2024-03-01',
    '2024-03-31'
);

Relação com projetos

Eventos podem opcionalmente pertencer a um projeto. Quando um evento é vinculado a um projeto, os gestores desse projeto passam a ter controle sobre o evento. Criar um evento dentro de um projeto exige a titularidade do projeto ou uma permissão explícita do seu proprietário.

Se um sistema de workflow estiver habilitado, vincular um evento a um projeto pode disparar um fluxo de aprovação (RequestEventProject).

// Atribuir um projeto a um evento dispara checagens de permissão
$event->setProject($project);
$event->save();

Permissões

AçãoQuem pode executá-la
CriarQualquer usuário autenticado, ou visitante, dependendo da configuração.
Ver rascunhoAgente proprietário ou agentes com permissão @control sobre o evento ou projeto.
PublicarProprietário, administradores ou agentes com permissão @control.
ModificarProprietário ou agentes com @control. Se o projeto mudou, também exige controle sobre o projeto.

Ciclo de status

Criando um evento

No painel, selecione Meus Eventos.

Clique em Novo Evento e preencha os campos obrigatórios: nome e descrição curta.

Selecione o espaço onde o evento acontece e depois defina a data, o horário e, se ele se repetir, a regra de recorrência.

Se o evento fizer parte de um projeto cultural, vincule-o ao projeto. Isso exige permissão do proprietário do projeto.

Adicione descrição longa, informações de preço, acessibilidade e tags de classificação.

Altere o status de Rascunho para Publicado para tornar o evento visível no calendário público.

Histórico de revisões

Toda alteração em um evento é registrada no sistema de revisões. Os dados de revisão incluem um snapshot de todas as ocorrências, com nome do espaço, localização, endereço e detalhes de agenda, além do projeto vinculado no momento de cada salvamento.


Esse material é fruto do Programa de Difusão Nacional - Funarte Redes das Artes, realizado pelo Laboratório do Futuro (entidade vinculada à Universidade Federal do Ceará) no ano de 2025.

Felicilab
Mutirão
Lab do Futuro UFC
UFC
Rede das Artes Funarte
Funarte
MinC Governo Federal

On this page