sub town_no_get {
#街情報を変数に代入
	if (@_[0] eq ""){
#街指定が無く名前指定がある場合（ログイン時）自分の家のある街をチェック
		if ($in{'name'}){
			open(IN,"$ori_ie_list") || &error("Open Error : $ori_ie_list");
			@ori_ie_para = <IN>;
			close(IN);
			$iearuflag = 0;
			foreach (@ori_ie_para){
					&ori_ie_sprit($_);
					if ($ori_ie_name eq "$in{'name'}"){$this_town_no = $ori_ie_town; $iearuflag=1; last;}
			}
			if ($iearuflag == 0){$this_town_no = 0;}
#街指定が無く名前指定も無い場合（トップページへのアクセス）
		}else{$this_town_no = 0;}
#街指定があればその街のログを開く
	}else{
		$this_town_no = @_[0];
	}
	
	if (! $in{'town_no'}){$in{'town_no'} = "$this_town_no";}
}

##########卸店の出力
#####建築
sub kentiku {
	&header(kentiku_style);
	$i = 0;
	foreach (@town_hairetu){
		$mati_sentaku .= "街の名前<option value=$i>$_</option>\n";
		$mati_kakunin_open .= "<a href=$script?town_no=$i target=_blank>☆$_　</a>";
		$i ++;
	}
	$i = 21;
	foreach (A..M){
		$tateziku .= "縦軸<option value=$i>$_</option>\n";
		$i += 17;
	}
	foreach (1..16){
		$yokoziku .= "横軸<option value=$_>$_</option>\n";
	}
	
#家画像をハッシュから展開
	while(($ie_key,$ie_val) = each %ie_hash){
			push @ie_keys,$ie_key;
			push @ie_values,$ie_val;
	}
		sub by_iekey{$ie_values[$a] <=> $ie_values[$b];}
		@ie_rank=@ie_keys[ sort by_iekey 0..$#ie_keys]; 
	$i=1;
	foreach(@ie_rank){
		$iegazou .= "<td align=center><input type=radio name=iegazou value=$_><br><img src=\"$img_dir/$_\" width=32 height=32><br>$ie_hash{$_}万円\n";
		if ($i % 8 == 0){$iegazou .= "</tr><tr>";}
		$i ++;
	}
			print <<"EOM";
	<table width="90%" border="0" cellspacing="0" cellpadding="10" align=center class=yosumi>
	<tr>
	<td bgcolor=#ffffff>空き地スペースであれば好きな街の好きな場所に自分の家を建てることができます。<br>
	建築費用は「その街の地価」＋「家の値段（外装費）」＋「内装費（ランクA～D）」です。家を持つと、以後ログイン時に最初にその街へ行くことになります。</td>
	<td  bgcolor=#333333 align=center width=35%><img src="$img_dir/kentiku_tytle.gif"></td>
	</tr></table><br>
	<form method="POST" action="$script">
	<input type=hidden name=mode value="kentiku_do">
	<input type=hidden name=command value="kakunin">
	<input type=hidden name=name value="$in{'name'}">
	<input type=hidden name=pass value="$in{'pass'}">
	<input type=hidden name=town_no value=$in{'town_no'}>
	<table width="80%" border="0" cellspacing="0" cellpadding="8" align=center class=yosumi>
	<tr><td valign=top>
	<div class=honbun2>●建てる場所を指定してください。家は<img src=$img_dir/akiti.gif width=32 height=32>の場所にのみ建てることができます。</div><br>
	街の名前 <select name="mati_sentaku">$mati_sentaku</select>
	縦軸 <select name="tateziku">$tateziku</select>
	横軸 <select name="yokoziku">$yokoziku</select><br>
	▼場所がわからない場合、下のリンクでそれぞれの街を開いて確認してください。<br>
	$mati_kakunin_open<br><br>
	<div class=honbun2>●家の選択</div>
	<table boader=0 cellspacing="0" cellpadding="5" width=100%><tr>
	$iegazou
	</tr></table>
	</td></tr><tr><td>
	<br><div class=honbun2>●家のランクを指定してください（内装費）。</div><br>
	<input type=radio name=matirank value="0">Ａランク：$housu_nedan[0]万円（４コンテンツ同時表\示が可能\）<br>
	<input type=radio name=matirank value="1">Ｂランク：$housu_nedan[1]万円（３コンテンツ同時表\示が可能\）<br>
	<input type=radio name=matirank value="2">Ｃランク：$housu_nedan[2]万円（２コンテンツ同時表\示が可能\）<br>
	<input type=radio name=matirank value="3">Ｄランク：$housu_nedan[3]万円（１コンテンツ同時表\示が可能\）<br><br>
	※自分の家を建てると以下のコンテンツを家の中に設置することができます。<br><br>
	<font color=#ff6600>○簡易掲示板</font>：家主はもちろん家を訪れた人が誰でも書き込みできる掲示板です。<br>
	<font color=#ff6600>○商売スペース</font>：自分の好きな商品を卸問屋から仕入れ、自由に価格を設定して販売することができます（将来的にはスクールやスポーツジムなど他の商売を開くことも可能\になる予\定です）。<br>
	<font color=#ff6600>○独自URLスペース</font>：自分の好きなURLを指定してIFRAMEウインドウに表\示することができます。アイディア次第で自分の家をどんな内容にすることも可能\なので、自分のホームページをお持ちの方にはお奨めです。<br>
	<font color=#ff6600>○家主掲示板</font>：管理者のみが書き込みできる掲示板です。日記やエッセイなど自分の文章を表\現したい方にお奨めです。<br><br>
	Dランクでは上記コンテンツよりひとつだけ選んで設置することができ、Aランクでは全てのコンテンツを設置できることになります。<br>また、全ての家には「さい銭箱」が置かれていて訪問者の方が自由にさい銭することができます。
EOM


	print <<"EOM";
	<br><br><div align="center"><input type=submit value=" 確認画面へ  "></div>
	</td></tr></table>
	<div align="center"><a href=\"javascript:history.back()\"> [前の画面に戻る] </a></div>
	</body></html>
EOM
	exit;
}

#######施工作業
sub kentiku_do {
#確認画面出力
	if ($in{'command'} eq "kakunin"){
		&main_view($in{'mati_sentaku'});
		exit;
	}
	if ($in{'pass'} ne "$admin_pass" || $in{'name'} ne "$admin_name"){
		if ($in{'kensetu_hiyou'} * 10000 > $money){&error("お金が足りません。");}
	}
	&lock;
#家リストへの書き込み
	open(IN,"$ori_ie_list") || &error("Open Error : $ori_ie_list");
		@ori_ie_para = <IN>;
	close(IN);
		foreach (@ori_ie_para){
				&ori_ie_sprit($_);
				if ($in{'ori_k_id'} eq "$ori_k_id"){&error("家は一人１軒しか建てられません。引っ越しの場合は、家管理画面から家を売却したのち新たに購入してください。");}
		}
	&time_get;
	$ori_ie_temp = "$in{'ori_k_id'}<>$in{'name'}<>『$in{'name'}』の家<>$in{'ori_ie_image'}<><>$date_sec<>$in{'ori_ie_town'}<>$in{'ori_ie_tateziku'}<>$in{'ori_ie_yokoziku'}<>$in{'ori_ie_sentaku_point'}<>$in{'ori_ie_rank'}<><><><><>\n";
	unshift (@ori_ie_para,$ori_ie_temp);

#タウン情報に書き込み
	$write_town_data = "./log_dir/townlog".$in{'ori_ie_town'}.".cgi";
	open(TWI,"$write_town_data") || &error("Open Error : $write_town_data");
	$hyouzi_town_hairetu = <TWI>;
	close(TWI);
		@town_sprit_matrix =  split(/<>/,$hyouzi_town_hairetu);
		if ($town_sprit_matrix[$in{'ori_ie_sentaku_point'}] ne "空地"){&error("選択した場所は空き地ではありません。他の方が既に購入してしまったようです。");}
		$town_sprit_matrix[$in{'ori_ie_sentaku_point'}] = "$in{'ori_k_id'}";
		$town_temp=join("<>",@town_sprit_matrix);
#タウン情報更新
	open(TWO,">$write_town_data") || &error("$write_town_dataに書き込めません");
	print TWO $town_temp;
	close(TWO);

#家リスト更新
	open(OIO,">$ori_ie_list") || &error("$ori_ie_listに書き込めません");
	print OIO @ori_ie_para;
	close(OIO);
#ニュース記録
	&news_kiroku("家","$in{'name'}さんが「$town_hairetu[$in{'ori_ie_town'}]」に家を建築しました。");		#ver.1.3

	&unlock;
#ログ更新
	if ($in{'pass'} ne "$admin_pass" || $in{'name'} ne "$admin_name"){
		$money -= $in{'kensetu_hiyou'} * 10000;
	}
			&temp_routin;
			&log_kousin($my_log_file,$k_temp);
			
&header("","sonomati");
	print <<"EOM";
	<div align=center><br><table  border=0  cellspacing="5" cellpadding="0" width=300 style="$message_win"><tr><td>
<span class="job_messe">
おめでとうございます！<br>
$town_hairetu[$in{'ori_ie_town'}]に家を建築いたしました。<br>
</span>
</td></tr></table>
<br>
	<form method=POST action="$script">
	<input type=hidden name=mode value="login_view">
	<input type=hidden name=name value=$in{'name'}>
	<input type=hidden name=pass value=$in{'pass'}>
	<input type=hidden name=town_no value=$in{'town_no'}>
	<input type=submit value="戻る">
	</form></div>

	</body></html>
EOM
exit;
}


######卸問屋
sub orosi {
open(IN,"$maintown_logfile") || &error("Open Error : $maintown_logfile");
	$maintown_para = <IN>;
	&main_town_sprit($maintown_para);
close(IN);
		if($mt_orosiflag == 0){
				&time_get;
##卸フラグが０で規定時間を過ぎていたら
				if($return_hour >= "$mt_t_time"){
	&lock;
#卸フラグを１にしてメインタウンログを更新
			$mt_orosiflag = 1;
			$mt_yobi9 = $date2;		#卸更新日時を記録
			&main_town_temp;
			open(OUT,">$maintown_logfile") || &error("Write Error : $maintown_logfile");
			print OUT $mt_temp;
			close(OUT);	
#商品データログを開く
			open(OL,"./dat_dir/syouhin.dat") || &error("Open Error : ./dat_dir/syouhin.dat");
			$top_koumoku = <OL>;
#商品をランダムに並び替えてログを更新
	@new_syouhin_hairetu = ();
	srand ($$ | time);

	while (<OL>){
			my $r = rand @new_syouhin_hairetu+1;
			push (@new_syouhin_hairetu,$new_syouhin_hairetu[$r]);
			$new_syouhin_hairetu[$r] = $_;
	}
		close(OL);
	$i=0;
				foreach (@new_syouhin_hairetu){
					&syouhin_sprit($_);
					if ($syo_syubetu eq "食"){next;}
					$syo_zaiko = int ($syo_zaiko * $ton_zaiko_tyousei); 
					&syouhin_temp;
					push (@new_syouhin_hairetu2,$syo_temp);
					$i ++;
					if ($i >= $orosi_sinakazu){last;}
				}
	
#種別でソート
				foreach (@new_syouhin_hairetu2){
						$data=$_;
						$key=(split(/<>/,$data))[0];
						push @alldata,$data;
						push @keys,$key;
				}
				sub by_syu_keys{$keys[$a] cmp $keys[$b];}
				@alldata=@alldata[ sort by_syu_keys 0..$#alldata]; 
	
	open(OLOUT,">$orosi_logfile") || &error("$orosi_logfileに書き込みが出来ません");
	print OLOUT @alldata;
	close(OLOUT);
	
	&unlock;
				}		#if（商品入れ替え時間が過ぎていた場合）の閉じ
		}		#if（卸フラグが0の場合）の閉じ

#卸商品の表示
	open(IN,"$orosi_logfile") || &error("Open Error : $orosi_logfile");
		@kyouno_hairetu = <IN>;
	close(IN);
	&header(orosi_style);
#ver.1.3ここから
#個人の家情報をunitハッシュに代入
	open(OI,"$ori_ie_list") || &error("Open Error : $ori_ie_list");
	@ori_ie_hairetu = <OI>;
	foreach (@ori_ie_hairetu) {
			&ori_ie_sprit($_);
			$unit{"$ori_k_id"} = "1";
	}
	close(OI);
	if ($in{'iesettei_id'} eq $k_id){
		&my_omise_orosi_rou;
	}elsif ($in{'iesettei_id'} eq $house_type && $house_type != ""){
		&haiguusya_omise_orosi_rou;
	}else{
		if ($unit{"$k_id"} != ""){
			&my_omise_orosi_rou;
			$in{'iesettei_id'} = $k_id;
		}elsif($unit{"$house_type"} != ""){
			&haiguusya_omise_orosi_rou;
			$in{'iesettei_id'} = $house_type;
		}else{
			$orosisakinomise = "お店を持っていないので仕入れはできません。";
			$settei_t_color = "#888888";
			$misearuyoflag = "nasi";
		}
	}
	
sub my_omise_orosi_rou {
		$orosisakinomise = "自分のお店の仕入れをします。";
		$settei_t_color = "#336699";
		if ($unit{"$house_type"} != ""){
			$change_form = "<form method=POST action=\"$script\"><input type=hidden name=mode value=orosi><input type=hidden name=iesettei_id value=\"$house_type\"><input type=hidden name=name value=$in{'name'}><input type=hidden name=pass value=$in{'pass'}><input type=hidden name=town_no value=$in{'town_no'}><input type=submit value=\"配偶者のお店の仕入れをする\"></form>";
		}
}

sub haiguusya_omise_orosi_rou {
		$orosisakinomise = "配偶者のお店の仕入れをします。";
		$settei_t_color = "#ff6666";
		if ($unit{"$k_id"} != ""){
			$change_form = "<form method=POST action=\"$script\"><input type=hidden name=mode value=orosi><input type=hidden name=iesettei_id value=\"$k_id\"><input type=hidden name=name value=$in{'name'}><input type=hidden name=pass value=$in{'pass'}><input type=hidden name=town_no value=$in{'town_no'}><input type=submit value=\"自分のお店の仕入れをする\"></form>";
		}
}

#自分の商品在庫チェック
	$omise_log_file="./member/$in{'iesettei_id'}/omise_log.cgi";
	open(MKF,"$omise_log_file");
	@my_item_list = <MKF>;
	close(MKF);
	foreach (@my_item_list){
			&syouhin_sprit($_);
			$my_omise_zaiko_itiran .= "○$syo_hinmoku $syo_zaiko個　";
	}
#ver.1.3ここまで
#ver.1.30ここから
	print <<"EOM";
	<table width="100%" border="0" cellspacing="0" cellpadding="10" align=center class=yosumi>
	<tr>
	<td bgcolor=#ffffff>自分のお店に並べる商品をここで仕入れることができます（お店を持ってない方は購入しても意味がありません）。購入したい商品にチェックを入れたうえで、ページ最下部で数量を指定し「OK」ボタンを押してください。品揃えは毎日１回変わりますが、何時に変わるかはランダムに変わります。また、お金は普通口座より引き落とされます。
	<div class=honbun2>最終卸商品更新日時：$mt_yobi9</div>
	<font color=#ff6600>※持っているお店で扱っている種類の商品しか購入できません。スーパーを選択している方は、ここに表\示されている価格の1.5倍になります。<br>
	※お店に置ける商品アイテム数は$mise_zaiko_gendoです。<br>
	※ストックできる一つの商品の在庫数は$mise_zaiko_limitです。</font></td>
	<td  bgcolor=#333333 align=center><img src="$img_dir/orosi_tytle.gif"></td>
	</tr></table><br>
	<!--ver.1.3ここから-->
	<table width="90%" border="0" cellspacing="0" cellpadding="8" align=center class=yosumi>
	<tr bgcolor=$settei_t_color><td>
	<div  align=center style="color:#ffffff;font-size:13px;">$orosisakinomise</div>
	<div  align=left style="color:#ffffff;font-size:10px;">現在の在庫状況：$my_omise_zaiko_itiran</div>
	</td>
	<td>$change_form</td>
	</tr></table><br>
	<!--ver.1.3ここまで-->
	<table width="100%" border="0" cellspacing="1" cellpadding="5" align=center class=yosumi>
	<tr><td colspan=27><font color=#336699>凡例：(国)＝国語up値、(数)＝数学up値、(理)＝理科up値、(社)＝社会up値、(英)＝英語up値、(音)＝音楽up値、(美)＝美術up値、（ル）=ルックスup値、（体）=体力up値、（健）=健康up値、（ス）=スピードup値、（パ）=パワーup値、（腕）=腕力up値、（脚）=脚力up値、（L）=LOVEup値、（面）=面白さup値、（H）=エッチup値<br>
	※耐久は、○○回なら使用できる回数、○○日なら使用できる日数です。</font></td></tr>
EOM

		print <<"EOM";
	<form method="POST" action="$script">
	<input type=hidden name=mode value="buy_orosi">
	<input type=hidden name=iesettei_id value="$in{'iesettei_id'}">
	<input type=hidden name=name value="$in{'name'}">
	<input type=hidden name=pass value="$in{'pass'}">
	<input type=hidden name=k_id value="$in{'k_id'}">
	<input type=hidden name=town_no value=$in{'town_no'}>
EOM
	foreach (@kyouno_hairetu){
		&syouhin_sprit($_);
			if($syo_zaiko <= 0){
					$syo_zaiko = "売り切れ";
					$kounyuubotan = "";
			}else{
					if ($misearuyoflag eq "nasi"){
						$syo_zaiko = "購入不可";
						$kounyuubotan = "";
					}else{
						$kounyuubotan = "<input type=radio name=syo_hinmoku value=\"$syo_hinmoku,&,$syo_nedan,&,$syo_zaiko,&,$syo_syubetu\">";
					}
			}
			if($syo_cal > 0){$calory_hyouzi = "$syo_cal kcal";}else{$calory_hyouzi = "ー";}
			if ($maeno_syo_syubetu ne "$syo_syubetu"){
				print <<"EOM";
				<tr bgcolor=#ffff66><td colspan=27>▼$syo_syubetu</td></tr>
		<tr bgcolor=#cc9966><td align=center  width=170>商品</td><td align=center nowrap>在庫</td><td align=center>価格</td><td>国</td><td>数</td><td>理</td><td>社</td><td>英</td><td>音</td><td>美</td><td>ル</td><td>体</td><td>健</td><td>ス</td><td>パ</td><td>腕</td><td>脚</td><td>L</td><td>面</td><td>Ｈ</td><td align=center nowrap>カロリー</td><td align=center nowrap>耐久</td><td align=center>使用<br>間隔</td><td align=center>身体<br>消費</td><td align=center>頭脳<br>消費</td><td align=center nowrap>　備　考　</td></tr>
EOM
			}
			$taikyuu_hyouzi_seikei = "$syo_taikyuu"."$syo_taikyuu_tani";
		print <<"EOM";
	<tr bgcolor=#cccc99><td align=left>$kounyuubotan$syo_hinmoku</td><td align=right nowrap>$syo_zaiko</td><td align=right nowrap>$syo_nedan円</td><td>$syo_kokugo</td><td>$syo_suugaku</td><td>$syo_rika</td><td>$syo_syakai</td><td>$syo_eigo</td><td>$syo_ongaku</td><td>$syo_bijutu</td><td>$syo_looks</td><td>$syo_tairyoku</td><td>$syo_kenkou</td><td>$syo_speed</td><td>$syo_power</td><td>$syo_wanryoku</td><td>$syo_kyakuryoku</td><td>$syo_love</td><td>$syo_unique</td><td>$syo_etti</td><td align=right>$calory_hyouzi</td><td nowrap>$taikyuu_hyouzi_seikei</td><td nowrap>$syo_kankaku分</td><td>$syo_sintai_syouhi</td><td>$syo_zunou_syouhi</td><td align=left>$syo_comment</td></tr>
EOM
		$maeno_syo_syubetu = "$syo_syubetu";
	}		#foreach閉じ
	if ($misearuyoflag ne "nasi"){
		print <<"EOM";
	<tr><td align=center colspan=27>購入数 <input type=\"text\" name=\"kounyuusuu\" size=10>　<input type=submit value="OK"></td></tr>
	</table></form>
EOM
	}else{print "</table></form>";}		#ver.1.40
#ver.1.30ここまで
	&hooter("login_view","戻る");
	exit;
}

#####卸商品購入処理
sub buy_orosi {
	if ($in{'kounyuusuu'} < 1){&error("購入数が不適切です");}
	if($in{'kounyuusuu'} =~ /[^0-9]/){&error("購入数は半角数字で記入してください");}
	($katta_syouhin,$katta_nedan,$imano_zaiko,$orosi_syubetu) = split(/,&,/,$in{'syo_hinmoku'});
	if ($in{'kounyuusuu'} > $imano_zaiko){&error("そんなに在庫がありません");}
	if ($in{'kounyuusuu'} > $mise_zaiko_limit){&error("お店に置ける在庫の上限は$mise_zaiko_limitです。");}
	open(IN,"$orosi_logfile") || &error("Open Error : $orosi_logfile");
		@kyouno_hairetu = <IN>;
	close(IN);
	foreach (@kyouno_hairetu){
		&syouhin_sprit($_);
			if($katta_syouhin eq "$syo_hinmoku"){
				if($syo_zaiko <= 0){&error("在庫がありません");}
			}
	}
	$katta_total_gaku = $katta_nedan * $in{'kounyuusuu'};
	if ($katta_total_gaku > $bank){&error("普通口座にお金が足りません");}
#自分のお店の種別をチェック
	$omise_settei_file="./member/$in{'iesettei_id'}/omise_ini.cgi";
		open(OIB,"$omise_settei_file") || &error("お店設定ファイルが開けません。家でお店を開いているか確認してください");
			$omise_settei_data = <OIB>;
			($omise_title,$omise_come,$omise_body_style,$omise_syubetu)= split(/<>/,$omise_settei_data);
		close(OIB);
		if ($omise_syubetu ne "スーパー"){
			if ($omise_syubetu ne "$orosi_syubetu"){&error("あなたのお店ではこの商品を扱うことはできません");}
		}
		if ($omise_syubetu eq "スーパー"){
			$katta_nedan *= 1.5;
			$katta_total_gaku *= 1.5;
		}
		
#自分の商品在庫ファイルにその商品があるかチェック
	$omise_log_file="./member/$in{'iesettei_id'}/omise_log.cgi";
	open(MKF,"$omise_log_file") || &error("自分の商品在庫ファイルが開けません");
	@my_item_list = <MKF>;
	close(MKF);
	$motteru_flag =0;
	$my_mise_zaiko = 0;
#持っているかの判別（持っていたら在庫プラス）と商品アイテム数のカウント
	foreach (@my_item_list){
		&syouhin_sprit($_);
#持っていた場合
		if ($katta_syouhin eq "$syo_hinmoku"){
			if($omise_syubetu eq "スーパー" && $syo_comment =~ /専門店限定商品/){&error("この商品は$orosi_syubetu専門店でしか購入できません。");}		#ver.1.30
						$syo_zaiko += $in{'kounyuusuu'};
						if ($syo_zaiko > $mise_zaiko_limit){&error("お店に置ける在庫の上限は$mise_zaiko_limitです。");}	#ver.1.3
						$bank -= $katta_total_gaku;
						$motteru_flag =1;
		}
		if ($syo_zaiko <= 0) {next;}
		&syouhin_temp;
		$my_mise_zaiko ++;
		push (@new_myitem_list,$syo_temp);
	}		#foreachの閉じ
#アイテム種類が限度以上なら同じアイテムでも買えない処理
	if($douitem_ok == 1){
		if ($my_mise_zaiko >= $mise_zaiko_gendo){&error("お店に置ける商品アイテム数（$mise_zaiko_gendo）を超えているためまだ仕入れができません。");}
	}
#持っていなかった場合（卸しログファイルよりパラメータごとコピー）
	if ($motteru_flag ==0){
		if ($my_mise_zaiko >= $mise_zaiko_gendo){&error("お店に置ける商品アイテム数は$mise_zaiko_gendoです。");}
		open(SP,"$orosi_logfile") || &error("Open Error : $orosi_logfile");
		@kounyuu_hairetu = <SP>;
		close(SP);
		$kounyuu_ok = 0;
		foreach (@kounyuu_hairetu){
			&syouhin_sprit($_);
			if ($katta_syouhin eq "$syo_hinmoku"){
			if($omise_syubetu eq "スーパー" && $syo_comment =~ /専門店限定商品/){&error("この商品は$orosi_syubetu専門店でしか購入できません。");}		#ver.1.30
#購入日を記録
					$syo_kounyuubi = time;
					$syo_zaiko = $in{'kounyuusuu'};
					&syouhin_temp;
					push (@new_myitem_list,$syo_temp);
					$bank -= $katta_total_gaku;
					$kounyuu_ok = 1;
					last;
			}
		}
		if ($kounyuu_ok == 0){&error("購入できませんでした。");}
		
	}		#持っていなかった場合の閉じ
	
#ログ更新
			&temp_routin;
			&log_kousin($my_log_file,$k_temp);
#記帳する
			&kityou_syori("仕入れ（$katta_syouhin×$in{'kounyuusuu'}）","$katta_total_gaku","",$bank,"普");
			
#自分の購入物ファイルのログ更新
	&lock;
	open(MK,">$omise_log_file") || &error("自分の商品在庫ファイルに書き込めません");
	print MK @new_myitem_list;
	close(MK);
	
			
#卸問屋の残り数を引く
	open(SYO,"$orosi_logfile") || &error("Open Error : $orosi_logfile");
		@depa_zan = <SYO>;
	close(SYO);
	@new_depa_zan=();
	foreach (@depa_zan){
		&syouhin_sprit($_);
		if($katta_syouhin eq "$syo_hinmoku"){
			$syo_zaiko -= $in{'kounyuusuu'} ;
		}
		&syouhin_temp;
		push (@new_depa_zan,$syo_temp);
	}

	open(OLOUT,">$orosi_logfile") || &error("$orosi_logfileに書き込みが出来ません");
	print OLOUT @new_depa_zan;
	close(OLOUT);

	&unlock;

&header("","sonomati");
	print <<"EOM";
	<div align=center><br><table  border=0  cellspacing="5" cellpadding="0" width=300 style="$message_win"><tr><td>
<span class="job_messe">
●$katta_syouhin（$katta_nedan円×$in{'kounyuusuu'}）を仕入れました（仕入れ総額：$katta_total_gaku円）。
</span>
</td></tr></table>
<br>
	<form method=POST action="$script">
	<input type=hidden name=mode value="orosi">
	<input type=hidden name=iesettei_id value="$in{'iesettei_id'}">		<!--ver.1.3-->
	<input type=hidden name=name value=$in{'name'}>
	<input type=hidden name=pass value=$in{'pass'}>
	<input type=hidden name=town_no value=$in{'town_no'}>
	<input type=submit value="仕入れを続ける">
	</form>
	<form method=POST action="$script">
	<input type=hidden name=mode value="login_view">
	<input type=hidden name=name value=$in{'name'}>
	<input type=hidden name=pass value=$in{'pass'}>
	<input type=hidden name=town_no value=$in{'town_no'}>
	<input type=submit value="戻る">
	</form>
	</div>

	</body></html>
EOM
exit;
}

#######スポーツクラブ
sub gym {
	open(SP,"./dat_dir/gym.dat") || &error("Open Error : ./dat_dir/gym.dat");
	$top_koumoku = <SP>;
	@gym_hairetu = <SP>;
	close(SP);
	&header(gym_style);
	&gym_sprit($top_koumoku);
	$toremadeatonanbyou = $next_tra - time;
	if($toremadeatonanbyou > 0){$tore_messe = "$nameさんがトレーニングできるまであと$toremadeatonanbyou秒です。";}else{$tore_messe = "今日も張り切って体を鍛えましょう。";}
	print <<"EOM";
	<table width="100%" border="0" cellspacing="0" cellpadding="10"><tr><td width="554" >
	<form method="POST" action="$script" NAME="foMes5">		<!--ver.1.2-->
	<INPUT TYPE="hidden" NAME="TeMes5">		<!--ver.1.2-->
	<input type=hidden name=mode value="training">
	<input type=hidden name=name value="$in{'name'}">
	<input type=hidden name=pass value="$in{'pass'}">
	<input type=hidden name=k_id value="$in{'k_id'}">
	<input type=hidden name=town_no value=$in{'town_no'}>
	<table width="100%" border="0" cellspacing="0" cellpadding="10" align=center class=yosumi>
	<tr>
	<td colspan=8 bgcolor=#ffffff>$tore_messe<br></td>
	<td colspan=4 bgcolor=#333333 align=center><img src="$img_dir/gim_tytle.gif"></td>
	</tr>
	<tr><td colspan=13><font color=#336699>凡例：(ル)＝ルックスup値、(体)＝体力up値、(健)＝健康up値、(ス)＝スピードup値、(パ)＝パワーup値、(腕)＝腕力up値、(脚)＝脚力up値、(H)＝エッチup値、(間)＝次にトレーニング出来る間隔、(消)＝消費する身体パワー</font></td></tr>
	<tr bgcolor=#ffff66><td align=center>$gym_name</td><td>$gym_looks</td><td>$gym_tairyoku</td><td>$gym_kenkou</td><td>$gym_speed</td><td>$gym_power</td><td>$gym_wanryoku</td><td>$gym_kyakuryoku</td><td>$gym_etti</td><td align=center>$gym_nedan</td><td>$gym_kankaku</td><td>$gym_syouhi</td></tr>
EOM
	foreach $gym_hyouzi (@gym_hairetu) {
			&gym_sprit($gym_hyouzi);
		print <<"EOM";
	<tr><td nowrap><input type=radio value="$gym_name" name="tra_menu">$gym_name</td><td>$gym_looks</td><td>$gym_tairyoku</td><td>$gym_kenkou</td><td>$gym_speed</td><td>$gym_power</td><td>$gym_wanryoku</td><td>$gym_kyakuryoku</td><td>$gym_etti</td><td align=right>$gym_nedan円</td><td>$gym_kankaku分</td><td align=right>$gym_syouhi</td></tr>
EOM
	}
	print <<"EOM";
	<tr><td colspan=12><div align=center><input type=submit value=" O K "></div></td>
	</table></form></td><td valign=top>
EOM
	&loged_gamen;
	print "</td></tr></table>";
	&hooter("login_view","戻る");
	exit;
}

####トレーニング
sub training {
	open(SP,"./dat_dir/gym.dat") || &error("Open Error : ./dat_dir/gym.dat");
	$top_koumoku = <SP>;
	@gym_hairetu = <SP>;
	close(SP);
	foreach $gym_hyouzi (@gym_hairetu) {
			&gym_sprit($gym_hyouzi);
			if($in{'tra_menu'} eq "$gym_name"){
				$now_time = time;
				if($energy < $gym_syouhi){&error("身体パワーが足りません。");}
				if($next_tra > $now_time){&error("まだトレーニングできません。");}
				if($money < $gym_nedan){&error("お金が足りません。");}
				
				if($gym_looks){$looks += $gym_looks; $print_messe .= "・ルックス値が$gym_looksアップしました。<br>";}
				if($gym_tairyoku){$tairyoku += $gym_tairyoku; $print_messe .= "・体力が$gym_tairyokuアップしました。<br>";}
				if($gym_kenkou){$kenkou += $gym_kenkou; $print_messe .= "・健康値が$gym_kenkouアップしました。<br>";}
				if($gym_speed){$speed += $gym_speed; $print_messe .= "・スピードが$gym_speedアップしました。<br>";}
				if($gym_power){$power += $gym_power; $print_messe .= "・パワーが$gym_powerアップしました。<br>";}
				if($gym_wanryoku){$wanryoku += $gym_wanryoku; $print_messe .= "・腕力が$gym_wanryokuアップしました。<br>";}
				if($gym_kyakuryoku){$kyakuryoku += $gym_kyakuryoku; $print_messe .= "・脚力が$gym_kyakuryokuアップしました。<br>";}
				if($gym_etti){$etti += $gym_etti; $print_messe .= "・エッチ度が$gym_ettiアップしました。<br>";}

				$next_tra = $now_time + ($gym_kankaku*60);
				$energy -= $gym_syouhi;$print_messe .= "・$gym_syouhiの身体エネルギーを使いました。<br>";
				$taijuu_heri = $gym_syouhi / 100;
				$taijuu -= $taijuu_heri; $print_messe .= "・$taijuu_heri kg体重が減りました。<br>";
				$money -= $gym_nedan;
				last;
			}
	}
#ログ更新
			&temp_routin;
			&log_kousin($my_log_file,$k_temp);
	&header("","sonomati");
	print <<"EOM";
	<div align=center><br><table  border=0  cellspacing="5" cellpadding="0" width=300 style="$message_win"><tr><td>
<span class="job_messe">
●$in{'tra_menu'}で体を鍛えました。<br>
$print_messe
</span>
</td></tr></table>
<br>

	<form method=POST action="$script">
	<input type=hidden name=mode value="login_view">
	<input type=hidden name=name value=$in{'name'}>
	<input type=hidden name=pass value=$in{'pass'}>
	<input type=hidden name=town_no value=$in{'town_no'}>
	<input type=submit value="戻る">
	</form></div>

	</body></html>
EOM
exit;
}


#######学校
sub school {
	open(SP,"./dat_dir/school.dat") || &error("Open Error : ./dat_dir/school.dat");
	$top_koumoku = <SP>;
	@school_hairetu = <SP>;
	close(SP);
	&header(school_style);
	&school_sprit($top_koumoku);
	&time_get;
	if ($date eq "$last_school"){$tore_messe = "受講できるのは１日１回です。今日の受講は終了しています。"; $sc_check = "out";}else{$tore_messe = "今日も頑張って勉強しましょう。";$sc_check = "ok";}
	print <<"EOM";
	<table width="100%" border="0" cellspacing="0" cellpadding="10"><tr><td width="554" >
	<form method="POST" action="$script" NAME="foMes5">		<!--ver.1.2-->
	<INPUT TYPE="hidden" NAME="TeMes5">		<!--ver.1.2-->
	<input type=hidden name=mode value="do_school">
	<input type=hidden name=name value="$in{'name'}">
	<input type=hidden name=pass value="$in{'pass'}">
	<input type=hidden name=k_id value="$in{'k_id'}">
	<input type=hidden name=town_no value=$in{'town_no'}>
	<input type=hidden name=sc_check value="$sc_check">
	<table width="100%" border="0" cellspacing="0" cellpadding="10" class=yosumi>
	<tr>
	<td colspan=7 bgcolor=#ffffff>$tore_messe<br></td>
	<td colspan=3 bgcolor=#333333 align=center><img src="$img_dir/school_tytle.gif"></td>
	</tr>
	<tr bgcolor=#ffff66 align=center><td align=center>$sc_name</td><td nowrap>$sc_kokugo</td><td nowrap>$sc_suugaku</td><td nowrap>$sc_rika</td><td nowrap>$sc_syakai</td><td nowrap>$sc_eigo</td><td nowrap>$sc_ongaku</td><td nowrap>$sc_bijutu</td><td>$sc_nedan</td><td>$sc_syouhi</td></tr>
EOM
	foreach  (@school_hairetu) {
			&school_sprit($_);
		print <<"EOM";
	<tr align=center><td nowrap align=left><input type=radio value="$sc_name" name="sc_name">$sc_name</td><td>$sc_kokugo</td><td>$sc_suugaku</td><td>$sc_rika</td><td>$sc_syakai</td><td>$sc_eigo</td><td>$sc_ongaku</td><td>$sc_bijutu</td><td align=right nowrap>$sc_nedan円</td><td>$sc_syouhi</td></tr>
EOM
	}
	print <<"EOM";
	<tr><td colspan=10><div align=center><input type=submit value=" O K "></div></td>
	</table></form></td><td valign=top>
EOM
	&loged_gamen;
	print "</td></tr></table>";
	&hooter("login_view","戻る");
	exit;
}

####講習を受ける
sub do_school {
	if($in{'sc_check'} eq "out"){&error("今日の受講は終了しています。");}
	&time_get;		#ver.1.2
	if ($date eq "$last_school"){&error("今日の受講は終了しています。");}		#ver.1.2
	open(SP,"./dat_dir/school.dat") || &error("Open Error : ./dat_dir/school.dat");
	$top_koumoku = <SP>;
	@school_hairetu = <SP>;
	close(SP);
	foreach  (@school_hairetu) {
			&school_sprit($_);
			if($in{'sc_name'} eq "$sc_name"){
				if($nou_energy < $sc_syouhi){&error("頭脳パワーが足りません。");}
				if($money < $sc_nedan){&error("お金が足りません。");}
				if($sc_kokugo){$kokugo += $sc_kokugo; $print_messe .= "・国語が$sc_kokugoアップしました。<br>";}
				if($sc_suugaku){$suugaku += $sc_suugaku; $print_messe .= "・数学が$sc_suugakuアップしました。<br>";}
				if($sc_rika){$rika += $sc_rika; $print_messe .= "・理科が$sc_rikaアップしました。<br>";}
				if($sc_syakai){$syakai += $sc_syakai; $print_messe .= "・社会が$sc_syakaiアップしました。<br>";}
				if($sc_eigo){$eigo += $sc_eigo; $print_messe .= "・英語が$sc_eigoアップしました。<br>";}
				if($sc_ongaku){$ongaku += $sc_ongaku; $print_messe .= "・音楽が$sc_ongakuアップしました。<br>";}
				if($sc_bijutu){$bijutu += $sc_bijutu; $print_messe .= "・美術が$sc_bijutuアップしました。<br>";}
				&time_get;
				$last_school = $date;
				$nou_energy -= $sc_syouhi;$print_messe .= "・$sc_syouhiの頭脳エネルギーを使いました。<br>";
				$money -= $sc_nedan;
				last;
			}
	}
#ログ更新
			&temp_routin;
			&log_kousin($my_log_file,$k_temp);
&header;
	print <<"EOM";
	<div align=center><br><table  border=0  cellspacing="5" cellpadding="0" width=300 style="$message_win"><tr><td>
<span class="job_messe">
●$in{'sc_name'}を受講しました<br>
$print_messe
</span>
</td></tr></table>
<br>

	<form method=POST action="$script">
	<input type=hidden name=mode value="login_view">
	<input type=hidden name=name value=$in{'name'}>
	<input type=hidden name=pass value=$in{'pass'}>
	<input type=hidden name=town_no value=$in{'town_no'}>
	<input type=submit value="戻る">
	</form></div>

	</body></html>
EOM
exit;
}

#######食堂
sub syokudou {
#食堂フラグが0ならばメニューを更新、フラグを1にする
open(IN,"$maintown_logfile") || &error("Open Error : $maintown_logfile");
	$maintown_para = <IN>;
			&main_town_sprit($maintown_para);
close(IN);
		if($mt_syokudouflag == 0){
	&lock;
			$mt_syokudouflag = 1;
			&main_town_temp;
			open(OUT,">$maintown_logfile") || &error("Write Error : $maintown_logfile");
			print OUT $mt_temp;
			close(OUT);	
#商品データログを開く
						open(OL,"./dat_dir/syouhin.dat") || &error("Open Error : ./dat_dir/syouhin.dat");
						$top_koumoku = <OL>;
#商品をランダムに並び替えてログを更新
	@new_syouhin_hairetu = ();
	srand ($$ | time);

	while (<OL>){
			my $r = rand @new_syouhin_hairetu+1;
			push (@new_syouhin_hairetu,$new_syouhin_hairetu[$r]);
			$new_syouhin_hairetu[$r] = $_;
	}
	close(OL);
	$i=0;
	foreach (@new_syouhin_hairetu){
		&syouhin_sprit($_);
		if ($syo_syubetu ne "食"){next;}
		$syo_zaiko = int($syo_zaiko/$zaiko_tyousetuti);
		if($syo_zaiko <= 0) {$syo_zaiko = 1;}
		&syouhin_temp;
		push (@new_syouhin_hairetu2,$syo_temp);
		$i ++;
		if ($i >= $syokudou_sinakazu){last;}
	}
	open(OLOUT,">$syokudou_logfile") || &error("$syokudou_logfileに書き込みが出来ません");
	print OLOUT @new_syouhin_hairetu2;
	close(OLOUT);
	&unlock;
		}		#if（日付が変わっていたら）の閉じ
		
	open(SP,"$syokudou_logfile") || &error("Open Error : $syokudou_logfile");
	@syokudou_hairetu = <SP>;
	close(SP);
	&header(syokudou_style);
	print <<"EOM";
	<table width="100%" border="0" cellspacing="0" cellpadding="10"><tr><td width="554" >
	<form method="POST" action="$script" NAME="foMes5">		<!--ver.1.2-->
	<INPUT TYPE="hidden" NAME="TeMes5">		<!--ver.1.2-->
	<input type=hidden name=mode value="syokuzisuru">
	<input type=hidden name=name value="$in{'name'}">
	<input type=hidden name=pass value="$in{'pass'}">
	<input type=hidden name=k_id value="$in{'k_id'}">
	<input type=hidden name=town_no value=$in{'town_no'}>
	<table width="100%" border="0" cellspacing="0" cellpadding="6" align=center class=yosumi>
	<tr>
	<td colspan=11 bgcolor=#ffffff>セントラル食堂です。メニューは毎日変わります。一度食事をすると$syokuzi_kankaku分経たないと次の食事がとれません。また、$deleteUser日間食事しないと死んでしまいます（ユーザー削除されます）<br></td>
	<td colspan=3 bgcolor=#333333 align=center><img src="$img_dir/syokudou_tytle.gif"></td>
	</tr>
	<tr><td colspan=14><font color=#336699>凡例：（ル）ルックスup値、（体）体力up値、（健）健康up値、（ス）スピードup値、（パ）パワーup値、（腕）腕力up値、（脚）脚力up値、（L）LOVEup値、（面）面白さup値、（H）エッチup値</font></td></tr>
		<tr bgcolor=#ffff66><td align=center nowrap>メニュー</td><td>ル</td><td>体</td><td>健</td><td>ス</td><td>パ</td><td>腕</td><td>脚</td><td>L</td><td>面</td><td>Ｈ</td><td align=center>カロリー</td><td align=center>値段</td><td align=center>残り</td></tr>
EOM
	$i =1;
	foreach (@syokudou_hairetu) {
			if ($i % 10 ==0){print <<"EOM";
		<tr bgcolor=#ffff66><td align=center nowrap>メニュー</td><td>ル</td><td>体</td><td>健</td><td>ス</td><td>パ</td><td>腕</td><td>脚</td><td>L</td><td>面</td><td>Ｈ</td><td align=center>カロリー</td><td align=center>値段</td><td align=center>残り</td></tr>
EOM
			}
			&syouhin_sprit($_);
			$syo_nedan *= 3;
			if($syo_zaiko <= 0){
					$kounyuubotan ="";
					$syo_zaiko = "売り切れ";
			}else{
					$kounyuubotan ="<input type=radio value=\"$syo_hinmoku\" name=\"syo_hinmoku\">";
			}
		print <<"EOM";
		<tr><td nowrap>$kounyuubotan $syo_hinmoku</td><td>$syo_looks</td><td>$syo_tairyoku</td><td>$syo_kenkou</td><td>$syo_speed</td><td>$syo_power</td><td>$syo_wanryoku</td><td>$syo_kyakuryoku</td><td>$syo_love</td><td>$syo_unique</td><td>$syo_etti</td><td>$syo_cal kcal</td><td align=right nowrap>$syo_nedan円</td><td align=right>$syo_zaiko</td></tr>
EOM
	$i ++;
	}
	print <<"EOM";
	<tr><td colspan=14><div align=center><input type=submit value=" O K "></div></td>
	</table></form></td><td valign=top>
EOM
	&loged_gamen;
	print "</td></tr></table>";
	&hooter("login_view","戻る");
	exit;
}

####食事処理
sub syokuzisuru {		#ver.1.3
	if($in{'syo_hinmoku'} eq ""){&error("食事が選ばれていません");}		#ver.1.40
	open(SP,"./dat_dir/syouhin.dat") || &error("Open Error : ./dat_dir/syouhin.dat");
	$top_koumoku = <SP>;
	@syokuzi_hairetu = <SP>;
	close(SP);
	foreach $syokuzi_hyouzi (@syokuzi_hairetu) {
			&syouhin_sprit($syokuzi_hyouzi);
			if($in{'syo_hinmoku'} eq "$syo_hinmoku"){
				$now_time = time;
				if($now_time < $last_syokuzi + ($syokuzi_kankaku*60)){&error("まだ食事できません。");}
				if($money < $syo_nedan*3){&error("お金が足りません。");}
				
				$looks += $syo_looks;
				$tairyoku += $syo_tairyoku;
				$kenkou += $syo_kenkou;
				$speed += $syo_speed;
				$power += $syo_power;
				$wanryoku += $syo_wanryoku;
				$kyakuryoku += $syo_kyakuryoku;
				$love += $syo_love;		#ver.1.2
				$unique += $syo_unique;		#ver.1.2
				$etti += $syo_etti;
				$taijuu += $syo_cal / 1000;
				$last_syokuzi = $now_time;
				$money -= ($syo_nedan*3);
				last;
			}
	}


#ログ更新
			&temp_routin;
			&log_kousin($my_log_file,$k_temp);
			
#食堂の残り数を引く
	open(SYO,"$syokudou_logfile") || &error("Open Error : $syokudou_logfile");
		@syoku_zan = <SYO>;
	close(SYO);
	@new_syoku_zan=();
	foreach (@syoku_zan){
		&syouhin_sprit($_);
		if($in{'syo_hinmoku'} eq "$syo_hinmoku"){
			$syo_zaiko = $syo_zaiko-1 ;
		}
		&syouhin_temp;
		push (@new_syoku_zan,$syo_temp);
	}
			
	&lock;	
	open(OLOUT,">$syokudou_logfile") || &error("$syokudou_logfileに書き込みが出来ません");
	print OLOUT @new_syoku_zan;
	close(OLOUT);
	&unlock;
	
			&message("$in{'syo_hinmoku'}を食べました。","login_view");
}

#######デパート
sub depart_gamen {
#デパートフラグが0ならばメニューを更新、フラグを1にする
open(IN,"$maintown_logfile") || &error("Open Error : $maintown_logfile");
	$maintown_para = <IN>;
			&main_town_sprit($maintown_para);
close(IN);
		if($mt_departflag == 0){
				&lock;
						$mt_departflag = 1;
						&main_town_temp;
			open(OUT,">$maintown_logfile") || &error("Write Error : $maintown_logfile");
			print OUT $mt_temp;
			close(OUT);	
			#商品データログを開く
									open(OL,"./dat_dir/syouhin.dat") || &error("Open Error : ./dat_dir/syouhin.dat");
									$top_koumoku = <OL>;
			#商品をランダムに並び替えてログを更新
				@new_syouhin_hairetu = ();
				srand ($$ | time);
			
				while (<OL>){
						my $r = rand @new_syouhin_hairetu+1;
						push (@new_syouhin_hairetu,$new_syouhin_hairetu[$r]);
						$new_syouhin_hairetu[$r] = $_;
				}
				close(OL);
				$i=0;
				foreach (@new_syouhin_hairetu){
					&syouhin_sprit($_);
					if ($syo_syubetu eq "食"){next;}
					$syo_zaiko = int($syo_zaiko/$zaiko_tyousetuti);
					if($syo_zaiko <= 0) {$syo_zaiko = 1;}
					&syouhin_temp;
					push (@new_syouhin_hairetu2,$syo_temp);
					$i ++;
					if ($i >= $depart_sinakazu){last;}
				}
#種別でソート
				foreach (@new_syouhin_hairetu2){
						$data=$_;
						$key=(split(/<>/,$data))[0];
						push @alldata,$data;
						push @keys,$key;
				}
				sub by_syu_keys{$keys[$a] cmp $keys[$b];}
				@alldata=@alldata[ sort by_syu_keys 0..$#alldata]; 
				
				open(OLOUT,">$depart_logfile") || &error("$depart_logfileに書き込みが出来ません");
				print OLOUT @alldata;
				close(OLOUT);
		&unlock;
	}		#if（日付が変わっていたら）の閉じ
		
	open(SP,"$depart_logfile") || &error("Open Error : $depart_logfile");
	@syokudou_hairetu = <SP>;
	close(SP);
	&header(syokudou_style);
	print <<"EOM";
	<form method="POST" action="$script">
	<input type=hidden name=mode value="buy_syouhin">
	<input type=hidden name=name value="$in{'name'}">
	<input type=hidden name=pass value="$in{'pass'}">
	<input type=hidden name=k_id value="$in{'k_id'}">
	<input type=hidden name=town_no value=$in{'town_no'}>
	<table width="100%" border="0" cellspacing="0" cellpadding="10" align=center class=yosumi>
	<tr>
	<td bgcolor=#ffffff>デパートです。品揃えは毎日変わります。種類は豊富ですが値段は高めです。また一度に持てる所有物の限度は$syoyuu_gendosuu品目です。<div class="honbun2">●$nameさんの所持金：$money円</div></td>
	<td  bgcolor=#333333 align=center><img src="$img_dir/depart_tytle.gif"></td>
	</tr></table><br>
	<table width="100%" border="0" cellspacing="1" cellpadding="5" align=center class=yosumi>
	<tr><td colspan=26><font color=#336699>凡例：(国)＝国語up値、(数)＝数学up値、(理)＝理科up値、(社)＝社会up値、(英)＝英語up値、(音)＝音楽up値、(美)＝美術up値、（ル）=ルックスup値、（体）=体力up値、（健）=健康up値、（ス）=スピードup値、（パ）=パワーup値、（腕）=腕力up値、（脚）=脚力up値、（L）=LOVEup値、（面）=面白さup値、（H）=エッチup値<br></font>
	<font color=#ff6600>※ギフトは贈り物専用の商品です。自分で使用することはできません。</font></td></tr>
EOM

	foreach (@syokudou_hairetu) {
			&syouhin_sprit($_);
			$syo_nedan *= 3;
			if($syo_zaiko <= 0){
					$kounyuubotan ="";
					$syo_zaiko = "売り切れ";
			}else{
					$kounyuubotan ="<input type=radio value=\"$syo_hinmoku,&,$syo_taikyuu,&,$syo_nedan\" name=\"syo_hinmoku\">";
			}
			if($syo_cal > 0){$calory_hyouzi = "$syo_cal kcal";}else{$calory_hyouzi = "ー";}
			if ($maeno_syo_syubetu ne "$syo_syubetu"){
				print <<"EOM";
		<tr bgcolor=#ff9933><td align=center nowrap>商品</td><td>国</td><td>数</td><td>理</td><td>社</td><td>英</td><td>音</td><td>美</td><td>ル</td><td>体</td><td>健</td><td>ス</td><td>パ</td><td>腕</td><td>脚</td><td>L</td><td>面</td><td>Ｈ</td><td align=center nowrap>カロリー</td><td align=center nowrap>耐久</td><td align=center>使用<br>間隔</td><td align=center>身体<br>消費</td><td align=center>頭脳<br>消費</td><td align=center>価格</td><td align=center nowrap>　備　考　</td><td align=center nowrap>在庫</td></tr>
				<tr bgcolor=#ffff66><td colspan=26>▼$syo_syubetu</td></tr>
EOM
			}
			$taikyuu_hyouzi_seikei = "$syo_taikyuu"."$syo_taikyuu_tani";
#ver.1.3ここから
if ($syo_nedan =~ /^[-+]?\d\d\d\d+/g) {
  for ($i = pos($syo_nedan) - 3, $j = $syo_nedan =~ /^[-+]/; $i > $j; $i -= 3) {
    substr($syo_nedan, $i, 0) = ',';
  }
}
#ver.1.3ここまで
		print <<"EOM";
		<tr bgcolor=#ffcc66 align=center><td width=150 align=left>$kounyuubotan $syo_hinmoku</td><td>$syo_kokugo</td><td>$syo_suugaku</td><td>$syo_rika</td><td>$syo_syakai</td><td>$syo_eigo</td><td>$syo_ongaku</td><td>$syo_bijutu</td><td>$syo_looks</td><td>$syo_tairyoku</td><td>$syo_kenkou</td><td>$syo_speed</td><td>$syo_power</td><td>$syo_wanryoku</td><td>$syo_kyakuryoku</td><td>$syo_love</td><td>$syo_unique</td><td>$syo_etti</td><td align=right>$calory_hyouzi</td><td nowrap>$taikyuu_hyouzi_seikei</td><td nowrap>$syo_kankaku分</td><td>$syo_sintai_syouhi</td><td>$syo_zunou_syouhi</td><td align=right nowrap>$syo_nedan円</td><td align=left>$syo_comment</td><td align=right>$syo_zaiko</td></tr>
EOM
		$maeno_syo_syubetu = "$syo_syubetu";
	}		#foreach閉じ
#ver.1.30ここから
#所有物チェック
	$monokiroku_file="./member/$k_id/mono.cgi";
	open(MK,"$monokiroku_file") || &error("自分の購入物ファイルが開けません");
	@my_kounyuu_list =<MK>;
	close(MK);
	foreach (@my_kounyuu_list){
		&syouhin_sprit ($_);
		if ($syo_kouka eq "クレジット"){
			if ($syo_taikyuu - (int ((time - $syo_kounyuubi) / (60*60*24)))){
				$siharai_houhou .= "<option value=\"$syo_hinmoku\">$syo_hinmoku</option>";
			}
		}
	}
	print <<"EOM";
	<tr><td colspan=26><div align=center>
	支払い方法 <select name="siharaihouhou"><option value="現金">現金</option>$siharai_houhou</select>
	　<input type=submit value=" O K "></div></td></tr>
	</table></form>
EOM
#ver1.30ここまで
	&hooter("login_view","戻る");
	exit;
}

####購入処理
sub buy_syouhin {
#ver.1.30ここから
	if ($kaenai_seigen == 1){		#ver.1.40
		if ($k_id eq "$in{'ori_ie_id'}" || $house_type eq "$in{'ori_ie_id'}" && $in{'ori_ie_id'} ne ""){&error("自分や配偶者のお店では商品を買うことができません。");}
	}
	($katta_syouhin,$katta_taikyuu,$katta_nedan) = split(/,&,/,$in{'syo_hinmoku'});
			if ($in{'siharaihouhou'} eq "現金"){
					if ($katta_nedan > $money){&error("お金が足りません");}
			}

#自分の購入物ファイルにその商品があるかチェック
	$monokiroku_file="./member/$k_id/mono.cgi";
	open(MKF,"$monokiroku_file") || &error("自分の購入物ファイルが開けません");
	@my_item_list = <MKF>;
	close(MKF);
	foreach (@my_item_list){
		&syouhin_sprit($_);
		if ($syo_taikyuu <= 0){next;}
		if ($syo_syubetu eq "ギフト"){$gift_item_suu ++ ;next;}
		if ($syo_syubetu eq "ギフト商品"){next;}
		$my_item_suu ++ ;
	}
#自分の住んでいる街かチェック
		&my_town_check($name);
		if ($return_my_town eq "$in{'town_no'}" && $k_id ne "$in{'ori_ie_id'}"){
			$cashback_flag = "on";
			$cashback_kingaku = int ($katta_nedan/10);
		}else{$cashback_flag = "off";}
		
	$motteru_flag =0;
	foreach (@my_item_list){
		&syouhin_sprit($_);
#持っていた場合
		if ($katta_syouhin eq "$syo_hinmoku" && $syo_syubetu ne "ギフト商品" && $syo_syubetu ne "ギフト"){
			if ($my_item_suu >= $syoyuu_gendosuu){&error("これ以上所有できません。持ち物の所有限度数は$syoyuu_gendosuuです。");}

				if ($syo_taikyuu_tani eq "回" || $syo_taikyuu_tani eq "日"){
						$nokotteru_taikyuu = $syo_taikyuu;
						$syo_taikyuu += $katta_taikyuu;
						if ($syo_taikyuu > $katta_taikyuu*$item_kosuuseigen){&error("これ以上このアイテムを増やすことはできません。");}		#ver.1.2
						if ($cashback_flag eq "on"){
							$tanka = int (($tanka*$nokotteru_taikyuu + $katta_nedan - $cashback_kingaku) / $syo_taikyuu);
						}else{
							$tanka = int (($tanka*$nokotteru_taikyuu + $katta_nedan) / $syo_taikyuu);
						}
						$motteru_flag =1;
				}
					if ($in{'siharaihouhou'} ne "現金"){
						$bank -= $katta_nedan;
						&kityou_syori("クレジット支払い（$katta_syouhin）","$katta_nedan","",$bank,"普");
					}else{
						$money -= $katta_nedan;
					}
#ver.1.30ここまで
		}
		&syouhin_temp;
		push (@new_myitem_list,$syo_temp);
	}		#foreachの閉じ
	
	
#持っていなかった場合
	if ($motteru_flag ==0){
		if ($my_item_suu >= $syoyuu_gendosuu){&error("これ以上所有できません。持ち物の所有限度数は$syoyuu_gendosuuです。");}
		if ($gift_item_suu >= $kounyu_gift_gendo){&error("これ以上所有できません。ギフトの購入限度数$kounyu_gift_gendoに達しています。");}
#個人の店なら個人の店ログから商品パラメータをコピー
		if ($in{'ori_ie_id'}){
			$omise_log_file="./member/$in{'ori_ie_id'}/omise_log.cgi";
			open(KOM,"$omise_log_file") || &error("Open Error : $omise_log_file");
				@kounyuu_hairetu = <KOM>;
			close(KOM);
#デパートならデパートログより商品パラメータをコピー
		}else{
			open(KOM,"$depart_logfile") || &error("Open Error : $depart_logfile");
				@kounyuu_hairetu = <KOM>;
			close(KOM);
		}

		$kounyuu_ok = 0;
		foreach (@kounyuu_hairetu){
			&syouhin_sprit($_);
			if ($katta_syouhin eq "$syo_hinmoku"){		#ver.1.3
#購入日を記録
					$syo_kounyuubi = time;
#ver.1.30ここから
					if ($cashback_flag eq "on"){
						$tanka = int (($katta_nedan - $cashback_kingaku) / $syo_taikyuu);
					}else{
						$tanka = int ($katta_nedan / $syo_taikyuu);
					}
					&syouhin_temp;
					push (@new_myitem_list,$syo_temp);
					if ($in{'siharaihouhou'} ne "現金"){
						$bank -= $katta_nedan;
						&kityou_syori("クレジット支払い（$katta_syouhin）","$katta_nedan","",$bank,"普");
					}else{
						$money -= $katta_nedan;
					}
#ver.1.30ここまで
					$kounyuu_ok = 1;
					last;
			}
		}
		if ($kounyuu_ok == 0){&error("$katta_syouhin購入できませんでした。");}
	}		#持っていなかった場合の閉じ
	&lock;
	
#個人のお店なら在庫を引いてお金を入金＆記帳
		if ($in{'ori_ie_id'}){
	$omise_log_file="./member/$in{'ori_ie_id'}/omise_log.cgi";
	open(SYO,"$omise_log_file") || &error("Open Error : $omise_log_file");
		@omise_zan = <SYO>;
	close(SYO);
	@new_omise_zan=();
	$syo_atta_fg=0;		#ver.1.22
	foreach (@omise_zan){
		&syouhin_sprit($_);
		if($katta_syouhin eq "$syo_hinmoku"){
			if ($syo_zaiko <= 0){&error("在庫切れです");}
			$syo_zaiko = $syo_zaiko-1 ;
			$syo_atta_fg=1;		#ver.1.22
		}
		if ($syo_zaiko <= 0){next;}
		&syouhin_temp;
		push (@new_omise_zan,$syo_temp);
	}
	if($syo_atta_fg==0){&error("在庫がありません。");};		#ver.1.22

	open(OLOUT,">$omise_log_file") || &error("$omise_log_fileに書き込みが出来ません");
	print OLOUT @new_omise_zan;
	close(OLOUT);
#相手の銀行に振り込み＆記帳処理
	if ($k_id ne "$in{'ori_ie_id'}"){		#自分の店なら売上金は入らない
		&openAitelog ($in{'ori_ie_id'});
		$aite_bank += $katta_nedan;
		&aite_kityou_syori("販売（$katta_syouhin）","",$katta_nedan,$aite_bank,"普",$in{'ori_ie_id'},"lock_off");
	
				&aite_temp_routin;
				open(OUT,">$aite_log_file") || &error("$aite_log_fileが開けません");
				print OUT $aite_k_temp;
				close(OUT);
	}
#ver.1.30ここから
#自分の住んでいる街のお店ならキャッシュバック
		if ($cashback_flag eq "on"){
				$money += $cashback_kingaku;
				$cashback_message = "<br>★ご近所店特典として、$cashback_kingaku円がキャッシュバックされました。";
		}
#ver.1.30ここまで
#街の経済力アップ
	&town_keizaiup($katta_nedan,$in{'town_no'});
		}else{		#個人のお店の場合の閉じ
#デパートなら在庫を引く
	open(SYO,"$depart_logfile") || &error("Open Error : $depart_logfile");
		@depa_zan = <SYO>;
	close(SYO);
	@new_depa_zan=();
	$syo_atta_fg=0;		#ver.1.22
	foreach (@depa_zan){
		&syouhin_sprit($_);
		if($katta_syouhin eq "$syo_hinmoku"){
			if ($syo_zaiko <= 0){&error("在庫切れです");}	#ver1.2
			$syo_zaiko = $syo_zaiko-1 ;
			$syo_atta_fg=1;		#ver.1.22
		}
		if ($syo_zaiko <= 0){next;}
		&syouhin_temp;
		push (@new_depa_zan,$syo_temp);
	}
	if($syo_atta_fg==0){&error("在庫がありません。");};		#ver.1.22

	open(OLOUT,">$depart_logfile") || &error("$depart_logfileに書き込みが出来ません");
	print OLOUT @new_depa_zan;
	close(OLOUT);
	}	#デパート購入の場合の閉じ
#ver1.22
#自分の購入物ファイルのログ更新
	$monokiroku_file="./member/$k_id/mono.cgi";
		open(MK,">$monokiroku_file") || &error("自分の購入物ファイルが開けません");
		print MK @new_myitem_list;
		close(MK);
	&unlock;
	
#ログ更新
			&temp_routin;
			&log_kousin($my_log_file,$k_temp);
			
	&header("","sonomati");
	print <<"EOM";
	<div align=center><br><table  border=0  cellspacing="5" cellpadding="0" width=300 style="$message_win"><tr><td>
<span class="job_messe">
●$katta_syouhinを購入しました。$cashback_message
</span>
</td></tr></table>
<br>
	<a href=\"javascript:history.back()\"> [前の画面に戻る] </a>
	<form method=POST action="$script">
	<input type=hidden name=mode value="login_view">
	<input type=hidden name=name value=$in{'name'}>
	<input type=hidden name=pass value=$in{'pass'}>
	<input type=hidden name=town_no value=$in{'town_no'}>
	<input type=submit value="戻る">
	</form>
	</div>

	</body></html>
EOM
exit;

}

#メッセージ送信
sub mail_sousin {		#ver.1.3 mail_sousinサブルーチン全て
#ver.1.30ここから
	$genzai_zikoku = time;
	open(GUEST,"$guestfile");
	@all_guest=<GUEST>;
	close(GUEST);
	@new_all_guest = ();
	foreach (@all_guest) {
		($sanka_timer,$sanka_name,$hyouzi_check) = split(/<>/);
		if ($name eq "$sanka_name"){
			$sanka_timer = $genzai_zikoku;
		}
		$sanka_tmp = "$sanka_timer<>$sanka_name<>$hyouzi_check<>\n";
		push (@new_all_guest,$sanka_tmp);
	}
#ver.1.40ここから
	if ($mem_lock_num == 0){
		$err = data_save($guestfile, @new_all_guest);
		if ($err) {&error("$err");}
	}else{
		&lock;	
		open(GUEST,">$guestfile");
		print GUEST @new_all_guest;
		close(GUEST);
		&unlock;
	}
#ver.1.40ここまで
#ver.1.30ここまで
#自分のメールログを開いてアクセス時間を書き込み＆ログを読み込み
		$message_file="./member/$k_id/mail.cgi";
		open(TIMEIN,"$message_file") || &error("Open Error : $message_file");
		$now_time= time;
		$last_m_check = <TIMEIN>;
#表示用の配列
		@my_mail_data = <TIMEIN>;
		$soumailkensuu = @my_mail_data;
		$last_m_check = "$now_time\n";
		close(TIMEIN);
#持ち物リストからギフト配列作成
	$monokiroku_file="./member/$k_id/mono.cgi";
	open(SP,"$monokiroku_file") || &error("Open Error : $monokiroku_file");
	@myitem_hairetu = <SP>;
	close(SP);
	foreach (@myitem_hairetu){
		&syouhin_sprit($_);
		if ($syo_syubetu eq "ギフト"){
			$gift_select .= "<option value=\"$syo_hinmoku\">$syo_hinmoku</option>\n";
		}
	}
		
# 最終アクセス時間を更新
	&lock;
#書き込み用の配列を初期化
		@my_kakikomi_mail_data = ();
		push (@my_kakikomi_mail_data,@my_mail_data);
		unshift (@my_kakikomi_mail_data,$last_m_check);
		if ($soumailkensuu > $mail_hozon_gandosuu){pop @my_kakikomi_mail_data;}		#ver.1.3
		open(TIMEOUT,">$message_file") || &error("Write Error : $message_file");
		print TIMEOUT @my_kakikomi_mail_data;
		close(TIMEOUT);
	&unlock;
	&header(item_style);
	print <<"EOM";
	<table width="95%" border="0" cellspacing="0" cellpadding="10" align=center class=yosumi>
	<tr>
	<!--ver.1.3-->
	<td bgcolor=#ffffff>相手の方の名前を入力してメッセージを送信することができます。受信箱と送信箱にメッセージが残っている相手はアドレス帳に追加されます。このアドレス帳から名前を選べば名前欄の入力は必要ありません。<br>
	※保存しておけるメッセージは「受信箱」「送信箱」合わせて$mail_hozon_gandosuu件で、これを超えると古いメッセージから削除されます。<br>
	※「ギフト」カテゴリーの商品を持っていれば、プレゼント送付でその商品を選び、メールと同時に送付することができます。</td>
	<td  bgcolor=#ffcc00 align=center><img src="$img_dir/mail_tytle.gif"></td>
	</tr></table><br>
EOM
	@address_match = ();
	LOOP : foreach $mail_data_add (@my_mail_data){
		&mail_sprit($mail_data_add);
						foreach $maenideta_ad (@address_match){
							if ($maenideta_ad eq "$m_name" ) {next LOOP;}
						}
						
		$addresstyou .= "<option value=\"$m_name\">$m_name</option>\n";
		push (@address_match ,$m_name);
	}
	
	&hooter("login_view","戻る");
						print <<"EOM";
	<table width="100%" border="0" cellspacing="10" cellpadding="0" align=center>
	<tr><td width=50% valign=top>
	<table border="0" cellspacing="0" cellpadding="10" class=yosumi width=100%>
	<tr><td>
	<div class=tyuu>■メッセージ送信</div>
	<form method="POST" action="$script">
	<input type=hidden name=mode value="mail_do">
	<input type=hidden name=name value="$name">
	<input type=hidden name=pass value="$pass">
	<input type=hidden name=id value="$k_id">
	<input type=hidden name=town_no value=$in{'town_no'}>
	●送信先の名前<br>
	<input type=text size=58 name="sousinsaki_name" value="$in{'sousinsaki_name'}"><br>
	<select name="sousinsaki_name2">
	<option value="">アドレス帳</option>
	$addresstyou
	</select><br>
	●メッセージ<br>
	<textarea cols=58 rows=8 name=m_com wrap="soft"></textarea><br>
	●プレゼント送付<br>
	<select name=gift_souhu>
	<option value="">無し</option>
	$gift_select
	</select><br><br>
	<div align=center><input type="submit" value=" O K "></div>
	</form></td></tr></table>
	<br>
	<table border="0" cellspacing="0" cellpadding="10" class=yosumi width=100%>
	<tr><td>
	<div class=tyuu>■送信箱</div>
EOM
	$i=0;
	foreach (@my_mail_data){
		&mail_sprit ($_);
		if ($m_syubetu eq "送信"){
			print "<hr size=1>";
			print "<div class=mainasu>○$m_nameさんへ送ったメッセージ</div><br>";
			print "$m_com<div class=small>（$m_date）</div>";
			$i ++;
		}elsif($m_syubetu eq "告白送信"){
			print "<hr size=1>";
			print "<div style=\"color:#ff3366\">○$m_nameさんへ送った交際申\し込みメッセージ</div><br>";
			print "$m_com<div class=small>（$m_date）</div>";
			$i ++;
		}elsif($m_syubetu eq "プロポ送信"){
			print "<hr size=1>";
			print "<div style=\"color:#ff3366\">○$m_nameさんへ送ったプロポーズメッセージ</div><br>";
			print "$m_com<div class=small>（$m_date）</div>";
			$i ++;
		}elsif($m_syubetu eq "プロポ承諾送信"){
			print "<hr size=1>";
			print "<div style=\"color:#ff3366\">○$m_nameさんへ送った結婚承諾メッセージ</div><br>";
			print "$m_com<div class=small>（$m_date）</div>";
			$i ++;
		}elsif($m_syubetu eq "交際承諾送信"){
			print "<hr size=1>";
			print "<div style=\"color:#ff3366\">○$m_nameさんへ送った交際承諾メッセージ</div><br>";
			print "$m_com<div class=small>（$m_date）</div>";
			$i ++;
		}
	}
	if ($i == 0){print "<br><br>まだ送信したメッセージはありません。";}
	print <<"EOM";
	</td></tr></table>
	</td><td width=50% valign=top>
	<table border="0" cellspacing="0" cellpadding="10" class=yosumi width=100%>
	<tr><td>
	<div class=tyuu>■受信箱</div>
EOM
	$i=0;
	foreach (@my_mail_data){
		&mail_sprit ($_);
		if ($m_syubetu eq "受信"){
			print <<"EOM";
			<hr size=1>
			<div class=purasu>○$m_nameさんからのメッセージ</div><br>
			$m_com<div class=small>（$m_date）</div>
EOM
			$i ++;
		}elsif ($m_syubetu eq "告白受信"){
			print <<"EOM";
			<hr size=1>
			<div style="color:#ff3366">○$m_nameさんから交際のお申\し込みがありました</div><br>
			$m_com<div class=small>（$m_date）<br>
			<a href=kekkon.cgi?mode=assenjo&command=easySerch&serch_name=$m_name&town_no=$in{'town_no'}&name=$name&pass=$pass>恋人斡旋所で$m_nameさんのプロフィールを見る</a><!--ver.1.40-->
			</div>
	 <form method="POST" action="kekkon.cgi"><!--ver.1.40-->
	<input type=hidden name=mode value="kokuhaku">
	<input type=hidden name=command value="kousai_ok">
	<input type=hidden name=name value="$name">
	<input type=hidden name=pass value="$pass">
	<input type=hidden name=id value="$k_id">
	<input type=hidden name=town_no value=$in{'town_no'}>
	<input type=hidden name="sousinsaki_name" value="$m_name">
	メッセージ <input type=text name=m_com size=30>
	<input type=submit value="交際をOKする"></form>
	<div class=small>※交際OKの場合、メッセージを入れて「交際をOKする」ボタンを押してください。断る場合、何もする必要はありません。</div>
EOM
			$i ++;
		}elsif ($m_syubetu eq "プロポ受信"){
			print <<"EOM";
			<hr size=1>
			<div style="color:#ff3366">○$m_nameさんからプロポーズされました。</div><br>
			$m_com<div class=small>（$m_date）
			</div>
	 <form method="POST" action="kekkon.cgi">
	<input type=hidden name=mode value="kokuhaku"><!--ver.1.40-->
	<input type=hidden name=command value="propose_ok">
	<input type=hidden name=name value="$name">
	<input type=hidden name=pass value="$pass">
	<input type=hidden name=id value="$k_id">
	<input type=hidden name=town_no value=$in{'town_no'}>
	<input type=hidden name="sousinsaki_name" value="$m_name">
	メッセージ <input type=text name=m_com size=30>
	<input type=submit value="結婚をOKする"></form>
	<div class=small>※結婚OKの場合、メッセージを入れて「結婚をOKする」ボタンを押してください。断る場合、何もする必要はありません。</div>
EOM
			$i ++;
		}elsif ($m_syubetu eq "プロポ承諾受信"){
			print <<"EOM";
			<hr size=1>
			<div style="color:#ff3366">○おめでとうございます。$m_nameさんから結婚OKのお返事が来ました。</div><br>
			$m_com<div class=small>（$m_date）</div>
EOM
			$i ++;
		}elsif ($m_syubetu eq "交際承諾受信"){
			print <<"EOM";
			<hr size=1>
			<div style="color:#ff3366">○おめでとうございます。$m_nameさんから交際OKのお返事が来ました。</div><br>
			$m_com<div class=small>（$m_date）</div>
EOM
			$i ++;
		}elsif ($m_syubetu eq "出産"){
			print <<"EOM";
			<hr size=1>
			<div style="color:#009900">○$m_nameさんとの間に子供ができました。<span class=small>（$m_date）</span></div><br>
	 <form method="POST" action="kekkon.cgi"><!--ver.1.40-->
	<input type=hidden name=mode value="kodomo_naming">
	<input type=hidden name="kod_num" value="$m_com">
	<input type=hidden name=name value="$name">
	<input type=hidden name=pass value="$pass">
	<input type=hidden name=id value="$k_id">
	<input type=hidden name=town_no value=$in{'town_no'}>
	<input type=hidden name="sousinsaki_name" value="$m_name">
	子供のお名前（全角10文字以内） <br>
	<input type=text name=kodomo_name size=20>
	<select name="umu_umanai">
		<option value="umu">この名前で出産する</option>
		<option value="umanai">産まない</option>
	</select>
	<input type=submit value=" O K "></form>
	<div class=small>※子供の名前を決めてOKボタンを押してください。あとで変更はできませんので、お相手の方とよくご相談してから決めてください。出産しない場合は、「産まない」を選んでOKボタンを押してください。また$kodomo_sibou_time日間のうちにこの作業をしないと出産できなくなります。</div>
EOM
			$i ++;
		}
	}
	if ($i == 0){print "<br><br>まだ受信したメッセージはありません。";}
	print "</td></tr></table></td></tr></table>";

		&hooter("login_view","戻る");
	exit;
}

#メール送信処理
sub mail_do {
		if ($in{'sousinsaki_name'} eq "" && $in{'sousinsaki_name2'} eq ""){&error("相手先のお名前の入力がありません");}
		if ($in{'m_com'} eq ""){&error("メッセージが入力されていません");}
		if ($in{'sousinsaki_name2'}){$aite_name = "$in{'sousinsaki_name2'}";}
		else{$aite_name = "$in{'sousinsaki_name'}";}
		&lock;
		&id_check ($aite_name);
			if ($in{'gift_souhu'}){
				if ($aite_name eq $name){&error("自分に贈ることはできません");}
				&gift_souhu_syori;
			}
			$message_file="./member/$return_id/mail.cgi";
			open(AIT,"$message_file") || &error("お相手の方のメール記録ファイル（$message_file）が開けません。");
			$last_mail_check_time = <AIT>;
			@mail_cont = <AIT>;
			close(AIT);
#<>禁止処理
		$in{'m_com'} =~ s/<>/&lt;&gt;/g;
# コメントの改行処理
		$in{'m_com'} =~ s/\r\n/<br>/g;
		$in{'m_com'} =~ s/\r/<br>/g;
		$in{'m_com'} =~ s/\n/<br>/g;
		$m_comment = $in{'m_com'};
		if ($in{'gift_souhu'}){
			$m_comment .= "<br><br><div class=honbun2>『$in{'gift_souhu'}』が贈られてきました。</div>";
		}
		&time_get;
		$new_mail = "受信<>$in{'name'}<>$m_comment<>$date2<>$date_sec<><><><><><>\n";
			unshift (@mail_cont,$new_mail);
			if (@mail_cont > $mail_hozon_gandosuu){pop @mail_cont;}		#ver.1.30
#最終メールチェック時間がなければ１を入れる
			if ($last_mail_check_time eq ""){$last_mail_check_time = "1\n";}
			unshift (@mail_cont,$last_mail_check_time);
			open(OUT,">$message_file") || &error("$message_fileに書き込めません");
			print OUT @mail_cont;
			close(OUT);
			
#自分のメールにも送信済みメッセージとして記録（管理者メールでなければ）
		if ($in{'command'} ne "from_system"){
			$my_sousin_file="./member/$k_id/mail.cgi";
			open(ZIB,"$my_sousin_file") || &error("$my_sousin_fileが開けません。");
			$my_last_mail_check_time = <ZIB>;
			@my_mail_cont = <ZIB>;
			close(ZIB);
		$my_m_comment = $in{'m_com'};
		if ($in{'gift_souhu'}){
			$my_m_comment .= "<br><br><div class=honbun2>『$in{'gift_souhu'}』を贈りました。</div>";
		}
		$sousin_mail = "送信<>$aite_name<>$my_m_comment<>$date2<>$date_sec<><><><><><>\n";
			unshift (@my_mail_cont,$sousin_mail);
			if (@my_mail_cont > $mail_hozon_gandosuu){pop @my_mail_cont;}		#ver.1.30
#最終メールチェック時間がなければ今の時間を入れる
			if ($my_last_mail_check_time eq ""){$my_last_mail_check_time = "$date_sec\n";}
			unshift (@my_mail_cont,$my_last_mail_check_time);
			open(ZIBO,">$my_sousin_file") || &error("$my_sousin_fileに書き込めません");
			print ZIBO @my_mail_cont;
			close(ZIBO);
		}
		&unlock;
		if ($in{'command'} ne "from_system"){
			&message_only("$aite_nameさんへメッセージを送信しました。");
			&hooter("mail_sousin","メール画面へ");
			&hooter("login_view","戻る");
		}else{
			&message("$aite_nameさんへメッセージを送信しました。","itiran","admin.cgi");		#ver.1.40
		}
	exit;
}

#ギフト送付処理
sub gift_souhu_syori {
#自分の持ち物リストから商品を消去
	$monokiroku_file="./member/$k_id/mono.cgi";
	open(SP,"$monokiroku_file") || &error("Open Error : $monokiroku_file");
	@myitem_hairetu = <SP>;
	close(SP);
	$monoatta_flag = 0;
	foreach (@myitem_hairetu){
		&syouhin_sprit($_);
		if ($syo_hinmoku eq "$in{'gift_souhu'}" && $monoatta_flag == 0 && $syo_syubetu ne "ギフト商品"){$ageru_gift_copy = "$_"; $monoatta_flag = 1;next;}
		&syouhin_temp;
		push (@new_myitem_hairetu,$syo_temp);
	}
	if ($monoatta_flag == 0){&error("既に商品はありません。");}

#購入日を記録、単価は0円、種別をギフト商品にする
					&syouhin_sprit($ageru_gift_copy);
					$syo_kounyuubi = time;
					$tanka = 0;
					$syo_syubetu = "ギフト商品";
					$syo_comment .= "$nameさんからの贈り物です。";
					&syouhin_temp;
					$okuraretamono = $syo_temp;
#相手の持ち物リストに商品を追加
	$aite_monokiroku_file="./member/$return_id/mono.cgi";
	open(ASP,"$aite_monokiroku_file") || &error("Open Error : $aite_monokiroku_file");
	@aite_item_hairetu = <ASP>;
	close(ASP);
	foreach (@aite_item_hairetu){
		&syouhin_sprit($_);
		if ($syo_syubetu eq "ギフト商品"){$gift_count ++;}
	}
	if ($gift_count >= $gift_gendo){&error("お相手の方のギフトが限度数の$gift_gendoを超えるため送付できません");}
	push (@aite_item_hairetu,$okuraretamono);
#相手の所有物ファイルを更新
			open(ASPO,">$aite_monokiroku_file") || &error("Write Error : $aite_monokiroku_file");
			print ASPO @aite_item_hairetu;
			close(ASPO);	
#自分の所有物ファイルを更新
			open(OUT,">$monokiroku_file") || &error("Write Error : $monokiroku_file");
			print OUT @new_myitem_hairetu;
			close(OUT);	
}

1;
