Changeset 16911 for branches


Ignore:
Timestamp:
2007/12/13 22:31:09 (19 years ago)
Author:
adachi
Message:

暫定コミット(サイバーソース決済モジュール)

Location:
branches/beta/data/downloads/module/mdl_cybs
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/beta/data/downloads/module/mdl_cybs/class/mdl_cybs_config.php

    r16906 r16911  
    5050     */ 
    5151    function _getConfig() { 
     52        // FIXME cybs_key_path¤Ï»ÈÍѤ·¤Ê¤¤ 
    5253        $sql =<<<END 
    5354SELECT 
  • branches/beta/data/downloads/module/mdl_cybs/mdl_cybs.inc

    r16908 r16911  
    11<?php 
     2/** 
     3 * ¥µ¥¤¥Ð¡¼¥½¡¼¥¹¥â¥¸¥å¡¼¥ë¤Ç¶¦ÄÌ»ÈÍѤ¹¤ëÄê¿ô¡¦ÇÛÎ󡦴ؿô·² 
     4 * 
     5 */ 
     6 
    27// ¥â¥¸¥å¡¼¥ëÈÖ¹æ 
    38define('MDL_CYBS_ID', 14); 
     
    1318// ¥Æ¥¹¥ÈURL 
    1419define('MDL_CYBS_REQUEST_URL_TEST', 'ics2test.ic3.com'); 
     20 
    1521// ¥ê¥¯¥¨¥¹¥ÈÀèURLÇÛÎó 
    1622$arrCybsRequestURL = array( 
     
    4450    'ETIMEOUT' => '¥ê¥¯¥¨¥¹¥È¤¬¥¿¥¤¥à¥¢¥¦¥È¤·¤Þ¤·¤¿¡£', 
    4551); 
     52 
     53// »ÈÍѤ¹¤ë²Ý¶âÉÑÅÙ 
     54define('MDL_CYBS_SUBS_FREQ', '1'); 
     55 
     56// ²Ý¶âÉÑÅÙ 
     57$arrSubsFrequency = array( 
     58    '1' => 'weekly', 
     59    '2' => 'bi-weekly', 
     60    '3' => 'semi-monthly', 
     61    '4' => 'monthly', 
     62    '5' => 'quarterly', 
     63    '6' => 'quad-weekly', 
     64    '7' => 'semi-annually', 
     65    '8' => 'annually', 
     66); 
     67 
     68// ²Ý¶âÉÑÅÙ¤Îɽ¼¨Ì¾ 
     69$arrSubsFrequencyDisp = array( 
     70    '1' => '½µ1 ²ó', 
     71    '2' => '2 ½µ1 ²ó', 
     72    '3' => 'Ⱦ·î1²ó', 
     73    '4' => '1 ¥ö·î1 ²ó', 
     74    '5' => '3 ¥ö·î1 ²ó', 
     75    '6' => '4 ½µ1 ²ó', 
     76    '7' => 'Ⱦǯ1²ó', 
     77    '8' => '1 ǯ1 ²ó', 
     78); 
     79 
     80// ¥µ¥Ö¥¹¥¯¥ê¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¥«¡¼¥É¤Î¼ïÎà 
     81define('MDL_CYBS_SUBS_CARD', '001'); 
     82 
     83// 
    4684?> 
  • branches/beta/data/downloads/module/mdl_cybs/mdl_cybs.php

    r16908 r16911  
    11<?php 
     2/** 
     3 * ¥â¥¸¥å¡¼¥ë¥Ð¡¼¥¸¥ç¥óɽµ­ 
     4 * @version CVS: $Id$ 
     5 */ 
    26require_once 'mdl_cybs.inc'; 
    37require_once 'class/mdl_cybs_config.php'; 
     
    3337    break; 
    3438 
    35 // ¥â¥¸¥å¡¼¥ë¤Îºï½ü 
    36 case 'module_del': 
    37     break; 
    38  
    3939// Ä̾ïɽ¼¨ 
    4040default: 
     
    6464    $objForm->addParam('¥ê¥¯¥¨¥¹¥ÈÀè', 'cybs_request_url', INT_LEN, '', array('EXIST_CHECK', 'NUM_CHECK', 'MAX_LENGTH_CHECK')); 
    6565    $objForm->addParam('¥Þ¡¼¥Á¥ã¥ó¥ÈID', 'cybs_merchant_id', MTEXT_LEN, '', array('EXIST_CHECK', 'MAX_LENGTH_CHECK')); 
    66     $objForm->addParam('¸°¡¦¾ÚÌÀ½ñ¥Ñ¥¹', 'cybs_key_path', MTEXT_LEN, '', array('EXIST_CHECK', 'MAX_LENGTH_CHECK'), MDL_CYBS_KEY_PATH); 
    6766    $objForm->addParam('¥µ¥Ö¥¹¥¯¥ê¥×¥·¥ç¥ó¥µ¡¼¥Ó¥¹', 'cybs_subs_use', INT_LEN, '', array('NUM_CHECK', 'MAX_LENGTH_CHECK')); 
    6867 
     
    8382    if ($arrErr) return $arrErr; 
    8483 
    85     $mid = $objForm->getValue('cybs_merchant_id'); 
    86     $basePath = $objForm->getValue('cybs_key_path'); 
    87     $arrFileTypes = array('crt', 'pvt', 'pwd'); 
    88  
    89     // ¸°¡¦¾ÚÌÀ½ñ¤Î¸ºß¥Á¥§¥Ã¥¯ 
    90     $notFound = false; 
    91     foreach ($arrFileTypes as $fileType) { 
    92         // /opt/CyberSource/SDK/keys/***.crt 
    93         $path = $basePath . $mid . '.' . $fileType; 
    94         if (!file_exists($path)) { 
    95             $notFound = true; 
    96             break; 
    97         } 
    98     } 
    99     if ($notFound) { 
    100         return array('cybs_key_path' => $path . "¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£<br>"); 
    101     } 
    10284    return null; 
    10385} 
  • branches/beta/data/downloads/module/mdl_cybs/mdl_cybs.tpl

    r16906 r16911  
    114114                                        </tr> 
    115115                                        <tr class="fs12n"> 
    116                                             <td width="" bgcolor="#f3f3f3">¸°¡¦¾ÚÌÀ½ñ¥Ñ¥¹<span class="red"> ¢¨</span></td> 
    117                                             <td width="300" bgcolor="#ffffff"> 
    118                                             <!--{assign var=key value="cybs_key_path"}--> 
    119                                             <span class="red12"><!--{$arrErr[$key]}--></span> 
    120                                             <input type="text" name="<!--{$key}-->" style="ime-mode:disabled; <!--{$arrErr[$key]|sfGetErrorColor}-->" value="<!--{$arrForm[$key].value}-->" class="box40" maxlength="<!--{$arrForm[$key].length}-->"> 
    121                                             </td> 
    122                                         </tr> 
    123                                         <tr class="fs12n"> 
    124116                                            <td width="" bgcolor="#f3f3f3">¥µ¥Ö¥¹¥¯¥ê¥×¥·¥ç¥ó¥µ¡¼¥Ó¥¹</td> 
    125117                                            <td width="300" bgcolor="#ffffff"> 
  • branches/beta/data/downloads/module/mdl_cybs/mdl_cybs_credit.php

    r16908 r16911  
    154154    $objRequest->add_request("server_host", $arrCybsRequestURL[$arrConfig['cybs_request_url']]); 
    155155    $objRequest->add_request("server_port", "80"); 
    156     $objRequest->add_request("ics_applications", "ics_auth"); 
    157     $objRequest->add_request("merchant_id", $arrConfig['cybs_merchant_id']); 
    158156    $objRequest->add_request("customer_cc_number", $cardNo); 
    159157    $objRequest->add_request("customer_cc_expmo", $expMo); 
     
    168166    $objRequest->add_request("bill_zip", $arrData['order_zip01'] . $arrData['order_zip02']); 
    169167    $objRequest->add_request("bill_country", "JP"); 
     168    $objRequest->add_request("merchant_id", $arrConfig['cybs_merchant_id']); 
    170169    $objRequest->add_request("merchant_ref_number", $arrData['order_id']); 
    171170    $objRequest->add_request("currency", "JPY"); 
     171 
     172    if ($arrConfig['cybs_subs_use']) { 
     173        lfAddSubsParam($objRequest, $arrConfig, $arrData); 
     174    } else { 
     175        lfAddAuthParam($objRequest, $arrForm, $arrData); 
     176    } 
     177 
     178    $request_array = $objRequest->requests; 
     179    gfPrintLog(print_r($request_array, true), MDL_CYBS_LOG); 
     180gfPrintLog(print_r($arrConfig, true), MDL_CYBS_LOG); 
     181    if( ($result = cybs_send($request_array)) == false ) { 
     182      print("error"); 
     183      gfPrintLog('#### cybs_send() error ###' , MDL_CYBS_LOG); 
     184      exit; 
     185    } 
     186 
     187sfPrintR($request_array); 
     188ksort($result); 
     189sfPrintR($result); 
     190 
     191    return $result; 
     192} 
     193 
     194/** 
     195 * ¥ê¥¯¥¨¥¹¥È¤Î¥¨¥é¡¼¥Á¥§¥Ã¥¯ 
     196 * 
     197 * @param array $arrResults 
     198 * @return boolean|PEAR::Error 
     199 */ 
     200function lfIsError($arrResults) { 
     201    global $arrIcsAuthErr; 
     202    $ret = null; 
     203 
     204    switch ($arrResults['ics_rcode']) { 
     205    // À®¸ù 
     206    case '1': 
     207        $ret = true; 
     208        break; 
     209    case '0': 
     210        $msg = "½èÍý¤¬µñÈݤµ¤ì¤Þ¤·¤¿¡£\n" . $arrIcsAuthErr[$arrResults['ics_rflag']]; 
     211        $ret = PEAR::raiseError($msg); 
     212        break; 
     213    case '-1': 
     214        $msg = "¥·¥¹¥Æ¥à¤Þ¤¿¤Ï¥Í¥Ã¥È¥ï¡¼¥¯¥¨¥é¡¼¤Ë¤è¤ê½èÍý¤¬¥¨¥é¡¼¤È¤Ê¤ê¤Þ¤·¤¿¡£\n" . $arrIcsAuthErr[$arrResults['ics_rflag']]; 
     215        $ret = PEAR::raiseError($msg); 
     216        break; 
     217    default: 
     218        $ret = PEAR::raiseError("ÉÔÌÀ¤Ê¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£\n"); 
     219    } 
     220 
     221    return $ret; 
     222} 
     223 
     224/** 
     225 * SJIS¤ØÊÑ´¹¤¹¤ë 
     226 * 
     227 * @param string $str 
     228 * @return string 
     229 */ 
     230function lfToSjis($str) { 
     231    return mb_convert_encoding($str, 'SJIS', CHAR_CODE); 
     232} 
     233 
     234/** 
     235 * ÆþÎϾðÊó¤ò°ìÉôµ­Ï¿ 
     236 * 
     237 * @param string $uniqid 
     238 * @param array $arrForm 
     239 */ 
     240function lfRegisterOrderTemp($uniqid, $arrForm, $arrResults) { 
     241    $sqlval = array(); 
     242    $sqlval['memo03'] = $arrForm['card_name01'] . " " . $arrForm['card_name02']; 
     243    $sqlval['memo02'] = serialize($arrResults['auth_auth_code']); 
     244 
     245    $objQuery = new SC_Query; 
     246    $objQuery->update("dtb_order_temp", $sqlval, "order_temp_id = ?", array($uniqid)); 
     247} 
     248 
     249function lfAddSubsParam(&$objRequest, $arrConfig, $arrData) { 
     250    global $arrSubsFrequency; 
     251    $objCustomer = new SC_Customer; 
     252 
     253    if ($objCustomer->isLoginSuccess()) { 
     254        $customer_id = $objCustomer->getValue('customer_id'); 
     255        $objRequest->add_request("customer_account_id", $customer_id); 
     256        gfPrintLog('-> cybs subs user=' . $customer_id); 
     257    } else { 
     258        gfPrintLog('-> cybs subs not customer'); 
     259    } 
     260 
     261    $objRequest->add_request("ics_applications", "ics_pay_subscription_create"); 
     262    $objRequest->add_request('card_type', MDL_CYBS_SUBS_CARD); // XXX 
     263    $objRequest->add_request('recurring_disable_auto_auth', 'N'); 
     264    $objRequest->add_request('recurring_frequency', $arrSubsFrequency[MDL_CYBS_SUBS_FREQ]); // XXX 
     265    $objRequest->add_request('recurring_payment_amount', (string)$arrData['payment_total']); 
     266} 
     267 
     268function lfAddAuthParam(&$objRequest, $arrForm, $arrData) { 
     269    $objRequest->add_request("ics_applications", "ics_auth"); 
     270 
    172271    // »Ùʧ¤¤ÊýË¡ 
    173272    list($method, $paytimes) = split("-", $arrForm['paymethod']); 
     
    176275 
    177276    $objRequest->add_request("offer0", "offerid:0^amount:" . $arrData['payment_total']); 
    178  
    179     $request_array = $objRequest->requests; 
    180     gfPrintLog(print_r($request_array, true), MDL_CYBS_LOG); 
    181  
    182     if( ($result = cybs_send($request_array)) == false ) { 
    183       print("error"); 
    184       gfPrintLog('#### cybs_send() error ###' , MDL_CYBS_LOG); 
    185       exit; 
    186     } 
    187     return $result; 
    188 } 
    189  
    190 /** 
    191  * ¥ê¥¯¥¨¥¹¥È¤Î¥¨¥é¡¼¥Á¥§¥Ã¥¯ 
    192  * 
    193  * @param array $arrResults 
    194  * @return boolean|PEAR::Error 
    195  */ 
    196 function lfIsError($arrResults) { 
    197     global $arrIcsAuthErr; 
    198     $ret = null; 
    199  
    200     switch ($arrResults['ics_rcode']) { 
    201     // À®¸ù 
    202     case '1': 
    203         $ret = true; 
    204         break; 
    205     case '0': 
    206         $msg = "½èÍý¤¬µñÈݤµ¤ì¤Þ¤·¤¿¡£\n" . $arrIcsAuthErr[$arrResults['ics_rflag']]; 
    207         $ret = PEAR::raiseError($msg); 
    208         break; 
    209     case '-1': 
    210         $msg = "¥·¥¹¥Æ¥à¤Þ¤¿¤Ï¥Í¥Ã¥È¥ï¡¼¥¯¥¨¥é¡¼¤Ë¤è¤ê½èÍý¤¬¥¨¥é¡¼¤È¤Ê¤ê¤Þ¤·¤¿¡£\n" . $arrIcsAuthErr[$arrResults['ics_rflag']]; 
    211         $ret = PEAR::raiseError($msg); 
    212         break; 
    213     default: 
    214         $ret = PEAR::raiseError("ÉÔÌÀ¤Ê¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£\n"); 
    215     } 
    216  
    217     return $ret; 
    218 } 
    219  
    220 /** 
    221  * SJIS¤ØÊÑ´¹¤¹¤ë 
    222  * 
    223  * @param string $str 
    224  * @return string 
    225  */ 
    226 function lfToSjis($str) { 
    227     return mb_convert_encoding($str, 'SJIS', CHAR_CODE); 
    228 } 
    229  
    230 /** 
    231  * ÆþÎϾðÊó¤ò°ìÉôµ­Ï¿ 
    232  * 
    233  * @param string $uniqid 
    234  * @param array $arrForm 
    235  */ 
    236 function lfRegisterOrderTemp($uniqid, $arrForm, $arrResults) { 
    237     $sqlval = array(); 
    238     $sqlval['memo03'] = $arrForm['card_name01'] . " " . $arrForm['card_name02']; 
    239     $sqlval['memo02'] = serialize($arrResults['auth_auth_code']); 
    240  
    241     $objQuery = new SC_Query; 
    242     $objQuery->update("dtb_order_temp", $sqlval, "order_temp_id = ?", array($uniqid)); 
    243 } 
    244  
     277} 
    245278?> 
Note: See TracChangeset for help on using the changeset viewer.