############################################################
# 
# <p>アクセス数を表示します。</p>
# <pre>
# {{counter カウンタ名}}
# </pre>
# <p>カウンタ名は省略できます。</p>
# 
############################################################
package plugin::info::Counter;
use strict;
#===========================================================
# コンストラクタ
#===========================================================
sub new {
	my $class = shift;
	my $self = {};
	return bless $self,$class;
}

#===========================================================
# インライン関数
#===========================================================
sub inline {
	my $self   = shift;
	my $wiki   = shift;
	my $name   = shift;
	
	my $count = 0;
	
	if($name eq ""){
		$name = "default";
	}
	
	my $file = $wiki->config('log_dir')."/count-".Util::url_encode($name).".txt";
	if (-e $file) {
		open(COUNT,$file) or return "";
		my $line=<COUNT>;
		$count = int($line) or $count = 0;
		close(COUNT);
	}
	$count ++;
	
	unless(-e "$file.tmp"){
		open(COUNT,">$file.tmp") or return $count;
		print COUNT $count;
		close(COUNT);
		rename("$file.tmp", $file);
	}
	
	return $count;
}

1;