#!/usr/bin/perl

## 階層
$STEP = '../';

## モジュール読込
use utf8;
use CGI;
use Net::SMTP;
use File::Copy;
use File::Basename;
use Encode;

## インスタンスの作成
$q = new CGI;
$TimePiece = localtime();

## センドメールパス
$sendmail = '/usr/sbin/sendmail';

## スクリプト名
$script = 'mailform.cgi';

## 表示用変数に格納
foreach($q->param){
	$FORM{$_} = $q->param($_);
	$FORM{$_} = decode('utf-8',$FORM{$_});
}

#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
## 受信メールアドレス
$InfoMail = 'info@fbm35.com';
$MailHost = 'smtp.fbm35.com';
$MailPort = '587';
$MailUser = 'webmaster@fbm35.com';
$MailPass = 'K8Lf&gl4';

## ご希望時間帯
@Times = ('','いつでも可','9:00～12:00','13:00～15:00','15:00～17:00','17:00～19:00');
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
## メインプロセス
if($q->param('ac') eq 'prev'){&prev;}
elsif($q->param('ac') eq 'send'){&send;}
elsif($q->param('ac') eq 'error'){&error;}
else{&index;}
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
sub index{

## ご希望時間帯セレクター作成
$SelTimes .= "<select name=\"times\" id=\"times\">\n";
$SelTimes .= "<option value=\"\"></option>\n";
for($t=1;$t<=$#Times;$t++){
	if($FORM{'times'} == $t){$selected{$Times[$t]} = ' selected';}
	$SelTimes .= "<option value=\"$t\"$selected{$Times[$t]}>$Times[$t]</option>\n";
}
$SelTimes .= "</select>\n";

## ヘッダー表示
&header;

## HTML表示
print <<"HTML";
			<div class="telBox">
				<div class="inner02">
					<div>
						<a href="tel:048-658-3535">
							<p>【フラット35】や住宅ローンに関するお問い合わせは<br>こちらまでお気軽にお電話ください。</p>
							<p class="num"><span class="poppins">048-658-3535</span>受付時間 9:00~18:00（水・日除く）</p>
						</a>
					</div>
				</div>
			</div>
			<div class="inner02 formBox">
				<p>メールでのお問い合わせは、下記のメールフォームをご利用ください。<br>ご来店によるご相談の予約も承っております。</p>
				<p class="step"><img src="../img/common/step01.svg" alt=""></p>
				<form action="$script" method="POST" id="infomail">
				<input type="hidden" name="ac" value="prev">
					<dl>
						<dt><label for="name">お名前</label><span class="required">必須</span></dt>
						<dd>
							<input type="text" name="name" id="name" value="$FORM{'name'}" placeholder="（例）日本 太郎">
						</dd>
					</dl>
					<dl>
						<dt><label for="ruby">フリガナ</label><span class="required">必須</span></dt>
						<dd>
							<input type="text" name="ruby" id="ruby" value="$FORM{'ruby'}" placeholder="（例）ニホン タロウ">
						</dd>
					</dl>
					<dl>
						<dt><label for="tel">電話番号</label><span class="required">必須</span></dt>
						<dd>
							<input type="text" name="tel" id="tel" value="$FORM{'tel'}" placeholder="（例）09012345678">
							<span class="cauto">※ハイフンは必要ありません</span>
						</dd>
					</dl>
					<dl>
						<dt><label for="times">ご希望時間帯</label></dt>
						<dd>
							<div class="selectWrap half">
$SelTimes
							</div>
							<span class="cauto">※ お電話での返信を希望される場合のみお選びください。</span>
						</dd>
					</dl>
					<dl>
						<dt><label for="mail">メールアドレス</label><span class="required">必須</span></dt>
						<dd>
							<input type="email" name="mail" id="mail" value="$FORM{'mail'}" placeholder="（例）sample\@fbm35.com">
						</dd>
					</dl>
					<dl>
						<dt><label for="com">お問い合わせ内容	</label><span class="required">必須</span></dt>
						<dd>
							<textarea name="com" id="com" rows="5">$FORM{'com'}</textarea>
							<span class="cauto">※ご来店によるご相談の予約をご希望の場合は、ご希望日時をお知らえください。</span>
						</dd>
					</dl>
					<p class="btn01"><input type="submit" value="入力内容の確認"></p>
				</form>
			</div>
HTML

## フッター表示
&footer;

}
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
sub prev{

## エラー処理
if(!$FORM{'name'}){push @Error,'お名前';}
if(!$FORM{'ruby'}){push @Error,'フリガナ';}
if(!$FORM{'tel'}){push @Error,'電話番号';}
if(!$FORM{'mail'}){push @Error,'メールアドレス';}
if(!$FORM{'com'}){push @Error,'お問い合わせ内容';}
if(@Error){
	$Error = "<p style=\"font-weight:bold;\">・".join("</p><p style=\"font-weight:bold;\">・",@Error)."</p>";
	&error("index","下記の項目は必ずご入力ください。<br><br>$Error");
}

## 入力内容確認
if($FORM{'tel'} !~ /[0-9]/){&error("index","電話番号は半角数字のみで入力してください。<br>－ハイフンは必要ありません。");}
if($FORM{'mail'} !~ /^[^@]+@[^.]+\..+/){&error("index","メールアドレスの入力が正しくありません。<br>ご確認ください。");}

## 標準入力を隠し変数へ
foreach(keys %FORM){
	if($_ ne 'ac'){
		$hid .= "<input type=\"hidden\" name=\"$_\" value=\"$FORM{$_}\">";
	}
}

## 表示用に変換
$PREV{'times'} = $Times[$FORM{'times'}];
$PREV{'com'} = $FORM{'com'};
$PREV{'com'} =~ s/\n/<br>/g;

## ヘッダー表示
&header;

## HTML表示
print <<"HTML";
			<div class="inner02 formBox">
				<p>入力内容をご確認の上「上記の内容で送信」ボタンを押してください。</p>
				<p class="step"><img src="../img/common/step02.svg" alt=""></p>
				<form action="$script" method="POST" id="infomail">
				<input type="hidden" name="ac" value="send">
$hid
					<dl>
						<dt><label for="name">お名前</label><span class="required">必須</span></dt>
						<dd class="prev">$FORM{'name'}</dd>
					</dl>
					<dl>
						<dt><label for="ruby">フリガナ</label><span class="required">必須</span></dt>
						<dd class="prev">$FORM{'ruby'}</dd>
					</dl>
					<dl>
						<dt><label for="tel">電話番号</label><span class="required">必須</span></dt>
						<dd class="prev">$FORM{'tel'}</dd>
					</dl>
					<dl>
						<dt><label for="times">ご希望時間帯</label></dt>
						<dd class="prev">$PREV{'times'}</dd>
					</dl>
					<dl>
						<dt><label for="mail">メールアドレス</label><span class="required">必須</span></dt>
						<dd class="prev">$FORM{'mail'}</dd>
					</dl>
					<dl>
						<dt><label for="com">お問い合わせ内容	</label><span class="required">必須</span></dt>
						<dd class="prev">$PREV{'com'}</dd>
					</dl>
					<p class="btn01"><input type="submit" value="上記の内容で送信"></p>
				</form>
				<form action="mailform.cgi" method="POST">
				<input type="hidden" name="ac" value="index">
$hid
				<p class="btn01"><button type="submit" class="infoback">もどる</button></p>
				</form>
			</div>
HTML

## フッター表示
&footer;

}
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
sub send{

## 時間の取得
my ($sec,$min,$hour,$mday,$mon,$year) = localtime(time);
$year += 1900;
$mon += 1;
$Date = sprintf("%04d年%02d月%02d日 %02d:%02d:%02d",$year,$mon,$mday,$hour,$min,$sec);

## 表示用に変換
$PREV{'times'} = $Times[$FORM{'times'}];

## メール送信
$MAIL{'subject'} = 'ウェブサイトよりお問い合わせがございました。';
$MAIL{'body'} = <<"HTML";
$Date
ウェブサイトよりお問い合わせがございました。
お問い合わせ内容は下記のとおりです。

-----------------------------

【お名前】
$FORM{'name'}

【ふりがな】
$FORM{'ruby'}

【電話番号】
$FORM{'tel'}

【ご希望時間帯】
$PREV{'times'}

※ご希望時間帯の記載がある場合は、お客さまが電話での返信を求めているので、電話で対応してください。

【メールアドレス】
$FORM{'mail'}

【お問い合わせ内容】
$FORM{'com'}



HTML


## 引数 ("FROM","TO","BCC","SUBJECT","BODY","ローカル用ファイル名")
&sendmail($MailUser,$InfoMail,$MailUser,$MAIL{'subject'},$MAIL{'body'},"$InfoMail\.eml");

## ヘッダー表示
&header;

## HTML表示
print <<"HTML";
			<div class="inner02 formBox">
				<p>メールを送信しました</p>
				<p class="step"><img src="../img/common/step03.svg" alt=""></p>
					<div class="mailend">
お問い合わせありがとうございます。<br>
内容を確認後、数日以内に担当者よりお返事差し上げます。<br>
しばらくお待ち下さいませ。
					</div>
				<form action="mailform.cgi" method="POST">
				<input type="hidden" name="ac" value="index">
$hid
				<p class="btn01"><button type="submit" class="infoback">もどる</button></p>
				</form>
			</div>
HTML

## フッター表示
&footer;

}
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
sub header{

## ヘッダ
print $q->header(-charset => 'UTF-8', -expires => 'now');

## HTML表示
print <<"HTML";
<!DOCTYPE html>
<html lang="ja" prefix="og: http://ogp.me/ns#">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>お問い合わせ | FBモーゲージ株式会社 | 住宅ローン専門</title>
<meta charset="utf-8">
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="shortcut icon" href="favicon.ico">
<link rel="stylesheet" href="//cdn.jsdelivr.net/yakuhanjp/1.3.1/css/yakuhanjp.min.css">
<link rel="stylesheet" href="../css/style.css?date=20200904">
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="../js/common.js?date=20200903" type="text/javascript" charset="utf-8"></script>
<style>
span.error{
	display:block;
	padding-top:10px;
	color:#ff0000;
}
span.error::before{
	content:"（！）";
	margin-right:5px;
}
dd.prev{
	padding:10px;
	background:#ffffff;
	border:1px solid #cccccc;
	border-radius:5px;
}
button.infoback{
	display: block;
	width:100%;
	color: #ffffff;
	background-color: #666666;
	border-radius: 5px;
	padding: 16px 10px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-box-shadow: 0 2px 3px rgba(8,1,3,0.2);
	box-shadow: 0 2px 3px rgba(8,1,3,0.2);
	text-align: center;
	-webkit-transition: 0.3s all ease-out;
	transition: 0.3s all ease-out;
	font-size: 1rem;
}
div.mailend{
	margin:20px;
	line-height:1.7;
}
</style>

<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-M7PCRV6');</script>
<!-- End Google Tag Manager -->

</head>
<body class="contact">

<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M7PCRV6"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->

<div id="wrapper">
	<header>
		<div class="headerTop">
			<h1 class="logo"><a href="../"><img src="../img/common/logo01.svg" alt="FB mortgage"></a><span class="serif">住宅ローン専門</span></h1>
			<div class="spMenu"><span></span></div>
		</div>
		<span class="cnr"></span>
		<nav class="headerNav leftTop">
			<ul>
				<li><a href="../">ホーム<span>HOME</span></a></li>
				<li><a href="../company/">企業情報<span>COMPANY</span></a></li>
				<li><a href="../business/">事業内容<span>BUSINESS</span></a></li>
				<li><a href="../agents/">不動産業者の皆様<span>AGENTS</span></a></li>
				<li><a href="../download/">書類ダウンロード<span>DOWNLOAD</span></a></li>
				<li><a href="../news/">ニュース<span>NEWS</span></a></li>
				<li><a href="../recruit/">採用情報<span>RECRUIT</span></a></li>
				<li><a href="../contact/mailform.cgi">お問い合わせ</a></li>
			</ul>
		</nav>
	</header>
	<main class="cntWrap">
		<div class="titleBox">
			<h2><span class="serif">お問い合わせ</span><span class="crimson">CONTACT</span></h2>
			<ol><li><a href="../">TOP</a> /</li><li>お問い合わせ</li></ol>
		</div>
		<div class="point">
HTML

}
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
sub footer{

## HTML表示
print <<"HTML";
		</div>
	</main>
	<footer>
		<div class="inner01">
			<div class="flogoBox">
				<p>住宅ローン専門企業</p>
				<p class="flogo"><a href="../"><img src="../img/common/logo02.svg" alt="FB mortgage"></a><span>FBモーゲージ株式会社</span></p>
				<p class="address">
					<span>本社</span>
					〒330-0854<br>
					埼玉県さいたま市大宮区桜木町4丁目241番地2　<br class="spOnly">2F<br>
					Tel.048-658-3535 / Fax.048-658-3536
				</p>
				<p class="address">
					<span>東京支店</span>
					〒121-0813<br>
					東京都足立区竹の塚6-11-12　<br class="spOnly">八汐ビル1F<br>
					Tel.03-3850-1225 / Fax.03-3850-1226
				</p>
			</div>
			<nav>
				<ul>
					<li><a href="../company/">企業情報</a></li>
					<li><a href="../business/">事業内容</a></li>
					<li><a href="../recruit/">採用情報</a></li>
					<li><a href="../news/">ニュース</a></li>
				</ul>
				<ul>
					<li><a href="../agents/">不動産業者の皆様</a></li>
					<li><a href="../download/">書類ダウンロード</a></li>
					<li><a href="./$script">お問い合わせ</a></li>
					<li><a href="../privacy/">プライバシーポリシー</a></li>
				</ul>
			</nav>
		</div>
		<div class="cr"><small class="poppins">&copy; FB mortgage</small><div><a href="#wrapper" class="pageTop">TOP</a></div></div>
	</footer>
</div>
<script src="../js/jquery.validate.min.js" type="text/javascript" charset="utf-8"></script>
<script src="../js/jquery.validate.handler.js" type="text/javascript" charset="utf-8"></script>
</body>
</html>
HTML

}
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
sub error{

## 引数
my ($ac,$mes) = @_;

## 標準入力を隠し変数へ
foreach(keys %FORM){
	if($_ ne 'ac'){
		$hid .= "<input type=\"hidden\" name=\"$_\" value=\"$FORM{$_}\">";
	}
}

## ヘッダー表示
&header;

## HTML表示
print <<"HTML";
					<div class="eroBody">
						<div class="eroTit">エラー</div>
						<div class="eroMess">$mes</div>
						<form action="$script" method="POST">
						<input type="hidden" name="ac" value="$ac">
$hid
						<button type="submit">もどる</button>
						</form>
					</div>
HTML

## フッター表示
&footer;

## プログラムの終了
exit;

}
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
## SENDMAIL
# 引数 ("FROM","TO","BCC","SUBJECT","BODY","ローカル用ファイル名")
# BCCは<>区切り
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
sub sendmail{
	local ($from,$to,$bcc,$subject,$msg_body,$local_file) = @_;
	# JISコードへ変換
	$subject = encode('MIME-Header-ISO_2022_JP', $subject);
	$msg_body = encode('ISO-2022-JP', $msg_body);
	# メッセージ内の改行とタグを復元
	$msg_body =~ s/<br>/\n/ig;
	$msg_body =~ s/&lt;/</g;
	$msg_body =~ s/&gt;/>/g;
	# 送信実行
	open(MAIL,"| $sendmail -t") || &error("","\申\し訳ありませんが何らかの原因で処理できません");
#	open(MAIL,"> $local_file") || &error("","\申\し訳ありませんが何らかの原因で処理できません");
	print MAIL "Return-Path: $from\n";
	print MAIL "From: $from\n";
	print MAIL "Subject: $subject\n";
	print MAIL "To: $to\n";
	print MAIL "Bcc: $bcc\n";
	print MAIL "Content-Transfer-Encoding: 7bit\n";
	print MAIL "Content-type: text/plain; charset=ISO-2022-JP\n\n";
	print MAIL "$msg_body\n";
	close(MAIL);
	return "ture";
}
exit;
