#!/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 = ('','いつでも可','1ヶ月後','2〜3ヶ月後','それ以降');
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
## メインプロセス
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\" class=\"half\">\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";

## 生年月日
$SelBmon .= "<select name=\"bmon\" id=\"bmon\">\n";
$SelBmon .= "<option value=\"\"></option>\n";
for($m=1;$m<=12;$m++){
	if($FORM{'bmon'} == $m){$selected{'bmon'}{$m} = ' selected';}
	$SelBmon .= "<option value=\"$m\"$selected{'bmon'}{$m}>$m</option>\n";
}
$SelBmon .= "</select>\n";

$SelBday .= "<select name=\"bday\" id=\"bday\">\n";
$SelBday .= "<option value=\"\"></option>\n";
for($d=1;$d<=31;$d++){
	if($FORM{'bday'} == $d){$selected{'bday'}{$d} = ' selected';}
	$SelBday .= "<option value=\"$d\"$selected{'bday'}{$d}>$d</option>\n";
}
$SelBday .= "</select>\n";


## ヘッダー表示
&header;

## HTML表示
print <<"HTML";
				<p>メールでのエントリーは、下記のメールフォームをご利用ください。</p>
				<p class="step"><img src="../../img/common/step01.svg" alt=""></p>
				<form action="$script" method="POST" id="entrymail">
				<input type="hidden" name="ac" value="prev">
					<dl>
						<dt><label for="name">お名前</label><span class="required">必須</span></dt>
						<dd>
							<input type="text" name="name" value="$FORM{'name'}" placeholder="（例）日本 太郎">
						</dd>
					</dl>
					<dl>
						<dt><label for="your-kana">フリガナ</label><span class="required">必須</span></dt>
						<dd>
							<input type="text" name="ruby" value="$FORM{'ruby'}" placeholder="（例）ニホン タロウ">
						</dd>
					</dl>
					<dl class="addBox">
						<dt><label for="your-adress">ご住所</label><span class="required">必須</span></dt>
						<dd>
							<p>郵便番号</p>
							<input type="text" name="post" id="post" class="half" value="$FORM{'post'}" placeholder="（例）1234567"><br>
							<span class="cauto">※ハイフンは必要ありません</span>
						</dd>
						<dd>
							<p>都道府県 郡市区町</p>
							<input type="text" name="addr1" id="addr1">
						</dd>
						<dd>
							<p>それ以降の住所（番地・部屋番号）</p>
							<input type="text" name="addr2" id="addr2">
						</dd>
					</dl>
					<dl class="birthBox">
						<dt><label for="byear">生年月日</label><span class="required">必須</span></dt>
						<dd>
							<div>
								<input type="text" name="byear" id="byear" value="$FORM{'byear'}">
								<span>年</span>
							</div>
							<div>
								<div class="selectWrap">$SelBmon</div>
								<span>月</span>
							</div>
							<div>
								<div class="selectWrap">$SelBday</div>
								<span>日</span>
							</div>
						</dd>
					</dl>
					<dl class="mailBox">
						<dt><label for="mail">メールアドレス</label><span class="required">必須</span></dt>
						<dd>
							<input type="mail" name="mail1" id="mail1" value="$FORM{'mail1'}" placeholder="（例）sampl\@fbm35.com"><br>
						</dd>
						<dd>
							<p>確認のためもう一度ご入力ください</p>
							<input type="mail" name="mail2" id="mail2" value="$FORM{'mail2'}">
						</dd>
					</dl>
					<dl>
						<dt><label for="your-phone">電話番号</label><span class="required">必須</span></dt>
						<dd>
							<input type="text" name="tel" id="tel" class="half" value="$FORM{'tel'}" placeholder="（例）09012345678"><br>
							<span class="cauto">※ハイフンは必要ありません</span>
						</dd>
					</dl>
					<dl>
						<dt><label for="times">希望入職時期</label></dt>
						<dd>$SelTimes</dd>
					</dl>
					<dl>
						<dt><label for="com">所有資格・経歴・自己PRなど</label></dt>
						<dd>
							<textarea name="com" id="com" rows="5"></textarea>
							<span class="cauto"></span>
						</dd>
					</dl>
					<p class="btn01"><input type="submit" value="入力内容の確認"></p>
				</form>
