Preciso de ajuda para alterar mensagem que é enviada por e-mail quando um curso é solicitado e aprovado no Moodle versão 3.7.

Preciso de ajuda para alterar mensagem que é enviada por e-mail quando um curso é solicitado e aprovado no Moodle versão 3.7.

por Donizete Moreira de Oliveira -
Número de respostas: 4

Boa tarde srs(a),

Preciso de ajuda para mudar mensagem que é enviada por e-mail quando um curso é solicitado e aprovado no Moodle versão 3.7.

Sei onde encostrar a mensagens no pacote de idiomas, porém não sei como inserir as  strings (para trazer o nome do solicitante, o nome breve do curso e a categoria e subcategoria que o curso foi solicitado. Mensagem que preciso .

_________________________

 

Prezado (a),  "AQUI PRECISO DO NOME DO SOLICITANTE" não consigo que apareça o nome do solicitante

 

A disciplina solicitada pelo AVA foi aprovada:

 

Nome Completo da Disciplina: {$a->name} "ESSE ESTA FUNCIONANDO É PADRÃO DO MOODLE" 

Nome Breve da Disciplina"AQUI PRECISO DO NOME BREVE DO CURSO sortname" "Não sei como exibir o nome breve do curso"

 

Categoria da Disciplina: "NÃO SEI COMO INSERIR O CAMINHO DO CURSO CATEGORIAS E SUBCATEGORIAS"

Link da disciplina: {$a->url} "ESSE ESTA FUNCIONANDO É PADRÃO DO MOODLE 

 

Desde já sou grato 

 

Em resposta à Donizete Moreira de Oliveira

Re: Preciso de ajuda para alterar mensagem que é enviada por e-mail quando um curso é solicitado e aprovado no Moodle versão 3.7.

por Lino Vaz Moniz -

Donizete,

O objecto que é customizado no pacote de idioma como {$a->url}  e outros, esses parâmetros são instanciados em um objeto antes de enviar e-mail. 

Neste caso, para ampliar os parâmetros, sugiro efetuar a seguinte checagem:

a) Veja na documentação do plugin que está usando quais são os parâmetros permitidos. Se o parâmetro não estiver definido no código do plugin, colocar só no pacote de idioma não vai adiantar;

b) Caso os parâmetros que pretende usar não estão contemplados no código do plugin, a alternativa e aprimorar o código, adicionar os novos parâmetros;

c) Variáveis referente ao nome do curso e nome breve podem ser capturado do contexto quando estiver navegando em contexto de curso. Neste caso, basta capturar do objeto $COURSE. Caso não estiver no contexto de curso, pelo id do curso, pode ser extraído do banco de dados bem como categoria em que o curso está vinculado. 

Em resposta à Lino Vaz Moniz

Re: Preciso de ajuda para alterar mensagem que é enviada por e-mail quando um curso é solicitado e aprovado no Moodle versão 3.7.

por Donizete Moreira de Oliveira -

Muito obrigado pela resposta,

Sobre o plugin,> Na verdade não foi instalado nenhum plugin adicional estou usando o recurso nativo do Moodle só queri incrementar adicionando esses campos ( que são nome do solicitante, nome breve do curso e outros segue exemplo: 

O participante ao acessar o endereço: https://meu.moodlet/course/request.php?

ele preenche um formulário e quando o admin aprova e cria o curso o Moodle envia a mensagem automática: 

 

" Seu curso solicitado , nome do curso, foi aprovado para acessar se novo curso, vá para: endereço do curso."

Veja que já contém 2 strings. (nome do curso que é {$a->name} ) e (endereço do curso que é {$a->url}) 

Eu queria acrescentar personalizar acrescentando mais strings e textos ficaria assim:

 

 

Prezado (a), {não tem consigo a string}

 

A disciplina solicitada pelo AVA  foi aprovada.

 

Nome Completo da Disciplina {$a->name} esse tá OK padrão do formulário 

 

Nome Breve da Disciplina {não tem consigo a string}

 

Categoria do curso : {não tem consigo a string}

 

Link da disciplina: {$a->url} esse tá OK padrão do formulário 

 

 

Em resposta à Donizete Moreira de Oliveira

Re: Preciso de ajuda para alterar mensagem que é enviada por e-mail quando um curso é solicitado e aprovado no Moodle versão 3.7.

por Lino Vaz Moniz -

Donizete,

Conseguir realizar um teste sobre solicitação de curso. Recebi e-mail sobre solicitação a também recebi e-mail sobre aprovação.  Segue algumas observações e orientação para você prosseguir com a customização.

a) Localizei os pacotes de idioma responsáveis para essas mensagens. Usei um mecanismos de busca do linux. Como esse comando:

grep -r "Seu curso solicitado,"  MOODLE_DATA 

Com essa pesquisa localizou string que veio no e-mail na lista de arquivos do Moodledata. Lembre que MOODLE_DATA deve ser endereço de onde está a pasta moodledata. Com esse método de pesquisa, localizei os dois strings no pacote de idiomas. Segue:

Texto de solicitação

MOODLEDATA/lang/pt_br/admin.php
$string['courserequestnotifyemail'] = 'O usuário {$a->user} solicitou um novo curso em {$a->link}';

Texto informando aprovação

MOODLEDATA/lang/pt_br/admin.php
$string['courseapprovedemail2'] = 'Seu curso solicitado, {$a->name}, foi aprovado. Para acessar seu novo curso, vá para {$a->url}';

Agora, com essa localização, faça edição direto desses string adicionando novos variáveis. Isso não é certeza que vá funcionar, mas teste para ver. Se não funcionar a solução é adicionar esses variáveis no core do código do Moodle. 

2) Certamente vai ser necessário hacker o Moodle para adicionar novas variáveis. Cada atributo definido no objecto $a no pacote de idioma deve ser previamente definido antes no objeto. Por se tratar de um código de core de Moodle, a alternativa é efetuar hacker de código.  Para isso, é necessário mapear em qual parte do código o objeto $a é passado para o pacote de idioma. Ao identificar, verificar nome dos atributos que tem e adicionar novos se for o caso.  Esse rastreamento deve ser feito no código que gera solicitação em

MOODLE_URL/course/request.php

e também no código que efetua aprovação que fica no arquivo:

MOODLE_URL/course/pending.php

Esse é o caminho que vejo para solucionar essa questão. Trilhe esse caminho. Qualquer dúvida, compartilhe. Para esse processo, pode ser que você venha precisar de um programado PHP. 

Em resposta à Lino Vaz Moniz

Re: Preciso de ajuda para alterar mensagem que é enviada por e-mail quando um curso é solicitado e aprovado no Moodle versão 3.7.

por Donizete Moreira de Oliveira -

Agradecido pela ajuda e boa vontade, não concluir os teste por falta de conhecimentos