<?php
//_PAGE_ID
define('_PAGE_ID','contact_index');
define('_PAGE_GROUP','contact');
define('_PAGE_PATH','/form.php');

require './contact.config.php';
require './_c.config.php';

function config_controller( &$c )
{
	//デフォルトテンプレートの設定
	$c->SetViewFile(TEMPLATEDIR . '/index.tpl');
	
	//HTML_TITLE
	$c->set('HTML_TITLE','SDE-001');
	
	$c->set('mtb_pref',$c->mtb_pref->getlist());
	
	$input_field = array(
		'name01','name02',
		'kana01','kana02',
		'zipcode',
		'pref_id',
		'address',
		'tel',
		'email',
		'cnt',
		'collect_date','collect_time',
//		'deliv_date','deliv_time',
		'customer_id',
		'customer_no'
		);
	$c->set('input_field',$input_field);
	
	$c->set('m_collect_time',$c->mst_data->get_collect_time());
	$c->set('m_deliv_time',$c->mst_data->get_deliv_time());
}

function action( &$c )
{
	// a actの取得
	$_a = $c->s->a();
	switch ($_a) {
	case 'c':
		//確認画面表示処理
		_request($c);
		if(_validate($c)){
			$c->SetViewFile(TEMPLATEDIR . '/check.tpl');
		}
		break;
	case 'r':
		_request($c);
		//確認画面表示処理
		if(_validate($c)){
			//実登録処理
			if(_regist($c)){
				$c->redirect('./finish.php');
			}
		}else{
			//入力エラー
		}
		break;
	case 'i':
		_request($c);
		break;
	default:
		_default($c);
		break;
	}
}

function _after_request( &$c ){
	$request = $c->get('request');
	$request['name01'] = mb_convert_kana($request['name01'],'AKV','UTF-8');
	$request['name02'] = mb_convert_kana($request['name02'],'AKV','UTF-8');
	$request['kana01'] = mb_convert_kana($request['kana01'],'AKV','UTF-8');
	$request['kana02'] = mb_convert_kana($request['kana02'],'AKV','UTF-8');
	$request['address'] = mb_convert_kana($request['address'],'AKV','UTF-8');
	$c->set('request',$request);
}

// regist 登録処理
function _regist( &$c ){
	
	$request = $c->get('request');
	
	$mtb_pref = $c->get('mtb_pref');
	$m_collect_time = $c->get('m_collect_time');
	
	//csv 出力(生)
	$csv = array();
	$csv[] = date('Y/m/d H:i:s');
	$csv[] = $request['name01'] . '　' . $request['name02'];
	$csv[] = $request['kana01'] . '　' . $request['kana02'];
	$csv[] = $request['zipcode'];
	$csv[] = $mtb_pref[$request['pref_id']]['pref_name'] . ' ' . $request['address'];
	$csv[] = $request['tel'];
	$csv[] = $request['email'];
	$csv[] = $request['cnt'];
	$csv[] = $request['collect_date'];
	$csv[] = $request['collect_time'];
//	$csv[] = $request['deliv_date'];
//	$csv[] = $request['deliv_time'];
	$csv[] = $request['customer_id'];
	$csv[] = $request['customer_no'];
	
	$csvpoint = fopen(CSV_SAVE_TO.'/raw/'.date('Ymd').'.csv','a');
	mb_convert_variables('SJIS','UTF-8',$csv);
	fputcsv($csvpoint,$csv);
	fclose($csvpoint);
	
	list($collect_time_st,$collect_time_ed) = explode('-',$request['collect_time']);
//	($deliv_time_st,$deliv_time_ed) = explode('-',$request['deliv_time']);
	
	//csv 佐川用(生)
	$csv = array();
	$csv[1] = "001";
	$csv[2] = "";
	$csv[3] = $request['name01'];
	$csv[4] = $request['name02'];
	$csv[5] = $request['zipcode'];
	$csv[6] = $mtb_pref[$request['pref_id']]['pref_name'];
	$csv[7] = $request['address'];
	$csv[8] = "";
	$csv[9] = $request['email'];
	$csv[10] = $request['tel'];
	$csv[11] = "133298860026";
	$csv[12] = "133298860026";
	$csv[13] = "";
	$csv[14] = date('Ymd',strtotime($request['collect_date']));
	$csv[15] = $request['collect_time'];
	$csv[16] = "";
	$csv[17] = "";
	$csv[18] = "";
	$csv[19] = "";
	$csv[20] = "2";
	$csv[21] = "2";
	$csv[22] = $request['cnt'];
	$csv[23] = "";
	$csv[24] = "";
	$csv[25] = "";
	$csv[26] = "";
	$csv[27] = "";
	$csv[28] = "";
	$csv[29] = "";
	$csv[30] = $request['cnt'];
	$csv[31] = "";
	$csv[32] = "";
	$csv[33] = "";
	$csv[34] = "";
	$csv[35] = "";
	$csv[36] = "";
	$csv[37] = "";
	$csv[38] = "";
	$csv[39] = "";
	$csv[40] = "";
	$csv[41] = "";
	$csv[42] = "";
	$csv[43] = "";
	$csv[44] = "";
	$csv[45] = "";
	$csv[46] = "";
	$csv[47] = "";
	
	$csvpoint = fopen(CSV_SAVE_TO.'/kaisyukun/'.date('Ymd').'.csv','a');
	mb_convert_variables('SJIS','UTF-8',$csv);
	fputcsv($csvpoint,$csv);
	fclose($csvpoint);
	
	
	//メール送信
	$mail_subject = '[Snow Peak] SDE-001　アメニティドームフレーム交換申し込み完了のお知らせ';
	
	$mail_body = "SDE-001　アメニティドーム" . "\n";
	$mail_body .= "交換申し込みフォームの受付が完了いたしましたのでご連絡致します。" . "\n";
	$mail_body .= "このメールは交換が完了するまで保管いただきますようお願いいたします。" . "\n";
	$mail_body .= "" . "\n";
	$mail_body .= "■　受付製品" . "\n";
	$mail_body .= "　SDE-001　アメニティドーム".$request['cnt']."式" . "\n";
	$mail_body .= "" . "\n";
	$mail_body .= "■　引き取り希望日・時間帯" . "\n";
	$mail_body .= "　".date('Y年m月d日',strtotime($request['collect_date']))."　".$m_collect_time[$request['collect_time']]."" . "\n";
	$mail_body .= "" . "\n";
	$mail_body .= "上記時間帯に当社指定の運送業者（佐川急便）がお引き取りに伺います。" . "\n";
	$mail_body .= "お手数ではございますが、アメニティドーム一式を収納ケースに入れた状態で" . "\n";
	$mail_body .= "運送業者担当者へ製品をお渡しくださいますようお願いいたします。" . "\n";
	$mail_body .= "" . "\n";
	$mail_body .= "ご不明な点がございましたら、下記連絡先までお問い合わせ下さい。" . "\n";
	$mail_body .= "" . "\n";
	$mail_body .= "-------------------------------------------------------" . "\n";
	$mail_body .= "＜お問い合わせ先＞" . "\n";
	$mail_body .= "株式会社スノーピーク" . "\n";
	$mail_body .= "「SDE-001　アメニティドームフレーム交換係」" . "\n";
	$mail_body .= "〒955-0147 新潟県三条市中野原456" . "\n";
	$mail_body .= "フリーダイヤル：0120-010-660" . "\n";
	$mail_body .= "受付時間： 9:00～17:00（月曜～金曜 ※土日祝祭日を除く）" . "\n";
	$mail_body .= "E-mail： userservice@snowpeak.co.jp" . "\n";
	$mail_body .= "-------------------------------------------------------";
	
	//管理者宛送信
	$c->ml->clearAll();
	$c->ml->setTo(FORM_MAIL_TO);
	$c->ml->setFrom($request['email']);
	$c->ml->setSubject($mail_subject);
	$c->ml->setBody($mail_body);
	$s_res = $c->ml->send();
	$c->ml->clearAll();
	
	//申込者宛送信
	$c->ml->clearAll();
	$c->ml->setTo($request['email']);
	$c->ml->setFrom(FORM_MAIL_FROM);
	$c->ml->setSubject($mail_subject);
	$c->ml->setBody($mail_body);
	$s_res = $c->ml->send();
	$c->ml->clearAll();
	
	return true;
}

