#! /usr/bin/perl

require '../../jcode.pl';

$file = "ramenetc.csv";

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

if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); }
else { $buffer = $ENV{'QUERY_STRING'}; }

if ($buffer eq "") { &error; }

@pairs = split(/&/,$buffer);
foreach $pair (@pairs) {
	($name, $value) = split(/=/, $pair);
	$value =~ tr/+/ /;
	$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
	$value =~ s/</&lt;/g;
	$value =~ s/>/&gt;/g;
	$value =~ s/"/&quot;/g;
	$value =~ s/\n//g;
	$value =~ s/\,//g;

	&jcode'convert(*value,'euc');
	$FORM{$name} = $value;
}


#### 検索 ####

if (!open(IN,"$file")) { &error(not_open); }
@DATA = <IN>;
$all = @DATA;
close(IN);

foreach $line (@DATA) {

    $match = "0";
    &jcode'convert(*line,'euc');
    ($s1,$s2,$s3,$s4,$s5,$s6,$s7,$s8,$s9,$sa) = split(/\,/, $line);

        if ($FORM{'s1'} ne "") { #店名検索
            if (!($s1 =~ /$FORM{'s1'}/i)) { $match = "1"; }
        }

        if ($FORM{'s2'} ne "") { #地域検索
            if (!($s3 =~ /$FORM{'s2'}/i)) { $match = "1"; }
        }

        if ($FORM{'s3'} ne "") { #最寄り駅別検索
            if (!($s4 =~ /$FORM{'s3'}/i)) { $match = "1"; }
        }

        if ($FORM{'s5'} ne "none") { #県内地域指定
            if (!($s5 =~ /$FORM{'s5'}/)) { $match = "1"; }
        }

        if ($FORM{'s6'} ne "none") { #営業時間
            if (!($s8 =~ /$FORM{'s6'}/)) { $match = "1"; }
        }

    if ($match eq "0") { &jcode'convert(*line,'sjis'); push(@CS,$line); }
}

@CS = reverse(@CS);
$accesses = @CS;

#### 表示 ####

print "<html><head><title>兵庫ﾗｰﾒﾝiﾓｰﾄﾞ版結果</title></head>\n";
print "<body>\n";

if ($accesses != 0) {

  foreach $line (@CS) {

      ($s1,$s2,$s3,$s4,$s5,$s6,$s7,$s8,$s9,$sa) = split(/\,/, $line);

        print "$s2<hr>$s5<hr>\n";
        print "[電話] <a href=tel:$s6>$s6</a><br>\n";
        print "[営業] $s7<br>[定休] $s8<br>[ｱｸｾｽ] $sa<hr>[特徴･その他]<br>$s9<br>\n";

  }

  print "</table><p><a href=\"http://kamo.pncn.net/i/ramen/index.html\">TOPに戻る</a><p>\n";
}
else {
  print "<b>指定の条件で該当店がありません。</b><p>\n";
}

print "</body></html>\n";

sub error {

	$error = $_[0];

	if ($error eq "not_open") {
		$error_msg = "データファイルをオープンできません。";
	}

	else {
		$error_msg = "処理に何らかのエラーが発生し作業は中止されました。";
	}

	print "<html><head><title>エラー</title></head>\n";
	print "<body bgcolor=\"#ffffff\">\n";
	print "<h2>エラー<hr></h2>\n";
	print "$error_msg<p>\n";
	print "</body></html>\n";
	exit;
}

