Devocionais

Sistema de Devocionais Diários

Devocionais

Sistema de devocionais diários e estudos bíblicos

"A tua palavra é lâmpada para os meus pés e luz para o meu caminho"

Salmos 119:105

Visão Geral

O módulo de Devocionais oferece uma plataforma completa para criação, publicação e compartilhamento de devocionais diários, estudos bíblicos e reflexões espirituais. Permite crescimento espiritual contínuo dos membros da igreja.

Criação de Devocionais

Editor rico para criar devocionais

Programação Diária

Devocionais programados por data

Favoritos

Sistema de favoritos e compartilhamento

Funcionalidades Principais

Editor de Devocionais

Editor rico para criação de devocionais com formatação avançada.

  • • Editor WYSIWYG
  • • Formatação de texto
  • • Inserção de imagens
  • • Referências bíblicas
  • • Preview em tempo real

Programação Diária

Sistema de programação e publicação automática de devocionais.

  • • Programação por data
  • • Publicação automática
  • • Calendário de devocionais
  • • Lembretes diários
  • • Histórico completo

Categorização

Sistema de categorização e tags para organização dos devocionais.

  • • Categorias temáticas
  • • Tags personalizadas
  • • Busca por categoria
  • • Filtros avançados
  • • Navegação intuitiva

Favoritos e Compartilhamento

Sistema de favoritos e compartilhamento de devocionais.

  • • Marcar como favorito
  • • Compartilhar em redes
  • • Lista de favoritos
  • • Recomendações
  • • Histórico de leitura

Busca Avançada

Sistema de busca e filtros para encontrar devocionais rapidamente.

  • • Busca por texto
  • • Filtros por categoria
  • • Busca por autor
  • • Filtros por data
  • • Resultados relevantes

Acesso Mobile

Interface responsiva para acesso em dispositivos móveis.

  • • Design responsivo
  • • Acesso offline
  • • Notificações push
  • • Sincronização
  • • Experiência otimizada

Estrutura do Banco de Dados

Tabelas Principais

devocionais

CREATE TABLE devocionais (
    id BIGINT PRIMARY KEY,
    titulo VARCHAR(255) NOT NULL,
    subtitulo VARCHAR(255),
    conteudo TEXT NOT NULL,
    autor_id BIGINT,
    categoria VARCHAR(100),
    tags JSON,
    data_publicacao DATE,
    data_programada DATE,
    status ENUM('rascunho', 'publicado', 'programado', 'arquivado'),
    visualizacoes INT DEFAULT 0,
    created_at TIMESTAMP,
    updated_at TIMESTAMP
);

devocional_favoritos

CREATE TABLE devocional_favoritos (
    id BIGINT PRIMARY KEY,
    devocional_id BIGINT,
    user_id BIGINT,
    data_favorito DATETIME,
    created_at TIMESTAMP,
    updated_at TIMESTAMP
);

devocional_visualizacoes

CREATE TABLE devocional_visualizacoes (
    id BIGINT PRIMARY KEY,
    devocional_id BIGINT,
    user_id BIGINT NULL,
    ip_address VARCHAR(45),
    user_agent TEXT,
    data_visualizacao DATETIME,
    created_at TIMESTAMP,
    updated_at TIMESTAMP
);

devocional_categorias

CREATE TABLE devocional_categorias (
    id BIGINT PRIMARY KEY,
    nome VARCHAR(100) NOT NULL,
    descricao TEXT,
    cor VARCHAR(7),
    ativo BOOLEAN DEFAULT TRUE,
    created_at TIMESTAMP,
    updated_at TIMESTAMP
);

Controllers e Rotas

Controllers Principais

Admin Controllers

  • DevocionalController
  • DevocionalCategoriaController
  • DevocionalRelatorioController

Member Controllers

  • DevocionalMemberController
  • DevocionalFavoritoController

Rotas Principais

// Rotas Admin
Route::prefix('admin/devotionals')->name('admin.devotionals.')->middleware(['auth', 'admin'])->group(function () {
    Route::get('/', [DevocionalController::class, 'index'])->name('index');
    Route::resource('devotionals', DevocionalController::class);
    Route::resource('categories', DevocionalCategoriaController::class);
    Route::get('reports', [DevocionalRelatorioController::class, 'index'])->name('reports');
});

