Changeset 16386 for branches/feature-module-update/data/class/pages/shopping/LC_Page_Shopping_Payment.php
- Timestamp:
- 2007/10/12 10:51:27 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/feature-module-update/data/class/pages/shopping/LC_Page_Shopping_Payment.php
r16043 r16386 88 88 $this->arrData = $objDb->sfTotalConfirm($arrData, $this, $objCartSess, $arrInfo); 89 89 90 // カー 都内の商品の売り切れチェック90 // カート内の商品の売り切れチェック 91 91 $objCartSess->chkSoldOut($objCartSess->getCartList()); 92 92 … … 150 150 // フレームを選択(キャンペーンページから遷移なら変更) 151 151 $objCampaignSess->pageView($objView); 152 } 153 154 /** 155 * モバイルページを初期化する. 156 * 157 * @return void 158 */ 159 function mobileInit() { 160 $this->init(); 161 } 162 163 /** 164 * Page のプロセス(モバイル). 165 * 166 * @return void 167 */ 168 function mobileProcess() { 169 $objView = new SC_MobileView(); 170 $objSiteSess = new SC_SiteSession(); 171 $objCartSess = new SC_CartSession(); 172 $this->objCustomer = new SC_Customer(); 173 $objDb = new SC_Helper_DB_Ex(); 174 $objSiteInfo = $objView->objSiteInfo; 175 $arrInfo = $objSiteInfo->data; 176 177 // パラメータ管理クラス 178 $this->objFormParam = new SC_FormParam(); 179 // パラメータ情報の初期化 180 $this->lfInitParam(); 181 // POST値の取得 182 $this->objFormParam->setParam($_POST); 183 184 // ユーザユニークIDの取得と購入状態の正当性をチェック 185 $uniqid = SC_Utils_Ex::sfCheckNormalAccess($objSiteSess, $objCartSess); 186 // ユニークIDを引き継ぐ 187 $this->tpl_uniqid = $uniqid; 188 189 // 会員ログインチェック 190 if($this->objCustomer->isLoginSuccess(true)) { 191 $this->tpl_login = '1'; 192 $this->tpl_user_point = $this->objCustomer->getValue('point'); 193 } 194 195 // 金額の取得 (購入途中で売り切れた場合にはこの関数内にてその商品の個数が0になる) 196 $objDb->sfTotalCart($this, $objCartSess, $arrInfo); 197 if (empty($arrData)) $arrData = array(); 198 $this->arrData = $objDb->sfTotalConfirm($arrData, $this, $objCartSess, $arrInfo); 199 200 // カー都内の商品の売り切れチェック 201 $objCartSess->chkSoldOut($objCartSess->getCartList(), true); 202 203 if (!isset($_POST['mode'])) $_POST['mode'] = ""; 204 205 // 戻るボタンの処理 206 if (!empty($_POST['return'])) { 207 switch ($_POST['mode']) { 208 case 'confirm': 209 $_POST['mode'] = 'payment'; 210 break; 211 default: 212 // 正常な推移であることを記録しておく 213 $objSiteSess->setRegistFlag(); 214 $this->sendRedirect(MOBILE_URL_SHOP_TOP, true); 215 exit; 216 } 217 } 218 219 switch($_POST['mode']) { 220 // 支払い方法指定 → 配達日時指定 221 case 'deliv_date': 222 // 入力値の変換 223 $this->objFormParam->convParam(); 224 $this->arrErr = $this->lfCheckError($this->arrData); 225 if (!isset($this->arrErr['payment_id'])) { 226 // 支払い方法の入力エラーなし 227 $this->tpl_mainpage = 'shopping/deliv_date.tpl'; 228 $this->tpl_title = "配達日時指定"; 229 break; 230 } else { 231 // ユーザユニークIDの取得 232 $uniqid = $objSiteSess->getUniqId(); 233 // 受注一時テーブルからの情報を格納 234 $this->lfSetOrderTempData($uniqid); 235 } 236 break; 237 case 'confirm': 238 // 入力値の変換 239 $this->objFormParam->convParam(); 240 $this->arrErr = $this->lfCheckError($this->arrData ); 241 // 入力エラーなし 242 if(count($this->arrErr) == 0) { 243 // DBへのデータ登録 244 $this->lfRegistData($uniqid); 245 // 正常に登録されたことを記録しておく 246 $objSiteSess->setRegistFlag(); 247 // 確認ページへ移動 248 $this->sendRedirect($this->getLocation(MOBILE_URL_SHOP_CONFIRM), true); 249 exit; 250 }else{ 251 // ユーザユニークIDの取得 252 $uniqid = $objSiteSess->getUniqId(); 253 // 受注一時テーブルからの情報を格納 254 $this->lfSetOrderTempData($uniqid); 255 if (!isset($this->arrErr['payment_id'])) { 256 // 支払い方法の入力エラーなし 257 $this->tpl_mainpage = 'shopping/deliv_date.tpl'; 258 $this->tpl_title = "配達日時指定"; 259 } 260 } 261 break; 262 // 前のページに戻る 263 case 'return': 264 // 非会員の場合 265 // 正常な推移であることを記録しておく 266 $objSiteSess->setRegistFlag(); 267 $this->sendRedirect(MOBILE_URL_SHOP_TOP, true); 268 exit; 269 break; 270 // 支払い方法が変更された場合 271 case 'payment': 272 // ここのbreakは、意味があるので外さないで下さい。 273 break; 274 default: 275 // 受注一時テーブルからの情報を格納 276 $this->lfSetOrderTempData($uniqid); 277 break; 278 } 279 280 // 店舗情報の取得 281 $arrInfo = $objSiteInfo->data; 282 // 購入金額の取得得 283 $total_pretax = $objCartSess->getAllProductsTotal($arrInfo); 284 // 支払い方法の取得 285 $this->arrPayment = $this->lfGetPayment($total_pretax); 286 // 配送時間の取得 287 $arrRet = $objDb->sfGetDelivTime($this->objFormParam->getValue('payment_id')); 288 $this->arrDelivTime = SC_Utils_Ex::sfArrKeyValue($arrRet, 'time_id', 'deliv_time'); 289 290 // 配送日一覧の取得 291 $this->arrDelivDate = $this->lfGetDelivDate(); 292 293 $this->arrForm = $this->objFormParam->getFormParamList(); 294 295 $objView->assignobj($this); 296 $objView->display(SITE_FRAME); 152 297 } 153 298 … … 208 353 $objErr->arrErr = $this->objFormParam->checkError(); 209 354 355 if (!isset($_POST['point_check'])) $_POST['point_check'] = ""; 356 210 357 if($_POST['point_check'] == '1') { 211 358 $objErr->doFunc(array("ポイントを使用する", "point_check"), array("EXIST_CHECK")); … … 215 362 $max_point = 0; 216 363 } 364 // FIXME mobile 互換のため br は閉じない... 217 365 if($arrRet['use_point'] > $max_point) { 218 $objErr->arrErr['use_point'] = "※ ご利用ポイントが所持ポイントを超えています。<br />";366 $objErr->arrErr['use_point'] = "※ ご利用ポイントが所持ポイントを超えています。<br>"; 219 367 } 220 368 if(($arrRet['use_point'] * POINT_VALUE) > $arrData['subtotal']) { 221 $objErr->arrErr['use_point'] = "※ ご利用ポイントがご購入金額を超えています。<br />";369 $objErr->arrErr['use_point'] = "※ ご利用ポイントがご購入金額を超えています。<br>"; 222 370 } 223 371 }
Note: See TracChangeset
for help on using the changeset viewer.