function write_liste_activites() { global $CFG; // initial string; $expout = ""; // add comment $expout .= "\n\n<!-- instance : " . $this->ireferentiel->id . " -->\n"; // if ($this->ireferentiel) { // DEBUG // echo "<br />DEBUG LIGNE 1021<br />\n"; // print_r($this->ireferentiel); $id = $this->writeraw($this->ireferentiel->id); $name = $this->writeraw(trim($this->ireferentiel->name)); $description_instance = $this->writetext(trim($this->ireferentiel->description_instance)); $label_domaine = $this->writeraw(trim($this->ireferentiel->label_domaine)); $label_competence = $this->writeraw(trim($this->ireferentiel->label_competence)); $label_item = $this->writeraw(trim($this->ireferentiel->label_item)); $date_instance = $this->writeraw($this->ireferentiel->date_instance); $course = $this->writeraw($this->ireferentiel->course); $ref_referentiel = $this->writeraw($this->ireferentiel->ref_referentiel); $visible = $this->writeraw($this->ireferentiel->visible); $expout .= "<id>{$id}</id>\n"; $expout .= "<name>{$name}</name>\n"; $expout .= "<description_instance>\n{$description_instance}</description_instance>\n"; $expout .= "<label_domaine>{$label_domaine}</label_domaine>\n"; $expout .= "<label_competence>{$label_competence}</label_competence>\n"; $expout .= "<label_item>{$label_item}</label_item>\n"; $expout .= "<date_instance>{$date_instance}</date_instance>\n"; $expout .= "<course>{$course}</course>\n"; $expout .= "<ref_referentiel>{$ref_referentiel}</ref_referentiel>\n"; $expout .= "<visible>{$visible}</visible>\n"; // ACTIVITES if (isset($this->ireferentiel->id) && $this->ireferentiel->id > 0) { $records_activites = referentiel_get_activites_instance($this->ireferentiel->id); // print_r($records_activites); if ($records_activites) { foreach ($records_activites as $record_a) { $expout .= $this->write_activite($record_a); } } } } return $expout; }
/** * Turns referentiel instance into an xml segment * @param referentiel instanceobject * @return string xml segment */ function write_liste_activites() { global $CFG; // initial string; $expout = ""; $id = $this->ireferentiel->id; // add comment and div tags $expout .= "<!-- certification : " . $this->ireferentiel->id . " name: " . $this->ireferentiel->name . " -->\n"; $expout .= "<div class=\"referentiel\">\n"; // add header $expout .= "<h3>" . $this->ireferentiel->name . "</h3>\n"; // $expout .= "<ul>\n"; // if ($this->ireferentiel) { $id = $this->ireferentiel->id; $name = trim($this->ireferentiel->name); $description_instance = trim($this->ireferentiel->description_instance); $label_domaine = trim($this->ireferentiel->label_domaine); $label_competence = trim($this->ireferentiel->label_competence); $label_item = trim($this->ireferentiel->label_item); $date_instance = $this->ireferentiel->date_instance; $course = $this->ireferentiel->course; $ref_referentiel = $this->ireferentiel->ref_referentiel; $visible = $this->ireferentiel->visible; $expout .= " <li><b>" . get_string('id', 'referentiel') . "</b> : {$id}</li>\n"; $expout .= " <li><b>" . get_string('name', 'referentiel') . "</b> : {$name}</li>\n"; $expout .= " <li><b>" . get_string('description_instance', 'referentiel') . "</b> : description_instance</li>\n"; $expout .= " <li><b>" . get_string('label_domaine', 'referentiel') . "</b> : {$label_domaine}</li>\n"; $expout .= " <li><b>" . get_string('label_competence', 'referentiel') . "</b> : {$label_competence}</li>\n"; $expout .= " <li><b>" . get_string('label_item', 'referentiel') . "</b> : {$label_item}</li>\n"; $expout .= " <li><b>" . get_string('date_instance', 'referentiel') . "</b> : " . date("Y-m-d H:i:s", $date_instance) . "</li>\n"; $expout .= " <li><b>" . get_string('course') . "</b> : {$course}</li>\n"; $expout .= " <li><b>" . get_string('ref_referentiel', 'referentiel') . "</b> : {$ref_referentiel}</li>\n"; $expout .= " <li><b>" . get_string('visible', 'referentiel') . "</b> : {$visible}</li>\n"; // ACTIVITES if (isset($this->ireferentiel->id) && $this->ireferentiel->id > 0) { $records_activites = referentiel_get_activites_instance($this->ireferentiel->id); if ($records_activites) { foreach ($records_activites as $record_a) { // DEBUG // print_r($record_a); // echo "<br />\n"; $expout .= $this->write_activite($record_a); } } } } return $expout; }
/** * Deletes a referentiel instance activity * * Deletes all database records, files and calendar events for this referentiel instance. * * @global object $CFG * @global object $DB * @param object $referentiel The referentiel to be purged * @param boolean purge : if true referentiel instance is deleted too * @return boolean False indicates error */ function delete_instance($referentiel, $purge = true) { global $CFG, $DB; $result = true; // now get rid of all files $fs = get_file_storage(); if ($cm = get_coursemodule_from_instance('referentiel', $referentiel->id)) { $context = context_module::instance($cm->id); $fs->delete_area_files($context->id); } // suppression des activites associees $activites = referentiel_get_activites_instance($referentiel->id); if ($activites) { foreach ($activites as $activite) { referentiel_delete_activity_record($activite->id); } } // suppression des taches associees $taches = referentiel_get_tasks_instance($referentiel->id); if ($taches) { foreach ($taches as $tache) { referentiel_delete_task_record($tache->id); } } // suppression des accompagnements $accompagnements = referentiel_get_accompagnements($referentiel->id); if ($accompagnements) { foreach ($accompagnements as $accompagnement) { referentiel_delete_accompagnement_record($accompagnement->id); } } // recalcul des certificats associes $certificats = referentiel_get_certificats($referentiel->ref_referentiel); if ($certificats) { foreach ($certificats as $certificat) { referentiel_recalcule_certificat($certificat); } } // suppression des evenements du calendrier if (!$DB->delete_records('event', array('modulename' => 'referentiel', 'instance' => $referentiel->id))) { $result = false; } if ($purge) { // on supprime aussi l'instance if (!$DB->delete_records('referentiel', array('id' => $referentiel->id))) { $result = false; } } else { // l'instance est conservee après avoir ete videe ; utile pour la reinitialisation du cours $result = true; } // $mod = $DB->get_field('modules','id',array('name'=>'referentiel')); // referentiel_grade_item_delete($referentiel); // existe pas return $result; }
} $context_instance = context_module::instance($course_module->id); } else { $link_course = get_string('nondefini', 'referentiel'); } } else { $link_instance = $referentiel_instance->name . '<br /><i>' . get_string('nonexist', 'referentiel') . '</i>' . "\n"; // Proposer suppression $link_instance .= "<br /><a href=\"./delete.php?i={$referentiel_instance->id}\">" . get_string('supprimer_instance', 'referentiel') . "</a>"; } // Proposer des infos concernant le nombre de déclarations d'activités et le voluem des données $activites_users_instance = referentiel_get_users_activites_instance($referentiel_instance->id); if ($activites_users_instance) { $users_data = count($activites_users_instance); } $activites_instance = referentiel_get_activites_instance($referentiel_instance->id); if ($activites_instance) { $activites_data = count($activites_instance); // $activites_instance_a_suivre = referentiel_get_activites_instance_a_suivre($referentiel_instance->id, $delai); if ($activites_instance_a_suivre) { $a_suivre = count($activites_instance_a_suivre); $nbactivitedesherence += $a_suivre; $activites_data .= ' (<a href="' . $base_url . 'liste_activites.php?o=' . $referentiel_referentiel->id . '&joursdedelai=' . $joursdedelai . '"><b> ' . $a_suivre . ' </b></a>)'; } // proposer archivage $archives_data .= "<a href=\"./archive.php?i={$referentiel_instance->id}\">" . get_string('gerer_archives', 'referentiel') . "</a>"; if (!empty($context_instance)) { if ($CFG->referentiel_purge_archives) { // Archives older than REFERENTIEL_ARCHIVE_OBSOLETE days will be deleted. $delai_destruction = REFERENTIEL_ARCHIVE_OBSOLETE * 24 * 3600;
/** * Turns referentiel instance into an xml segment * @param referentiel instanceobject * @return string xml segment */ function write_liste_activites() { global $CFG; // initial string; $expout = ""; // if ($this->ireferentiel) { $id = $this->ireferentiel->id; $name = $this->purge_sep($this->ireferentiel->name); $description_instance = $this->purge_sep($this->ireferentiel->description_instance); $label_domaine = trim($this->ireferentiel->label_domaine); $label_competence = trim($this->ireferentiel->label_competence); $label_item = trim($this->ireferentiel->label_item); $date_instance = $this->ireferentiel->date_instance; $course = $this->ireferentiel->course; $ref_referentiel = $this->ireferentiel->ref_referentiel; $visible = $this->ireferentiel->visible; // $expout .= "#Instance de referentiel : $this->ireferentiel->name\n"; $expout .= "#id_instance;name;description_instance;label_domaine;label_competence;label_item;date_instance;course;ref_referentiel;visible\n"; $expout .= "{$id};" . stripslashes($this->output_codage_caractere($name)) . ";" . stripslashes($this->output_codage_caractere($description_instance)) . ";" . stripslashes($this->output_codage_caractere($label_domaine)) . ";" . stripslashes($this->output_codage_caractere($label_competence)) . ";" . stripslashes($this->output_codage_caractere($label_item)) . ";" . referentiel_timestamp_date_special($date_instance) . ";{$course};{$ref_referentiel};{$visible}\n"; // ACTIVITES if (isset($this->ireferentiel->id) && $this->ireferentiel->id > 0) { $records_activites = referentiel_get_activites_instance($this->ireferentiel->id); if ($records_activites) { foreach ($records_activites as $record_a) { // DEBUG // print_r($record_a); // echo "<br />\n"; $expout .= $this->write_activite($record_a); } } } } return $expout; }