#!/usr/bin/perl
use XML::RSS;
use utf8;

my $rss = new XML::RSS;

my $chemin= $ARGV[0];
$chemin =~ s/[\/]$//;

my $contenttxt = "";
my $contentxml = "";
my $nbArticles = 0;
my $nbfic = 0;
my %dicoTitres = ();
my %dicoDesc = ();

binmode STDOUT, ":UTF-8"; 

my $sortietxt = "sortie_txt.txt";
my $sortiexml = "sortie_xml.xml";

if (!open (SORTIETXT, ">:encoding(UTF-8)", "$sortietxt")) { die "Pb ouverture TXT !"; }
if (!open (SORTIEXML, ">:encoding(UTF-8)", "$sortiexml")) { die "Pb ouverture XML !";}


&parc_recurse($chemin);


print SORTIEXML "<?xml version=\"1.0\" encoding = \"UTF-8\""."\n";
print SORTIEXML "<PARCOURS>\n";
print SORTIEXML "<NOM>keke</NOM>\n";
print SORTIEXML "<FILTRAGE>\n".$contentxml."</FILTRAGE>"."\n";
print SORTIEXML "</PARCOURS>";
close (SORTIEXML);

print SORTIETXT $contenttxt;
close(SORTIETXT);

exit;



sub parc_recurse{
    my $dossier = shift(@_);
    #print $dossier,"\n";
    opendir(DOSSIER,$dossier) or die " ^^ keke can't open $dossier: $!\n";
    my @files = readdir(DOSSIER); 
    closedir(DOSSIER);
    my $titre = "";
    my $description = "";
    foreach my $file (@files) {
	next if ($file=~/^\.\.?$/);
	$file=$dossier."/".$file;
	if (-d $file){
	    &parc_recurse($file);
	}
	if (-f $file){
	    if ($file=~/\.xml$/){
		#print $nbfic++, "\n";
		$rss->parsefile($file);
		#print $rss->{items}[0];
		foreach my $item (@{$rss->{items}}){
		  $nbArticles++;
		  $contentxml .= "<article numero=\"$nbArticles\">\n";	 
	      $contenttxt .= "Article numéro : ". $nbArticles. "\n";
		  my $titre = $item->{title};
		  $titre = &nettoieText($titre);
		  $contentxml .= "<titre>$titre</titre>\n";
		  $contenttxt .= "Titre : ". $titre. "\n";
		  my $description = $item->{description};
		  $description = &nettoieText($description);
		  $contentxml .= "<description>$description</description>"."\n"."\n";
		  $contenttxt .= "Description : ". $description ."\n"."\n";
		  

		}
	}		

}}}


sub nettoieText {
    my $texte=shift;
    $texte =~ s/&lt;/</g;
    $texte =~ s/&gt;/>/g;
    $texte =~ s/<a href[^>]+>//g;
    $texte =~ s/<img[^>]+>//g;
    $texte =~ s/<\/a>//g;
    $texte =~ s/&#38;#39;/'/g;
    $texte =~ s/&#38;#34;/"/g;
    $texte =~ s/<[^>]+>//g;
    $texte =~ s/&#233;/é/g;
    $texte =~ s/&#234;/ê/g;
    return $texte;
}