#!/usr/bin/perl

#求人メール送信処理
=commentout
	初期設定はinit.plで行います
=cut

use CGI::Carp qw(fatalsToBrowser);
use lib '/home/webmaster/public_html/lib';
use CGI qw(:cgi-lib :cgi);
use DBI;
use Jcode;
use AE;
use AETmpl;
use AEMail;


require '../lib/init.pl';


$zensu = jcode('０１２３４５６７８９')->euc;
$hansu = jcode('0123456789')->euc;

##----------------------------------------------------------------------------

#SetENV------------------------------------------------------------------
$sendmail = '/usr/sbin/sendmail';
$tmpl{'form'}	 = 'tmp_form.html';		#画面テンプレート
$tmpl{'err'}	 = 'tmp_err.html';		#エラー画面テンプレート
$tmpl{'cfm'}	 = 'tmp_cfm.html';		#確認画面
##----------------------------------------------------------------------------

#jcodeを避けるパラメータ名のリスト
$Files = 'filedata';

#パラメータの処理
foreach (param) {
	next unless $_;
	if (ref(param("$_")) eq 'ARRAY') {
		@{$_} = param("$_");
		if (!/^$Files$/o) {
			@{$_} = map {jcode($_)->sjis} @{$_};
		}
	} else {
		${$_} = /^$Files$/o ? param($_) : jcode(param($_))->sjis;
	}
}


# テンプレート振り分け
if ($phone{'furiwake'} eq 'mobile') {
	foreach(keys %tmpl) {
		$tmpl{"$_"} =~ s/\.html/_m.html/;
	}
}

if ($regname1 && $regname2) { $regname = "$regname1 $regname2"; }
if ($freename1 && $freename2) { $freename = "$freename1 $freename2"; }
if ($zip1 && $zip2) { $zip = "$zip1-$zip2"; }
if ($tel1 && $tel2 && $tel3) { $tel = "$tel1-$tel2-$tel3"; }






##---------------------------------------------------

if ($mode eq 'cfm'){
	#入力チェック
	&check;
} elsif ($mode eq 'mailsend') {
	#メール送信
	&mailsend;
}



if ($mode eq 'cfm'){
	&confirm;
} elsif ($mode eq 'thx') {
	&error($tmpl{'err'}, <<EOF, '送信完了');
<p>送信を受け付けました。</p>
<p>送信された内容を弊社にて確認次第、<br>
ご記入いただいた連絡方法のいずれかにてご連絡を差し上げます。<br>
ご利用ありがとうございました。</p>
EOF
} else {
	&form;
}

exit;


##---------------------------------------------------







sub form {
	if (@er) {
		$msg = join "<br>\n", @er;
	}
	
	my $section = $/;
	undef $/;
	open(TEMP,"$tmpl{'form'}") or &error($tmpl{'err'}, 'templete error.');
	$html = <TEMP>;
	close(TEMP);
	$/ = $section;
	
	$ken_select = &popup(\@ken, \@ken, $ken || '滋賀県');
	
	if ($sex eq '男') { $chk_man = 'checked'; }
	if ($sex eq '女') { $chk_woman = 'checked'; }
	
	if ($contact_email) { $chk_contact_email = 'checked'; }
	if ($contact_phone) { $chk_contact_phone = 'checked'; }
	if ($contact_post) { $chk_contact_post = 'checked'; }
	
	if ($wday1) { $chk_wday1 = 'checked'; }
	if ($wday2) { $chk_wday2 = 'checked'; }
	if ($wday3) { $chk_wday3 = 'checked'; }
	if ($wday4) { $chk_wday4 = 'checked'; }
	if ($wday5) { $chk_wday5 = 'checked'; }
	if ($wday6) { $chk_wday6 = 'checked'; }
	if ($wday7) { $chk_wday7 = 'checked'; }
	
	
print "Content-type: text/html\n\n";
	$html =~ s/%(\w+)%/${$1}/g;
	$html =~ s/<!--#exec cmd="([^"]+)"-->/&getssi($1)/ge;
	print $html;
}











