#!/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 AEImg;
use AETmpl;
use AEMail2;


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';		#確認画面
##----------------------------------------------------------------------------

#----添付画像----
$Image{'dir'}	 = '/home/skobo/public_html/form/filetmp';
$Image{'path'}	 = './filetmp';

#画像サイズ変更モード
$Image{'mode'}	 = 'blank';

#画像バリエーション
$Image{'images'}	 = [
	['_l',  600, 600],
	['_s',  300, 300]
];

$Mail{'filename'} = "image.jpg";


#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') {
	#メール送信
	&AEImg::cacheClear(\%Image, 60*60*24);	#古いフォルダの掃除
	&mailsend;
}



if ($mode eq 'cfm'){
	print "Content-type: text/html\n\n";
	&confirm;
} elsif ($mode eq 'thx') {
	&error($tmpl{'err'}, <<EOF, '送信完了');
<p>送信を受け付けました。</p>
<p>送信された内容を弊社にて確認次第、ご連絡を差し上げます。<br>
ご利用ありがとうございました。</p>
EOF
} else {
	print "Content-type: text/html\n\n";
	&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 || '滋賀県');
	
	
	
	$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(!$zip or !$ken or !$add)	{ push(@er, "・住所の全てを選択・記入して下さい。");}
	#if(!$tel)				{ push(@er, "・お電話番号を記入して下さい。");}
	if(!$email)				{ push(@er, "・E-mailアドレスを記入して下さい。");}
	if(@er){
		$mode = '';
	} else {
		$mode = 'cfm';
	}
	
	#画像の保存
	if (upload('filedata')) {
		$Image{'data'} = upload('filedata');
		$img_id = &AEImg::set(\%Image);
	}
}














sub confirm {
	#確認画面表示
	$adddisp		 = &nl2br($add);
	$cmtdisp		 = &nl2br($cmt);
	
	if ($img_id) {
		$imgdisp_s = qq(<img src="$Image{'path'}/$img_id/_s.jpg" border="0" alt="送信画像" hspace="10" vspace="10">) . '<br>※弊社に送信される画像はこの倍のサイズになります。';
	}

	my $section = $/;
	undef $/;
	open(TEMP,"$tmpl{'cfm'}") or &error($tmpl{'err'}, 'templete error.');
	$html = <TEMP>;
	close(TEMP);
	$/ = $section;
	
	
	$html =~ s/%(\w+)%/${$1}/g;
	$html =~ s/<!--#exec cmd="([^"]+)"-->/&getssi($1)/ge;
	print $html;
}









sub mailsend {
	$Mail{'subject'}	 = $subject;
	$Mail{'to'}		 = $mailto;
	#$Mail{'to'}		 = 'kitamura@analogengine.jp';
	$Mail{'from'}		 = $email;
	$add		 =~ s/\r\n|\r|\n/\n　　　　　　　　　 /g;
	$cmt		 =~ s/\r\n|\r|\n/\n　　　　　　　　　 /g;
	
	if ($img_id) {
		$Mail{'filepath'} = "$Image{'dir'}/$img_id/_l.jpg";
	}
	
$Mail{'body'} = <<"EOF";

生活工房PCBoot「簡単らくらく査定」ページより、
以下の内容が送信されました。

--------------------------------------------
氏　名　　　　　　 $regname
ふりがな　　　　　 $freename
住　所　　　　　　 〒$zip
　　　　　　　　　 $ken
　　　　　　　　　 $add
電話番号　　　　　 $tel
メール　　　　　　 $email
商品詳細　　　　　 $cmt
- - - - - - - - - - - - - - - - - - - -

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

EOF
	&AEMail2::send(\%Mail) or &error($tmpl{'err'}, $Mail{'error'});
	
	
	
	$Mail{'to'}		 = $email;
	$Mail{'from'}		 = $mailto;
	$Mail{'subject'}	 = $subject . "（お客様控）";
	
	
	
$Mail{'body'} = <<"EOF";

$regname様

本日は生活工房の簡単らくらく査定をご利用いただき、
ありがとうございます。
後日担当者から、査定結果をお知らせいたします。
査定お申し込みありがとうございました。


--------------------------------------------
氏　名　　　　　　 $regname
ふりがな　　　　　 $freename
住　所　　　　　　 〒$zip
　　　　　　　　　 $ken
　　　　　　　　　 $add
電話番号　　　　　 $tel
メール　　　　　　 $email
商品詳細　　　　　 $cmt
- - - - - - - - - - - - - - - - - - - -

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

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
















#Subroutine------------------------------------------------------------------


