source: branches/dev/data/downloads/module/mdl_epsilon/convenience.php @ 17

Revision 17, 9.3 KB checked in by uehara, 17 years ago (diff)
Line 
1<?php
2/*
3 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
4 *
5 * http://www.lockon.co.jp/
6 */
7
8require_once("../require.php");
9require_once(DATA_PATH . "module/Request.php");
10require_once(MODULE_PATH . "mdl_epsilon/mdl_epsilon.inc");
11
12class LC_Page {
13    function LC_Page() {
14        $this->tpl_mainpage = MODULE_PATH . "mdl_epsilon/convenience.tpl";
15        $this->tpl_title = "¥³¥ó¥Ó¥Ë·èºÑ";
16        /*
17         session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç
18         ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤ÎÍ­¸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£
19         private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£
20        */
21        session_cache_limiter('private-no-expire');     
22    }
23}
24
25global $arrConvenience;
26global $arrConveni_message;
27
28$objPage = new LC_Page();
29$objView = new SC_SiteView();
30$objCampaignSess = new SC_CampaignSession();
31$objSiteInfo = $objView->objSiteInfo;
32$arrInfo = $objSiteInfo->data;
33
34// ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹
35$objFormParam = new SC_FormParam();
36// ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½
37lfInitParam();
38// POSTÃͤμèÆÀ
39$objFormParam->setParam($_POST);
40
41// ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ¤È¹ØÆþ¾õÂÖ¤ÎÀµÅöÀ­¤ò¥Á¥§¥Ã¥¯
42$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess);
43
44// ¥«¡¼¥È½¸·×½èÍý
45$objPage = sfTotalCart($objPage, $objCartSess, $arrInfo);
46
47// °ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤ÎÆɹþ
48$arrData = sfGetOrderTemp($uniqid);
49
50// ¥«¡¼¥È½¸·×¤ò¸µ¤ËºÇ½ª·×»»
51$arrData = sfTotalConfirm($arrData, $objPage, $objCartSess, $arrInfo);
52
53// Âåɽ¾¦ÉʾðÊó
54$arrMainProduct = $objPage->arrProductsClass[0];
55
56// »Ùʧ¤¤¾ðÊó¤ò¼èÆÀ
57$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"]));
58
59// ¥Ç¡¼¥¿Á÷¿®ÀèCGI
60$order_url = $arrPayment[0]["memo02"];
61
62switch($_POST["mode"]){
63    //Ìá¤ë
64    case 'return':
65        // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯
66        $objSiteSess->setRegistFlag();
67        // ³Îǧ¥Ú¡¼¥¸¤Ø°ÜÆ°
68        header("Location: " . URL_SHOP_CONFIRM);
69        exit;
70        break;
71
72    case "send":
73        $arrErr = array();
74        $arrErr = $objFormParam->checkError();
75        $objPage->arrErr = $arrErr;
76       
77        // Èó²ñ°÷¤Î¤È¤­¤Ï user_id ¤Ë not_member¤ÈÁ÷¤ë
78        ($arrData["customer_id"] == 0) ? $user_id = "not_member" : $user_id = $arrData["customer_id"];
79       
80        if(count($arrErr) <= 0){
81            // Á÷¿®¥Ç¡¼¥¿À¸À®
82            $item_name = $arrMainProduct["name"] . "¡ß" . $arrMainProduct["quantity"] . "¸Ä (Âåɽ)";
83            $arrSendData = array(
84                'contract_code' => $arrPayment[0]["memo01"],                        // ·ÀÌ󥳡¼¥É
85                'user_id' => $user_id ,                                             // ¥æ¡¼¥¶ID
86                'user_name' => $arrData["order_name01"].$arrData["order_name02"],   // ¥æ¡¼¥¶Ì¾
87                'user_mail_add' => $arrData["order_email"],                         // ¥á¡¼¥ë¥¢¥É¥ì¥¹
88                'order_number' => $arrData["order_id"],                             // ¥ª¡¼¥À¡¼ÈÖ¹æ
89                'item_code' => $arrMainProduct["product_code"],                     // ¾¦ÉÊ¥³¡¼¥É(Âåɽ)
90                'item_name' => $item_name,                                          // ¾¦ÉÊ̾(Âåɽ)
91                'item_price' => $arrData["payment_total"],                          // ¾¦ÉʲÁ³Ê(Àǹþ¤ßÁí³Û)
92                'st_code' => $arrPayment[0]["memo04"],                              // ·èºÑ¶èʬ
93                'mission_code' => '1',                                              // ²Ý¶â¶èʬ(¸ÇÄê)
94                'process_code' => '1',                                              // ½èÍý¶èʬ(¸ÇÄê)
95                'xml' => '1',                                                       // ±þÅú·Á¼°(¸ÇÄê)
96                'conveni_code' => $_POST["convenience"],                            // ¥³¥ó¥Ó¥Ë¥³¡¼¥É
97                'user_tel' => $_POST["order_tel01"].$_POST["order_tel02"].$_POST["order_tel03"],    // ÅÅÏÃÈÖ¹æ
98                'user_name_kana' => $_POST["order_kana01"].$_POST["order_kana02"],                  // »á̾(¥«¥Ê)
99                'haraikomi_mail' => 0,                                              // ʧ¹þ¥á¡¼¥ë(Á÷¿®¤·¤Ê¤¤)
100                'memo1' => "",                                                      // ͽÈ÷01
101                'memo2' => ECCUBE_PAYMENT . "_" . date("YmdHis"),                   // ͽÈ÷02
102            );
103           
104            // ¥Ç¡¼¥¿Á÷¿®
105            $arrXML = sfPostPaymentData($order_url, $arrSendData);
106           
107            // ¥¨¥é¡¼¤¬¤¢¤ë¤«¥Á¥§¥Ã¥¯¤¹¤ë
108            $err_code = sfGetXMLValue($arrXML,'RESULT','ERR_CODE');
109           
110            if($err_code != "") {
111                $err_detail = sfGetXMLValue($arrXML,'RESULT','ERR_DETAIL');
112                sfDispSiteError(FREE_ERROR_MSG, "", false, "¹ØÆþ½èÍýÃæ¤Ë°Ê²¼¤Î¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£<br /><br /><br />¡¦" . $err_detail);
113            } else {
114                // Àµ¾ï¤Ê¿ä°Ü¤Ç¤¢¤ë¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯
115                $objSiteSess->setRegistFlag();
116
117                $conveni_code = sfGetXMLValue($arrXML,'RESULT','CONVENI_CODE'); // ¥³¥ó¥Ó¥Ë¥³¡¼¥É
118                $conveni_type = lfSetConvMSG("¥³¥ó¥Ó¥Ë¤Î¼ïÎà",$arrConvenience[$conveni_code]);  // ¥³¥ó¥Ó¥Ë¤Î¼ïÎà
119                $receipt_no   = lfSetConvMSG("ʧ¹þɼÈÖ¹æ",sfGetXMLValue($arrXML,'RESULT','RECEIPT_NO'));    // ʧ¹þɼÈÖ¹æ
120                $payment_url = lfSetConvMSG("ʧ¹þɼURL",sfGetXMLValue($arrXML,'RESULT','HARAIKOMI_URL'));   // ʧ¹þɼURL
121                $company_code = lfSetConvMSG("´ë¶È¥³¡¼¥É",sfGetXMLValue($arrXML,'RESULT','KIGYOU_CODE'));   // ´ë¶È¥³¡¼¥É
122                $order_no = lfSetConvMSG("¼õÉÕÈÖ¹æ",sfGetXMLValue($arrXML,'RESULT','ORDER_NUMBER'));        // ¼õÉÕÈÖ¹æ
123                $tel = lfSetConvMSG("ÅÅÏÃÈÖ¹æ",$_POST["order_tel01"]."-".$_POST["order_tel02"]."-".$_POST["order_tel03"]);  // ÅÅÏÃÈÖ¹æ
124                $payment_limit = lfSetConvMSG("»Ùʧ´üÆü",sfGetXMLValue($arrXML,'RESULT','CONVENI_LIMIT'));  // »Ùʧ´üÆü
125                $trans_code =  sfGetXMLValue($arrXML,'RESULT','TRANS_CODE');    // ¥È¥é¥ó¥¶¥¯¥·¥ç¥ó¥³¡¼¥É
126               
127                //¥³¥ó¥Ó¥Ë¤Î¼ïÎà
128                switch($conveni_code) {
129                //¥»¥Ö¥ó¥¤¥ì¥Ö¥ó
130                case '11':
131                    $arrRet['cv_type'] = $conveni_type;         //¥³¥ó¥Ó¥Ë¤Î¼ïÎà
132                    $arrRet['cv_payment_url'] = $payment_url;   //ʧ¹þɼURL(PC)
133                    $arrRet['cv_receipt_no'] = $receipt_no;     //ʧ¹þɼÈÖ¹æ
134                    $arrRet['br1'] = lfSetConvMSG("","\n\n");
135                    $arrRet['cv_message'] = lfSetConvMSG("",$arrConveni_message[$conveni_code]);
136                    break;
137                //¥Õ¥¡¥ß¥ê¡¼¥Þ¡¼¥È
138                case '21':
139                    $arrRet['cv_type'] = $conveni_type;         //¥³¥ó¥Ó¥Ë¤Î¼ïÎà
140                    $arrRet['cv_company_code'] = $company_code; //´ë¶È¥³¡¼¥É
141                    $arrRet['cv_order_no'] = $receipt_no;       //¼õÉÕÈÖ¹æ
142                    $arrRet['br1'] = lfSetConvMSG("","\n\n");
143                    $arrRet['cv_message'] = lfSetConvMSG("",$arrConveni_message[$conveni_code]);
144                    break;
145                //¥í¡¼¥½¥ó
146                case '31':
147                    $arrRet['cv_type'] = $conveni_type;         //¥³¥ó¥Ó¥Ë¤Î¼ïÎà
148                    $arrRet['cv_receipt_no'] = $receipt_no;     //ʧ¹þɼÈÖ¹æ
149                    $arrRet['cv_tel'] = $tel;                   //ÅÅÏÃÈÖ¹æ
150                    $arrRet['br1'] = lfSetConvMSG("","\n\n");
151                    $arrRet['cv_message'] = lfSetConvMSG("",$arrConveni_message[$conveni_code]);
152                    break;
153                //¥»¥¤¥³¡¼¥Þ¡¼¥È
154                case '32':
155                    $arrRet['cv_type'] =$conveni_type;          //¥³¥ó¥Ó¥Ë¤Î¼ïÎà
156                    $arrRet['cv_receipt_no'] = $receipt_no;     //ʧ¹þɼÈÖ¹æ
157                    $arrRet['cv_tel'] = $tel;                   //ÅÅÏÃÈÖ¹æ
158                    $arrRet['br1'] = lfSetConvMSG("","\n\n");
159                    $arrRet['cv_message'] = lfSetConvMSG("",$arrConveni_message[$conveni_code]);
160                    break;
161                //¥ß¥Ë¥¹¥È¥Ã¥×
162                case '33':
163                    $arrRet['cv_type'] = $conveni_type;         //¥³¥ó¥Ó¥Ë¤Î¼ïÎà
164                    $arrRet['cv_payment_url'] = $payment_url;   //ʧ¹þɼURL
165                    $arrRet['br1'] = lfSetConvMSG("","\n\n");
166                    $arrRet['cv_message'] = lfSetConvMSG("",$arrConveni_message[$conveni_code]);
167                    break;
168                //¥Ç¥¤¥ê¡¼¥ä¥Þ¥¶¥­
169                case '34':
170                    $arrRet['cv_type'] = $conveni_type;         //¥³¥ó¥Ó¥Ë¤Î¼ïÎà
171                    $arrRet['cv_payment_url'] = $payment_url;   //ʧ¹þɼURL
172                    $arrRet['br1'] = lfSetConvMSG("","\n\n");
173                    $arrRet['cv_message'] = lfSetConvMSG("",$arrConveni_message[$conveni_code]);
174                    break;
175                }
176
177                //»Ùʧ´ü¸Â
178                $arrRet['br2'] = lfSetConvMSG("","\n\n");
179                $arrRet['cv_payment_limit'] = $payment_limit;
180                $arrRet['br3'] = lfSetConvMSG("","\n\n");
181
182                // ¥¿¥¤¥È¥ë
183                $arrRet['title'] = lfSetConvMSG("¥³¥ó¥Ó¥Ë·èºÑ", true);
184
185               
186                // ¥¹¥Æ¡¼¥¿¥¹¤Ï̤Æþ¶â¤Ë¤¹¤ë
187                $sqlval['status'] = 2;
188
189                //¥³¥ó¥Ó¥Ë·èºÑ¾ðÊó¤ò³ÊǼ
190                $sqlval['conveni_data'] = serialize($arrRet);
191                $sqlval['memo01'] = PAYMENT_CONVENIENCE_ID;
192                $sqlval['memo02'] = serialize($arrRet);
193                $sqlval["memo03"] = $arrPayment[0]["module_id"];
194                $sqlval["memo04"] = $trans_code;
195
196                // ¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Ë¹¹¿·
197                sfRegistTempOrder($uniqid, $sqlval);
198
199                header("Location: " . URL_SHOP_COMPLETE);
200            }
201        }
202        break;
203       
204    default:
205        $objFormParam->setParam($arrData);
206        break;
207}
208
209// ÍøÍѲÄǽ¥³¥ó¥Ó¥Ë
210$objFormParam->setValue("convenience", $arrPayment[0]["memo05"]);
211$objFormParam->splitParamCheckBoxes("convenience");
212$arrUseConv = $objFormParam->getValue("convenience");
213foreach($arrUseConv as $key => $val){
214    $arrConv[$val] = $arrConvenience[$val];
215}
216
217// ¹ØÆþ¶â³Û¤¬30Ëü¤è¤êÂ礭¤±¤ì¤Ð¥»¥Ö¥ó¥¤¥ì¥Ö¥ó¤ÏÍøÍÑÉÔ²Ä
218if($arrData["payment_total"] > SEVEN_CHARGE_MAX){
219    unset($arrConv[11]);
220}
221
222$objPage->arrConv = $arrConv;
223
224$objPage->arrForm =$objFormParam->getHashArray();
225
226$objView->assignobj($objPage);
227// ¥Õ¥ì¡¼¥à¤òÁªÂò(¥­¥ã¥ó¥Ú¡¼¥ó¥Ú¡¼¥¸¤«¤éÁ«°Ü¤Ê¤éÊѹ¹)
228$objCampaignSess->pageView($objView);
229
230//---------------------------------------------------------------------------------------------------------------------------------------------------------
231//¥Ñ¥é¥á¡¼¥¿¤Î½é´ü²½
232function lfInitParam() {
233    global $objFormParam;
234    $objFormParam->addParam("¥³¥ó¥Ó¥Ë¤Î¼ïÎà", "convenience", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK"));
235    $objFormParam->addParam("¤ªÌ¾Á°(¥»¥¤)", "order_kana01", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
236    $objFormParam->addParam("¤ªÌ¾Á°(¥á¥¤)", "order_kana02", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
237    $objFormParam->addParam("¤ªÅÅÏÃÈÖ¹æ1", "order_tel01", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK"));
238    $objFormParam->addParam("¤ªÅÅÏÃÈÖ¹æ2", "order_tel02", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK"));
239    $objFormParam->addParam("¤ªÅÅÏÃÈÖ¹æ3", "order_tel03", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK"));
240}
241
242function lfSetConvMSG($name, $value){
243    return array("name" => $name, "value" => $value);
244}
245
246?>
Note: See TracBrowser for help on using the repository browser.