Neste post vou compartilhar com vocês como usar editor attor do Moodle fora do formlib do Moodle. Inseri-lo em um campo textarea.
Para isso, montei três cenários de código. Em todos os cenários, é necessário atender os seguintes requisitos:
- Importar arquivo config.php do moodle
- Importar as seguintes bibliotecas:
require_once $CFG->dirroot.'/lib/form/editor.php';
require_once $CFG->dirroot . '/lib/editorlib.php'; - Colocar código entre echo $OUTPUT->header(); e echo $OUTPUT->footer();
A regra básica é instanciar editor com o mesmo id do textarea:
$editor = \editors_get_preferred_editor(FORMAT_HTML);
$editor->use_editor("badiueditor1"); //id do textarea
Cenário 1 - Adicionar editor em textarea
Neste código usamos id badiueditor1, o mesmo usado no textarea
$editor = \editors_get_preferred_editor(FORMAT_HTML);
$editor->use_editor("badiueditor1");
echo "<textarea id='badiueditor1' rows='4' cols='50'>Teste Badiu <br />Texto inicial no editor</textarea>";
Cenário 2 - Adicionar editor em textarea customizando ícones na barra de opções
Neste código usamos id badiueditor2, o mesmo usado no textarea
$paramconf=array('atto:toolbar'=>'style1 = bold, italic'. PHP_EOL .'list = unorderedlist, orderedlist');
$editor = \editors_get_preferred_editor(FORMAT_HTML);
$editor->use_editor("badiueditor2",$paramconf);
echo "<textarea id='badiueditor2' rows='4' cols='50'>Teste Badiu <br />Texto inicial no editor</textarea>";
Cenário 3 - Adicionar editor em textarea com opção de acesso ao gerenciador de arquivo (filemanager)
Neste código usamos id badiueditor3, o mesmo usado no textarea
require_login();
$paramconf=array('atto:toolbar'=>'style1 = bold, italic'. PHP_EOL .'list = unorderedlist, orderedlist');
$editor = \editors_get_preferred_editor(FORMAT_HTML);
$editor->use_editor("badiueditor2",$paramconf);
echo "<textarea id='badiueditor2' rows='4' cols='50'>Teste Badiu <br />Texto inicial no editor</textarea>"; echo "<hr/ >Editor attor no textares com acesso ao gerenciamento de arquivos<hr/ >";
$context = context_system::instance();
$paramconf = array('subdirs' => 0,'maxbytes' => 0,'maxfiles' => -1,'context' => $context,'noclean' => 0,'trusttext' => 0); $linkoptions=new stdClass();
$linkoptions = initialise_filepicker('*');
$linkoptions->context = $context;
$linkoptions->client_id = uniqid();
$linkoptions->maxbytes =1024;
$linkoptions->areamaxbytes = 1024;
$linkoptions->env = 'editor';
$linkoptions->itemid = 134; $imageoptions=new stdClass();
$imageoptions = initialise_filepicker('*');
$imageoptions->context = $context;
$imageoptions->client_id = uniqid();
$imageoptions->maxbytes = 1204;
$imageoptions->areamaxbytes = 1024;
$imageoptions->env = 'editor';
$imageoptions->itemid = 134; $optionconfig=array();
$optionconfig['image']=$imageoptions;
$optionconfig['link']=$linkoptions; $editor = \editors_get_preferred_editor(FORMAT_HTML);
$editor->use_editor("badiueditor3",$paramconf,$optionconfig);
echo "<textarea id='badiueditor3' rows='4' cols='50'>Teste Badiu <br />Texto inicial no editor</textarea>";
Download do script e instalação
a) Para usar esse script, clique aqui e faça download do arquivo editor_attor_ouside_fomlib.php
b) Coloque o script na pasta _extra do Moodle. Essa pasta não existe por padrão. Crie uma com esse nome e coloque na raiz de instalação em MOODLE_DIR_INTALL
c) Acesse o Moodle com a senha de administrador ou qualquer outro usuário execute o script execute os parâmetros via URL como mostra os links a seguir
MOODLE_URL/_extra/editor_attor_ouside_fomlib.php