Restaurar vários cursos de uma vez

Restaurar vários cursos de uma vez

por renato filho -
Número de respostas: 7

Bom dia, escrevo aqui para pedir a ajuda de vocês para resolver um problema que já venho trabalhando a algumas semanas. Preciso modificar a tela de restauração moodle para que determinados usuários sejam capaz de restaurar um backup criado(arquivo .mbz) para vários outros cursos de uma só vez. Na versão do moodle, 2.2.3 só é possível restaurar um curso para apenas um outro. O meu objetivo é fazer com que consiga  restaurar de um curso para N outros cursos. Já olhei bastante e tentei fazer algumas modificações no código PHP do módulo de backup/restauração, mas sempre deparo com um obstacúlo, principalmente em relação a fazer com que as classes deixem de trabalhar com o parametro $courseid, que deixa de ser um inteiro e passa a ser uma array contendo os ids dos cursos em que eu desejo restaurar o backup selecionado.

Para esclarecer, aqui está mais ou menos o que quero fazer:

Na linha 527, modfifique

html_writer::empty_tag('input', array('type'=>'radio', 'name'=>'targetid', 'value'=>$course->id)),

para 

html_writer::empty_tag('input', array('type'=>'checkbox', 'name'=>'targetid[]', 'value'=>$course->id)),

 

isto fará que na tela de restauração apareça um checkbox para escolher em quais cursos deve ser feito a restauração.

 

Sò que a partir dái, começa o problema, como toda a esturutra do código PHP do módulo de restore do moodle está escrito para tabalhar com $courseid sendo uma variável inteira presente em vários trechos do processo de restauração, é preciso modificar o módulo de uma forma que ele passe a lidar com a restauração em um loop, coisa que não consegui de nenhum modo. Gostaria da ajuda de vocês pra me dar um apoio no desenvolvimento dessa funcionalidade para este módulo.

 

Aguardo uma resposta, obrigado!

Anexo Captura_de_tela-1.png
Contagem das avaliações:  -
Em resposta à renato filho

Re: Restaurar vários cursos de uma vez

por renato filho -

Bem pessoal, depois de muito trabalho consegui achar uma forma de faer isso. Foram nescessparias mdançad no módulo de backup do moodle mas menos do que eu achava que seria nescessária. O que tive de fazer foi modificar a página restore.php e fazer usar um laço de repetiçao   pra iterar os cursos.

 

P.s.: Não cheguei a testar, mas acredito que as outras funcionalidades de restore foram comprometidas. 

Contagem das avaliações:  -
Em resposta à renato filho

Re: Restaurar vários cursos de uma vez

por renato filho -

Depois de testar e ver que as funcionalidades de restarura como um novo curso e no curso selecionado estavam realmente comprometidos, efetuei as mudanças nescessárias. As mudanças foram feita e testadas, quem tiver interesse, entrar em contato comigo pois o tamanho do arquivo excede o limte de upload do fórum. 

 

Contagem das avaliações:  -
Em resposta à renato filho

Re: Restaurar vários cursos de uma vez

por Antonio Júnior -

Olá Renato

Gostaria de receber o arquivo ou caso seja possivel disponibilizar em algum site de compartilhamento e postar o link aqui.

Obrigado!

Contagem das avaliações:  -
Em resposta à renato filho

Re: Restaurar vários cursos de uma vez

por italo enio -

Parabéns pela alteração. Eu gostaria de testar e usar essas alterações. Quando puder, esquece de postar aqui não um link para compartilhamento dos arquivos. Grande abç e mais uma vez, parabéns.

Contagem das avaliações:  -
Em resposta à renato filho

Re: Restaurar vários cursos de uma vez

por renato filho -

Opa Galera, desculpa pela demora para responder, mas é que na correria do dia-a-dia acabei esquecendo de postar a solução por aqui. Coloquei as minhas mudanças em um repositório no github, o que eu coloquei é o módulo de bcakup do moodle, ou seja a pasta/diretório backup que já vem no moodle. Como faz um tempinho   que eu fiz isso, não lembro exatemnte quias os aquivos que eu alterei, mas esse código etáatualizado e com a solução de alguns outros probleminhas que encocntrei depois da minha última postagem. Fiquem a vontade  para dar uma melhorada ou ajudada.

 

Link: https://github.com/renatosousafilho/moodle-restore

Contagem das avaliações:  -
Em resposta à renato filho

Re: Restaurar vários cursos de uma vez

por César BetaEducar -

Poderia dar um passo a passo como fazer? sou iniciante e realmente to meio perdido com os arquivos de como usa-los........

Contagem das avaliações:  -
Em resposta à renato filho

Re: Restaurar vários cursos de uma vez

por Gisele Brugger -

Olá Renato, 

Para qual versão do moodle é esta alteração que você fez? Foi para a 2.2.3 mesmo?

Já atualizou o moodle para novas versões? (2.3 ou 2.4) ?

Estou fazendo testes dos scripts com a versão 2.4 e vamos ter que fazer muitas alterações.

Aguardo seu retorno.

Desde já abrigada

Contagem das avaliações:  -