#!/usr/bin/perl

use strict;
use vars qw(%form $VERSION $DATA_DIR $IMG_DIR $HTML_DIR $LANGUE);
use vars qw(%blocs);

my $flagTXT3=0;
my %blocksave3;
my $flagTXT4=0;
my %blocksave4;



$VERSION='0.1';  
$DATA_DIR='data';
$IMG_DIR='http://www.impens.com/img/';
$HTML_DIR='../html/';
#decoder les parametres
%form=&receive_getpost;
$LANGUE=$form{'L'};
if ($LANGUE eq'') {$LANGUE='FR'};

print "Content-type: text/html\n\n";

print '
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<TITLE>La peinture murale du XIIéme au XVIIéme siècle en France et ailleurs / Murals of the XIIth to XVIIth century in France and elsewhere</TITLE>
<META NAME="title" CONTENT="La peinture murale du XIIéme au XVIIéme siècle en France et ailleurs / Murals of the XIIth to XVIIth century in France and elsewhere">
<META NAME="author-corporate" CONTENT="Yves Impens">
<META NAME="publisher" CONTENT="Yves Impens">
<META NAME="description" CONTENT="Inventaire des peintures murales">
<META NAME="keywords" CONTENT="medieval;médiéval;art;art roman;peintures murales;fresques;murals;moyen-age;église;patrimoine;conservation-restauration">

<script type="text/javascript">
<!--
{
        resizeTo(1300,900);
        moveTo((window.width-1300)/2,(window.height-900)/2);
}
// -->
</script>
</head>
';

&editdeb($IMG_DIR,$LANGUE);
my $l1="";my $l2="";my $l3="";

&loadblocs($LANGUE,$form{'P1'});

&editfin($IMG_DIR,$LANGUE,$l1,$l2,$l3);


print "</html>";


