#!/usr/bin/perl

$digit=5; # Колличество цифр по умолчанию
$path="http://localhost/grafcount/img/"; # Путь url до цифр

#==============================================

$count=0;
$bufer=$ENV{'QUERY_STRING'};
$ip=$ENV{'REMOTE_ADDR'};

#--------------------------
# Decode data ----------------
@pairs = split(/&/, $bufer);
foreach $pair (@pairs)
      {
        ($name, $value) = split(/=/, $pair);
        $name =~ tr/+/ /;
        $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
        $value =~ tr/+/ /;
        $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
        
        
        $FORM{$name} = $value;
      }      
# End ------------------------   
$id=$FORM{id};
$dig=$FORM{dig};

if($dig ne "")
  {$digit=$dig;}
if($id ne "")
  {$filedata="$id.cnt";}
else
  {&error;}
$sec=time;

open (CNTR,"$filedata") || open(CNTR, ">$filedata");

$line=<CNTR>;
close (CNTR);
$size=scalar(@count);

($count,$oldip,$oldsec)=split("::",$line);

if($ip ne $oldip){&add;}
elsif($sec-$oldsec >= 15){&add;} # Не учитывает посетителей с одного IP
				 # в течении 15 секунд


&show;


sub error
  {
  	print "Content-type: text/html\n\n";
  	print "Не правильно дана ссылка на файл. Укажите код страницы.";
  	exit;
  }	

sub add
  {
  	$count+=1;
	open (CNTR,">$filedata") ;
	
	print CNTR "$count\:\:$ip\:\:$sec\:\:";
	close (CNTR);
	
 }
 
sub show
  {
  	open(CNTR,"$filedata");
  	
  	$line=<CNTR>;
  	close (CNTR);
  	
  	($curdig,$a,$z)=split("::",$line);
  	$zndig=length($curdig);
  	$curdig =~ s/1/<img src=$path\/1.gif border=>/g;
	$curdig =~ s/2/<img src=$path\/2.gif border=>/g;
	$curdig =~ s/3/<img src=$path\/3.gif border=>/g;
	$curdig =~ s/4/<img src=$path\/4.gif border=>/g;
	$curdig =~ s/5/<img src=$path\/5.gif border=>/g;
	$curdig =~ s/6/<img src=$path\/6.gif border=>/g;
	$curdig =~ s/7/<img src=$path\/7.gif border=>/g;
	$curdig =~ s/8/<img src=$path\/8.gif border=>/g;
	$curdig =~ s/9/<img src=$path\/9.gif border=>/g;
	$curdig =~ s/0/<img src=$path\/0.gif border=>/g;
  	
  	
  	
  	for($i=$zndig+1;$i<=$digit;$i++)
  	  {$curdig="<img src=$path/0.gif border=0>$curdig";}

  	# ----------	print ----------------
  	print "Content-type: text/html\n\n";
	print "<a href=http://localhost/>$curdig</a>"; 
  }	