Ignore:
Timestamp:
2007/10/29 12:06:29 (16 years ago)
Author:
nanasess
Message:

ライセンス表記変更

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/feature-module-update/data/downloads/module/mdl_epsilon/mdl_epsilon.php

    r15532 r16582  
    11<?php 
     2/* 
     3 * This file is part of EC-CUBE 
     4 * 
     5 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved. 
     6 * 
     7 * http://www.lockon.co.jp/ 
     8 * 
     9 * This program is free software; you can redistribute it and/or 
     10 * modify it under the terms of the GNU General Public License 
     11 * as published by the Free Software Foundation; either version 2 
     12 * of the License, or (at your option) any later version. 
     13 * 
     14 * This program is distributed in the hope that it will be useful, 
     15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 
     16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
     17 * GNU General Public License for more details. 
     18 * 
     19 * You should have received a copy of the GNU General Public License 
     20 * along with this program; if not, write to the Free Software 
     21 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. 
     22 */ 
     23 
    224/** 
    3  *  
     25 * 
    426 * @copyright   2000-2007 LOCKON CO.,LTD. All Rights Reserved. 
    5  * @version CVS: $Id$ 
     27 * @version CVS: $Id:mdl_epsilon.php 15532 2007-08-31 14:39:46Z nanasess $ 
    628 * @link        http://www.lockon.co.jp/ 
    729 * 
     
    1032 
    1133$arrPayment = array( 
    12     1 => 'クレジット', 
    13     2 => 'コンビニ' 
     34    1 => 'クレジット', 
     35    2 => 'コンビニ' 
    1436); 
    1537 
    1638$arrCredit = array( 
    17     1 => 'VISA, MASTER, Diners', 
    18     2 => 'JCB, AMEX' 
     39    1 => 'VISA, MASTER, Diners', 
     40    2 => 'JCB, AMEX' 
    1941); 
    2042 
    2143//ページ管理クラス 
    2244class LC_Page { 
    23     //コンストラクタ 
    24     function LC_Page() { 
    25         //メインテンプレートの指定 
    26         $this->tpl_mainpage = MODULE_PATH . 'mdl_epsilon/mdl_epsilon.tpl'; 
    27         $this->tpl_subtitle = 'イプシロン決済モジュール'; 
    28         global $arrPayment; 
    29         $this->arrPayment = $arrPayment; 
    30         global $arrCredit; 
    31         $this->arrCredit = $arrCredit; 
    32         global $arrConvenience; 
    33         $this->arrConvenience = $arrConvenience; 
    34     } 
     45    //コンストラクタ 
     46    function LC_Page() { 
     47        //メインテンプレートの指定 
     48        $this->tpl_mainpage = MODULE_PATH . 'mdl_epsilon/mdl_epsilon.tpl'; 
     49        $this->tpl_subtitle = 'イプシロン決済モジュール'; 
     50        global $arrPayment; 
     51        $this->arrPayment = $arrPayment; 
     52        global $arrCredit; 
     53        $this->arrCredit = $arrCredit; 
     54        global $arrConvenience; 
     55        $this->arrConvenience = $arrConvenience; 
     56    } 
    3557} 
    3658$objPage = new LC_Page(); 
     
    5678switch($_POST['mode']) { 
    5779case 'edit': 
    58     // 入力エラー判定 
    59     $objPage->arrErr = lfCheckError(); 
    60  
    61     // エラーなしの場合にはデータを更新  
    62     if(count($objPage->arrErr) == 0) { 
    63         // データ更新 
    64         lfUpdPaymentDB(); 
    65          
    66         // javascript実行 
    67         $objPage->tpl_onload = 'alert("登録完了しました。\n基本情報>支払方法設定より詳細設定をしてください。"); window.close();'; 
    68     } 
    69     break; 
     80    // 入力エラー判定 
     81    $objPage->arrErr = lfCheckError(); 
     82 
     83    // エラーなしの場合にはデータを更新 
     84    if(count($objPage->arrErr) == 0) { 
     85        // データ更新 
     86        lfUpdPaymentDB(); 
     87 
     88        // javascript実行 
     89        $objPage->tpl_onload = 'alert("登録完了しました。\n基本情報>支払方法設定より詳細設定をしてください。"); window.close();'; 
     90    } 
     91    break; 
    7092case 'module_del': 
    71     // 汎用項目の存在チェック 
    72     if(sfColumnExists("dtb_payment", "memo01")){ 
    73         // データの削除フラグをたてる 
    74         $objQuery->query("UPDATE dtb_payment SET del_flg = 1 WHERE module_id = ?", array(MDL_EPSILON_ID)); 
    75     } 
    76     break; 
     93    // 汎用項目の存在チェック 
     94    if(sfColumnExists("dtb_payment", "memo01")){ 
     95        // データの削除フラグをたてる 
     96        $objQuery->query("UPDATE dtb_payment SET del_flg = 1 WHERE module_id = ?", array(MDL_EPSILON_ID)); 
     97    } 
     98    break; 
    7799default: 
    78     // データのロード 
    79     lfLoadData();    
    80     break; 
     100    // データのロード 
     101    lfLoadData(); 
     102    break; 
    81103} 
    82104 
     
    88110/* パラメータ情報の初期化 */ 
    89111function lfInitParam($objFormParam) { 
    90     $objFormParam->addParam("契約コード", "code", INT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
    91     $objFormParam->addParam("接続先URL", "url", URL_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "URL_CHECK")); 
    92     $objFormParam->addParam("利用決済", "payment", "", "", array("EXIST_CHECK")); 
    93     $objFormParam->addParam("利用クレジット", "credit");    
    94     $objFormParam->addParam("利用コンビニ", "convenience");    
    95     return $objFormParam; 
     112    $objFormParam->addParam("契約コード", "code", INT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
     113    $objFormParam->addParam("接続先URL", "url", URL_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "URL_CHECK")); 
     114    $objFormParam->addParam("利用決済", "payment", "", "", array("EXIST_CHECK")); 
     115    $objFormParam->addParam("利用クレジット", "credit"); 
     116    $objFormParam->addParam("利用コンビニ", "convenience"); 
     117    return $objFormParam; 
    96118} 
    97119 
    98120// エラーチェックを行う 
    99121function lfCheckError(){ 
    100     global $objFormParam; 
    101      
    102     $arrErr = $objFormParam->checkError(); 
    103      
    104     // 利用クレジット、利用コンビニのエラーチェック 
    105     $arrChkPay = $_POST["payment"]; 
    106     foreach((array)$arrChkPay as $key => $val){ 
    107         // 利用クレジット 
    108         if($val == 1 and count($_POST["credit"]) <= 0){ 
    109             $arrErr["credit"] = "利用クレジットが選択されていません。<br />"; 
    110         } 
    111         // 利用コンビニ 
    112         if($val == 2 and count($_POST["convenience"]) <= 0){ 
    113             $arrErr["convenience"] = "利用コンビニが選択されていません。<br />"; 
    114         } 
    115     } 
    116  
    117     // ssl対応判定 
    118     if(!extension_loaded('openssl') and ereg( "^https://", $_POST["url"] )){ 
    119         $arrErr["url"] = "このサーバーはSSLに対応していません。<br>httpで接続してください。"; 
    120     } 
    121  
    122     // 接続チェックを行う 
    123     if(count($arrErr) == 0) $arrErr = lfChkConnect(); 
    124  
    125     return $arrErr; 
     122    global $objFormParam; 
     123 
     124    $arrErr = $objFormParam->checkError(); 
     125 
     126    // 利用クレジット、利用コンビニのエラーチェック 
     127    $arrChkPay = $_POST["payment"]; 
     128    foreach((array)$arrChkPay as $key => $val){ 
     129        // 利用クレジット 
     130        if($val == 1 and count($_POST["credit"]) <= 0){ 
     131            $arrErr["credit"] = "利用クレジットが選択されていません。<br />"; 
     132        } 
     133        // 利用コンビニ 
     134        if($val == 2 and count($_POST["convenience"]) <= 0){ 
     135            $arrErr["convenience"] = "利用コンビニが選択されていません。<br />"; 
     136        } 
     137    } 
     138 
     139    // ssl対応判定 
     140    if(!extension_loaded('openssl') and ereg( "^https://", $_POST["url"] )){ 
     141        $arrErr["url"] = "このサーバーはSSLに対応していません。<br>httpで接続してください。"; 
     142    } 
     143 
     144    // 接続チェックを行う 
     145    if(count($arrErr) == 0) $arrErr = lfChkConnect(); 
     146 
     147    return $arrErr; 
    126148} 
    127149 
    128150// 接続チェックを行う 
    129151function lfChkConnect(){ 
    130     global $objQuery; 
    131     global $objPage; 
    132      
    133     $arrRet = array(); 
    134      
    135     // メールアドレス取得 
    136     $email = $objQuery->getone("SELECT email03 FROM dtb_baseinfo"); 
    137  
    138     // 契約コード     
    139     (in_array(1, (array)$_POST["payment"])) ? $cre = "1" : $cre = "0"; 
    140     (in_array(2, (array)$_POST["payment"])) ? $con = "1" : $con = "0"; 
    141     $st_code = $cre . "0" . $con . "00-0000-00000"; 
    142      
    143     // 送信データ生成 
    144     $arrSendData = array( 
    145         'contract_code' => $_POST["code"],      // 契約コード 
    146         'user_id' => "connect_test",            // ユーザID 
    147         'user_name' => "接続テスト",         // ユーザ名 
    148         'user_mail_add' => $email,              // メールアドレス 
    149         'st_code' => $st_code,                  // 決済区分 
    150         'process_code' => '3',                  // 処理区分(固定) 
    151         'xml' => '1',                           // 応答形式(固定) 
    152     ); 
    153      
    154     // データ送信 
    155     $arrXML = sfPostPaymentData($_POST["url"], $arrSendData, false); 
    156     if($arrXML == "") { 
    157         $arrRet["url"] = "接続できませんでした。<br>"; 
    158         return $arrRet;  
    159     } 
    160      
    161     // エラーがあるかチェックする 
    162     $err_code = sfGetXMLValue($arrXML,'RESULT','ERR_CODE'); 
    163     switch ($err_code) { 
    164         case "": 
    165             break; 
    166         case "607": 
    167             $arrRet["code"] = "契約コードが違います。<br>"; 
    168             return $arrRet; 
    169         default : 
    170             $arrRet["service"] = sfGetXMLValue($arrXML,'RESULT','ERR_DETAIL'); 
    171             return $arrRet; 
    172     } 
    173  
    174     // コンビニ指定があればコンビニ分ループし、チェックを行う 
    175     if(count($_POST["convenience"]) > 0){ 
    176         foreach($_POST["convenience"] as $key => $val){ 
    177             // 送信データ生成 
    178             $arrSendData['conveni_code'] = $val;            // コンビニコード 
    179             $arrSendData['user_tel'] = "0300000000";        // ダミー電話番号 
    180             $arrSendData['user_name_kana'] = "送信テスト";   // ダミー氏名(カナ) 
    181             $arrSendData['haraikomi_mail'] = 0;             // 払込メール(送信しない) 
    182              
    183             // データ送信 
    184             $arrXML = sfPostPaymentData($_POST["url"], $arrSendData, false); 
    185             if($arrXML == "") { 
    186                 $arrRet["url"] = "接続できませんでした。<br>"; 
    187                 return $arrRet;  
    188             } 
    189              
    190             // エラーがあるかチェックする 
    191             $err_code = sfGetXMLValue($arrXML,'RESULT','ERR_CODE'); 
    192             if($err_code != ""){ 
    193                 $arrRet["service"] = sfGetXMLValue($arrXML,'RESULT','ERR_DETAIL'); 
    194                 return $arrRet; 
    195             } 
    196         } 
    197     } 
    198      
    199     return $arrRet;  
     152    global $objQuery; 
     153    global $objPage; 
     154 
     155    $arrRet = array(); 
     156 
     157    // メールアドレス取得 
     158    $email = $objQuery->getone("SELECT email03 FROM dtb_baseinfo"); 
     159 
     160    // 契約コード 
     161    (in_array(1, (array)$_POST["payment"])) ? $cre = "1" : $cre = "0"; 
     162    (in_array(2, (array)$_POST["payment"])) ? $con = "1" : $con = "0"; 
     163    $st_code = $cre . "0" . $con . "00-0000-00000"; 
     164 
     165    // 送信データ生成 
     166    $arrSendData = array( 
     167        'contract_code' => $_POST["code"],      // 契約コード 
     168        'user_id' => "connect_test",            // ユーザID 
     169        'user_name' => "接続テスト",         // ユーザ名 
     170        'user_mail_add' => $email,              // メールアドレス 
     171        'st_code' => $st_code,                  // 決済区分 
     172        'process_code' => '3',                  // 処理区分(固定) 
     173        'xml' => '1',                           // 応答形式(固定) 
     174    ); 
     175 
     176    // データ送信 
     177    $arrXML = sfPostPaymentData($_POST["url"], $arrSendData, false); 
     178    if($arrXML == "") { 
     179        $arrRet["url"] = "接続できませんでした。<br>"; 
     180        return $arrRet; 
     181    } 
     182 
     183    // エラーがあるかチェックする 
     184    $err_code = sfGetXMLValue($arrXML,'RESULT','ERR_CODE'); 
     185    switch ($err_code) { 
     186        case "": 
     187            break; 
     188        case "607": 
     189            $arrRet["code"] = "契約コードが違います。<br>"; 
     190            return $arrRet; 
     191        default : 
     192            $arrRet["service"] = sfGetXMLValue($arrXML,'RESULT','ERR_DETAIL'); 
     193            return $arrRet; 
     194    } 
     195 
     196    // コンビニ指定があればコンビニ分ループし、チェックを行う 
     197    if(count($_POST["convenience"]) > 0){ 
     198        foreach($_POST["convenience"] as $key => $val){ 
     199            // 送信データ生成 
     200            $arrSendData['conveni_code'] = $val;            // コンビニコード 
     201            $arrSendData['user_tel'] = "0300000000";        // ダミー電話番号 
     202            $arrSendData['user_name_kana'] = "送信テスト";   // ダミー氏名(カナ) 
     203            $arrSendData['haraikomi_mail'] = 0;             // 払込メール(送信しない) 
     204 
     205            // データ送信 
     206            $arrXML = sfPostPaymentData($_POST["url"], $arrSendData, false); 
     207            if($arrXML == "") { 
     208                $arrRet["url"] = "接続できませんでした。<br>"; 
     209                return $arrRet; 
     210            } 
     211 
     212            // エラーがあるかチェックする 
     213            $err_code = sfGetXMLValue($arrXML,'RESULT','ERR_CODE'); 
     214            if($err_code != ""){ 
     215                $arrRet["service"] = sfGetXMLValue($arrXML,'RESULT','ERR_DETAIL'); 
     216                return $arrRet; 
     217            } 
     218        } 
     219    } 
     220 
     221    return $arrRet; 
    200222} 
    201223 
    202224// 登録データを読み込む 
    203225function lfLoadData(){ 
    204     global $objFormParam; 
    205      
    206     //データを取得 
    207     $arrRet = lfGetPaymentDB(" AND del_flg = '0'"); 
    208      
    209     // 値をセット 
    210     $objFormParam->setParam($arrRet[0]); 
    211  
    212     // 画面表示用にデータを変換 
    213     $arrDisp = array(); 
    214     foreach($arrRet as $key => $val){ 
    215         // 利用決済を表示用に変換 
    216         $arrDisp["payment"][$key] = $val["payment"]; 
    217          
    218         // クレジットの決済区分を取得 
    219         if($val["payment"] == 1) $credit = $val["payment_code"]; 
    220          
    221         // コンビニ 
    222         if($val["payment"] == 2) $arrDisp["convenience"] = $val["convenience"]; 
    223     } 
    224     $objFormParam->setParam($arrDisp); 
    225     $objFormParam->splitParamCheckBoxes("convenience"); 
    226      
    227     // クレジット 
    228     if(substr($credit, 0, 1)) $arrCredit["credit"][] = 1; 
    229     if(substr($credit, 1, 1)) $arrCredit["credit"][] = 2; 
    230     $objFormParam->setParam($arrCredit); 
     226    global $objFormParam; 
     227 
     228    //データを取得 
     229    $arrRet = lfGetPaymentDB(" AND del_flg = '0'"); 
     230 
     231    // 値をセット 
     232    $objFormParam->setParam($arrRet[0]); 
     233 
     234    // 画面表示用にデータを変換 
     235    $arrDisp = array(); 
     236    foreach($arrRet as $key => $val){ 
     237        // 利用決済を表示用に変換 
     238        $arrDisp["payment"][$key] = $val["payment"]; 
     239 
     240        // クレジットの決済区分を取得 
     241        if($val["payment"] == 1) $credit = $val["payment_code"]; 
     242 
     243        // コンビニ 
     244        if($val["payment"] == 2) $arrDisp["convenience"] = $val["convenience"]; 
     245    } 
     246    $objFormParam->setParam($arrDisp); 
     247    $objFormParam->splitParamCheckBoxes("convenience"); 
     248 
     249    // クレジット 
     250    if(substr($credit, 0, 1)) $arrCredit["credit"][] = 1; 
     251    if(substr($credit, 1, 1)) $arrCredit["credit"][] = 2; 
     252    $objFormParam->setParam($arrCredit); 
    231253} 
    232254 
    233255// DBからデータを取得する 
    234256function lfGetPaymentDB($where = "", $arrWhereVal = array()){ 
    235     global $objQuery; 
    236      
    237     $arrVal = array(MDL_EPSILON_ID); 
    238     $arrVal = array_merge($arrVal, $arrWhereVal); 
    239      
    240     $arrRet = array(); 
    241     $sql = "SELECT  
    242                 module_id,  
    243                 memo01 as code,  
    244                 memo02 as url,  
    245                 memo03 as payment, 
    246                 memo04 as payment_code,  
    247                 memo05 as convenience 
    248             FROM dtb_payment WHERE module_id = ? " . $where; 
    249     $arrRet = $objQuery->getall($sql, $arrVal); 
    250  
    251     return $arrRet; 
     257    global $objQuery; 
     258 
     259    $arrVal = array(MDL_EPSILON_ID); 
     260    $arrVal = array_merge($arrVal, $arrWhereVal); 
     261 
     262    $arrRet = array(); 
     263    $sql = "SELECT 
     264                module_id, 
     265                memo01 as code, 
     266                memo02 as url, 
     267                memo03 as payment, 
     268                memo04 as payment_code, 
     269                memo05 as convenience 
     270            FROM dtb_payment WHERE module_id = ? " . $where; 
     271    $arrRet = $objQuery->getall($sql, $arrVal); 
     272 
     273    return $arrRet; 
    252274} 
    253275 
     
    255277// データの更新処理 
    256278function lfUpdPaymentDB(){ 
    257     global $objQuery; 
    258     global $objSess; 
    259      
    260     // 利用コンビニにチェックが入っている場合には、ハイフン区切りに編集する 
    261     $convCnt = count($_POST["convenience"]); 
    262     if($convCnt > 0){ 
    263         $convenience = $_POST["convenience"][0]; 
    264         for($i = 1 ; $i < $convCnt ; $i++){ 
    265             $convenience .= "-" . $_POST["convenience"][$i]; 
    266         } 
    267     } 
    268          
    269     // del_flgを削除にしておく 
    270     $del_sql = "UPDATE dtb_payment SET del_flg = 1 WHERE module_id = ? "; 
    271     $arrDel = array(MDL_EPSILON_ID); 
    272     $objQuery->query($del_sql, $arrDel); 
    273      
    274     // データ登録 
    275     foreach($_POST["payment"] as $key => $val){ 
    276         // ランクの最大値を取得する 
    277         $max_rank = $objQuery->getone("SELECT max(rank) FROM dtb_payment"); 
    278  
    279         // 支払方法データを取得            
    280         $arrPaymentData = lfGetPaymentDB("AND memo03 = ?", array($val)); 
    281          
    282         // クレジットにチェックが入っていればクレジットを登録する 
    283         if($val == 1){ 
    284             (in_array(1, $_POST["credit"])) ? $visa = "1" : $visa = "0"; 
    285             (in_array(2, $_POST["credit"])) ? $jcb = "1" : $jcb = "0"; 
    286             $arrData = array(            
    287                 "payment_method" => "Epsilonクレジット" 
    288                 ,"fix" => 3 
    289                 ,"creator_id" => $objSess->member_id 
    290                 ,"create_date" => "now()" 
    291                 ,"update_date" => "now()" 
    292                 ,"upper_rule" => 500000 
    293                 ,"module_id" => MDL_EPSILON_ID 
    294                 ,"module_path" => MODULE_PATH . "mdl_epsilon/card.php" 
    295                 ,"memo01" => $_POST["code"] 
    296                 ,"memo02" => $_POST["url"] 
    297                 ,"memo03" => $val 
    298                 ,"memo04" => $visa . $jcb . "000-0000-00000" 
    299                 ,"del_flg" => "0" 
    300                 ,"charge_flg" => "2" 
    301                 ,"upper_rule_max" => CHARGE_MAX 
    302                  
    303             ); 
    304         } 
    305          
    306         // コンビニにチェックが入っていればコンビニを登録する 
    307         if($val == 2){ 
    308              
    309             // セブンイレブンのみ選択した場合には利用上限を30万にする。 
    310             if(count($_POST["convenience"]) == 1 and $_POST["convenience"][0] == 11) { 
    311                 $upper_rule_max = SEVEN_CHARGE_MAX; 
    312                 ($arrPaymentData["upper_rule"] > $upper_rule_max or $arrPaymentData["upper_rule"] == "") ? $upper_rule = $upper_rule_max : $upper_rule = $arrPaymentData["upper_rule"]; 
    313             }else{ 
    314                 $upper_rule_max = CHARGE_MAX; 
    315                 $upper_rule = $upper_rule_max; 
    316             } 
    317              
    318             $arrData = array( 
    319                 "payment_method" => "Epsilonコンビニ" 
    320                 ,"fix" => 3 
    321                 ,"creator_id" => $objSess->member_id 
    322                 ,"create_date" => "now()" 
    323                 ,"update_date" => "now()" 
    324                 ,"upper_rule" => $upper_rule 
    325                 ,"module_id" => MDL_EPSILON_ID 
    326                 ,"module_path" => MODULE_PATH . "mdl_epsilon/convenience.php" 
    327                 ,"memo01" => $_POST["code"] 
    328                 ,"memo02" => $_POST["url"] 
    329                 ,"memo03" => $val 
    330                 ,"memo04" => "00100-0000-00000" 
    331                 ,"memo05" => $convenience 
    332                 ,"del_flg" => "0" 
    333                 ,"charge_flg" => "1" 
    334                 ,"upper_rule_max" => $upper_rule_max 
    335             ); 
    336         } 
    337  
    338         // データが存在していればUPDATE、無ければINSERT 
    339         if(count($arrPaymentData) > 0){ 
    340             $objQuery->update("dtb_payment", $arrData, " module_id = '" . MDL_EPSILON_ID . "' AND memo03 = '" . $val ."'"); 
    341         }else{ 
    342             $arrData["rank"] = $max_rank + 1; 
    343             $objQuery->insert("dtb_payment", $arrData); 
    344         } 
    345     } 
     279    global $objQuery; 
     280    global $objSess; 
     281 
     282    // 利用コンビニにチェックが入っている場合には、ハイフン区切りに編集する 
     283    $convCnt = count($_POST["convenience"]); 
     284    if($convCnt > 0){ 
     285        $convenience = $_POST["convenience"][0]; 
     286        for($i = 1 ; $i < $convCnt ; $i++){ 
     287            $convenience .= "-" . $_POST["convenience"][$i]; 
     288        } 
     289    } 
     290 
     291    // del_flgを削除にしておく 
     292    $del_sql = "UPDATE dtb_payment SET del_flg = 1 WHERE module_id = ? "; 
     293    $arrDel = array(MDL_EPSILON_ID); 
     294    $objQuery->query($del_sql, $arrDel); 
     295 
     296    // データ登録 
     297    foreach($_POST["payment"] as $key => $val){ 
     298        // ランクの最大値を取得する 
     299        $max_rank = $objQuery->getone("SELECT max(rank) FROM dtb_payment"); 
     300 
     301        // 支払方法データを取得 
     302        $arrPaymentData = lfGetPaymentDB("AND memo03 = ?", array($val)); 
     303 
     304        // クレジットにチェックが入っていればクレジットを登録する 
     305        if($val == 1){ 
     306            (in_array(1, $_POST["credit"])) ? $visa = "1" : $visa = "0"; 
     307            (in_array(2, $_POST["credit"])) ? $jcb = "1" : $jcb = "0"; 
     308            $arrData = array( 
     309                "payment_method" => "Epsilonクレジット" 
     310                ,"fix" => 3 
     311                ,"creator_id" => $objSess->member_id 
     312                ,"create_date" => "now()" 
     313                ,"update_date" => "now()" 
     314                ,"upper_rule" => 500000 
     315                ,"module_id" => MDL_EPSILON_ID 
     316                ,"module_path" => MODULE_PATH . "mdl_epsilon/card.php" 
     317                ,"memo01" => $_POST["code"] 
     318                ,"memo02" => $_POST["url"] 
     319                ,"memo03" => $val 
     320                ,"memo04" => $visa . $jcb . "000-0000-00000" 
     321                ,"del_flg" => "0" 
     322                ,"charge_flg" => "2" 
     323                ,"upper_rule_max" => CHARGE_MAX 
     324 
     325            ); 
     326        } 
     327 
     328        // コンビニにチェックが入っていればコンビニを登録する 
     329        if($val == 2){ 
     330 
     331            // セブンイレブンのみ選択した場合には利用上限を30万にする。 
     332            if(count($_POST["convenience"]) == 1 and $_POST["convenience"][0] == 11) { 
     333                $upper_rule_max = SEVEN_CHARGE_MAX; 
     334                ($arrPaymentData["upper_rule"] > $upper_rule_max or $arrPaymentData["upper_rule"] == "") ? $upper_rule = $upper_rule_max : $upper_rule = $arrPaymentData["upper_rule"]; 
     335            }else{ 
     336                $upper_rule_max = CHARGE_MAX; 
     337                $upper_rule = $upper_rule_max; 
     338            } 
     339 
     340            $arrData = array( 
     341                "payment_method" => "Epsilonコンビニ" 
     342                ,"fix" => 3 
     343                ,"creator_id" => $objSess->member_id 
     344                ,"create_date" => "now()" 
     345                ,"update_date" => "now()" 
     346                ,"upper_rule" => $upper_rule 
     347                ,"module_id" => MDL_EPSILON_ID 
     348                ,"module_path" => MODULE_PATH . "mdl_epsilon/convenience.php" 
     349                ,"memo01" => $_POST["code"] 
     350                ,"memo02" => $_POST["url"] 
     351                ,"memo03" => $val 
     352                ,"memo04" => "00100-0000-00000" 
     353                ,"memo05" => $convenience 
     354                ,"del_flg" => "0" 
     355                ,"charge_flg" => "1" 
     356                ,"upper_rule_max" => $upper_rule_max 
     357            ); 
     358        } 
     359 
     360        // データが存在していればUPDATE、無ければINSERT 
     361        if(count($arrPaymentData) > 0){ 
     362            $objQuery->update("dtb_payment", $arrData, " module_id = '" . MDL_EPSILON_ID . "' AND memo03 = '" . $val ."'"); 
     363        }else{ 
     364            $arrData["rank"] = $max_rank + 1; 
     365            $objQuery->insert("dtb_payment", $arrData); 
     366        } 
     367    } 
    346368} 
    347369 
    348370// コンビニ入金確認処理 
    349371function lfEpsilonCheck(){ 
    350     global $objQuery; 
    351      
    352     // trans_code を指定されていて且つ、入金済みの場合 
    353     if($_POST["trans_code"] != "" and $_POST["paid"] == 1 and $_POST["order_number"] != ""){ 
    354         // ステータスを入金済みに変更する 
    355         $sql = "UPDATE dtb_order SET status = 6, update_date = now() WHERE order_id = ? AND memo04 = ? "; 
    356         $objQuery->query($sql, array($_POST["order_number"], $_POST["trans_code"])); 
    357          
    358         // POSTの内容を全てログ保存 
    359         $log_path = DATA_PATH . "logs/epsilon.log"; 
    360         gfPrintLog("epsilon conveni start---------------------------------------------------------", $log_path); 
    361         foreach($_POST as $key => $val){ 
    362             gfPrintLog( "\t" . $key . " => " . $val, $log_path); 
    363         } 
    364         gfPrintLog("epsilon conveni end-----------------------------------------------------------", $log_path); 
    365          
    366         //応答結果を表示 
    367         echo "1"; 
    368     } 
     372    global $objQuery; 
     373 
     374    // trans_code を指定されていて且つ、入金済みの場合 
     375    if($_POST["trans_code"] != "" and $_POST["paid"] == 1 and $_POST["order_number"] != ""){ 
     376        // ステータスを入金済みに変更する 
     377        $sql = "UPDATE dtb_order SET status = 6, update_date = now() WHERE order_id = ? AND memo04 = ? "; 
     378        $objQuery->query($sql, array($_POST["order_number"], $_POST["trans_code"])); 
     379 
     380        // POSTの内容を全てログ保存 
     381        $log_path = DATA_PATH . "logs/epsilon.log"; 
     382        gfPrintLog("epsilon conveni start---------------------------------------------------------", $log_path); 
     383        foreach($_POST as $key => $val){ 
     384            gfPrintLog( "\t" . $key . " => " . $val, $log_path); 
     385        } 
     386        gfPrintLog("epsilon conveni end-----------------------------------------------------------", $log_path); 
     387 
     388        //応答結果を表示 
     389        echo "1"; 
     390    } 
    369391} 
    370392 
Note: See TracChangeset for help on using the changeset viewer.