#-----------------------------------------------------------------------------
sub trim {
    my $string = shift;
    for ($string) {
        s/^\s+//;
        s/\s+$//;
    }
    return $string;
}
#-----------------------------------------------------------------------------
sub loadblocs {
    my ($LG,$num)=@_;
    open(TXT,'< data/blocs.txt');
    while (not eof(TXT)) {
	my ($key,$ptrup,$FR,$UK,$IMG,$Justif)=split('\t',<TXT>);
        if( $num eq $ptrup ) {
	  my $TXT="";
	  $TXT=$FR if($LG eq "FR");
	  $TXT=$UK if($LG eq "UK");
          $TXT=~ s/\"//g; 
          chomp($TXT);
          chomp($Justif);
          $Justif=&trim($Justif);
          chomp($IMG);
          $IMG=&trim($IMG);
         if( substr($IMG,0,4) eq "PTR=" ) {
	     my $ptr=substr($IMG,4);
             $TXT="<a href='page.cgi?P1=".$ptr."&L=".$LG."'>".$TXT."</a>";
             $l1=$TXT if( $Justif eq "LEFT");
             $l2=$TXT if( $Justif eq "CENTER");
             $l3=$TXT if( $Justif eq "RIGHT");
         }
         else {
          &editbloc($Justif,$IMG,$TXT,$LG);
         }
        } 
    }
    close(TXT);
}
#-----------------------------------------------------------------------------
sub editbloc {
    my ($STYLE,$FICHIER,$TEXTE,$LG)=@_;
    my $langue=0;
    $langue=1 if($LG eq "FR");
    $langue=2 if($LG eq "UK");
if ( $STYLE eq 'LEFT' ) { 
    print "<table cellspacing=10 cellpadding=0 border=0><tr>";
    print "<td width=300><center><img src='".$IMG_DIR.$FICHIER."' border=0 alt=''></center></td>";
    print "<td width=320><p>".$TEXTE."</p></td>";
    print "</tr></table>";
};
if ( $STYLE eq 'RIGHT' ) { 
    print "<table cellspacing=10 cellpadding=0 border=0><tr>";
    print "<td width=320><p align='RIGHT'>".$TEXTE."</p></td>";
    print "<td width=300><img src='".$IMG_DIR.$FICHIER."' border=0 alt=''></td>";
    print "</tr></table>";
};
if ( $STYLE eq 'CENTER' ) { 
    print "<table cellspacing=10 cellpadding=0 border=0><tr>";
    print "<td colspan=2 width=650><p align=justify>".$TEXTE."</p></td>";
    print "</tr></table>";
};
if ( $STYLE eq 'MAP' ) { 
    print "<table cellspacing=10 cellpadding=0 border=0><tr>";
    print "<td width=650><img src='".$IMG_DIR.$FICHIER."' usemap='#1' border=0 alt=''>".$TEXTE."</td>";
    print "</tr></table>";
};
if ( $STYLE eq '' ) { 
    print "<table cellspacing=10 cellpadding=0 border=0><tr>";
    print "<td colspan=2 width=650><p align=justify>".$TEXTE."</p></td>";
    print "</tr></table>";
};

my $hx ="H1";
if ( $STYLE eq 'HEAD1' ) { $hx="H1"; $STYLE="HEADX"; };
if ( $STYLE eq 'HEAD2' ) { $hx="H2"; $STYLE="HEADX"; };
if ( $STYLE eq 'HEAD3' ) { $hx="H3"; $STYLE="HEADX"; };
if ( $STYLE eq 'HEAD4' ) { $hx="H4"; $STYLE="HEADX"; };

if ( $STYLE eq 'HEADX' ) { 
    print "<table cellspacing=10 cellpadding=0 border=0><tr>";
    print "<td colspan=2 width=650><".$hx.">".$TEXTE."</".$hx."></td>";
    print "</tr></table>";
};

if ( $STYLE eq 'UPDATE' ) { 
    printf "<p align=left><h3>%s</h3><table border=0>",$TEXTE;
    my %tbl=&loadUPD("tblnew",0);
    my $ccR=0xd0;
    my $ccG=0xd0;
    my $ccB=0x81;
    map { 
     printf "<tr><td bgcolor=#%2x%2x%2x><a href='page.cgi?P1=106&P2=".$form{"P2"}."&L=".$LG."&X=%s'>%s</a></td>
                 <td bgcolor=#%2x%2x%2x><small>%s</small></td>
                 <td bgcolor=#%2x%2x%2x><small>%s</small></td></tr>"
                 ,$ccR,$ccG,$ccB,$tbl{$_}[4],$tbl{$_}[3]
                 ,$ccR,$ccG,$ccB,$tbl{$_}[2]
                 ,$ccR,$ccG,$ccB,$tbl{$_}[1]; 
     $ccR=$ccR-1 if($ccR>5);
     $ccG=$ccG-0 if($ccG>5);
     $ccB=$ccB-1 if($ccB>5);
    } sort keys %tbl;
    printf "</table></p>"
};


my $sup1=int($form{"P1"}/10);
if ( $sup1==11) { $form{"P2"}="ALL" };
redoit:
my $level=0;
my $htxt="";
if ( $STYLE eq 'SEARCH1' ) { $level=1; $STYLE="SEARCHX"; };
if ( $STYLE eq 'SEARCH2' ) { $level=2; $STYLE="SEARCHX"; };
if ( $STYLE eq 'SEARCH3' ) { $level=3; $STYLE="SEARCHX"; };
if ( $STYLE eq 'SEARCH4' ) { $level=4; $STYLE="SEARCHX"; };
if ( $STYLE eq 'SEARCH5' ) { $level=5; $STYLE="SEARCHX"; };

if ( $STYLE eq 'SEARCHX' ) {    
 
    my %tbl=&loadTBL("tblcountry",0);
    my $par2="";
    my ($C1,$C2,$C3,$C4)=split(",",$form{"X"});
    $htxt=$htxt."<h1>".$TEXTE."</h1>";
    if (( $level==2 ) && ( $C1==1 )){ $htxt=$htxt."<img src='".$IMG_DIR."1021.gif' border=0 alt=''>";};
    if (( $level==2 ) && ( $C1==2 )){ $htxt=$htxt."<img src='".$IMG_DIR."1020.gif' border=0 alt=''>";};
    $htxt=$htxt."<div align=LEFT>";
    $htxt=$htxt."<ul>";  
    if ( $level > 1 ) {
     $htxt=$htxt."<li><a href='page.cgi?P1=".$sup1."1&P2=".$form{"P2"}."&L=".$LG."'>".$tbl{$C1}[$langue]."</a></li><br><ul>";
     %tbl=&loadTBL("tblregion",$C1);
     $par2=$form{"X"}.",";
    };
    if ( $level > 2 ) {
     $htxt=$htxt."<li><a href='page.cgi?P1=".$sup1."2&P2=".$form{"P2"}."&L=".$LG."&X=".$C1."'>".$tbl{$C2}[$langue]."</a></li><br><ul>";
     %tbl=&loadTBL("tbldep",$C2);
    };
    if ( $level > 3 ) {
     $htxt=$htxt."<li><a href='page.cgi?P1=".$sup1."3&P2=".$form{"P2"}."&L=".$LG."&X=".$C1.",".$C2."'>".$tbl{$C3}[$langue]."</a></li><br><ul>";
     %tbl=&loadTBL("tbllieu",$C3);
    };
    if ( $level > 4 ) {
     $htxt=$htxt."<li><a href='page.cgi?P1=".$sup1."4&P2=".$form{"P2"}."&L=".$LG."&X=".$C1.",".$C2.",".$C3."'>".$tbl{$C4}[$langue]."</a></li><br><ul>";
     %tbl=&loadTBL("tblbati",$C4);
    };
    my $nbkeys=keys(%tbl);
    if (( $nbkeys == 1)&&( $sup1 != 11 )) {
        #passer au niveau suivant parsque une seule fiche...
	$STYLE = "SEARCH".($level+1);
        map { $form{"X"} = $par2.$_ } keys %tbl;
        goto redoit;
    };
    my $hab1="";
    $hab1="fiches illustr&eacute;es" if(($LG eq "FR")&&($sup1 eq 10));
    $hab1="illustrated notes" if(($LG eq "UK")&&($sup1 eq 10));
    my %sortedlist=();
    map { $sortedlist{$tbl{$_}[$langue]}="<li><A href='page.cgi?P1=".$sup1.(1+$level)."&P2=".$form{"P2"}."&L=".$LG."&X=".$par2.$_."'>".
	      $tbl{$_}[$langue];
	  $sortedlist{$tbl{$_}[$langue]}=$sortedlist{$tbl{$_}[$langue]}."&nbsp;&nbsp;(&nbsp;".($tbl{$_}[4]*1)."&nbsp;".$hab1."&nbsp;)" if($sup1 eq 10);
	  $sortedlist{$tbl{$_}[$langue]}=$sortedlist{$tbl{$_}[$langue]}."</A></li>"; 
        } keys %tbl;
    #print it
    print $htxt;
    print map {$sortedlist{$_}}sort keys %sortedlist;
    for(my $l=0;$l<$level;$l++){print "</ul>";};
    print "</div>";
};
if ( $STYLE eq 'LIST' ) {
    my ($C1,$C2,$C3)=split(",",$form{"X"});
    my %tbl1=&loadTBL("tblcountry",0);
    my %tbl2=&loadTBL("tblregion",$C1);
    my %tbl3=&loadTBL("tbldep",$C2);

    print "<P align=LEFT><B>";
    print "&nbsp;       <a href='page.cgi?P1=111&P2=".$form{"P2"}."&L=".$LG."'>"                                  .$tbl1{$C1}[$langue]."</a>";
    print "&nbsp;>&nbsp;<a href='page.cgi?P1=112&P2=".$form{"P2"}."&L=".$LG."&X=".$C1."'>"                        .$tbl2{$C2}[$langue]."</a>";
    print "&nbsp;>&nbsp;<a href='page.cgi?P1=113&P2=".$form{"P2"}."&L=".$LG."&X=".$C1.",".$C2."'>"                .$tbl3{$C3}[$langue]."</a>";
    print "</p><table border=0>";
    print "<small><I>".$TEXTE."</i></small>";
    my %tbl4=&loadTBL("tbllieu",$C3);
    my $C4max=0;
    map { if($C4max<$_){$C4max=$_} } sort keys %tbl4; 
    map {
        my $C4=$_;
        #my %tbl5=&loadTBL3("tblbati",$C4,$C4max);
        my %tbl5=&loadTBL("tblbati",$C4);
        my $C5max=0;
        map { if($C5max<$_){$C5max=$_} } sort keys %blocksave3; 
        map {
            my $C5=$_;
            my $nomdulieu=$tbl4{$C4}[1];
            $nomdulieu=~ s/\-,/ /g;
            my $ageo="<a target=_blank href=http://maps.google.com/maps?f=q&hl=fr&q=".$nomdulieu."+".$tbl1{$C1}[2]."&ie=UTF8&z=12&t=h&om=1&iwloc=addr>";
  	      #print "<tr><td><B><font color=#993300>".$ageo.$tbl4{$C4}[$langue]."</a></font></B></td>";
            print "<tr><td><B><font color=#993300>"      .$tbl4{$C4}[$langue]."    </font></B></td>";
            print     "<td><B><font color=#993300>"      .$tbl5{$C5}[$langue]."    </font></B></td></tr>";
            #my %tbl=&loadTBL4("tbldesc",$C5,$C5max);
            my %tbl=&loadTBL("tbldesc",$C5);
            my $mapyes=0;
            map {
		$mapyes=1 if(index($tbl{$_}[$langue],"maps.google.be")>0);
            } sort keys %tbl;

            if($mapyes==1){
               if($LG eq "FR") {
	          print "<tr><td colspan=2><small><a href='page.cgi?P1=106&P2=&L=FR&X=$C1,$C2,$C3,$C4,$C5'>Pour une description complète et illustrée de ce lieu, cliquez ici.</a></small></td></tr>" ;
               }
               else {
	          print "<tr><td colspan=2><small><a href='page.cgi?P1=106&P2=&L=UK&X=$C1,$C2,$C3,$C4,$C5'>Click here to see a complete and illustrated description for this place.</a></small></td></tr>" ;
               };
            }
            else {
               map {
	       print "<tr><td colspan=2 bgcolor=#A89848><small>".$tbl{$_}[$langue]."</small></td></tr>" 
			if ( (&trim($tbl{$_}[3]) ne "maps")&&(index($tbl{$_}[$langue],"maps.google.be")<0) );
                   } sort keys %tbl;
            };
        } sort keys %tbl5;
    } sort keys %tbl4;
    print "</table>";
};
if ( $STYLE eq 'SEARCH6' ) {    
    my ($C1,$C2,$C3,$C4,$C5)=split(",",$form{"X"});
    my %tbl1=&loadTBL("tblcountry",0);
    my %tbl2=&loadTBL("tblregion",$C1);
    my %tbl3=&loadTBL("tbldep",$C2);
    my %tbl4=&loadTBL("tbllieu",$C3);
    my %tbl5=&loadTBL("tblbati",$C4);
    my %tbl=&loadTBL2("tbldesc",$C5);

    print "<P align=LEFT><B>";
    print "&nbsp;       <a href='page.cgi?P1=101&P2=".$form{"P2"}."&L=".$LG."'>"                                  .$tbl1{$C1}[$langue]."</a>";
    print "&nbsp;>&nbsp;<a href='page.cgi?P1=102&P2=".$form{"P2"}."&L=".$LG."&X=".$C1."'>"                        .$tbl2{$C2}[$langue]."</a>";
    print "&nbsp;>&nbsp;<a href='page.cgi?P1=103&P2=".$form{"P2"}."&L=".$LG."&X=".$C1.",".$C2."'>"                .$tbl3{$C3}[$langue]."</a>";
    print "&nbsp;>&nbsp;<a href='page.cgi?P1=104&P2=".$form{"P2"}."&L=".$LG."&X=".$C1.",".$C2.",".$C3."'>"        .$tbl4{$C4}[$langue]."</a>";
    print "&nbsp;>&nbsp;<a href='page.cgi?P1=105&&P2=".$form{"P2"}."L=".$LG."&X=".$C1.",".$C2.",".$C3.",".$C4."'>".$tbl5{$C5}[$langue]."</a></B>";
    print "<table cellspacing=10 cellpadding=0 border=0><tr><td>";
    my $n=0;
    map {  
	my $FICHIER = &trim($tbl{$_}[3]);
        if ( $FICHIER ne "" ) {        
	    my @ff=split ",", $FICHIER;
	    if($#ff<1){
		$FICHIER = $FICHIER.".jpg";
		if ( ( $n % 2 ) eq 1 ) {
		    print "<table cellspacing=10 cellpadding=0 border=0><tr>";
		    print "<td width=500><center><img src='".$IMG_DIR.$FICHIER."' border=0 alt=''></center></td>";
		    print "<td width=490><p>".$tbl{$_}[$langue]."</p></td>";
		    print "</tr></table>";
		} else 
		{
		    print "<table cellspacing=10 cellpadding=0 border=0><tr>";
		    print "<td width=490><p align='RIGHT'>".$tbl{$_}[$langue]."</p></td>";
		    print "<td width=500><center><img src='".$IMG_DIR.$FICHIER."' border=0 alt=''></center></td>";
		    print "</tr></table>";
		}
	    } else {
		    print "<table cellspacing=10 cellpadding=0 border=0><tr>";
		    print "<td width=400><center><img src='".$IMG_DIR.$ff[0].".jpg' border=0 alt=''></center></td>";
		    print "<td width=400><center><img src='".$IMG_DIR.$ff[1].".jpg' border=0 alt=''></center></td>";
		    print "</tr></table>";
	    }
        } else
        {
	    print "<table cellspacing=10 cellpadding=0 border=0><tr>";
	    print "<td width=1000><p align='LEFT'>".$tbl{$_}[$langue]."</p></td>";
	    print "</tr></table>";
        };
        $n++;
    } sort keys %tbl;
    print "</td></tr></table>"
};
}
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
sub editonebox {
    my ($DIMG,$LG,$VPOS,$THPOS,$TVPOS,$HREF,$TEXFR,$TEXUK)=@_;
    my $TEX=$TEXFR if($LG eq "FR");
       $TEX=$TEXUK if($LG eq "UK");
print "<div align='CENTER' style=' width: 90; height: 105; font-family: Arial; left: 5; top: ".$VPOS."; position: relative; font-size: 15;' title=''>";
print "<div style='left: 0;top: 0; position: absolute;'><a href=".$HREF."><img src='".$DIMG."men1x.jpg' border=0 alt=''></a></div>";
print "<div style='left:".($THPOS+1).";top:".($TVPOS+1)."; position: absolute;'><a href=".$HREF."><font color=#111111><b>".$TEX."</b></font></a></div>";
print "<div style='left:".$THPOS    .";top:".$TVPOS."; position: absolute;'><a href=".$HREF."><font color=#993300><b>".$TEX."</b></font></a></div>";
print "</div>";
}
sub editonebox2 {
    my ($DIMG,$LG,$VPOS,$THPOS,$TVPOS,$HREF,$TEXFR,$TEXUK)=@_;
    my $TEX=$TEXFR if($LG eq "FR");
       $TEX=$TEXUK if($LG eq "UK");
print "<div align='CENTER' style=' width: 90; height: 40; font-family: Arial; left: 5; top: ".$VPOS."; position: relative; font-size: 13;' title=''>";
print "<div style='left: 0;top: 0; position: absolute;'><a href=".$HREF."><img src='".$DIMG."touche.jpg' border=0 alt=''></a></div>";
#print "<div style='left:".($THPOS+1).";top:".($TVPOS+1)."; position: absolute;'><a href=".$HREF."><font color=#000000><b>".$TEX."</b></font></a></div>";
print "<div style='left:".$THPOS    .";top:".$TVPOS."; position: absolute;'><a href=".$HREF."><font color=#993300><b>".$TEX."</b></font></a></div>";
print "</div>";
}
sub editonebox4 {
    my ($DIMG,$LG,$VPOS,$THPOS,$TVPOS,$HREF,$TEXFR,$TEXUK)=@_;
    my $TEX=$TEXFR if($LG eq "FR");
       $TEX=$TEXUK if($LG eq "UK");
print "<div align='CENTER' style=' width: 90; height: 20; font-family: Arial; left: 5; top: ".$VPOS."; position: relative; font-size: 13;' title=''>";
print "<div style='left: 0;top: 0; position: absolute;'><a href=".$HREF."><img src='".$DIMG."touche2.jpg' border=0 alt=''></a></div>";
#print "<div style='left:".($THPOS+1).";top:".($TVPOS+1)."; position: absolute;'><a href=".$HREF."><font color=#000000><b>".$TEX."</b></font></a></div>";
print "<div style='left:".$THPOS    .";top:".$TVPOS."; position: absolute;'><a href=".$HREF."><font color=#993300><b>".$TEX."</b></font></a></div>";
print "</div>";
}
sub editonebox3 {
    my ($DIMG,$LG,$VPOS,$THPOS,$TVPOS,$HREF,$TEXFR,$TEXUK)=@_;
    my $TEX=$TEXFR if($LG eq "FR");
       $TEX=$TEXUK if($LG eq "UK");
print "<div align='CENTER' style=' width: 90; height: 20; font-family: Arial; left: 5; top: ".$VPOS."; position: relative; font-size: 15;' title=''>";
print "<div style='left:".($THPOS+1).";top:".($TVPOS+1)."; position: absolute;'><font color=#000000><b>".$TEX."</b></font></div>";
print "<div style='left:".$THPOS    .";top:".$TVPOS."; position: absolute;'><font color=#995500><b>".$TEX."</b></font></div>";
print "</div>";
}
#-----------------------------------------------------------------------------
sub editdeb {
    my ($DIMG,$LG)=@_;
print "<body bgcolor='Black' background='".$DIMG."rub1.jpg' align=center>";
print "<div align='CENTER'  style='width: 1150; height: 50; font-family: Arial; left: 10; top: 10; position: absolute;' title=''>";
print "<img src='".$DIMG."ban".$LG.".jpg' border=0 alt='' ></div>";
print "<div  style='width: 100; height: 500; font-family: Arial;  left: 10; top: 65; position: absolute;' title=''>";
    &editonebox2($DIMG,$LG, 1,5,1,"'page.cgi?P1=0&L=".$LG."'","Page d'entrée","Home");
    &editonebox2($DIMG,$LG, 6,5,1,"'page.cgi?P1=1&L=".$LG."'","Introduction","Introduction");
    &editonebox2($DIMG,$LG,11,5,1,"'page.cgi?P1=301&L=".$LG."'","Dernières modif.","Last updates");
    &editonebox3($DIMG,$LG,16,5,1,"","Découverte","The visit");
    &editonebox2($DIMG,$LG,21,5,1,"'page.cgi?P1=201&L=".$LG."'","Eglise de Brinay","Church of Brinay");
    &editonebox2($DIMG,$LG,26,5,1,"'page.cgi?P1=251&L=".$LG."'","Eglise de Jenzat","Church of Jenzat");
    &editonebox2($DIMG,$LG,31,5,1,"'page.cgi?P1=101&L=".$LG."'","Autres	églises","Other churches");
    &editonebox2($DIMG,$LG,36,5,1,"'page.cgi?P1=111&L=".$LG."'","Inventaire<br>complet","Complete<br>list");
    &editonebox3($DIMG,$LG,41,5,1,"","Références","References");
    &editonebox4($DIMG,$LG,46,5,1,"'page.cgi?P1=10&L=".$LG."'","Technique","Techniques");
    &editonebox4($DIMG,$LG,51,5,1,"'page.cgi?P1=80&L=".$LG."'","Biblio.","Bibliography");
    &editonebox4($DIMG,$LG,56,5,1,"'page.cgi?P1=90&L=".$LG."'","Autres liens","Other links");
    &editonebox4($DIMG,$LG,66,5,1,"'page.cgi?P1=405&L=".$LG."'","Crédits","Thanks");
    &editonebox4($DIMG,$LG,71,5,1,"'page.cgi?P1=401&L=".$LG."'","contact","Contact");
print "</div><div align='CENTER' style='width:1050;height:500;font-family:Arial;left:115;top:65;".
      "position:absolute;clip:auto;overflow:auto;background-color:#d7d889;' title=''>";
}
#-----------------------------------------------------------------------------
sub editfin {
    my $k;
    my ($DIMG,$LG,$link1,$link2,$link3)=@_;
print "</div><div  style='width: 1; height: 500; font-family: Arial; left: 770; top: 65; position: absolute;' title=''>"; 
#menu de droite vide
print "</div>";
print "<div align='CENTER' style='width: 750; height: 15; font-family: Arial; left: 115; top:570; position: absolute;'>";
print "<p align=left><B>".$link1."</B></p>";
print "</div>";
print "<div align='CENTER' style='width: 750; height: 15; font-family: Arial; left: 115; top:570; position: absolute;'>";
print "<p align=center><B>".$link2."</B></p>";
print "</div>";
print "<div align='CENTER' style='width: 750; height: 15; font-family: Arial; left: 115; top:570; position: absolute;'>";
print "<p align=right><B>".$link3."</B></p>";
print "</div>";
print "<div align='CENTER' style='width: 1150; height: 25; font-family: Arial; left: 10; top:600; position: absolute; background-color: #73310f;'>";
print "<div align='LEFT' style='left: 0;top: 0; position:absolute'>";
print "<a href='page.cgi?P1=".$form{"P1"}."&L=UK&P2=".$form{"P2"}."&X=".$form{"X"}."'>";
print "<img src='".$DIMG."lgUK.jpg' border=0 alt=''></a>";
print "<a href='page.cgi?P1=".$form{"P1"}."&L=FR&P2=".$form{"P2"}."&X=".$form{"X"}."'>";
print "<img src='".$DIMG."lgFR.jpg' border=0 alt=''></a>";
print "</div>";
print "<div  style='left: 400;top: 0; position:absolute'>";
print "";
for ($k=5;$k>=0;$k--) {print "<img  src='counter.cgi?".$k."&cnt1' border=0 alt=''>";};
print "</div>";
print "<div style='left: 600;top: 0; position:absolute'><TABLE><TR><TD>(c)Yves Impens, 2007-2012</TD><TD>";
print "<a href='http://be.nedstat.net/cgi-bin/viewstat?name=YICPT2&taal=fr'>";
print "<img src='http://be.nedstat.net/cgi-bin/nedstat.gif?name=YICPT2' border=0 alt='Webstat4U' width=11 height=11  align='left'></a>"; 
print "</TD></TR></TABLE></div>";
print "</div></body></html>";
}
#---------------------------------------------------------------------------------------------
#decodage des parametres d'appel
sub receive_getpost {
my (%postdata,$data,$pair);

  $data='';
  if ($ENV{'REQUEST_METHOD'} eq 'POST') {
    my $len=$ENV{'CONTENT_LENGTH'};
    if (read(STDIN,$data,$len) != $len) {print ("<H1>error reading post data </H1>"); die("Error reading 'POST' data\n"); }
  } elsif ($ENV{'REQUEST_METHOD'} eq 'GET') {
    $data=$ENV{'QUERY_STRING'};
  }

  foreach $pair (split('&',$data)) {
    my ($name,$value)=split('=',$pair);
    $name=~ tr/\0//d;  $value=~ tr/\0//d;
    $name =~ tr/+/ /; $name =~ s/%([0-9a-fA-F]{2})/chr hex($1)/ge;
    $value=~ tr/+/ /; $value=~ s/%([0-9a-fA-F]{2})/chr hex($1)/ge;
    $postdata{$name}=$value;
  }
  return %postdata;
}
#--------------------
sub loadUPD {
    my %blocs;
    open(TXT,"< data/".$_[0].".txt");
    while (not eof(TXT)) {
      my ($key,$ptr,$DD,$TX,$XX)=split('\t',<TXT>);
      my ($TX1,$TX2) = split "/", $TX;
      my $key2=(2025-substr($DD,6,4)).(100-substr($DD,3,2)).(100-substr($DD,0,2)).$key;
      $blocs{$key2}=[$ptr,$DD,$TX1,$TX2,$XX];
    }
    close(TXT);
    return %blocs;
}
sub loadTBL {
    my %blocs;
    open(TXT,"< data/".$_[0].".txt");
    while (not eof(TXT)) {
      my ($key,$ptr,$FR,$UK,$II,$III)=split('\t',<TXT>);
      $FR=~ s/\;/\<BR\>/g; 
      $UK=~ s/\;/\<BR\>/g; 
      $FR=~ s/\"//g; 
      $UK=~ s/\"//g; 
      $UK=$FR if($UK eq "");
#garder seulement les entrees concernees et avec illustration     
      $blocs{$key}=[$ptr,$FR,$UK,$II,$III] if($key!="")&&($ptr==$_[1])&&(($III>0)||( $form{"P2"} eq "ALL" ));
    }
    close(TXT);
    return %blocs;
}
sub loadTBL2 {
    my %blocs;
    open(TXT,"< data/".$_[0].".txt");
    while (not eof(TXT)) {
      my ($key,$ptr,$FR,$UK,$II,$III)=split('\t',<TXT>);
      if(substr($FR,0,3) ne "<if") {
       $FR=~ s/\;/\<BR\>/g; 
       $FR=~ s/\"//g; 
      };
      if(substr($UK,0,3) ne "<if") {
       $UK=~ s/\;/\<BR\>/g; 
       $UK=~ s/\"//g; 
      };
      $UK=$FR if($UK eq "");
#garder seulement les entrees concernees 
      $blocs{$key}=[$ptr,$FR,$UK,$II,$III] if($key!="")&&($ptr =~ $_[1]);
    }
    close(TXT);
    return %blocs;
}
sub loadTBL3 {
    my ($file,$idf,$idfmax)=@_;
    #printf "%s %d %d<br>",$file,$idf,$idfmax;
    my %blocs;
    if($flagTXT3==0){
    open(TXT3,"< data/".$file.".txt");
    $flagTXT3=1;
    while (not eof(TXT3)) {
      my ($key,$ptr,$FR,$UK,$II,$III)=split('\t',<TXT3>);
      $FR=~ s/\;/\<BR\>/g; 
      $UK=~ s/\;/\<BR\>/g; 
      $FR=~ s/\"//g; 
      $UK=~ s/\"//g; 
      $UK=$FR if($UK eq "");
#garder seulement les entrees concernees 
      $blocs{$key}=[$ptr,$FR,$UK,$II,$III] if($key!="")&&($ptr =~ $idf);
      $blocksave3{$key}=[$ptr,$FR,$UK,$II,$III]  if($key!="")&&($ptr >= $idf)&&($ptr <= $idfmax);
    }
    close(TXT3);
    }
    else {
	map {
	    $blocs{$_}=$blocksave3{$_} if($blocksave3{$_}[0]==$idf);
        } sort keys %blocksave3;
    };
    return %blocs;
}
sub loadTBL4 {
    my ($file,$idf,$idfmax)=@_;
    #printf "%s %d %d<br>",$file,$idf,$idfmax;
    my %blocs;
    if($flagTXT4==0){
    open(TXT,"< data/".$file.".txt");
    $flagTXT4=1;
    while (not eof(TXT)) {
      my ($key,$ptr,$FR,$UK,$II,$III)=split('\t',<TXT>);
      $FR=~ s/\;/\<BR\>/g; 
      $UK=~ s/\;/\<BR\>/g; 
      $FR=~ s/\"//g; 
      $UK=~ s/\"//g; 
      $UK=$FR if($UK eq "");
#garder seulement les entrees concernees 
      $blocs{$key}=[$ptr,$FR,$UK,$II,$III] if($key!="")&&($ptr =~ $idf);
      $blocksave4{$key}=[$ptr,$FR,$UK,$II,$III]  if($key!="")&&($ptr >= $idf)&&($ptr <= $idfmax);
    }
    close(TXT);
    }
    else {
	map {
	    $blocs{$_}=$blocksave4{$_} if($blocksave4{$_}[0]==$idf);
        } sort keys %blocksave4;
    };
    return %blocs;
}
 
