<?php
// +-------------------------------------------------+
// © 2002-2004 PMB Services / www.sigb.net pmb@sigb.net et contributeurs (voir www.sigb.net)
// +-------------------------------------------------+
// $Id: medline2unimarc_input.class.php,v 1.1.16.1 2026/06/03 06:31:38 dgoron Exp $

if (stristr($_SERVER['REQUEST_URI'], ".class.php")) die("no access");

global $base_path;
require_once ($base_path."/admin/convert/convert_input.class.php");

class medline2unimarc_input extends convert_input {
	
	public function _get_n_notices_($fi,$file_in,$input_params,$origine) {
		$first=true;
		$stop=false;
		$content="";
		$index=array();
		$n=1;
		//Lecture du fichier d'entrée
		while (!$stop) {
			
			//Recherche de PMID
			if ($content) $pos_deb=strpos($content,"PMID-",1);
			while ((!$pos_deb)&&(!feof($fi))) {
				$content.=fread($fi,4096);
				$pos_deb=strpos($content,"PMID-",1);
			}
			
			//Début accroché
			if ($pos_deb) {
				//Notice = début jusqu'au PMID-
				$notice=pmb_substr($content,0,$pos_deb);
				$content=pmb_substr($content,$pos_deb);
			} else {
				//Pas de notice suivante, c'est la fin du fichier
				$notice=$content;
				$stop=true;
			}
			
			if (trim($notice)) {
				$requete="INSERT INTO import_marc (no_notice, notice, origine) VALUES ($n,'".addslashes($notice)."','$origine')";
				pmb_mysql_query($requete);
				$n++;
				$t=array();
				$t["POS"]=$n;
				$t["LENGHT"]=1;
				$index[]=$t;
			}
		}
		return $index;
	}
}

?>