A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Desenvolvimento para Moodle Estrutura do banco de dados e principais API Lino Vaz Moniz Moodle Moot 2013.

Apresentações semelhantes


Apresentação em tema: "Desenvolvimento para Moodle Estrutura do banco de dados e principais API Lino Vaz Moniz Moodle Moot 2013."— Transcrição da apresentação:

1 Desenvolvimento para Moodle Estrutura do banco de dados e principais API Lino Vaz Moniz Moodle Moot 2013

2 Banco de Dados do Moodle Tabelas do Core do Sistema mdl_context mdl_config mdl_modules mdl_capabilities mdl_role mdl_role_capabilities mdl_log

3 Banco de Dados do Moodle Tabelas do Usuário mdl_user mdl_user_preferences mdl_user_info_category mdl_user_info_data mdl_user_info_field

4 Banco de Dados do Moodle Tabelas do Curso mdl_course mdl_course_categories mdl_course_modules mdl_course_sections

5 Banco de Dados do Moodle Tabelas da Matrícula mdl_role_assignments mdl_enrol (versão 2.x) mdl_user_enrolments (versão 2.x) Tabelas de referencia mdl_context mdl_role mdl_user

6 Banco de Dados do Moodle Tabelas de Nota mdl_grade_items mdl_grade_grades mdl_grade_letters

7 Banco de Dados do Moodle Layout da Tabela de Matrícula 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)

8 Banco de Dados do Moodle Efetuar Matrícula com Comando SQL Versão 1.9 Recuperar Id do contexto do curso SELECT id FROM mdl_context WHERE contextlevel=50 AND instanceid=? Efetuar matrícula INSERT INTO mdl_role_assignments (roleid,contextid,userid) VALUES (?,?,?)

9 Banco de Dados do Moodle Efetuar Matrícula com Comando SQL Versão 2.x Recuperar identificador método de Inscrição do curso SELECT id FROM mdl_enrol WHERE courseid=? AND enrol='manual' Vincular usuário ao método de inscrição 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 matrícula INSERT INTO mdl_role_assignments (roleid,contextid,userid,timemodified) VALUES (?,?,?,?) moodle.html?showComment= #c

10 Banco de Dados do Moodle Relatório de Matrícula 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=? Perfil (mdl_role) 1 – Administrator 2 -Course creator 3 –Teacher (Tutor) 4 - Non-editing teacher 5 – Student (Aluno) 6 –Guest 7 - Authenticated user

11 Banco de Dados do Moodle Tabela de domínio do contexto SISTEMA 10 USUÁRIO 30 CATEGORIA DE CURSO 40 CURSO 50 MÓDULO 70 BLOCO 80

12 API do Moodle Principais APIs Banco de dados Permissão Formulário String Thema Autenticação

13 API do Moodle Importar Bibliotecas do Core require_once("MOODLE_DIR_INSTALL/config.php"); de-funcoes-do-sistema.html

14 API do Moodle Variáveis Globais require_once("MOODLE_DIR_INSTALL/config.php"); global $CFG; global $DB; ( a partir da versão 2.x) global $COURSE; global $USER; function get_course(){ global $CFG; global $DB; //só aplica na versão 2.x global $COURSE; $sql ="SELECT id,fullname,shortname FROM {$CFG->prefix}course WHERE id =$COURSE->id"; return $DB->get_record_sql($sql);// para versão 2.x //return get_record_sql($sql);// para versão 1.9 }

15 API do Moodle Manipulação 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"); }

16 Arquitetura Modular do Moodle Tipos de Módulo/Plugin Matrícula moodle/enrol Autenticação moodle/auth Relatório do curso moodle/course/reporter Relatório de nota moodle/grade/reporter Relatório no contexto do sistema moodle/admin/report / moodle/report Exportação de nota moodle /grade/export Tema (interface gráfica) moodle/theme Formato de curso moodle/course/format

17 Arquitetura Modular do Moodle Tipos de Módulo/Plugin Tipo de questão moodle/question/type Atividade moodle/mod Campos para base de dados moodle/mod/data/field Tipo de Atividade tarefa moodle/mod/assignment/type Relatório de questionário moodle/mod/quiz/report Blocos moodle/blocks Campo de perfil de usuário moodle/user/profile/field Plugin deversos moodle/local

18 Programar para Moodle Diretrizes de Desenvolvimento Usar API do Moodle Evitar hacker do código Implementar/alterar funcionalidades através de plugin Usar sistema de permissão do Moodle Seguir padronização de nomes Seguir padrão de Internacionalização de idioma Alterar interface gráfica usando plugin do thema

19 Conheça meus Blogs Moodle SQL - Para Desenvolvedor e Programador do Moodle Moodle PHP - Para Programador do Moodle Moodle Educ - Para Administrador e Tutor do Moodle Moodle DI - Para Professor e Pesquisador (reflexões acadêmicas) Badiu GMoodle – Sistema de Gestão do Moodle

20 Lino Vaz Moniz Telefone (61) Skype badiu.net


Carregar ppt "Desenvolvimento para Moodle Estrutura do banco de dados e principais API Lino Vaz Moniz Moodle Moot 2013."

Apresentações semelhantes


Anúncios Google