catalog)) { //Lecture des différents formats de conversion possibles global $base_path; if (file_exists("$base_path/admin/convert/imports/catalog_subst.xml")) { $fic_catal = "$base_path/admin/convert/imports/catalog_subst.xml"; } else { $fic_catal = "$base_path/admin/convert/imports/catalog.xml"; } $this->catalog=_parser_text_no_function_(file_get_contents($fic_catal),"CATALOG"); } return $this->catalog; } /* * returne la liste des conversions possibles */ function get_convert_types() { $this->get_catalog(); //Création et filtrage de la liste des types d'import for ($i=0; $icatalog['ITEM']); $i++) { if ($this->catalog['ITEM'][$i]['VISIBLE']!='no') { $convert_types[$i]=utf8_encode($this->catalog['ITEM'][$i]['NAME']); } } return $convert_types; } /* * @param notice = 1 notice sans entête * @param convert_type_id = identifiant de la conversion à réaliser * @param import = true >> exécuter l'import après conversion */ function convert($notice, $convert_type_id, $import=0, $source_id=0) { $this->get_catalog(); $this->source_id=$source_id; $convert_type=$this->catalog['ITEM'][$convert_type_id]; $importable=$this->catalog['ITEM'][$convert_type_id]['IMPORT']; if (count($convert_type)) { $export= new convert(utf8_decode($notice),$convert_type_id); $this->converted_notice=$export->output_notice; if($import && ($importable=='yes') && $this->converted_notice) { $this->import(); } } return array('notice'=>$notice); } function import($unimarc_notice='') { global $deflt_integration_notice_statut; if ($unimarc_notice) { $this->converted_notice=$unimarc_notice; } if ($this->converted_notice) { $z = new z3950_notice('unimarc',$this->converted_notice); $z->source_id = $this->source_id; $z->statut = $deflt_integration_notice_statut; $z->var_to_post(); $z->insert_in_database(); } } }