Caso voce queira impedir que o nome e o sobrenome dos usuarios sejam alterados apos o cadastro, e necessario desativar esses campos na configuracao do plugin de autenticacao ou fazer um hacker no codigo do core do Moodle. O caminho mais indicado e usar interface de configuracao do Moodle. Aqui demonstraremos como fazer isso via codigo PHP. Para bloquear a edicao dos campos nome e sobrenome no formulario de edicao pelo codigo PHP, siga os seguintes passos:1 Passo - Abrir o arquivo editlib.php Abra em um editor de texto o seguinte arquivo: $CFG->wwwroot /user/editlib.php$CFG->wwwroot se refere ao endereco da pasta em que a aplicacao do Moodle esta instalada. 2 Passo - Inserir funcao de bloqueio edicao Insira o codigo abaixo em qualquer parte do arquivo editlib.php. Preferencialmente coloque antes da funcao useredit_shared_definition. Essa funcao fica geralmente na linha 70 na versao 1.9 e 80 na versao 2.x.function readonly_form_element(){ if(has_capability('moodle/user:create', get_context_instance(CONTEXT_SYSTEM))) return ' '; else return ' READONLY '; }Essa funcao retorna o string READONLY apenas para usuarios que nao tem permissao de cadastrar usuario. O perfil de aluno e tutor nao tem essa permissao. Ja o perfil Administrador tem. O string READONLY e um codigo HTML que impede o campo do formulario de ser editado. 3 Passo - Localizar o campo nome e sobrenome do formulario de cadastro/edicao O codigo que gera campo de nome e sobrenome no formulario de cadastro/edicao do usuario fica dentro da funcao useredit_shared_definition. Nessa funcao, localize os seguintes trechos do codigo: if (fullname($nameordercheck) == 'b a' ) { // See MDL-4325 $mform->addElement('text', 'lastname', get_string('lastname'), 'maxlength="100" size="30"'); $mform->addElement('text', 'firstname', get_string('firstname'), 'maxlength="100" size="30"'); } else { $mform->addElement('text', 'firstname', get_string('firstname'), 'maxlength="100" size="30"'); $mform->addElement('text', 'lastname', get_string('lastname'), 'maxlength="100" size="30"'); }4 Passo - Desativar a edicao dos campos nome o sobrenome No final de cada linha de codigo que comeca com $mform->addElement... adicione a funcao readonly_form_element()definida no passo 2. Feito isso, o trecho do codigo deve ficar assim: if (fullname($nameordercheck) == 'b a' ) { // See MDL-4325 $mform->addElement('text', 'lastname', get_string('lastname'), 'maxlength="100" size="30"'.readonly_form_element()); $mform->addElement('text', 'firstname', get_string('firstname'), 'maxlength="100" size="30"'.readonly_form_element()); } else { $mform->addElement('text', 'firstname', get_string('firstname'), 'maxlength="100" size="30"'.readonly_form_element()); $mform->addElement('text', 'lastname', get_string('lastname'), 'maxlength="100" size="30"'.readonly_form_element()); }Ao adicionar a funcao, o HTML gerado tera o codigo READONLY para os usuarios que nao tem permissao de adicionar novos usuarios no Moodle tais como aluno e tutor. Estes nao conseguirao editar os campos nome e sobrenome ao modificar o perfil no Moodle. 4 Passo - Gravar alteracao do arquivo editlib.php Para que a alteracao seja efetivada, grave o arquivo. Feito isso, basta acessar o formulario de edicao do perfil com a senha do aluno ou do tutor para verificar se os campos nome e sobrenome estao bloqueados para edicao. Confirme tambem que esses mesmos campos nao estao bloqueados para edicao ao acessar o Moodle com a senha do administrador. Esse procedimento e um hacker do codigo, ou seja, altera o codigo padrao do Moodle. Em caso de atualizacao, esse codigo sera perdido. Para manter, e necessario seguir os mesmos procedimentos apos a atualizacao da versao. A tabela abaixo lista os varios tipos de plugin que existem no Moodle. A coluna