HTML

## フッター表示
&footer;

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

## エラー処理
if(!$FORM{'name'}){push @Error,'お名前';}
if(!$FORM{'ruby'}){push @Error,'フリガナ';}
if(!$FORM{'post'}){push @Error,'ご住所（郵便番号）';}
if(!$FORM{'addr1'}){push @Error,'ご住所（都道府県 郡市区町）';}
if(!$FORM{'addr2'}){push @Error,'ご住所（それ以降の住所（番地・部屋番号））';}
if(!$FORM{'byear'}){push @Error,'生年月日（年）';}
if(!$FORM{'bmon'}){push @Error,'生年月日（月）';}
if(!$FORM{'bday'}){push @Error,'生年月日（日）';}
if(!$FORM{'mail1'}){push @Error,'メールアドレス';}
if(!$FORM{'mail2'}){push @Error,'メールアドレス';}
if(!$FORM{'tel'}){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{'post'} !~ /[0-9]/){&error("index","郵便番号は半角数字のみで入力してください。<br>－ハイフンは必要ありません。");}
if($FORM{'tel'} !~ /[0-9]/){&error("index","電話番号は半角数字のみで入力してください。<br>－ハイフンは必要ありません。");}
if($FORM{'mail1'} !~ /^[^@]+@[^.]+\..+/){&error("index","メールアドレスの入力が正しくありません。<br>ご確認ください。");}
if($FORM{'mail2'} !~ /^[^@]+@[^.]+\..+/){&error("index","メールアドレスの入力が正しくありません。<br>ご確認ください。");}
if($FORM{'mail1'} ne $FORM{'mail2'}){&error("index","確認用のメールアドレスが一致しません。");}


## 標準入力を隠し変数へ
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";
				<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="your-kana">フリガナ</label><span class="required">必須</span></dt>
						<dd class="prev">$FORM{'ruby'}</dd>
					</dl>
					<dl class="addBox">
						<dt><label for="your-adress">ご住所</label><span class="required">必須</span></dt>
						<dd class="prev half">〒$FORM{'post'}</dd>
						<dd class="prev">$FORM{'addr1'}</dd>
						<dd class="prev">$FORM{'addr2'}</dd>
					</dl>
					<dl class="birthBox">
						<dt><label for="byear">生年月日</label><span class="required">必須</span></dt>
						<dd class="prev half">$FORM{'byear'}年$FORM{'bmon'}月$FORM{'bday'}日</dd>
					</dl>
					<dl class="mailBox">
						<dt><label for="mail">メールアドレス</label><span class="required">必須</span></dt>
						<dd class="prev">$FORM{'mail1'}</dd>
					</dl>
					<dl>
						<dt><label for="your-phone">電話番号</label><span class="required">必須</span></dt>
						<dd class="prev">$FORM{'tel'}</dd>
					</dl>
					<dl>
						<dt><label for="times">希望入職時期</label></dt>
						<dd class="prev half">$PREV{'times'}</dd>
					</dl>
					<dl>
						<dt><label for="com">所有資格・経歴・自己PRなど</label></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>
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{'post'}
$FORM{'addr1'}
$FORM{'addr2'}

【生年月日】
$FORM{'byear'}年$FORM{'bmon'}月$FORM{'bday'}日

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

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

【希望入職時期】
$PREV{'times'}

【所有資格・経歴・自己PRなど】
$FORM{'com'}


HTML


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

## ヘッダー表示
&header;

## HTML表示
print <<"HTML";
				<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>
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="recruit">

<!-- 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/" class="stay">採用情報<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">RECRUIT</span></h2>
			<ol><li><a href="../../">TOP</a> /</li><li><a href="">採用情報</a> /</li><li>エントリーフォーム</li></ol>
		</div>
		<div class="point">
			<section class="cntBox">
			<h3 class="hSt01">エントリーフォーム</h3>
			<div class="inner02 formBox">
HTML

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

## HTML表示
print <<"HTML";

			</div>
		</section>
		</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="../">採用情報</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="../../contact/mailform.cgi">お問い合わせ</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;
