source: branches/feature-module-update/html/mobile/shopping/confirm.php @ 15080

Revision 15080, 3.9 KB checked in by nanasess, 17 years ago (diff)

svn properties 設定

  • svn:mime-type - application/x-httpd-php; charset=UTF-8
  • svn:keywords - Id
  • Property svn:keywords set to Id
  • Property svn:mime-type set to application/x-httpd-php; charset=UTF-8
Line 
1<?php
2/**
3 *
4 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
5 *
6 * http://www.lockon.co.jp/
7 *
8 */
9
10require_once("../require.php");
11
12class LC_Page {
13    var $arrSession;
14    var $tpl_mode;
15    var $tpl_total_deliv_fee;
16    function LC_Page() {
17        $this->tpl_mainpage = 'shopping/confirm.tpl';
18        $this->tpl_css = '/css/layout/shopping/confirm.css';
19        $this->tpl_title = "ご入力内容のご確認";
20        global $arrPref;
21        $this->arrPref = $arrPref;
22        global $arrSex;
23        $this->arrSex = $arrSex;
24        global $arrMAILMAGATYPE;
25        $this->arrMAILMAGATYPE = $arrMAILMAGATYPE;
26        global $arrReminder;
27        $this->arrReminder = $arrReminder;
28        /*
29         session_start時のno-cacheヘッダーを抑制することで
30         「戻る」ボタン使用時の有効期限切れ表示を抑制する。
31         private-no-expire:クライアントのキャッシュを許可する。
32        */
33        session_cache_limiter('private-no-expire');     
34
35    }
36}
37
38$objPage = new LC_Page();
39$objView = new SC_MobileView();
40$objCartSess = new SC_CartSession();
41$objSiteInfo = $objView->objSiteInfo;
42$objSiteSess = new SC_SiteSession();
43$objCustomer = new SC_Customer();
44$arrInfo = $objSiteInfo->data;
45$objQuery = new SC_Query();
46
47// 前のページで正しく登録手続きが行われた記録があるか判定
48sfIsPrePage($objSiteSess, true);
49
50// ユーザユニークIDの取得と購入状態の正当性をチェック
51$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess);
52$objPage->tpl_uniqid = $uniqid;
53
54// カート集計処理
55$objPage = sfTotalCart($objPage, $objCartSess, $arrInfo);
56// 一時受注テーブルの読込
57$arrData = sfGetOrderTemp($uniqid);
58// カート集計を元に最終計算
59$arrData = sfTotalConfirm($arrData, $objPage, $objCartSess, $arrInfo, $objCustomer);
60
61// カー都内の商品の売り切れチェック
62$objCartSess->chkSoldOut($objCartSess->getCartList());
63
64// 会員ログインチェック
65if($objCustomer->isLoginSuccess()) {
66    $objPage->tpl_login = '1';
67    $objPage->tpl_user_point = $objCustomer->getValue('point');
68}
69
70// 決済区分を取得する
71$payment_type = "";
72if(sfColumnExists("dtb_payment", "memo01")){
73    // MEMO03に値が入っている場合には、モジュール追加されたものとみなす
74    $sql = "SELECT memo03 FROM dtb_payment WHERE payment_id = ?";
75    $arrPayment = $objQuery->getall($sql, array($arrData['payment_id']));
76    $payment_type = $arrPayment[0]["memo03"];
77}
78$objPage->payment_type = $payment_type;
79
80
81switch($_POST['mode']) {
82// 前のページに戻る
83case 'return':
84    // 正常な推移であることを記録しておく
85    $objSiteSess->setRegistFlag();
86    header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_PAYMENT));
87    exit;
88    break;
89case 'confirm':
90    // この時点でオーダーIDを確保しておく(クレジット、コンビニ決済で必要なため)
91    // postgresqlとmysqlとで処理を分ける
92    if (DB_TYPE == "pgsql") {
93        $order_id = $objQuery->nextval("dtb_order","order_id");
94    }elseif (DB_TYPE == "mysql") {
95        $order_id = $objQuery->get_auto_increment("dtb_order");
96    }
97    $arrData["order_id"] = $order_id;
98   
99    // セッション情報を保持
100    $arrData['session'] = serialize($_SESSION);
101   
102    // 集計結果を受注一時テーブルに反映
103    sfRegistTempOrder($uniqid, $arrData);
104    // 正常に登録されたことを記録しておく
105    $objSiteSess->setRegistFlag();
106   
107    // 決済方法により画面切替
108    if($payment_type != "") {
109        $_SESSION["payment_id"] = $arrData['payment_id'];
110        header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_MODULE));
111    }else{
112        header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_COMPLETE));
113    }
114    break;
115default:
116    break;
117}
118
119
120$objPage->arrData = $arrData;
121$objPage->arrInfo = $arrInfo;
122$objView->assignobj($objPage);
123$objView->display(SITE_FRAME);
124//--------------------------------------------------------------------------------------------------------------------------
125?>
Note: See TracBrowser for help on using the repository browser.