break; case 'delete': /* * posso cancellare l'esercizio solo se: * 1. nessuna istanza di corso attiva * 2. istanza del corso attiva, ma nessuno studente ha già svolto l'esercizio. * * quindi deve: * 1. ottieni istanze corso attive (esiste già il metodo AMA?) * 2. se istanza corso attiva, verifica se esiste studente che ha svolto esercizio * in questa istanza corso. * se tutto ok, cancella l'esercizio, * altrimenti mostra un messaggio che spiega perche' non e' possibile cancellare l'esercizio. * */ if (!ExerciseDAO::canEditExercise($id_node)) { $dataHa['exercise'] = translateFN("L'esercizio non può essere eliminato."); break; } $result = ExerciseDAO::delete($id_node); if (AMA_DataHandler::isError($result)) { $errObj = new ADA_Error($result, translateFN("Errore durante la cancellazione dell'esercizio")); } $dataHa['exercise'] = translateFN("L'esercizio è stato cancellato correttamente"); break; } //$dataHa['go_back'].= "<BR><a href=\"$http_root_dir/browsing/exercise.php?id_node=$id_next_exercise\">".translateFN("Prossimo esercizio")."</a>"; $content_dataAr = array('banner' => isset($banner) ? $banner : '', 'status' => $status, 'course_title' => isset($course_title) ? $course_title : '', 'user_name' => $user_name, 'user_type' => $user_type, 'user_level' => $user_level, 'author' => isset($node_author) ? $node_author : '', 'node_level' => isset($node_level) ? $node_level : '', 'visited' => isset($visited) ? $visited : '', 'path' => $node_path, 'title' => $node_title, 'form' => $dataHa['exercise'], 'media' => isset($dataHa['media']) ? $dataHa['media'] : '', 'messages' => $user_messages->getHtml(), 'agenda' => $user_agenda->getHtml(), 'chat_users' => isset($online_users) ? $online_users : '', 'icon' => $icon); // FIXME: non dovrebbe essere necessario aggiungere questa riga! $layout_dataAr['node_type'] = ''; ARE::render($layout_dataAr, $content_dataAr);