Example #1
0
 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;
 }
Example #2
0
 /**
  * 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;
 }
Example #4
0
         }
         $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>&nbsp;' . $a_suivre . '&nbsp;</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;
Example #5
0
 /**
  * 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;
 }