{"id":465,"date":"2019-12-09T07:00:00","date_gmt":"2019-12-09T10:00:00","guid":{"rendered":"http:\/\/helbertt.xyz\/site\/?p=465"},"modified":"2019-12-06T10:45:14","modified_gmt":"2019-12-06T13:45:14","slug":"quais-sao-os-niveis-de-contexto-no-moodle","status":"publish","type":"post","link":"https:\/\/helbertt.xyz\/site\/quais-sao-os-niveis-de-contexto-no-moodle\/","title":{"rendered":"Quais s\u00e3o os n\u00edveis de contexto no Moodle?"},"content":{"rendered":"<p>Se voc\u00ea est\u00e1 programando para o Moodle, voc\u00ea provavelmente precisar\u00e1 entender o que s\u00e3o os context level.<\/p>\n<p>Definido, a partir do Moodle 1.7, em\u00a0\u00a0<strong>\/moodle\/lib\/accesslib.php<\/strong><\/p>\n<p><strong>\/\/ context definitions<\/strong><br \/>\ndefine(\u2018CONTEXT_SYSTEM\u2019, 10);<br \/>\ndefine(\u2018CONTEXT_USER\u2019, 30);<br \/>\ndefine(\u2018CONTEXT_COURSECAT\u2019, 40);<br \/>\ndefine(\u2018CONTEXT_COURSE\u2019, 50);<br \/>\ndefine(\u2018CONTEXT_MODULE\u2019, 70);<br \/>\ndefine(\u2018CONTEXT_BLOCK\u2019, 80);<\/p>\n<p>Por exemplo : na tabela\u00a0<strong>mdl_course_categories<\/strong>\u00a0temos as categorias de cursos que por sua vez se relaciona com a tabela<strong>\u00a0mdl_context<\/strong><\/p>\n<p>sendo:<\/p>\n<p><strong>mdl_couse_categories.id = mdl_context.instancedid<\/strong><\/p>\n<p>onde todas as categorias de cursos encontradas na tabela\u00a0<strong>mdl_context<\/strong>\u00a0est\u00e3o com o campo\u00a0<strong>contextlevel=40<\/strong>\u00a0(CONTEXT_COURSECAT = contexto de categoria de curso)<\/p>\n<p>Um exemplo de uma consulta que ir\u00e1 retornar todos os estudantes e professores de um curso chamado \u2018Matematica\u2019.<\/p>\n<p>roleid = 5 =&gt; students\u00a0 e<\/p>\n<p>roleid =3\u00a0 =&gt;teachers<\/p>\n<p>SELECT c.id AS id, c.fullname, u.username, u.firstname, u.lastname, u.email<br \/>\nFROM mdl_role_assignments ra, mdl_user u, mdl_course c, mdl_context cxt<br \/>\nWHERE ra.userid = u.id<br \/>\nAND ra.contextid = cxt.id<br \/>\nAND cxt.contextlevel =50<br \/>\nAND cxt.instanceid = c.id<br \/>\nAND c.shortname =\u2019Matematica\u2019<br \/>\nAND (roleid =5 OR roleid=3);<\/p>\n<p>Vejam que neste caso :\u00a0<strong>cxt.contextlevel =50<\/strong>\u00a0ou seja apenas contexto de CONTEXT_COURSE<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Se voc\u00ea est\u00e1 programando para o Moodle, voc\u00ea provavelmente precisar\u00e1 entender o que s\u00e3o os context level. Definido, a partir<\/p>\n","protected":false},"author":1,"featured_media":541,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout"},"categories":[49],"tags":[],"_links":{"self":[{"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/posts\/465"}],"collection":[{"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/comments?post=465"}],"version-history":[{"count":2,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/posts\/465\/revisions"}],"predecessor-version":[{"id":542,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/posts\/465\/revisions\/542"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/media\/541"}],"wp:attachment":[{"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/media?parent=465"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/categories?post=465"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/helbertt.xyz\/site\/wp-json\/wp\/v2\/tags?post=465"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}