#!/usr/bin/perl
print"Content-type: text/html\n\n";
chdir'..';
use Cwd;
$roo=fastcwd().'/';
$pri=$roo.'_private/';
$fdb=$pri.'france.frm';
open(COU,$fdb)||err('read',$fdb);
#country_currency_address1,2_contacts1,2_description1~2_logo_
#national postage minlimit1=amount1~minlimit2=amount2_exclude department1,2_
#regional postage minlimit1=amount1~minlimit2=amount2_include department1,2_
#discounts minlimit1=percent1~minlimit2=percent2_
#products picture1=title1=description1=size1=price1~picture2=title2=description2=size2=price2
while(<COU>){
	chomp;
	$cou.=$_;
}
close(COU);
@cty=split(/_/,$cou);
@adr=split(/,/,$cty[2]);
@tel=split(/,/,$cty[3]);
@dsc=split(/~/,$cty[4]);
@dis=split(/~/,$cty[10]);
@pro=split(/~/,$cty[11]);
if($ENV{'REQUEST_METHOD'}eq"GET"){
	$inp=$ENV{'QUERY_STRING'};
}elsif($ENV{'REQUEST_METHOD'}eq"POST"){
	read(STDIN,$inp,$ENV{'CONTENT_LENGTH'});
}
@jnp=split(/&/,$inp);
foreach$jnp(@jnp){
	($key,$val)=split(/=/,$jnp,2);
	$val=~s/%(..)/pack("c",hex($1))/ge;
	$val=~s/\+/ /g;
	if($key eq"zip"){
		$zip=$val;
		$z=sprintf("%05d",$zip);
		$dep=substr($z,0,2);
		if(length($zip)<6){
			if(!($cty[7]=~/$dep/)){
				open(COD,$roo.'www/codepost.txt')||err('read',$roo.'www/codepost.txt');
				while(<COD>){
					chomp;
					($a,$b)=split(/\|/);
					push(@c,$a);
					push(@v,$b);
				}
				close(COD);#print"codepost $i $c[0] $v[0] $c[10] $v[10]<br>";
				$i=@c;
				$k=$l=0;
loop:				$j=int(($k+$i)/2);
				if($l!=$j){
					$l=$j;
					if($z lt$c[$j]){
						$i=$j;
						goto loop;
					}
					if($z gt$c[$j]){
						$k=$j;
						goto loop;
					}
					push(@vil,$v[$j]);
					$l=$j;
oopl:					if($j>0){
						$j--;
						if($z eq$c[$j]){
							push(@vil,$v[$j]);
							goto oopl;
						}
					}
oplo:					$l++;
					if($l<@c){
						if($z eq$c[$l]){
							push(@vil,$v[$l]);
							goto oplo;
						}
					}
					$zip=$z.' '.$vil[0]if(@vil<2);
				}
			}
		}
	}elsif($key eq"vle"){
		$vle=$val;
		$zip=$z.' '.$vle;
	}elsif(substr($key,0,1)eq"q"){
		$i=substr($key,1,2);
		$qty[$i]=$val;
		@prd=split(/=/,$pro[$i]);
		$vlu[$i]=$qty[$i]*$prd[4];
		$tot+=$vlu[$i];
	}elsif($key eq"cen"){
		$cen=$val;
	}elsif($key eq"cad"){
		$cad=$val;
		@cdd=split(/&/,$cad);
		foreach$cdd(@cdd){
			($key,$val)=split(/=/,$cdd,2);
			if($key eq"zip"){
				$zip=$val;
			}elsif(substr($key,0,1)eq"q"){
				$i=substr($key,1,2);
				$qty[$i]=$val;
				@prd=split(/=/,$pro[$i]);
				$vlu[$i]=$qty[$i]*$prd[4];
				$tot+=$vlu[$i];
				$nip.='&'.$cdd if($val ne"0");
			}
		}
	}elsif($key eq"nam"){
		$nam=$val;
	}elsif($key eq"ad1"){
		$ad1=$val;
	}elsif($key eq"ad2"){
		$ad2=$val;
		$nip.='&'.$jnp if(length($val)>0);
	}elsif($key eq"dep"){
		$dep=$val;
	}elsif($key eq"tel"){
		$tel=$val;
	}elsif($key eq"ema"){
		$ema=$val;
	}elsif($key eq"rcs"){
		$rcs=$val;
		$tot+=1.2 if($rcs eq"Y");
	}
}
$usd=sprintf("%4d,%02d",$tot,(100*($tot+.005))%100);
@days=('Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi');
@months=('Janvier','F&eacute;vrier','Mars','Avril','Mai','Juin','Juillet','Ao&ucirc;t','Septembre','Octobre','Novembre','D&eacute;cembre');
($sec,$min,$hour,$mday,$mon,$year,$wday)=(localtime(time))[0..6];
$time = sprintf("%02d:%02d:%02d",$hour,$min,$sec);
$year+=1900;
print<<END;
<HTML><HEAD><TITLE>Vita Fons II Commande</TITLE><META content="text/html; charset=windows-1252" http-equiv=Content-Type>
</HEAD><FONT face="Times New Roman"><BODY aLink=#6495ed bgcolor=#ffffff link=#0000ff text=#800080 vLink=#3cb371>
<table width=100%><tr><td><small><A href="http://www.vitafons.com/index.htm#francais">Menu</A><br><A href="http://www.vitafons.com/freint.htm">Introduction</A><br>
<A href="http://www.vitafons.com/freprod.htm">Produits</A><br><A href="http://www.vitafons.com/frestore.htm">Conservation</A><br>
<A href="http://www.vitafons.com/fredir.htm">Instructions</A><br><A href="http://www.vitafons.com/frenews.htm">Nouvelles</A><br>
<A href="http://www.vitafons.com/frepets.htm">Animaux</A><br><A href="http://www.vitafons.com/freplants.htm">Plantes et Sols</A><br>
<A href="http://www.elizabethbellhousefoundation.com/ebffrein.htm">La Fondation</A><br>
<A href="http://www.elizabethbellhouse.com/freindex.htm">Elizabeth Bellhouse</A><br>
<A href="http://www.vitafons.com/cgvente.htm">Conditions de Vente</A>
<td width=10%><IMG src="../vflogo.gif"><td align=center><h1>Vita Fons II Commande</h1>
END
if(length($zip)<6){
	print'<form method=post action="../cgi-bin/ofpierre.pl">';
#	print"<tr><th colspan=4><h3>Madame, Monsieur,<p>D&eacute;sol&eacute; de vous d&eacute;cevoir, mais comme tous les ans &agrave; pareille &eacute;poque, l'entreprise est en cong&eacute;.<br>Ce cong&eacute; - commenc&eacute; le 3 ao&ucirc;t - se terminera le 26.<br>La prochaine p&eacute;riode de cong&eacute; durera du 15 d&eacute;cembre 07 au 1er janvier 08.<p>Cordialement<p>Le g&eacute;rant<p>Pierre DUCHESNE";
	if(@vil>1){
		print'<input type=hidden name=zip value='.$zip.'>Choisissez votre endroit de livraison ici</h3><select name=vle>';
		foreach$vle(@vil){print'<option>'.$vle;}
		print'</select>';
	}else{
		print'<h3>Entrez le code postal pour votre livraison en France ici</h3><input type=text maxlength=5 size=5 name=zip>';
	}
	print'<p><input type=submit value=OK><p><a href="../';
#	print'<p><a href="../';
	if(@vil>1){print'cgi-bin/ofpierre.pl">recommencer</a>';}
	else{print'../bondecom.pdf">Bon de Commande (pdf)</a>';}
	goto ende;
}
print"<h2>$zip $cty[0],<br>le $days[$wday] $mday $months[$mon] $year, en $cty[1]<td align=right>";
foreach$a(@adr){print"$a<br>";}
print"&nbsp;<br><small>";
foreach$a(@dsc){print"$a<br>";}
print"</table>";
if($cty[9]=~/$dep/){$y=$cty[8];}else{$y=$cty[6];}
@pst=split(/~/,$y);
$i=0;
foreach$pst(@pst){
	($lim[$i],$pch[$i])=split(/=/,$pst);
	$i++;
}
if(($tot>0.005)or(length($cad)>0)){
	if(length($ad1)<1){$ad1=$ad2;$ad2="";}
	print'<table width=100%>';
	if((length($nam)>0)and((length($ad1)>0)and((length($tel)>0)and(length($ema)>0)))){
		$a=length($cen)-2;
		$eur=substr($cen,0,$a).','.substr($cen,$a,2);
		$k='<tr><td align=right>';
		$l='&nbsp;<td>';
		$fdb=$pri.'ofpierre';
		if(open(FDB,'>'.$fdb)){
#			if(flock(FDB,2)){
				use SDBM_File;
				if(tie(%fdb,'SDBM_File',$fdb,0666,0666)){
pool:					$f=sprintf("%02d%02d%02d%02d%02d%02d",($year%100),($mon+1),$mday,$hour,$min,$sec);
					if(exists$fdb{$f}){
						$sec++;
						goto pool;
					}
					$fdb{$f}='cen='.$cen.'&zip='.$zip.'&rcs='.$rcs.'&nam='.$nam.'&ad1='.$ad1.'&tel='.$tel.'&ema='.$ema.'&rcs='.$rcs.$nip;
					untie(%fdb);
				}else{
					err('tie',$fdb);
				}
#			}else{
#				err('lock',$fdb);
#			}
			close(FDB);
		}else{
			err('write',$fdb);
		}
		$txt="<center><table width=95%>$k Nom$l$nam$k Adresse$l$ad1";
		$xtx="Nom $nam Adresse $ad1";
		if(length($ad2)>0){
			$txt.="$k$l$ad2";
			$xtx.=" $ad2";
		}
		$txt.="$k Code postal$l$zip";
		$xtx.=" Code postal $zip";
		if($rcs eq"Y"){
			$txt.="$k RCS demand&eacute;e";
			$xtx.=" RCS demandee";
		}
		$txt.="$k T&eacute;l&eacute;phone$l$tel";
		$xtx.=" Telephone $tel";
		$txt.="$k Adresse &eacute;lectronique$l$ema";
		$xtx.=" Adresse electronique $ema";
		for($i=0;$i<@qty;$i++){
			if($qty[$i]>0.5){
				@prd=split(/=/,$pro[$i]);
				$txt.="$k$prd[1]$l$qty[$i] x $prd[3]";
				$xtx.=" $prd[1] $qty[$i] x $prd[3]";
			}
		}
		$txt.="$k Facture$l$f$k Montant$l$eur $cty[1]</table>";
		$xtx.=" Facture $f Montant $eur $cty[1]";
		$mai='/usr/lib/sendmail';
		if(-e$mai){
			open(MAJ,"|$mai -t");
			print MAJ"To: font.vie\@gmail.com\n";
#			print MAJ"Cc: $ema\n"if(/\@/,$ema);
			print MAJ"From: ofpierre\@vitafons.co.uk\n";
			print MAJ"Subject: VITAFONS achat $f propos&eacute;\n";
			print MAJ"MIME-Version: 1.0\n";
			print MAJ"Content-Type: text/html;\n\n<html><head></head><body>";
			print MAJ"$txt</body></html>\n\n";
			close(MAJ);
		}
		$xtx=~s/ /\+/g;
		$rue=$eur;
		$rue=~s/,/./;
		$can="http://www.vitafons.co.uk/cgi-bin/okpierre.pl";
		$prm="$can?inf=$xtx";
		$suc="$can?YES=OK&inf=$xtx";
		print<<END;
$txt<form action="https://www.paypal.com/fr/cgi-bin/webscr" method=post target=paypal>
<input type=hidden name=cmd value=_xclick>
<input type=hidden name=business value="font.vie\@gmail.com">
<input type=hidden name=return value="$suc">
<input type=hidden name=cancel_return value="$prm">
<input type=hidden name=currency_code value=EUR>
<input type=hidden name=undefined_quantity value=0>
<input type=hidden name=no_shipping value=1>
<input type=hidden name=no_note value=1>
<input type=hidden name=item_name value="VITAFONS facture $f au nom de $nam">
<input type=hidden name=item_number value="">
<input type=hidden name=amount value=$rue>
<input type=hidden name=notify_url value="http://www.vitafons.co.uk/cgi-bin/ippierre.pl">
<table width=100%><tr><td align=center>On vous redirige maintenant vers une interface de paiement s&eacute;curis&eacute; pour la saisie des donn&eacute;es cartes au travers d&#180;un lien crypt&eacute; SSL 128 bits.<br><img src="../paypal.gif"><br><input type=image src="../payer.gif"><br><img src="../cadenas.gif">
END
		goto ende;
	}else{
		for($j=0;$j<$i;$j++){$pos=$pch[$j]if!($tot<$lim[$j]);}
		print'<tr><td align=right width=50%>Vous commandez des produits pour une valeur de&nbsp;';
		print'<td width=10% align=right>'.$usd.' '.$cty[1].'<td><td rowspan=8 align=right><img src="../'.$cty[5].'">';
		if($rcs eq"Y"){
			print'<tr><td align=right>remise contre signature&nbsp;<td align=right>';
			print" 1,15 $cty[1]<td>TTC dont 0,19 $cty[1] de TVA (20%)";
		}
		if($pos>0){
			$sop=$pos*0.2;
			print'<tr><td align=right>affranchissement&nbsp;<td align=right>';
			printf("%2d,%02d",$pos,(100*($pos+.005))%100);
			print" $cty[1]<td>TTC dont ";
			printf("%2d,%02d",$sop,(100*($sop+.005))%100);
			print" $cty[1] de TVA (20%)";
		}
		$ttl=$tot+$pos;
		for($a=(@dis-1);$a>-1;$a--){
			($b,$c)=split(/=/,$dis[$a],2);
			if($ttl>=$b){
				$dis=($c*$ttl)/100;
				last;
			}
		}
		if($dis>0){
			$sid=$dis*0.2;
			print'<tr><td align=right>remises&nbsp;<td align=right>';
			printf("%2d,%02d",$dis,(100*($dis+.005))%100);
			print" $cty[1]<td>TTC dont ";
			printf("%2d,%02d",$sid,(100*($sid+.005))%100);
			print" $cty[1] de TVA (20%)";
			$ttl=$ttl-$dis;
		}
		$cen=sprintf("%4d,%02d",$ttl,(100*($ttl+.005))%100);
		$cen=~s/ //g;
		$a=$cen;
		$cen=~s/,//;
		print'</td>';
		print'<FORM METHOD=POST ACTION="../cgi-bin/ofpierre.pl">';
		print'<INPUT TYPE=hidden NAME=cen VALUE='.$cen.'>';
		print'<INPUT TYPE=hidden NAME=rcs VALUE='.$rcs.'>';
		print'<INPUT TYPE=hidden NAME=cad VALUE="';
		if(length($cad)<1){print$inp;}else{print$cad;}
		print'"><tr><td align=right width=40%>Entrez vos nom et pr&eacute;nom <font color=red>obligatoire</font>&nbsp;<td colspan=2>';
		print'<input type=text size=40 name=nam value="'.$nam.'">';
		print'<tr><td align=right>ainsi que votre adresse de livraison <font color=red>obligatoire</font>&nbsp;<td colspan=2>';
		print'<input type=text size=40 name=ad1 value="'.$ad1.'">';
		print'<tr><td><td colspan=2><input type=text size=40 name=ad2 value="'.$ad2.'">';
		print'<tr><td><td colspan=2><input type=hidden name=dep value='.$dep.'>'.$zip;
		print'<tr><td align=right>votre t&eacute;l&eacute;phone <font color=red>obligatoire</font>&nbsp;<td colspan=2>';
		print'<input type=text size=40 name=tel value="'.$tel.'">';
		print'<tr><td align=right>et votre adresse &eacute;lectronique (e-mail) <font color=red>obligatoire</font>&nbsp;<td colspan=2>';
		print'<input type=text size=40 name=ema value="'.$ema.'">';
		print"<tr><th align=right>Cliquez ici pour un paiement par carte bancaire 100% s&eacute;curis&eacute; (SSL) de&nbsp;<td colspan=2>";
		print'<INPUT TYPE=submit VALUE="'.$a.'"> '.$cty[1];
		print"<tr><th colspan=3>Nous vous recommandons d'imprimer cette facture.";
		print'<tr><th colspan=3>Pour commander par &eacute;crit envoyez votre r&egrave;glement (en ch&egrave;que ou mandat) &agrave; :<br>'.$cty[2];
		if(@tel>0){
			$j=0;
			print'<tr><th colspan=3>';
			foreach$t(@tel){print"$t";$j++;print" - "if($j<@tel);}
		}
		print'<tr><th colspan=3><font color=red>Veuillez bien contr&ocirc;ler cette commande, toute commande &eacute;tant d&eacute;finitive.';
		print'<tr><th colspan=3><a href="../cgi-bin/ofpierre.pl">recommencer</a></table></form>';
	}
}
print'<form method="post" action="../cgi-bin/ofpierre.pl"><input type=hidden name=zip value="'.$zip.'">';
print"<table width=100% border=1><tr><th colspan=2>Produit<th>Quantit&eacute;<th>Prix<th>Valeur";
$j=0;
$k='<td align=center>';
if($tot>0.005){$l=' readonly';}else{$l='';}
foreach$pro(@pro){
	@prd=split(/=/,$pro);
	if((($prd[4]>0.005)and($tot<0.005))or($qty[$j]>0.5)){
		if($prd[0]eq$p){
			print'<br>'.$prd[3].'<br>';
			print'<input type=text name=q'.sprintf("%02d",$j).$l.' value='.sprintf("%4d",$qty[$j]).' size=3>';
			print$k.$r.'<p>'.sprintf("%2d,%02d",$prd[4],(100*($prd[4]+.005))%100);
			print$k.$s.'<p>'.sprintf("%4d,%02d$cty[1]",$vlu[$j],(100*($vlu[$j]+.005))%100);
			undef$r;
		}else{
			print$k.$r.$k.$s if($r);
			print'<tr>'.$k.'<img src="../'.$prd[0].'">';
			print"<td><b>$prd[1]</b> : $prd[2]<td align=center>$prd[3]<br>";
			print'<input type=text name=q'.sprintf("%02d",$j).$l.' value='.sprintf("%4d",$qty[$j]).' size=3>';
			$r=sprintf("%2d,%02d",$prd[4],(100*($prd[4]+.005))%100);
			$s=sprintf("%4d,%02d$cty[1]",$vlu[$j],(100*($vlu[$j]+.005))%100);
		}
		$p=$prd[0];
	}
	$j++;
}
print$k.$r.$k.$s if($r);
if(($tot<0.005)and(length($cad)<1)){
	while($i<13){print'<tr><td colspan=5><td colspan=5><td colspan=5>';$i+=3;}
	print'<tr><th><a href="../cgi-bin/ofpierre.pl">RAZ</a>';
	if($rcs eq"Y"){$a="Y";}else{$a="";}
	print'<th colspan=2>Remise contre signature : Colissimo Expert F (1,15Eu) <input type=checkbox name=rcs value=Y $a> &nbsp; &nbsp; &nbsp; &nbsp; <input type=submit value="Cliquez ici pour calculer le total"><th colspan=2>'.$usd.$cty[1];
}
ende:print"</table></form>";
if(@dis>0){
	print" Remises de : ";
	for($a=0;$a<@dis;$a++){
		($b,$c)=split(/=/,$dis[$a],2);
		print"$c% pour $b$cty[1]. ";
	}
}
print"<p align=right><font size=-2><b>© Vita Fons II Limited, 2000, 2004<hr></body></html>";
sub err{
	$err="The server cannot $_[0] the file $_[1]";
	print'<script type="text/javascript">';
	print"<!--\n";
	print'alert("File in use : see the end of this page for your options.");';
	print'//-->';
	print'</script>';
	print"<p><hr><h1>$err</h1>$!";
	print'<p>Please either <a href="javascript:history.back(1)">go back and try again</a> or';
	print'<p>if the message persists <a href="mailto:vitafons@btconnect.com?subject='.$err.' : '.$!.'">';
	print"tell our webmaster</a>.</body></html>";
	exit;
}