// Rotas Member
Route::prefix('member/devotionals')->name('member.devotionals.')->middleware(['auth'])->group(function () {
    Route::get('/', [DevocionalMemberController::class, 'index'])->name('index');
    Route::get('favorites', [DevocionalFavoritoController::class, 'index'])->name('favorites');
    Route::post('favorite/{devocional}', [DevocionalFavoritoController::class, 'toggle'])->name('favorite');
    Route::get('history', [DevocionalMemberController::class, 'history'])->name('history');
});

Exemplos de Uso

Código de Exemplo

Criar Devocional

// DevocionalController.php
public function store(Request $request)
{
    $request->validate([
        'titulo' => 'required|string|max:255',
        'subtitulo' => 'nullable|string|max:255',
        'conteudo' => 'required|string',
        'categoria' => 'nullable|string|max:100',
        'tags' => 'nullable|array',
        'data_publicacao' => 'nullable|date',
        'status' => 'required|in:rascunho,publicado,programado'
    ]);

    $devocional = Devocional::create([
        'titulo' => $request->titulo,
        'subtitulo' => $request->subtitulo,
        'conteudo' => $request->conteudo,
        'autor_id' => auth()->id(),
        'categoria' => $request->categoria,
        'tags' => $request->tags,
        'data_publicacao' => $request->data_publicacao ?? now(),
        'status' => $request->status
    ]);

    return redirect()->route('admin.devotionals.index')
        ->with('success', 'Devocional criado com sucesso!');
}

Marcar como Favorito

// DevocionalFavoritoController.php
public function toggle(Devocional $devocional)
{
    $favorito = DevocionalFavorito::where('devocional_id', $devocional->id)
        ->where('user_id', auth()->id())
        ->first();

    if ($favorito) {
        $favorito->delete();
        $message = 'Removido dos favoritos';
    } else {
        DevocionalFavorito::create([
            'devocional_id' => $devocional->id,
            'user_id' => auth()->id(),
            'data_favorito' => now()
        ]);
        $message = 'Adicionado aos favoritos';
    }

    return response()->json([
        'success' => true,
        'message' => $message,
        'is_favorite' => !$favorito
    ]);
}

Buscar Devocionais

// DevocionalMemberController.php
public function search(Request $request)
{
    $query = Devocional::where('status', 'publicado');

    if ($request->filled('search')) {
        $search = $request->search;
        $query->where(function($q) use ($search) {
            $q->where('titulo', 'like', "%{$search}%")
              ->orWhere('subtitulo', 'like', "%{$search}%")
              ->orWhere('conteudo', 'like', "%{$search}%");
        });
    }

    if ($request->filled('categoria')) {
        $query->where('categoria', $request->categoria);
    }

    if ($request->filled('autor')) {
        $query->where('autor_id', $request->autor);
    }

    $devocionais = $query->with(['autor', 'favoritos'])
                         ->orderBy('data_publicacao', 'desc')
                         ->paginate(12);

    return view('member.devotionals.index', compact('devocionais'));
}

Relatórios e Estatísticas

Relatórios Disponíveis

Relatório de Visualizações

Análise de visualizações e engajamento dos devocionais.

  • • Visualizações por período
  • • Devocionais mais lidos
  • • Engajamento por categoria
  • • Tendências de leitura

Relatório de Favoritos

Análise de favoritos e preferências dos usuários.

  • • Devocionais mais favoritados
  • • Preferências por categoria
  • • Comportamento dos usuários
  • • Recomendações

Relatório de Autores

Análise de performance dos autores de devocionais.

  • • Devocionais por autor
  • • Engajamento por autor
  • • Categorias preferidas
  • • Performance comparativa

Relatório de Categorias

Análise de categorias e temas mais populares.

  • • Popularidade por categoria
  • • Tendências temáticas
  • • Sazonalidade
  • • Sugestões de conteúdo

Integrações

Módulos Integrados

Gestão de Membros

Integração com o sistema de gestão de membros para autores e leitores.

  • • Autores de devocionais
  • • Perfis de leitores
  • • Histórico de leitura
  • • Preferências personalizadas

Sistema de Notificações

Notificações automáticas para novos devocionais e lembretes.

  • • Novos devocionais
  • • Lembretes diários
  • • Devocionais favoritos
  • • Recomendações

Bíblia Digital

Integração com o sistema de Bíblia digital para referências.

  • • Referências bíblicas
  • • Links para versículos
  • • Contexto bíblico
  • • Estudos relacionados

Sistema de Relatórios

Relatórios consolidados sobre crescimento espiritual.

  • • Relatórios de crescimento
  • • Análises de engajamento
  • • Métricas espirituais
  • • Tendências de leitura