#!/usr/bin/perl

#########################################################
#  Download Counter v 1.2                               #
#  Программа-счетчик скачиваний                         #
#  ---------------------------------------------------  #
#  mail: theli@inbox.ru                                 #
#  url: http://theli.agava.ru                           #
#  (c) 2000 By Log studio                               #
#  ---------------------------------------------------  #
#########################################################
$req=$ENV{'QUERY_STRING'};
&check_errors;
$stat_file="../stat/files.txt";

open (DATA,$stat_file) || die "Can't open data file!\n";
@data = <DATA>;
close (DATA);

for ($i=0;$i<=$#data; $i++) {
	($file_name, $file_url, $file_count) = split(/\|/, $data[$i]);
	chomp ($file_count);
	$file{$file_name}=$file_url;
	$count{$file_name}=$file_count;
}

if ($count{$req} ne "") {
	$count{$req}++;
	open (DATA, ">$stat_file")|| die "Can't open data file!\n";
	foreach $file_name (keys %count) {
		print DATA $file_name."|".$file{$file_name}."|".$count{$file_name}."\n";
	}
	close (DATA);
	print "Location: $file{$req}\n\n";
} else {
	&print_error;
}


# Подпрограммы
#########################################################

sub print_error {
	print "Content-type: text/html\n\n";
	print "<html>\n<head><title>Download counter error</title>";
	print "</head>\n<body>\n";
	print "<center>\n<table border=\"0\" cellspacing=\"0\" width=\"400\" bgcolor=\"#000000\">";
	print "<tr>\n<td><div align=\"center\"><center><table border=\"0\" cellpadding=\"2\" cellspacing=\"0\" width=\"100%\"><tr>\n";
	print "<td width=\"100%\" bgcolor=\"#B0BB9D\"><p align=\"center\"><small><strong><font face=\"Verdana\">\n";
	print "Внимание!</font></strong></small></td>\n";
	print "</tr>\n<tr>\n";
	print "<td width=\"100%\" bgcolor=\"#FFFFF0\"><p align=\"center\"><small><font face=\"Verdana\">\n";
	print "Произошла ошибка при скачивании файла!</font></small></td>\n";
	print "</tr>\n<tr>\n";
	print "<td width=\"100%\" bgcolor=\"#FFFFF0\"><p align=\"center\"><font color=\"#FF0000\" face=\"Verdana\">\n";
	print "<small>$error</small></font></td>\n";
	print "</tr>\n</table>\n</center></div></td>\n</tr>\n</table>\n</center>\n";
	print "<p align=\"center\">\n<small><font face=\"Verdana\">Created by <a href=\"http://theli.agava.ru\">Log Studio</a></font></small>\n</p>\n";
	print "</body>\n";
	print "</html>";
}

sub check_errors {
	if ($req eq "") {
		$error = "Вы не указали имя файла для скачивания!";
	} else {
		$error = "Файл указанный вами не может быть скачен, т.к. его не существует!";
	}
}