sub check {
	if(!$regname)				{ push(@er, "・お名前を記入して下さい。");}
	if(!$freename)				{ push(@er, "・ふりがなを記入して下さい。");}
	if(!$age)					{ push(@er, "・年齢を記入して下さい。");}
	if(!$zip or !$ken or !$add)	{ push(@er, "・住所の全てを選択・記入して下さい。");}
	#if(!$tel)				{ push(@er, "・お電話番号を記入して下さい。");}
	if(!$email)				{ push(@er, "・E-mailアドレスを記入して下さい。");}
	if($email ne $email2)		{ push(@er, "・E-mailアドレスの入力を確認してください。");}
	if(@er){
		$mode = '';
	} else {
		$mode = 'cfm';
	}
}














sub confirm {
	#確認画面表示
	$adddisp		 = &nl2br($add);
	$cmtdisp		 = &nl2br($cmt);
	
	($contactdisp, @contact);
	if ($contact_email) { push @contact, 'E-Mail'; }
	if ($contact_phone) { push @contact, '電話可'; }
	if ($contact_post) { push @contact, '郵便可'; }
	$contactdisp = join(', ', @contact) || '選択なし';

	($wdaydisp, @wday);
	if ($wday1) { push @wday, $wday1; }
	if ($wday2) { push @wday, $wday2; }
	if ($wday3) { push @wday, $wday3; }
	if ($wday4) { push @wday, $wday4; }
	if ($wday5) { push @wday, $wday5; }
	if ($wday6) { push @wday, $wday6; }
	if ($wday7) { push @wday, $wday7; }
	$wdaydisp = join(', ', @wday) || '選択なし';
	
	my $section = $/;
	undef $/;
	open(TEMP,"$tmpl{'cfm'}") or &error($tmpl{'err'}, 'template error.');
	$html = <TEMP>;
	close(TEMP);
	$/ = $section;
	
	
print "Content-type: text/html\n\n";
	$html =~ s/%(\w+)%/${$1}/g;
	$html =~ s/<!--#exec cmd="([^"]+)"-->/&getssi($1)/ge;
	print $html;
}









sub mailsend {
	$Mail{'subject'}	 = $subject;
	$Mail{'to'}		 = $mailto;
	$Mail{'from'}		 = $email;
	$add		 =~ s/\r\n|\r|\n/\n　　　　　　　　　 /g;
	$cmt		 =~ s/\r\n|\r|\n/\n　　　　　　　　　 /g;
	
	my ($contact, @contact);
	if ($contact_email) { push @contact, 'E-Mail'; }
	if ($contact_phone) { push @contact, '電話可'; }
	if ($contact_post) { push @contact, '郵便可'; }
	$contact = join(',', @contact) || '選択なし';
	
	my ($wdaydisp, @wday);
	if ($wday1) { push @wday, $wday1; }
	if ($wday2) { push @wday, $wday2; }
	if ($wday3) { push @wday, $wday3; }
	if ($wday4) { push @wday, $wday4; }
	if ($wday5) { push @wday, $wday5; }
	if ($wday6) { push @wday, $wday6; }
	if ($wday7) { push @wday, $wday7; }
	$wdaydisp = join(', ', @wday) || '選択なし';
	
$Mail{'body'} = <<"EOF";

生活工房PCBoot「リクルート」ページより、
以下の内容が送信されました。

--------------------------------------------
氏　名　　　　　　 $regname
ふりがな　　　　　 $freename
年　齢　　　　　　 $age
性　別　　　　　　 $sex
住　所　　　　　　 〒$zip
　　　　　　　　　 $ken
　　　　　　　　　 $add
電話番号　　　　　 $tel
メール　　　　　　 $email
連絡方法　　　　　 $contact
勤務可能\日時　　　 $wdaydisp $stime〜$etime
お問い合わせ内容　 $cmt
- - - - - - - - - - - - - - - - - - - -

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

EOF
	&AEMail::send(\%Mail) or &error($tmpl{'err'}, $Mail{'error'});
	$mode = 'thx';
}
#Subroutine------------------------------------------------------------------
