$val) {
if(is_array($_POST[$key])) {
foreach($_POST[$key] as $array_key => $array_val) {
$FORM[$key][$array_key] = $array_val;
if((!isset($_SESSION['YadoNo']) || $_SESSION['YadoNo'] != '') && $mode == 'resv_estimate') {
$_SESSION[$key][$array_key] = $array_val;
}
}//while
} else {
$FORM[$key] = $val;
if((!isset($_SESSION['YadoNo']) || $_SESSION['YadoNo'] != '') && $mode == 'resv_estimate') {
$_SESSION[$key] = $val;
}
}
}
foreach($_GET as $key => $val) {
$FORM[$key] = $val;
if((!isset($_SESSION['YadoNo']) || $_SESSION['YadoNo'] != '') && $mode == 'resv_estimate') {
$_SESSION[$key] = $val;
}
}
if(isset($_SESSION['YadoNo']) && isset($FORM['YadoNo']) && $_SESSION['YadoNo'] != '' && $FORM['YadoNo'] != '' && $_SESSION['YadoNo'] != $FORM['YadoNo']) {
// 複数タブを開いた操作した際に別の宿のセッションを取得した場合の対策
$ErrMsg = '複数の宿泊施設を同時に予約する操作を検知したため予約を停止しました。
お手数ですが、再度一施設ずつ予約をお願いします。
';
session_destroy();
include('errmsg.php');
exit;
}
//HTTP_POST_FILES
if(!isset($HTTP_POST_FILES)) {
$HTTP_POST_FILES = array();
}
foreach($HTTP_POST_FILES as $key => $val) {
$Va[$key] = $val;
}
if(!isset($FORM['mode'])) $FORM['mode'] = '';
#メールからのウィザード継続処理 専用分岐
if((!isset($FORM['identify_id']) || $FORM['identify_id'] != '') && $FORM['mode'] == 'mail_continue') {
#メールから新規ブラウザを起動した場合のセッション空状態に対応します(エラーチェック処理をスキップ)
$s->passwd_skip($FORM);
exit;
}
// 2022.10 3DS決済戻り時はここで必要情報をリストア(YadoNoがないから)
if ($FORM['mode'] == 'GMOPG') {
$r = $s->restoreGMOPG($FORM['OrderID']);
$FORM = $r['FORM'];
$_SESSION = $r['SESSION'];
$FORM['is3dsCallBack'] = true;
$FORM['mode'] == ($r['GMOPG']['ErrCode'] == '') ? 'resv_creditGMOPG_Payment' : '';
unset($r);
$_SESSION['YoyaKey'] = ''; // 2023.4 後で怒られるので
}
//メンテ中判断用の施設情報の取得
$yadoNo = '';
if(isset($FORM['YadoNo'])) $yadoNo = $FORM['YadoNo'];
# if(!isset($_SESSION['YadoNo'])) $_SESSION['YadoNo'] = $FORM['YadoNo'];
if($FORM['mode'] != '' && ((!isset($_SESSION['YadoNo'])) || ($_SESSION['YadoNo'] == ''))) {
$ErrMsg = '一定時間操作されませんでした。
お手数ですが、再度実施をお願いします。
';
include('errmsg.php');
exit;
}
$Yado_info = $s->get_Yado($yadoNo);
$PortalInstall_info = $s->get_PortalInstallKey();
if(isset($Yado_info['bYadoSleep']) && $Yado_info['bYadoSleep'] == 1 ) { //予約中止なら、メンテ中の画面を表示
$YadoName = $s->get_YadoName($FORM['YadoNo']);
include('../cal/templates/cal_mente.php');
exit;
}
if(FALSE == isset($_SESSION['UserNo'])) {
$_SESSION['UserNo'] = '';
}
if($FORM['mode'] == '' && $_SESSION['UserNo'] == '----') {
$_SESSION['UserNo'] = '';
$_SESSION['UserID'] = '';
}
switch($FORM['mode']) {
case 'resv_login_menu':
$s->resv_login_menu($FORM);
break;
case 'resv_login':
$s->resv_login($FORM);
break;
case 'resv_baseinfo':
$s->resv_baseinfo($FORM);
break;
case 'resv_estimate': # 宿泊料金確認 kakunin.php
$_SESSION['FORM_resv_baseinfo'] = $FORM;
$s->resv_estimate($FORM);
break;
case 'resv_passwd_send_form':
$s->resv_passwd_send_form($FORM);
break;
case 'resv_passwd_send':
$s->resv_passwd_send($FORM);
break;
case 'resv_passwd_form':
$s->resv_passwd_form($FORM);
break;
case 'mail_continue':
$s->passwd_skip($FORM);
break;
case 'resv_custform':
$_SESSION['FORM_resv_baseinfo'] = $FORM;
$_SESSION['FORM_resv_custform'] = $FORM;
$s->resv_custform($FORM);
break;
case 'resv_confirm':
if($FORM['FormNo'] == 2) {
$_SESSION['FORM_resv_baseinfo'] = array_merge($_SESSION['FORM_resv_baseinfo'], $FORM);
} else if($FORM['FormNo'] == 3) {
$_SESSION['FORM_resv_estimate'] = array_merge($_SESSION['FORM_resv_baseinfo'], $FORM);
}
$s->resv_confirm($FORM);
break;
case 'resv_commit':
$_SESSION['FORM_resv_confirm'] = array_merge($_SESSION['FORM_resv_baseinfo'], $FORM);
$s->resv_commit($FORM);
break;
case 'resv_btchange':
$s->resv_btchange($FORM);
break;
case 'resend_mail':
$s->resend_mail($FORM);
break;
// case 'GMOPG' : //GMO Payment Gatewayからのコール
// // $s->gmopg_return($FORM);
// $FORM = $s->gmopg_return2($FORM); // 3DS決済対応により復活
// $FORM['is3dsCallBack'] = true;
// // break;
case 'resv_creditGMOPG_Payment': # GMO Payment Gateway決済
$s->resv_creditGMOPG_Payment($FORM);
break;
default:
// if($_SERVER['REMOTE_ADDR']!='118.243.35.182' && $_SERVER['REMOTE_ADDR']!='219.121.8.61'){
// include('maintenance.php');
// exit;
// }else{
if(isset($FORM['payment']) && $FORM['payment'] != '') {
$s->payment_return($FORM);
}else{
$_SESSION['mode'] = '';
$_SESSION['AgentNo'] = $s->AgentNo;
$_SESSION['YadoNo'] = $FORM['YadoNo'];
$_SESSION['PlanNo'] = $FORM['PlanNo'];
$_SESSION['StockNo'] = $FORM['StockNo'];
$_SESSION['StayDate'] = $FORM['StayDate'];
if(isset($FORM['date'])) {
$_SESSION['date'] = $FORM['date'];
} else {
$_SESSION['date'] = '';
}
$s->resv_baseinfo($FORM);
}
// }
break;
}
?>