Ignore:
Timestamp:
2007/07/20 15:58:59 (16 years ago)
Author:
nanasess
Message:

r15064 から svn cp
とりあえず暫定コミット.

  • UTF-8 に変更
  • slib.php, glib.php のクラス化
  • LC_Page の抽象化(一部)
Location:
branches/feature-module-update
Files:
1 edited
2 copied

Legend:

Unmodified
Added
Removed
  • branches/feature-module-update

    • Property svn:ignore set to
      .cache

      .settings

      .projectOptions
  • branches/feature-module-update/data/downloads/module/mdl_remise/convenience.php

    r12157 r15078  
    1313    function LC_Page() { 
    1414        $this->tpl_mainpage = MODULE_PATH . "mdl_remise/convenience.tpl"; 
    15         $this->tpl_title = "¥³¥ó¥Ó¥Ë·èºÑ"; 
     15        $this->tpl_title = "コンビニ決済"; 
    1616        /* 
    17          session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç 
    18          ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤ÎÍ­¸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£ 
    19          private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£ 
     17         session_start時のno-cacheヘッダーを抑制することで 
     18         「戻る」ボタン使用時の有効期限切れ表示を抑制する。 
     19         private-no-expire:クライアントのキャッシュを許可する。 
    2020        */ 
    2121        session_cache_limiter('private-no-expire');      
     
    3131$arrInfo = $objSiteInfo->data; 
    3232 
    33 // ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹ 
     33// パラメータ管理クラス 
    3434$objFormParam = new SC_FormParam(); 
    3535 
    36 // POSTÃͤμèÆÀ 
     36// POST値の取得 
    3737$objFormParam->setParam($_POST); 
    3838 
    39 // ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ¤È¹ØÆþ¾õÂÖ¤ÎÀµÅöÀ­¤ò¥Á¥§¥Ã¥¯ 
     39// ユーザユニークIDの取得と購入状態の正当性をチェック 
    4040$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess); 
    4141 
    42 // ¥«¡¼¥È½¸·×½èÍý 
     42// カート集計処理 
    4343$objPage = sfTotalCart($objPage, $objCartSess, $arrInfo); 
    4444 
    45 // °ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤ÎÆɹþ 
     45// 一時受注テーブルの読込 
    4646$arrData = sfGetOrderTemp($uniqid); 
    4747 
    48 // ¥«¡¼¥È½¸·×¤ò¸µ¤ËºÇ½ª·×»» 
     48// カート集計を元に最終計算 
    4949$arrData = sfTotalConfirm($arrData, $objPage, $objCartSess, $arrInfo); 
    5050 
    51 // Âåɽ¾¦ÉʾðÊó 
     51// 代表商品情報 
    5252$arrMainProduct = $objPage->arrProductsClass[0]; 
    5353 
    54 // »Ùʧ¤¤¾ðÊó¤ò¼èÆÀ 
     54// 支払い情報を取得 
    5555$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"])); 
    5656 
    57 // ³Îǧ²èÌ̤ËÌá¤ë 
     57// 確認画面に戻る 
    5858switch($_POST["mode"]){ 
    59     //Ìá¤ë 
     59    //戻る 
    6060    case 'return': 
    61         // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     61        // 正常に登録されたことを記録しておく 
    6262        $objSiteSess->setRegistFlag(); 
    63         // ³Îǧ¥Ú¡¼¥¸¤Ø°ÜÆ° 
     63        // 確認ページへ移動 
    6464        header("Location: " . URL_SHOP_CONFIRM); 
    6565        exit; 
     
    6767} 
    6868 
    69 // ¥ë¥ß¡¼¥º¤«¤é¤ÎÊÖ¿®¤¬¤¢¤Ã¤¿¾ì¹ç 
     69// ルミーズからの返信があった場合 
    7070if (isset($_POST["X-R_CODE"])) { 
    7171 
    7272    $err_detail = ""; 
    7373     
    74     // ÄÌ¿®»þ¥¨¥é¡¼ 
     74    // 通信時エラー 
    7575    if ($_POST["X-R_CODE"] != $arrRemiseErrorWord["OK"]) { 
    7676        $err_detail = $_POST["X-R_CODE"]; 
    77         sfDispSiteError(FREE_ERROR_MSG, "", false, "¹ØÆþ½èÍýÃæ¤Ë°Ê²¼¤Î¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£<br /><br /><br />¡¦" . $err_detail); 
     77        sfDispSiteError(FREE_ERROR_MSG, "", false, "購入処理中に以下のエラーが発生しました。<br /><br /><br />・" . $err_detail); 
    7878     
    79     // ÄÌ¿®·ë²ÌÀµ¾ï 
     79    // 通信結果正常 
    8080    } else { 
    8181 
     
    8787        gfPrintLog("remise conveni finish end  ----------", $log_path); 
    8888 
    89         // ¶â³Û¤ÎÀ°¹çÀ­¥Á¥§¥Ã¥¯ 
     89        // 金額の整合性チェック 
    9090        if ($arrData["payment_total"] != $_POST["X-TOTAL"]) { 
    91             sfDispSiteError(FREE_ERROR_MSG, "", false, "¹ØÆþ½èÍýÃæ¤Ë°Ê²¼¤Î¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£<br /><br /><br />¡¦ÀÁµá¶â³Û¤È»Ùʧ¤¤¶â³Û¤¬°ã¤¤¤Þ¤¹¡£"); 
     91            sfDispSiteError(FREE_ERROR_MSG, "", false, "購入処理中に以下のエラーが発生しました。<br /><br /><br />・請求金額と支払い金額が違います。"); 
    9292        } 
    9393         
    94         // Àµ¾ï¤Ê¿ä°Ü¤Ç¤¢¤ë¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     94        // 正常な推移であることを記録しておく 
    9595        $objSiteSess->setRegistFlag(); 
    9696         
    97         // ¥ë¥ß¡¼¥º¤«¤é¤ÎÃͤμèÆÀ 
    98         $job_id = lfSetConvMSG("¥¸¥ç¥ÖID(REMISE)", $_POST["X-JOB_ID"]); 
    99         $payment_limit = lfSetConvMSG("»Ùʧ¤¤´ü¸Â", $_POST["X-PAYDATE"]); 
    100         $conveni_type = lfSetConvMSG("»Ùʧ¤¤¥³¥ó¥Ó¥Ë", $arrConvenience[$_POST["X-PAY_CSV"]]); 
    101         $payment_total = lfSetConvMSG("¹ç·×¶â³Û", $_POST["X-TOTAL"]); 
    102         $receipt_no = lfSetConvMSG("¥³¥ó¥Ó¥Ëʧ¤¤½Ð¤·ÈÖ¹æ", $_POST["X-PAY_NO1"]); 
     97        // ルミーズからの値の取得 
     98        $job_id = lfSetConvMSG("ジョブID(REMISE)", $_POST["X-JOB_ID"]); 
     99        $payment_limit = lfSetConvMSG("支払い期限", $_POST["X-PAYDATE"]); 
     100        $conveni_type = lfSetConvMSG("支払いコンビニ", $arrConvenience[$_POST["X-PAY_CSV"]]); 
     101        $payment_total = lfSetConvMSG("合計金額", $_POST["X-TOTAL"]); 
     102        $receipt_no = lfSetConvMSG("コンビニ払い出し番号", $_POST["X-PAY_NO1"]); 
    103103 
    104         // ¥Õ¥¡¥ß¥ê¡¼¥Þ¡¼¥È¤Î¤ßURL¤¬¤Ê¤¤ 
     104        // ファミリーマートのみURLがない 
    105105        if ($_POST["X-PAY_CSV"] != "D030") { 
    106             $payment_url = lfSetConvMSG("¥³¥ó¥Ó¥Ëʧ¤¤½Ð¤·URL", $_POST["X-PAY_NO2"]); 
     106            $payment_url = lfSetConvMSG("コンビニ払い出しURL", $_POST["X-PAY_NO2"]); 
    107107        } else { 
    108             $payment_url = lfSetConvMSG("ÃíʸÈÖ¹æ", $_POST["X-PAY_NO2"]); 
     108            $payment_url = lfSetConvMSG("注文番号", $_POST["X-PAY_NO2"]); 
    109109        } 
    110110         
    111         $arrRet['cv_type'] = $conveni_type;             // ¥³¥ó¥Ó¥Ë¤Î¼ïÎà 
    112         $arrRet['cv_payment_url'] = $payment_url;       // ʧ¹þɼURL(PC) 
    113         $arrRet['cv_receipt_no'] = $receipt_no;         // ʧ¹þɼÈÖ¹æ 
    114         $arrRet['cv_payment_limit'] = $payment_limit;   // »Ùʧ¤¤´ü¸Â 
    115         $arrRet['title'] = lfSetConvMSG("¥³¥ó¥Ó¥Ë·èºÑ", true); 
     111        $arrRet['cv_type'] = $conveni_type;             // コンビニの種類 
     112        $arrRet['cv_payment_url'] = $payment_url;       // 払込票URL(PC) 
     113        $arrRet['cv_receipt_no'] = $receipt_no;         // 払込票番号 
     114        $arrRet['cv_payment_limit'] = $payment_limit;   // 支払い期限 
     115        $arrRet['title'] = lfSetConvMSG("コンビニ決済", true); 
    116116         
    117         // ·èºÑÁ÷¿®¥Ç¡¼¥¿ºîÀ® 
     117        // 決済送信データ作成 
    118118        $arrModule['module_id'] = MDL_REMISE_ID; 
    119119        $arrModule['payment_total'] = $arrData["payment_total"]; 
    120120        $arrModule['payment_id'] = PAYMENT_CONVENIENCE_ID; 
    121121         
    122         // ¥¹¥Æ¡¼¥¿¥¹¤Ï̤Æþ¶â¤Ë¤¹¤ë 
     122        // ステータスは未入金にする 
    123123        $sqlval['status'] = 2; 
    124124         
    125         // ¥³¥ó¥Ó¥Ë·èºÑ¾ðÊó¤ò³ÊǼ 
     125        // コンビニ決済情報を格納 
    126126        $sqlval['conveni_data'] = serialize($arrRet); 
    127127        $sqlval['memo01'] = PAYMENT_CONVENIENCE_ID; 
     
    131131        $sqlval['memo05'] = serialize($arrModule); 
    132132 
    133         // ¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Ë¹¹¿· 
     133        // 受注一時テーブルに更新 
    134134        sfRegistTempOrder($uniqid, $sqlval); 
    135135 
     
    138138} 
    139139 
    140 // EC-CUBE¦¤ÎÄÌÃÎÍÑURL 
     140// EC-CUBE側の通知用URL 
    141141$retUrl = SITE_URL . 'shopping/load_payment_module.php?module_id=' . MDL_REMISE_ID; 
    142142$exitUrl = SITE_URL . 'shopping/load_payment_module.php'; 
    143143$tel = $arrData["order_tel01"].$arrData["order_tel02"].$arrData["order_tel03"]; 
    144144 
    145 // ½»½êÀ°·Á 
     145// 住所整形 
    146146$pref = $arrPref[$arrData["order_pref"]]; 
    147147$address1 = mb_convert_kana($arrData["order_addr01"], "ASKHV"); 
    148148$address2 = mb_convert_kana($arrData["order_addr02"], "ASKHV"); 
    149149 
    150 // ¾¦ÉÊ̾À°·Á(ºÇÂç7¸Ä¤Î¤¿¤á¡¢¾¦ÉÊÂå¶â¤È¤·¤ÆÁ´ÂΤǽÐÎϤ¹¤ë) 
    151 $itemName = "¾¦ÉÊÂå¶â"; 
     150// 商品名整形(最大7個のため、商品代金として全体で出力する) 
     151$itemName = "商品代金"; 
    152152$itemPlace = $arrData["payment_total"] - $arrData["deliv_fee"]; 
    153153 
    154154$arrSendData = array( 
    155     'SEND_URL' => $arrPayment[0]["memo05"],     // ÀܳÀèURL 
    156     'S_TORIHIKI_NO' => $arrData["order_id"],        // ÀÁµáÈÖ¹æ(EC-CUBE) 
    157     'MAIL' => $arrData["order_email"],              // ¥á¡¼¥ë¥¢¥É¥ì¥¹ 
    158     'NAME1' => $arrData["order_name01"],            // ¥æ¡¼¥¶¡¼Ì¾1 
    159     'NAME2' => $arrData["order_name02"],            // ¥æ¡¼¥¶¡¼Ì¾2 
    160     'KANA1' => $arrData["order_kana01"],            // ¥æ¡¼¥¶¡¼Ì¾(¥«¥Ê)1 
    161     'KANA2' => $arrData["order_kana02"],            // ¥æ¡¼¥¶¡¼Ì¾(¥«¥Ê)2 
    162     'TEL' => $tel,                                  // ÅÅÏÃÈÖ¹æ 
    163     'YUBIN1' => $arrData["order_zip01"],            // ͹ÊØÈÖ¹æ1 
    164     'YUBIN2' => $arrData["order_zip02"],            // ͹ÊØÈÖ¹æ2 
    165     'ADD1' => $pref,                                // ½»½ê1 
    166     'ADD2' => $address1,                            // ½»½ê2 
    167     'ADD3' => $address2,                            // ½»½ê3 
    168     'MSUM_01' => $arrData["subtotal"],              // ¶â³Û 
    169     'TAX' => $arrData["deliv_fee"],                 // Á÷ÎÁ + ÀÇ 
    170     'TOTAL' => $arrData["payment_total"],           // ¹ç·×¶â³Û 
    171     'SHOPCO' => $arrPayment[0]["memo01"],           // ŹÊÞ¥³¡¼¥É 
    172     'HOSTID' => $arrPayment[0]["memo02"],           // ¥Û¥¹¥ÈID 
    173     'RETURL' => $retUrl,                            // ´°Î»ÄÌÃÎURL 
    174     'NG_RETURL' => $retUrl,                     // NG´°Î»ÄÌÃÎURL 
    175     'EXITURL' => $exitUrl,                          // Ìá¤êÀèURL 
    176     'MNAME_01' => $itemName,                        // ¾¦ÉÊ̾ 
    177     'MSUM_01' => $itemPlace,                        // ¾¦ÉÊÂå¶â¹ç·×(Á÷ÎÁ+Àǰʳ°) 
     155    'SEND_URL' => $arrPayment[0]["memo05"],     // 接続先URL 
     156    'S_TORIHIKI_NO' => $arrData["order_id"],        // 請求番号(EC-CUBE) 
     157    'MAIL' => $arrData["order_email"],              // メールアドレス 
     158    'NAME1' => $arrData["order_name01"],            // ユーザー名1 
     159    'NAME2' => $arrData["order_name02"],            // ユーザー名2 
     160    'KANA1' => $arrData["order_kana01"],            // ユーザー名(カナ)1 
     161    'KANA2' => $arrData["order_kana02"],            // ユーザー名(カナ)2 
     162    'TEL' => $tel,                                  // 電話番号 
     163    'YUBIN1' => $arrData["order_zip01"],            // 郵便番号1 
     164    'YUBIN2' => $arrData["order_zip02"],            // 郵便番号2 
     165    'ADD1' => $pref,                                // 住所1 
     166    'ADD2' => $address1,                            // 住所2 
     167    'ADD3' => $address2,                            // 住所3 
     168    'MSUM_01' => $arrData["subtotal"],              // 金額 
     169    'TAX' => $arrData["deliv_fee"],                 // 送料 + 税 
     170    'TOTAL' => $arrData["payment_total"],           // 合計金額 
     171    'SHOPCO' => $arrPayment[0]["memo01"],           // 店舗コード 
     172    'HOSTID' => $arrPayment[0]["memo02"],           // ホストID 
     173    'RETURL' => $retUrl,                            // 完了通知URL 
     174    'NG_RETURL' => $retUrl,                     // NG完了通知URL 
     175    'EXITURL' => $exitUrl,                          // 戻り先URL 
     176    'MNAME_01' => $itemName,                        // 商品名 
     177    'MSUM_01' => $itemPlace,                        // 商品代金合計(送料+税以外) 
    178178    'REMARKS3' => MDL_REMISE_POST_VALUE 
    179179); 
     
    183183$objView->assignobj($objPage); 
    184184 
    185 // ½ÐÎÏÆâÍƤòSJIS¤Ë¤¹¤ë(¥ë¥ß¡¼¥ºÂбþ) 
     185// 出力内容をSJISにする(ルミーズ対応) 
    186186mb_http_output(REMISE_SEND_ENCODE); 
    187187$objView->display(MODULE_PATH . "mdl_remise/convenience.tpl"); 
Note: See TracChangeset for help on using the changeset viewer.