Banco de Dados do Moodle Layout da Tabela de Matrcula
mdl_role_assignments id bigint(10) NOT NULL AUTO_INCREMENT roleid bigint(10) NOT NULL (FK mdl_role) contextid bigint(10) NOT NULL (FK mdl_context) userid bigint(10) NOT NULL (FK mdl_user)
Banco de Dados do Moodle Efetuar Matrcula com Comando SQL Verso 1.9
Banco de Dados do Moodle Efetuar Matrcula com Comando SQL Verso 1.9
Recuperar Id do contexto do curso
SELECT id FROM mdl_context WHERE contextlevel=50 AND instanceid=?
Efetuar matrcula
INSERT INTO mdl_role_assignments (roleid,contextid,userid) VALUES (?,?,?)
Banco de Dados do Moodle Efetuar Matrcula com Comando SQL Verso 2.x
Recuperar identificador mtodo de Inscrio do curso SELECT id FROM mdl_enrol WHERE courseid=? AND enrol='manual'
Vincular usurio ao mtodo de inscrio INSERT INTO mdl_user_enrolments (status,enrolid,userid,timestart,timeend,timecreated,timemodified) VALUES (?,?,?,?,?,?,?)
Recuperar Id do contexto do curso SELECT id FROM mdl_context WHERE instanceid=? AND contextlevel=50
Efetuar matrcula INSERT INTO mdl_role_assignments (roleid,contextid,userid,timemodified) VALUES (?,?,?,?)
Banco de Dados do Moodle Relatrio de Matrcula pelo Comando SQL
SELECT u.id, u.firstname,u.lastname FROM mdl_role_assignments rs INNER JOIN mdl_user u ON u.id=rs.userid INNER JOIN mdl_context e ON rs.contextid=e.id WHERE e.contextlevel=50 AND rs.roleid=5 AND e.instanceid=?
require_once("MOODLE_DIR_INSTALL/config.php"); global $CFG; global $DB; ( a partir da verso 2.x) global $COURSE; global $USER;
function get_course(){ global $CFG; global $DB; //s aplica na verso 2.x global $COURSE;
$sql ="SELECT id,fullname,shortname FROM {$CFG->prefix}course WHERE id =$COURSE->id"; return $DB->get_record_sql($sql);// para verso 2.x //return get_record_sql($sql);// para verso 1.9 }
API do Moodle Manipulao de Banco de Dados
Manipular Tabela mdl_teste //adicionar registro function save($dto) { global $CFG; global $DB; return $DB->insert_record('teste', $dto); }
//alterar registro function edit($dto) { global $CFG; global $DB; return $DB->update_record('teste', $dto); }
//excluir registro function delete_by_id($id) { global $CFG; global $DB; return $DB->delete_records_select('teste', "id=$id"); } Arquitetura Modular do Moodle Tipos de Mdulo/Plugin
Matrcula moodle/enrol Autenticao moodle/auth Relatrio do curso moodle/course/reporter Relatrio de nota moodle/grade/reporter Relatrio no contexto do sistema moodle/admin/report / moodle/report Exportao de nota moodle /grade/export Tema (interface grfica) moodle/theme Formato de curso moodle/course/format Arquitetura Modular do Moodle Tipos de Mdulo/Plugin
Tipo de questo moodle/question/type Atividade moodle/mod Campos para base de dados moodle/mod/data/field Tipo de Atividade tarefa moodle/mod/assignment/type Relatrio de questionrio moodle/mod/quiz/report Blocos moodle/blocks Campo de perfil de usurio moodle/user/profile/field Plugin deversos moodle/local
Programar para Moodle Diretrizes de Desenvolvimento
! Usar API do Moodle
! Evitar hacker do cdigo
! Implementar/alterar funcionalidades atravs de plugin ! Usar API do Moodle
! Usar sistema de permisso do Moodle
! Seguir padronizao de nomes
! Seguir padro de Internacionalizao de idioma
! Alterar interface grfica usando plugin do thema
Conhea meus Blogs
! Moodle SQL - Para Desenvolvedor e Programador do Moodle http://moodlesql.blogspot.com
! Moodle PHP - Para Programador do Moodle http://moodlephp.blogspot.com
! Moodle Educ - Para Administrador e Tutor do Moodle http://moodleeduc.blogspot.com
! Moodle DI - Para Professor e Pesquisador (reflexes acadmicas) http://moodledi.blogspot.com
! Badiu GMoodle Sistema de Gesto do Moodle http://gmoodle.blogspot.com.br/