open($dir . '/' . $nomes[$i]); if ($res === TRUE) { $zip->extractTo('temp/'); $zip->close(); } } $dir = 'temp'; $files1 = scandir($dir); if (count($files1) < 3) { return null; } $arquivo = ""; for ($i = 0; $i < count($files1); $i++) { if ($files1[$i] == "." || $files1[$i] == "..") continue; if ( strpos($files1[$i], $exercicio) !== false) { $arquivo = $files1[$i]; } else { unlink($dir . '/' . $files1[$i]); } } return $arquivo; } function pegarLogsDoAlunoComoString ($arquivo) { $handle = fopen("temp/" . $arquivo, "r"); $inicio = false; $string_final = ""; if ($handle) { while (($line = fgets($handle)) !== false) { if ( strpos($line, "::logs::") !== false) { $inicio = true; continue; } if ($inicio) { $ex = explode(",", $line); if (count($ex) > 3) { $string_final .= $ex[1] . "," . $ex[2] . ",1,0\\n"; } } } fclose($handle); } else { echo "ERRO AO LER O ARQUIVO"; } return $string_final; } function listarAlunos ($curso) { $dir = 'cursos/' . $curso; $files1 = scandir($dir); $nomes = array(); if (count($files1) < 3) { return null; } for ($i = 0; $i < count($files1); $i++) { if ($files1[$i] == "." || $files1[$i] == "..") continue; $ex = explode("_iassign_", $files1[$i])[1]; $ex = explode("-", $ex)[0]; $ja_existe = false; for ($j = 0; $j < count($nomes); $j ++) { if ($nomes[$j] == $ex) { $ja_existe = true; break; } } if (!$ja_existe) { array_push($nomes, $ex); } } return $nomes; } function listarExercicios ($curso) { $zip = new ZipArchive; $dir = 'cursos/' . $curso; $files1 = scandir($dir); $exercicios = array(); if (count($files1) < 3) { return null; } for ($i = 0; $i < count($files1); $i++) { if ($files1[$i] == "." || $files1[$i] == "..") continue; $res = $zip->open($dir . '/' . $files1[$i]); if ($res === TRUE) { $zip->extractTo('temp/'); $zip->close(); } } $dir = 'temp'; $files1 = scandir($dir); if (count($files1) < 3) { return null; } for ($i = 0; $i < count($files1); $i++) { if ($files1[$i] == "." || $files1[$i] == "..") continue; $exp = explode("-", $files1[$i]); $fi = ""; for ($j = 0; $j < count($exp) - 2; $j++) { $fi .= $exp[$j]; if ($j < (count($exp) - 3)) { $fi .= "-"; } } $ja_existe = false; for ($j = 0; $j < count($exercicios); $j++) { if ($exercicios[$j] == $fi) { $ja_existe = true; break; } } if (!$ja_existe) { array_push($exercicios, $fi); } unlink($dir . '/' . $files1[$i]); } return $exercicios; } function instrucoes () { return "
Instruções para inserir novos logs para análise:
Em primeiro lugar, crie uma nova pasta no diretório cursos/, com o nome do curso que você pretende analisar. Em seguida, insira nessa pasta recém-criada todos os arquivos .zip que foram gerados pelo iTarefa com os dados dos alunos.
Atenção! Não altere nem o nome do arquivo gerado pelo iTarefa, pois o sistema segue o mesmo padrão.
"; } ?>