#/usr/bin/perl
#-----------------------------------------------------------
my $rep="$ARGV[0]";
my $rubrique="$ARGV[1]";

open(OUT,">:encoding(utf8)","Bao1_EXP_REG$rubrique.txt");
#close OUT;
open(OUTXML,">:encoding(utf8)","Bao1_EXP_REG$rubrique.xml");
print OUTXML "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; 
#print OUTXML "<!DOCTYPE note\n[<!ELEMENT TITRE (#PCDATA)>\n<!ELEMENT DESCRIPTION (#PCDATA)>\n]>";
print OUTXML "<racine>";
#close OUTXML;
# on s'assure que le nom du répertoire ne se termine pas par un "/"
$rep=~ s/[\/]$//;
my %hashtag;
#----------------------------------------
&parcoursarborescencefichiers($rep);	# on lance la récursion.... et elle se terminera après examen de toute l'arborescence
close OUT;
print OUTXML "</racine>";
close OUTXML;
#----------------------------------------
exit;
#----------------------------------------------
sub parcoursarborescencefichiers {
    my $path = shift(@_);
    opendir(DIR, $path) or die "can't open $path: $!\n";
    my @files = readdir(DIR);
    closedir(DIR);
    foreach my $file (@files) {
		next if $file =~ /^\.\.?$/;
		$file = $path."/".$file;
		if (-d $file) {
			print "<NOUVEAU REPERTOIRE> ==> ",$file,"\n";
			&parcoursarborescencefichiers($file);	#recurse!
			print "<FIN REPERTOIRE> ==> ",$file,"\n";
		}
		if (-f $file) {
			#       TRAITEMENT à réaliser sur chaque fichier
			#       Insérer ici votre code (le filtreur)
			if ($file =~ /\.xml$/ and $file =~ /$rubrique/){
				my $ensemble=""; 
                		open(FILEIN, "<:encoding(utf8)", $file);

                		while (my $ligne= <FILEIN>) 
                		{ 
                   
                    			chomp $ligne; #$ligne=~s/^ +//; # on supprime les blancs au début : pas bien ! #
                    			$ligne =~ s/\r//g;
                    			$ligne=~s/\s*$//; # on supprime les blancs au début : pas bien ! 
                    			$ensemble = $ensemble.$ligne ; 
                		} 
                		$ensemble =~ s/>\s+</></g;
                		while($ensemble=~ m/<item>.*?<title>([^<]*?)<\/title>.*?<description>([^<]*?)<\/description>.*?<\/item>/g)
                		{
                    
                    			my $titre = $1;
                    			my $description = $2;
                    	
                    			if ( !exists $hashtag{$titre} )  
                    			{
                        			$hashtag{$titre} = 1;
                        			my $titre0=&nettoyage($titre);
						my $description0=&nettoyage($description);
						print OUT "$titre0.\n";
						print OUT "$description0\n\n";
						print OUTXML "<item><TITRE>$titre0</TITRE><DESCRIPTION>$description0</DESCRIPTION></item>\n";
                        
                    			}
               			 }
				
				}
			
			print "<",$i++,"> ==> ",$file,"\n";
		}
    }
}

sub nettoyage {
	my $v=shift;
	$v =~ s/&lt;.+?&gt;//g;
	$v=~s/&amp;/et/g;
	$v=~s/amp;/et/g;
	$v=~s/&/et/g;
	return $v;
}










































#----------------------------------------------
