Desenvolvimento para Moodle
Desenvolvimento de Plugin de
Matrícula para Moodle 2
Versão 1.2
Lino Vaz Moniz
[email protected]
http://www.badiu.net/
Moodle Moot 2015
30/04/2015
Sumário
Requisitos
Estrutura de arquivos
Instalação / atualização
Configuração global e local
Solicitação e processamento de inscrição
Requisitos do Plugin
 Requisitos Funcionais
 Configurar condição de inscrição com base na nota final de um
determinado curso;
 Se o usuário acessar o curso, ele será inscrito caso atender o
requisito de nota de aprovação configurado no plugin;
 Requisitos Técnicos
 Segue o padrão do Moodle. Deve ser instalado e desinstalado
na própria interface do Moodle;
 Deve ser compatível com qualquer versão do Moodle de família
2. De 2.0 a 2.8
Arquivos de Plugin
Arquivo
Obrigatório
Descrição
lang/en/enrol_badiugcurricular.php
Sim
Pacote de idioma
db/access.php
Não
Controle de permissão
db/upgrade.php
Não
Controle de atualização
db/install.xml
Não
Definição de tabelas a ser criado no banco de dados
settings.php
Sim
Configuração global do plugin
version.php
Sim
Definição da versão do plugin
lib.php
Sim
Lógica de processamento do plugin. Ponto de ligação do
plugin com o core do sistema
edit_form.php
Não
Formulário de configuração de regra da matrícula
edit.php
Não
Processa o formulário
plugin_config
Não
Gerencia configuração global
gradelib.php
Não
Verifica se usuário atende o requisito de nota
util.php
Não
Funções auxiliares de modo geral
enrollib.php
Não
Gerencia cadastro do usuário no curso
locallib
Não
Gerencia cadastro do método de inscrição
enrol.php
Processa solicitação de inscrição verificando se o
Teste de Funcionamento
Instalação
 Faça download do plugin casca
http://badiu.net/download/badiugcurricular/badiugcurricular_1.1.zip
 Descompacte o arquivo badiugcurricular_1.1.zip
 Coloque a pasta badiugcurricular dentro da pasta
MOODLE_DIR_INSTALL/enrol
Verifique que dentro da pasta badiugcurricular tem arquivos version.php pasta lang etc.
 Acesse o Moodle com senha de admin e clique no link Avisos no bloco
de administração do site. A outra alternativa é acessar o link
URL_MOODLE/admin/index.php
Teste de Funcionamento
Instalação Continuação
 Ao acessar o gerenciador de plugin, será exibido a seguinte tela
 Clique no botão Atualizar base de dados do Moodle agora. Feito isso deve
ser exibido a tela de configuração global do plugin.
Teste de Funcionamento
Instalação Continuação
 Tela de configuração global do plugin.
Conteúdo dessa
tela fica no
arquivo
settings.php
Teste de Funcionamento
Habilitar o Plugin
 Acesse o gerenciador do plugin de inscrição
navegando no bloco de administração do site
 Outra alternativa é acessar o seguinte url:
MOODLE_URL/admin/settings.php?section=manageenrols
Teste de Funcionamento
Habilitar o Plugin
 Habilite o plugin clicando no olho fechado
Teste de Funcionamento
Habilitar o Plugin
 Visualização do plugin habilitado
Teste de Funcionamento
Criar Instância do Plugin no Curso
 Acesse o gerenciador do método de de
inscrição do curso
 Outra alternativa é acessar o seguinte
url:
MOODLE_URL/admin/settings.php?section=manageenrols
Teste de Funcionamento
Criar Instância do Plugin no Curso
 Selecione o método de inscrição
Essa opção é colocada
pela função
get_newinstance_link
do lib.php
Teste de Funcionamento
Criar Instância do Plugin no Curso
 Configurar a regra de inscrição
Este formulário é
configurado no arquivo
edit_form.php e
processado no arquivo
edit.php
Teste de Funcionamento
Criar Instância do Plugin no Curso
 Configurar a regra de inscrição
Teste de Funcionamento
Criar Instância do Plugin no Curso
 Regra de inscrição instanciada
Esse ícone é colocado
pela função
get_action_icons do
lib.php.
Teste de Funcionamento
Criar Instância do Plugin no Curso
 Regra de inscrição instanciada
Esse ícone é colocado
pela função
get_action_icons do
lib.php.
Teste de Funcionamento
Acesso do aluno ao curso
 Regra de inscrição que será exibida ao aluno
 Essa tela mostra a mensagem configurada no
formulário quando o aluno atende o requisito
Essa mensagem é colocada
pela função
enrol_page_hook do
arquivo lib.php
A lógica de processamento
fica na função exec do
arquivo enrol.php que é
invocado pela função
enrol_page_hook
Tabelas que Gerenciam Matrícula no
Banco de Dados
Tabela
Descrição
mdl_config_plugins
Registra todos os plugins instalados e suas configurações globais
O aquivo plugin_config.php faz leitura das configurações globais. O
arquivo settings.php grava as configurações globais usando API do
core Moodle
mdl_enrol
Registra as regras de matrícula (método de inscrição). Cada regra é
uma instância de um determinado plugin vinculado a um curso. O
arquivo locallib.php gerencia cadastro nessa tabela. Recebe dados
do formulário edit_form.php. Esses dados são processados pelo
arquivo edit.php que invoca as funções do arquivo locallib.php
mdl_user_enrolments
Registra o vínculo do usuário a regra de inscrição. Também
configura o período de validade da matrícula. O gerenciamento de
cadastro é feito pelo arquivo enrollib.php pela função
save_user_enrolments
mdl_role_assignments
Registra a matricula do usuário vinculado a um determinado contexto
(categoria de curso, curso ...) e a um determinado perfil (aluno, tutor
...). O gerenciamento de cadastro é feito pelo arquivo enrollib.php
pela função save_role_assignments
Campos da tabela mdl_enrol usados pelo plugin
Campo
Core
Descrição
nome
Sim
Nome da instância
status
Sim
Status da instância
courseid
Sim
Vincula regra de inscrição ao curso. Chave estrangeira do
curso da tabela mdl_course
roleid
Não
Define a função padrão que será inscrito no curso. Chave
estrangeira do curso da tabela mdl_role
enrolperiod
Não
Define o tempo de validade da inscrição
customint1
Não
Permitir novas inscrições
customint2
Não
Curso pré-requisitos
customint3
Não
Limite de vaga
customint5
Não
Nota mínimo de aproveitamento no curso pré-requisito
customtext1
Não
Mensagem de apresentação se o usuário atende os
requisitos
customtext2
Não
Mensagem de apresentação se o usuário não atende os
requisitos
Documentação e espaço de debate
 Download do Plugin
http://www.badiu.net/download/badiugcurricular/badiugcurricular_1.1.zip
 Documentação
http://moodleeduc.badiu.com.br/?cat=38
 Fórum de debate e tira dúvida
http://comunidade.badiu.com.br/mod/forum/view.php?id=2
Lino Vaz Moniz
Telefone
(61) 9937-8258
E-mail
[email protected]
[email protected]
http://www.badiu.net
Skype
badiu.net
Download

Teste de Funcionamento