function set_init($set_ha) { global $debug; $add_or_upgrade_ok = false; if (!is_array($set_ha)) { $this->initerror = translateFN("Dati di inizializzazione in formato non corretto"); return false; } else { $this->livello = 0; $this->livellolink = 0; $this->livellomedia = 0; $this->set_ha['id_author'] = $set_ha['id_author']; $this->set_ha['id_course'] = $set_ha['id_course']; $this->set_ha['xml_file'] = $set_ha['xml_file']; $this->set_ha['media_path'] = $set_ha['media_path']; } // verifying if course has instances already started $id_course = $this->set_ha['id_course']; $dh = new AMA_DataHandler(); // inserimento dati nel database $instances = $dh->course_has_instances($id_course); if ($instances) { $field_list_ar = array('data_inizio_previsto', 'data_inizio'); $today = time(); $clause = "id_corso = {$id_course} and data_inizio >= {$today}"; $course_instancesAr = $dh->course_instance_find_list($field_list_ar, $clause); // or else a loop on course_instance_get($id) ... // mydebug(__LINE__,__FILE__,$course_instancesAr); if (count($course_instancesAr)) { // Removing all course data $res = $dh->remove_course_content($id_course); // $debug=1; mydebug(__LINE__,__FILE__,$res);$debug=0; if (AMA_DataHandler::isError($res)) { // ch'aggi'a fa'? $this->initerror = translateFN("Impossibile rimuovere il corso con id:") . $id_course; $add_or_upgrade_ok = false; // print $res->$message; } else { $add_or_upgrade_ok = true; } } else { $add_or_upgrade_ok = true; } } else { $add_or_upgrade_ok = true; } if ($add_or_upgrade_ok) { if (!$this->set_ha['id_author']) { $this->initerror = translateFN("Impossibile trovare l'autore con id:") . $id_author; return false; } elseif (!$this->set_ha['id_course']) { $this->initerror = translateFN("Impossibile trovare il corso con id:") . $id_course; return false; } elseif (@filetype($this->set_ha['xml_file']) != "file") { $this->initerror = translateFN("Errore nel tipo di file"); return false; } else { return true; } } else { return false; } }