#!/usr/bin/perl
#
######################################################################
###
###
###  CGIクイズシステム TakaQ Ver.2.05
###     [1/5] トップページ (tqindex.cgi)
###                                 (c) 1996-1999 Takahiro Nishida
###                                 http://www.mytools.net/
###
###
######################################################################
#
### 変数設定部 （詳細は上記ページをご覧下さい） ######################

$bg1   = "#9999FF";
$bg2   = "#CCCCFF";
$bg3   = "#CCCCFF";
$bg4   = "#CCCCFF";
$font1 = "#333333";
$font2 = "#333333";
$font3 = "#333333";
$font4 = "#333333";

### 変数設定部 （ここまで）###########################################

require "./tqlib.pl";

print "Content-type: text/html\n\n";

&main;

sub main{
	&init_variables;
	
	open(FILE, "$tphtml") || die &tqlib'error($tphtml, 1);
	foreach (<FILE>){
		if($_=~/<!--#GENRE#-->/){
			&show_genre;
		}
		else{
			print $_;
		}
	}
	close(FILE);
}



sub init_variables{
	$ext = $tqlib'ext;
	$basedir = $tqlib'basedir;
	
	$genrefile = "$basedir/genre.txt";
	$tphtml = "$basedir/tqtop.html";
}



sub show_genre{
	open(FILE,"$genrefile") || die &tqlib'error("$genrefile",1);
	@genres=<FILE>;
	close(FILE);
	
	print "<center>";
	&tqlib'copyright;
	print "</center><P>\n";
	
	foreach $data(@genres){
		@sps=split("\t",$data);
		
		$dir="$basedir/data/$sps[0]";
		
		$summfile="$dir/summery.txt";
		if(!(open(FILE,"$summfile"))){
			$summs[11]="ERROR!";
			$summs[13]="ERROR!";
		}
		else{
			@summs = split("\t",<FILE>);
			close(FILE);
		}
		
		$ratefile = "$dir/rate.txt";
		if(!open(FILE,"$ratefile")){ $arate="ERROR!"; }
		else{
			$rbuf = <FILE>;
			close(FILE);
			($try, $cor) = split("\t", $rbuf);
			$arate = &tqlib'calc_rate($cor, $try);
		}
		
		$hsfile = "$dir/highscore.txt";
		if(!open(FILE,"$hsfile")){ $himes="ERROR!"; }
		else{
			$hs=<FILE>;
			close(FILE);
			@hss=split("\t",$hs);
			$htime = &tqlib'change_time($hss[1]);
			if($hs){
				$himes="<B>$hss[3]</B> ($hss[2])<BR><B>成績</B>：$hss[0]％、<B>タイム</B>：$htime";
			}
			else{
				$himes="登録者無し";
			}
		}
		
		$qno=&tqlib'count_quiz($dir);
		
		$dif="";
		for(1..$sps[3]){ $dif="$dif★"; }
		
#--------------------------------------
print <<"EOF";
<center>
<table border noshade width=80% cellspacing=0 cellpadding=0>
<tr>
  <th colspan=3 align=center bgcolor=$bg1><font size=3 color=$font1>■ $sps[1] ■</font></th>
</tr>
<tr>
  <th colspan=2 bgcolor=$bg2 width=50%>
    <font size=3 color=$font2><B><a href="tqquiz.$ext?genre=$sps[0]">挑戦</a></B></font>
  </th>
  <td rowspan=2 bgcolor=$bg3 width=50%>
    <font size=2 color=$font3><B>Top</B>：$himes</font>
  </td>
</tr>
<tr>
  <td colspan=2 bgcolor=$bg2 width=50%>
    <font size=2 color=$font2>難易度：$dif</font>
  </td>
</tr>
<tr>
  <td width=25% bgcolor=$bg2>
    <font size=2 color=$font2>出題数：$sps[2]問</font>
  </td>
  <td width=25% bgcolor=$bg2>
    <font size=2 color=$font2>挑戦者：$summs[11]人</font>
  </td>
  <td rowspan=4 bgcolor=$bg4 width=50%>
    <font size=2 color=$font4>$sps[5]</font>
  </td>
</tr>
<tr>
  <td width=25% bgcolor=$bg2>
    <font size=2 color=$font2>問題数：$qno問</font>
  </td>
  <td width=25% bgcolor=$bg2>
    <font size=2 color=$font2>合格者：$summs[13]人</font>
  </td>
</tr>
<tr>
  <td width=25% bgcolor=$bg2>
    <font size=2 color=$font2>合格点：$sps[4]％以上</font>
  </td>
  <td width=25% bgcolor=$bg2>
    <font size=2 color=$font2>正答率：$arate％</font>
  </td>
</tr>
<tr>
  <th width=25% bgcolor=$bg2>
    <font size=2 color=$font2>
      <a href="tqscore.$ext?act=rank&genre=$sps[0]">成績一覧</a>
    </font>
  </th>
  <th width=25% bgcolor=$bg2>
    <font size=2 color=$font2>
      <a href="tqscore.$ext?act=rate&genre=$sps[0]">正答率一覧</a>
    </font>
  </th>
</tr>
</table>
</center>
<BR>

EOF
#--------------------------------------
	}
}