function _validate( &$c ){
	$err = array();
	$_a = $c->s->a();
	$request = $c->get('request');
	
	if(!$c->v->notempty($request['collect_date'])) $err['collect_date'] = "必須項目です";
	if(!$c->v->notempty($request['cnt'])) $err['cnt'] = "必須項目です";
	if(!$c->v->notempty($request['collect_time'])) $err['collect_time'] = "必須項目です";
	if(!isset($err['collect_date'])){
		if(strtotime($request['collect_date']) === false){
			$err['collect_date'] = "正しく入力してください。";
		}else{
			if(strtotime($request['collect_date']) <= time()){
				$err['collect_date'] = "正しく入力してください。";
			}
		}
	}
//	if(strtotime($request['deliv_date']) === false){
//		$err['deliv_date'] = "正しく入力してください。";
//	}else{
//		if(strtotime($request['deliv_date']) <= time()){
//			$err['deliv_date'] = "正しく入力してください。";
//		}
//	}
//	if(!isset($err['collect_date']) && !isset($err['deliv_date'])){
//		if(strtotime($request['deliv_date']) < strtotime($request['collect_date'])){
//			$err['deliv_date'] = "正しく入力してください。";
//		}
//	}
	
	if(!$c->v->notempty($request['name01'])||!$c->v->notempty($request['name02'])) $err['name'] = "必須項目です";
	if(!$c->v->notempty($request['email'])) $err['email'] = "必須項目です";
	if(!isset($err['email'])){
		if(!$c->v->email($request['email'])) $err['email'] = "正しく入力してください";
	}
	if(!$c->v->notempty($request['zipcode'])) $err['zipcode'] = "必須項目です";
	if(!isset($err['zipcode']) && $request['zipcode'] != ''){
		if(!$c->v->reg($request['zipcode'],"/^[0-9]{7}$/")) $err['zipcode'] = "正しく入力してください";
	}
	if(!$c->v->notempty($request['pref_id'])) $err['pref_id'] = "必須項目です";
	if(!$c->v->notempty($request['address'])) $err['address'] = "必須項目です";
	
	if(!$c->v->notempty($request['tel'])) $err['tel'] = "必須項目です";
	if(!isset($err['tel'])){
		if($request['tel'] != ''){
			if(!$c->v->tel($request['tel'])) $err['tel'] = "正しく入力してください";
		}
	}
	
	
	// エラーをセット
	$c->set('err',$err);
	if(count($err) > 0){
		return false;
	}
	return true;
}

function _default( &$c ){
	$request = array();
	$input_field = $c->get('input_field');
	foreach($input_field as $fieldName){
		$request[$fieldName] = '';
	}
	$request['pref_id']='15';
	$c->set('request',$request);
}

?>