|
@@ -1,117 +0,0 @@
|
|
|
-// Função para ler parâmetros informados pelo iTarefa via URL
|
|
|
-// Apesar de não ser obrigatório, será muito útil para capturar os parâmetros
|
|
|
-function getParameterByName(name) {
|
|
|
- var match = RegExp('[?&]' + name + '=([^&]*)').exec(window.location.search);
|
|
|
- return match ? decodeURIComponent(match[1].replace(/\+/g, ' ')) : null;
|
|
|
-}
|
|
|
-
|
|
|
-// Criando um array com os parâmetros informados pelo iTarefa
|
|
|
-// Observe que para cada parâmetro, é realizada a chamada do método getParameterByName, implementado acima
|
|
|
-var iLMparameters = {
|
|
|
- iLM_PARAM_ServerToGetAnswerURL: getParameterByName("iLM_PARAM_ServerToGetAnswerURL"),
|
|
|
- iLM_PARAM_SendAnswer: getParameterByName("iLM_PARAM_SendAnswer"),
|
|
|
- iLM_PARAM_AssignmentURL: getParameterByName("iLM_PARAM_AssignmentURL"),
|
|
|
- iLM_PARAM_Assignment: getParameterByName("iLM_PARAM_Assignment"),
|
|
|
- lang: getParameterByName("lang")
|
|
|
-};
|
|
|
-
|
|
|
-// Função chamada pelo iTarefa quando o professor finaliza a criação da atividade
|
|
|
-// ou quando o aluno finaliza a resolução do exercício
|
|
|
-// O retorno é um JSON com os dados do exercício ou da resolução
|
|
|
-// Esse retorno será armazenado no banco de dados do Moodle, pelo iTarefa
|
|
|
-function getAnswer() {
|
|
|
- // Se o parâmetro "iLM_PARAM_SendAnswer" for false,
|
|
|
- // então trata-se de resolução de atividade
|
|
|
- if (iLMparameters.iLM_PARAM_SendAnswer == 'false') {
|
|
|
- // Montar o retorno da resposta do aluno
|
|
|
- var teacherReturn ="Numero de discos: "+nDisks+" Quantidade de Movimentos: "+nTotalMovements+
|
|
|
- "\nQuantidade de erros: "+nWrongMoves+" Tempo Total: "+totalTime+
|
|
|
- "\n --De Para";
|
|
|
- for(var i=0; i<totalMoves.length; i++){
|
|
|
- teacherReturn+="\n"+totalMoves[i];
|
|
|
- }
|
|
|
- return teacherReturn;
|
|
|
- } else {//se for o professor acessando, mostra a pagina de elaboração
|
|
|
- return "Número de Discos: "+$('.cDiscos').val();
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-// Função chamada pelo iTarefa para receber a nota do aluno na atividade
|
|
|
-// O retorno é um valor entre 0.0 e 1.0
|
|
|
-function getEvaluation() {
|
|
|
- if (iLMparameters.iLM_PARAM_SendAnswer == 'false') {
|
|
|
- // Calcula a nota do aluno:
|
|
|
-
|
|
|
-
|
|
|
- // Agora, verificamos se o aluno acertou
|
|
|
- // var acertos = 0;
|
|
|
-
|
|
|
- // Cálculo da nota: resposta correta =1, errada =0
|
|
|
- var nota = acertou;
|
|
|
-
|
|
|
- // A chamada do método abaixo é obrigatória!
|
|
|
- // Observe que a chamada parte do iLM para o iTarefa
|
|
|
- parent.getEvaluationCallback(nota);
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-// Função para que o iMA leia os dados da atividade fornecidos pelo iTarefa
|
|
|
-function getiLMContent() {
|
|
|
-
|
|
|
- // O parâmetro "iLM_PARAM_Assignment" fornece o URL do endereço que deve ser
|
|
|
- // requisitado via AJAX para a captura dos dados da atividade
|
|
|
- $.get(iLMparameters.iLM_PARAM_Assignment, function (d) {
|
|
|
- // Uma vez que os dados foram recebidos, o método "organizaAtividade" é chamado.
|
|
|
- // Observe que esse método faz parte do arquivo js/iarithmetic-functions.js
|
|
|
- console.log(d);
|
|
|
- res = d.split(" ");
|
|
|
- loadIMGS(parseInt(res[3]));
|
|
|
- if (res.indexOf("Quantidade")!=-1){
|
|
|
- document.getElementById("A_button").disabled = true;
|
|
|
- document.getElementById("B_button").disabled = true;
|
|
|
- document.getElementById("C_button").disabled = true;
|
|
|
- res = d.split("\n");
|
|
|
- var j = 0
|
|
|
- while(res[j].indexOf("--")==-1){
|
|
|
- j++;
|
|
|
- }
|
|
|
- j++;
|
|
|
- while(j<res.length){
|
|
|
- res2 = res[j].split(" ");
|
|
|
- nTotalMovements--;
|
|
|
- console.log(res2);
|
|
|
- idF= res2[0];
|
|
|
- idT= res2[1];
|
|
|
- finishMove(parseInt(res2[0]),parseInt(res2[1]));
|
|
|
- j++;
|
|
|
- }
|
|
|
- }
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-// Adicionamos a diretiva .ready(), para que quando a página HTML estiver carregada,
|
|
|
-// seja verificado qual a visualização deve ser apresentada: se a área de construção
|
|
|
-// de atividade ou de resolução. E no caso de ser resolução, os dados da atividade
|
|
|
-// precisam ser consultados, pelo método implementado acima, o getiLMContent()
|
|
|
-$(document).ready(function() {
|
|
|
- // Se iLM_PARAM_SendAnswer for false, então trata-se de resolução de atividade,
|
|
|
- // portanto, a "DIV" de resolução é liberada
|
|
|
- if (iLMparameters.iLM_PARAM_SendAnswer == 'false') {
|
|
|
- $('.task').css("display","block");
|
|
|
- getiLMContent();
|
|
|
- } else {
|
|
|
- // Caso não esteja em modo de resolução de atividade, a visualização no momento
|
|
|
- // é para a elaboração de atividade:
|
|
|
- $('.creation').css("display","block");
|
|
|
- }
|
|
|
-});
|
|
|
-
|
|
|
-function sleep(milliseconds) {
|
|
|
- var startSleep = new Date().getTime();
|
|
|
- for (var i = 0; i < 1e7; i++) {
|
|
|
- if ((new Date().getTime() - startSleep) > milliseconds){
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
-}
|