Index: branches/feature-module-update/data/downloads/module/mdl_remise/convenience.php
===================================================================
--- branches/rel/data/downloads/module/mdl_remise/convenience.php (revision 12157)
+++ branches/feature-module-update/data/downloads/module/mdl_remise/convenience.php (revision 15078)
@@ -13,9 +13,9 @@
function LC_Page() {
$this->tpl_mainpage = MODULE_PATH . "mdl_remise/convenience.tpl";
- $this->tpl_title = "¥³¥ó¥Ó¥Ë·èºÑ";
+ $this->tpl_title = "コンビニ決済";
/*
- session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç
- ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤Î͸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£
- private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£
+ session_start時のno-cacheヘッダーを抑制することで
+ 「戻る」ボタン使用時の有効期限切れ表示を抑制する。
+ private-no-expire:クライアントのキャッシュを許可する。
*/
session_cache_limiter('private-no-expire');
@@ -31,35 +31,35 @@
$arrInfo = $objSiteInfo->data;
-// ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹
+// パラメータ管理クラス
$objFormParam = new SC_FormParam();
-// POSTÃͤμèÆÀ
+// POST値の取得
$objFormParam->setParam($_POST);
-// ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ¤È¹ØÆþ¾õÂÖ¤ÎÀµÅöÀ¤ò¥Á¥§¥Ã¥¯
+// ユーザユニークIDの取得と購入状態の正当性をチェック
$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess);
-// ¥«¡¼¥È½¸·×½èÍý
+// カート集計処理
$objPage = sfTotalCart($objPage, $objCartSess, $arrInfo);
-// °ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤ÎÆɹþ
+// 一時受注テーブルの読込
$arrData = sfGetOrderTemp($uniqid);
-// ¥«¡¼¥È½¸·×¤ò¸µ¤ËºÇ½ª·×»»
+// カート集計を元に最終計算
$arrData = sfTotalConfirm($arrData, $objPage, $objCartSess, $arrInfo);
-// Âåɽ¾¦ÉʾðÊó
+// 代表商品情報
$arrMainProduct = $objPage->arrProductsClass[0];
-// »Ùʧ¤¤¾ðÊó¤ò¼èÆÀ
+// 支払い情報を取得
$arrPayment = $objQuery->getall("SELECT module_id, memo01, memo02, memo03, memo04, memo05, memo06, memo07, memo08, memo09, memo10 FROM dtb_payment WHERE payment_id = ? ", array($arrData["payment_id"]));
-// ³Îǧ²èÌ̤ËÌá¤ë
+// 確認画面に戻る
switch($_POST["mode"]){
- //Ìá¤ë
+ //戻る
case 'return':
- // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµÏ¿¤·¤Æ¤ª¤¯
+ // 正常に登録されたことを記録しておく
$objSiteSess->setRegistFlag();
- // ³Îǧ¥Ú¡¼¥¸¤Ø°ÜÆ°
+ // 確認ページへ移動
header("Location: " . URL_SHOP_CONFIRM);
exit;
@@ -67,15 +67,15 @@
}
-// ¥ë¥ß¡¼¥º¤«¤é¤ÎÊÖ¿®¤¬¤¢¤Ã¤¿¾ì¹ç
+// ルミーズからの返信があった場合
if (isset($_POST["X-R_CODE"])) {
$err_detail = "";
- // ÄÌ¿®»þ¥¨¥é¡¼
+ // 通信時エラー
if ($_POST["X-R_CODE"] != $arrRemiseErrorWord["OK"]) {
$err_detail = $_POST["X-R_CODE"];
- sfDispSiteError(FREE_ERROR_MSG, "", false, "¹ØÆþ½èÍýÃæ¤Ë°Ê²¼¤Î¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£
¡¦" . $err_detail);
+ sfDispSiteError(FREE_ERROR_MSG, "", false, "購入処理中に以下のエラーが発生しました。
・" . $err_detail);
- // ÄÌ¿®·ë²ÌÀµ¾ï
+ // 通信結果正常
} else {
@@ -87,41 +87,41 @@
gfPrintLog("remise conveni finish end ----------", $log_path);
- // ¶â³Û¤ÎÀ°¹çÀ¥Á¥§¥Ã¥¯
+ // 金額の整合性チェック
if ($arrData["payment_total"] != $_POST["X-TOTAL"]) {
- sfDispSiteError(FREE_ERROR_MSG, "", false, "¹ØÆþ½èÍýÃæ¤Ë°Ê²¼¤Î¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£
¡¦ÀÁµá¶â³Û¤È»Ùʧ¤¤¶â³Û¤¬°ã¤¤¤Þ¤¹¡£");
+ sfDispSiteError(FREE_ERROR_MSG, "", false, "購入処理中に以下のエラーが発生しました。
・請求金額と支払い金額が違います。");
}
- // Àµ¾ï¤Ê¿ä°Ü¤Ç¤¢¤ë¤³¤È¤òµÏ¿¤·¤Æ¤ª¤¯
+ // 正常な推移であることを記録しておく
$objSiteSess->setRegistFlag();
- // ¥ë¥ß¡¼¥º¤«¤é¤ÎÃͤμèÆÀ
- $job_id = lfSetConvMSG("¥¸¥ç¥ÖID(REMISE)", $_POST["X-JOB_ID"]);
- $payment_limit = lfSetConvMSG("»Ùʧ¤¤´ü¸Â", $_POST["X-PAYDATE"]);
- $conveni_type = lfSetConvMSG("»Ùʧ¤¤¥³¥ó¥Ó¥Ë", $arrConvenience[$_POST["X-PAY_CSV"]]);
- $payment_total = lfSetConvMSG("¹ç·×¶â³Û", $_POST["X-TOTAL"]);
- $receipt_no = lfSetConvMSG("¥³¥ó¥Ó¥Ëʧ¤¤½Ð¤·ÈÖ¹æ", $_POST["X-PAY_NO1"]);
+ // ルミーズからの値の取得
+ $job_id = lfSetConvMSG("ジョブID(REMISE)", $_POST["X-JOB_ID"]);
+ $payment_limit = lfSetConvMSG("支払い期限", $_POST["X-PAYDATE"]);
+ $conveni_type = lfSetConvMSG("支払いコンビニ", $arrConvenience[$_POST["X-PAY_CSV"]]);
+ $payment_total = lfSetConvMSG("合計金額", $_POST["X-TOTAL"]);
+ $receipt_no = lfSetConvMSG("コンビニ払い出し番号", $_POST["X-PAY_NO1"]);
- // ¥Õ¥¡¥ß¥ê¡¼¥Þ¡¼¥È¤Î¤ßURL¤¬¤Ê¤¤
+ // ファミリーマートのみURLがない
if ($_POST["X-PAY_CSV"] != "D030") {
- $payment_url = lfSetConvMSG("¥³¥ó¥Ó¥Ëʧ¤¤½Ð¤·URL", $_POST["X-PAY_NO2"]);
+ $payment_url = lfSetConvMSG("コンビニ払い出しURL", $_POST["X-PAY_NO2"]);
} else {
- $payment_url = lfSetConvMSG("ÃíʸÈÖ¹æ", $_POST["X-PAY_NO2"]);
+ $payment_url = lfSetConvMSG("注文番号", $_POST["X-PAY_NO2"]);
}
- $arrRet['cv_type'] = $conveni_type; // ¥³¥ó¥Ó¥Ë¤Î¼ïÎà
- $arrRet['cv_payment_url'] = $payment_url; // ʧ¹þɼURL(PC)
- $arrRet['cv_receipt_no'] = $receipt_no; // ʧ¹þɼÈÖ¹æ
- $arrRet['cv_payment_limit'] = $payment_limit; // »Ùʧ¤¤´ü¸Â
- $arrRet['title'] = lfSetConvMSG("¥³¥ó¥Ó¥Ë·èºÑ", true);
+ $arrRet['cv_type'] = $conveni_type; // コンビニの種類
+ $arrRet['cv_payment_url'] = $payment_url; // 払込票URL(PC)
+ $arrRet['cv_receipt_no'] = $receipt_no; // 払込票番号
+ $arrRet['cv_payment_limit'] = $payment_limit; // 支払い期限
+ $arrRet['title'] = lfSetConvMSG("コンビニ決済", true);
- // ·èºÑÁ÷¿®¥Ç¡¼¥¿ºîÀ®
+ // 決済送信データ作成
$arrModule['module_id'] = MDL_REMISE_ID;
$arrModule['payment_total'] = $arrData["payment_total"];
$arrModule['payment_id'] = PAYMENT_CONVENIENCE_ID;
- // ¥¹¥Æ¡¼¥¿¥¹¤Ï̤Æþ¶â¤Ë¤¹¤ë
+ // ステータスは未入金にする
$sqlval['status'] = 2;
- // ¥³¥ó¥Ó¥Ë·èºÑ¾ðÊó¤ò³ÊǼ
+ // コンビニ決済情報を格納
$sqlval['conveni_data'] = serialize($arrRet);
$sqlval['memo01'] = PAYMENT_CONVENIENCE_ID;
@@ -131,5 +131,5 @@
$sqlval['memo05'] = serialize($arrModule);
- // ¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Ë¹¹¿·
+ // 受注一時テーブルに更新
sfRegistTempOrder($uniqid, $sqlval);
@@ -138,42 +138,42 @@
}
-// EC-CUBE¦¤ÎÄÌÃÎÍÑURL
+// EC-CUBE側の通知用URL
$retUrl = SITE_URL . 'shopping/load_payment_module.php?module_id=' . MDL_REMISE_ID;
$exitUrl = SITE_URL . 'shopping/load_payment_module.php';
$tel = $arrData["order_tel01"].$arrData["order_tel02"].$arrData["order_tel03"];
-// ½»½êÀ°·Á
+// 住所整形
$pref = $arrPref[$arrData["order_pref"]];
$address1 = mb_convert_kana($arrData["order_addr01"], "ASKHV");
$address2 = mb_convert_kana($arrData["order_addr02"], "ASKHV");
-// ¾¦ÉÊ̾À°·Á(ºÇÂç7¸Ä¤Î¤¿¤á¡¢¾¦ÉÊÂå¶â¤È¤·¤ÆÁ´ÂΤǽÐÎϤ¹¤ë)
-$itemName = "¾¦ÉÊÂå¶â";
+// 商品名整形(最大7個のため、商品代金として全体で出力する)
+$itemName = "商品代金";
$itemPlace = $arrData["payment_total"] - $arrData["deliv_fee"];
$arrSendData = array(
- 'SEND_URL' => $arrPayment[0]["memo05"], // ÀܳÀèURL
- 'S_TORIHIKI_NO' => $arrData["order_id"], // ÀÁµáÈÖ¹æ(EC-CUBE)
- 'MAIL' => $arrData["order_email"], // ¥á¡¼¥ë¥¢¥É¥ì¥¹
- 'NAME1' => $arrData["order_name01"], // ¥æ¡¼¥¶¡¼Ì¾1
- 'NAME2' => $arrData["order_name02"], // ¥æ¡¼¥¶¡¼Ì¾2
- 'KANA1' => $arrData["order_kana01"], // ¥æ¡¼¥¶¡¼Ì¾(¥«¥Ê)1
- 'KANA2' => $arrData["order_kana02"], // ¥æ¡¼¥¶¡¼Ì¾(¥«¥Ê)2
- 'TEL' => $tel, // ÅÅÏÃÈÖ¹æ
- 'YUBIN1' => $arrData["order_zip01"], // ͹ÊØÈÖ¹æ1
- 'YUBIN2' => $arrData["order_zip02"], // ͹ÊØÈÖ¹æ2
- 'ADD1' => $pref, // ½»½ê1
- 'ADD2' => $address1, // ½»½ê2
- 'ADD3' => $address2, // ½»½ê3
- 'MSUM_01' => $arrData["subtotal"], // ¶â³Û
- 'TAX' => $arrData["deliv_fee"], // Á÷ÎÁ + ÀÇ
- 'TOTAL' => $arrData["payment_total"], // ¹ç·×¶â³Û
- 'SHOPCO' => $arrPayment[0]["memo01"], // ŹÊÞ¥³¡¼¥É
- 'HOSTID' => $arrPayment[0]["memo02"], // ¥Û¥¹¥ÈID
- 'RETURL' => $retUrl, // ´°Î»ÄÌÃÎURL
- 'NG_RETURL' => $retUrl, // NG´°Î»ÄÌÃÎURL
- 'EXITURL' => $exitUrl, // Ìá¤êÀèURL
- 'MNAME_01' => $itemName, // ¾¦ÉÊ̾
- 'MSUM_01' => $itemPlace, // ¾¦ÉÊÂå¶â¹ç·×(Á÷ÎÁ+Àǰʳ°)
+ 'SEND_URL' => $arrPayment[0]["memo05"], // 接続先URL
+ 'S_TORIHIKI_NO' => $arrData["order_id"], // 請求番号(EC-CUBE)
+ 'MAIL' => $arrData["order_email"], // メールアドレス
+ 'NAME1' => $arrData["order_name01"], // ユーザー名1
+ 'NAME2' => $arrData["order_name02"], // ユーザー名2
+ 'KANA1' => $arrData["order_kana01"], // ユーザー名(カナ)1
+ 'KANA2' => $arrData["order_kana02"], // ユーザー名(カナ)2
+ 'TEL' => $tel, // 電話番号
+ 'YUBIN1' => $arrData["order_zip01"], // 郵便番号1
+ 'YUBIN2' => $arrData["order_zip02"], // 郵便番号2
+ 'ADD1' => $pref, // 住所1
+ 'ADD2' => $address1, // 住所2
+ 'ADD3' => $address2, // 住所3
+ 'MSUM_01' => $arrData["subtotal"], // 金額
+ 'TAX' => $arrData["deliv_fee"], // 送料 + 税
+ 'TOTAL' => $arrData["payment_total"], // 合計金額
+ 'SHOPCO' => $arrPayment[0]["memo01"], // 店舗コード
+ 'HOSTID' => $arrPayment[0]["memo02"], // ホストID
+ 'RETURL' => $retUrl, // 完了通知URL
+ 'NG_RETURL' => $retUrl, // NG完了通知URL
+ 'EXITURL' => $exitUrl, // 戻り先URL
+ 'MNAME_01' => $itemName, // 商品名
+ 'MSUM_01' => $itemPlace, // 商品代金合計(送料+税以外)
'REMARKS3' => MDL_REMISE_POST_VALUE
);
@@ -183,5 +183,5 @@
$objView->assignobj($objPage);
-// ½ÐÎÏÆâÍƤòSJIS¤Ë¤¹¤ë(¥ë¥ß¡¼¥ºÂбþ)
+// 出力内容をSJISにする(ルミーズ対応)
mb_http_output(REMISE_SEND_ENCODE);
$objView->display(MODULE_PATH . "mdl_remise/convenience.tpl");