- Timestamp:
- 2011/02/04 16:26:14 (13 years ago)
- bzr:base-revision:
- svn-v4:1e3b908f-19a9-db11-a64c-001125224ba8:branches/version-2_5-dev:20090
- bzr:committer:
- Kentaro Ohkouchi <ohkouchi@loop-az.jp>
- bzr:file-ids:
data/Smarty/templates/default/shopping/index.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fshopping%2Findex.tpl
data/Smarty/templates/mobile/shopping/index.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fmobile%2Fshopping%2Findex.tpl
data/Smarty/templates/sphone/shopping/index.tpl index.tpl-20101209134550-lsv02w9wikfx9cj3-38
data/class/SC_FormParam.php 15078@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2FSC_FormParam.php
data/class/pages/shopping/LC_Page_Shopping.php 15223@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fshopping%2FLC_Page_Shopping.php
data/class/pages/shopping/LC_Page_Shopping_Deliv.php 15223@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fshopping%2FLC_Page_Shopping_Deliv.php- bzr:mapping-version:
- v4
- bzr:merge:
ohkouchi@loop-az.jp-20110204072336-milrhkq2dg4vl345- bzr:repository-uuid:
- 1e3b908f-19a9-db11-a64c-001125224ba8
- bzr:revision-id:
- ohkouchi@loop-az.jp-20110204072610-34311c7r99r01a7g
- bzr:revno:
- 2819
- bzr:revprop:branch-nick:
- branches/version-2_5-dev
- bzr:root:
- branches/version-2_5-dev
- bzr:text-revisions:
data/Smarty/templates/default/shopping/index.tpl ohkouchi@loop-az.jp-20110204072336-milrhkq2dg4vl345
data/Smarty/templates/mobile/shopping/index.tpl ohkouchi@loop-az.jp-20110204072336-milrhkq2dg4vl345
data/Smarty/templates/sphone/shopping/index.tpl ohkouchi@loop-az.jp-20110204072336-milrhkq2dg4vl345
data/class/SC_FormParam.php ohkouchi@loop-az.jp-20110204072336-milrhkq2dg4vl345
data/class/pages/shopping/LC_Page_Shopping_Deliv.php ohkouchi@loop-az.jp-20110204072336-milrhkq2dg4vl345- bzr:timestamp:
- 2011-02-04 16:26:10.503999949 +0900
- bzr:user-agent:
- bzr2.2.1+bzr-svn1.0.4
- svn:original-date:
- 2011-02-04T07:26:10.504000Z
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping_Deliv.php
r20069 r20091 33 33 */ 34 34 class LC_Page_Shopping_Deliv extends LC_Page { 35 36 // {{{ properties37 38 /** フォームパラメータの配列 */39 var $objFormParam;40 41 /** ログインフォームパラメータ配列 */42 var $objLoginFormParam;43 35 44 36 // }}} … … 79 71 $objPurchase = new SC_Helper_Purchase_Ex(); 80 72 $objQuery = SC_Query::getSingletonInstance();; 81 // クッキー管理クラス82 73 $objCookie = new SC_Cookie(COOKIE_EXPIRE); 83 // パラメータ管理クラス 84 $this->objFormParam = new SC_FormParam(); 85 // パラメータ情報の初期化 86 $this->lfInitParam(); 87 // POST値の取得 88 $this->objFormParam->setParam($_POST); 89 90 $this->objLoginFormParam = new SC_FormParam(); // ログインフォーム用 91 $this->lfInitLoginFormParam(); 92 //パスワード・Eメールにある空白をトリム 93 $this->lfConvertEmail($_POST["login_email"]); 94 $this->lfConvertLoginPass($_POST["login_pass"]); 95 $this->objLoginFormParam->setParam($_POST); // POST値の取得 96 97 // ユーザユニークIDの取得と購入状態の正当性をチェック 98 $uniqid = $objSiteSess->getUniqId(); 99 $objPurchase->verifyChangeCart($uniqid, $objCartSess); 100 101 $this->tpl_uniqid = $uniqid; 74 $this->tpl_uniqid = $objSiteSess->getUniqId(); 75 $objPurchase->verifyChangeCart($this->tpl_uniqid, $objCartSess); 102 76 103 77 $this->cartKey = $objCartSess->getKey(); 104 78 105 // ログインチェック TODO 要リファクタリング(MODE if利用) 106 if($this->getMode() != 'login' && !$objCustomer->isLoginSuccess(true)) { 107 // 不正アクセスとみなす 79 // ログインチェック 80 if(!$objCustomer->isLoginSuccess(true)) { 108 81 SC_Utils_Ex::sfDispSiteError(CUSTOMER_ERROR); 109 82 } 110 83 84 if($this->cartKey == PRODUCT_TYPE_DOWNLOAD){ 85 // 会員情報の住所を受注一時テーブルに書き込む 86 $objPurchase->copyFromCustomer($sqlval, $objCustomer, 'shipping'); 87 $objPurchase->saveShippingTemp($sqlval); 88 $objPurchase->saveOrderTemp($this->tpl_uniqid, $sqlval, $objCustomer); 89 // 正常に登録されたことを記録しておく 90 $objSiteSess->setRegistFlag(); 91 // ダウンロード商品有りの場合は、支払方法画面に転送 92 SC_Response_Ex::sendRedirect('payment.php'); 93 exit; 94 } 95 111 96 switch($this->getMode()) { 112 case 'login':113 $this->objLoginFormParam->toLower('login_email');114 $this->arrErr = $this->objLoginFormParam->checkError();115 $arrForm = $this->objLoginFormParam->getHashArray();116 // クッキー保存判定117 if($arrForm['login_memory'] == "1" && $arrForm['login_email'] != "") {118 $objCookie->setCookie('login_email', $_POST['login_email']);119 } else {120 $objCookie->setCookie('login_email', '');121 }122 123 if(count($this->arrErr) > 0) {124 SC_Utils_Ex::sfDispSiteError(TEMP_LOGIN_ERROR);125 }126 // ログイン判定127 $loginFailFlag = false;128 if(Net_UserAgent_Mobile::isMobile() === true) {129 // モバイルサイト130 if(!$objCustomer->getCustomerDataFromMobilePhoneIdPass($arrForm['login_pass']) &&131 !$objCustomer->getCustomerDataFromEmailPass($arrForm['login_pass'], $arrForm['login_email'], true)) {132 $loginFailFlag = true;133 }134 } else {135 // モバイルサイト以外136 if(!$objCustomer->getCustomerDataFromEmailPass($arrForm['login_pass'], $arrForm['login_email'])) {137 $loginFailFlag = true;138 }139 }140 if($loginFailFlag === true) {141 // 仮登録の判定142 $where = "email = ? AND status = 1 AND del_flg = 0";143 $ret = $objQuery->count("dtb_customer", $where, array($arrForm['login_email']));144 145 if($ret > 0) {146 SC_Utils_Ex::sfDispSiteError(TEMP_LOGIN_ERROR);147 } else {148 SC_Utils_Ex::sfDispSiteError(SITE_LOGIN_ERROR);149 }150 }151 152 if(Net_UserAgent_Mobile::isMobile() === true) {153 // ログインが成功した場合は携帯端末IDを保存する。154 $objCustomer->updateMobilePhoneId();155 156 /*157 * 携帯メールアドレスが登録されていない場合は,158 * 携帯メールアドレス登録画面へ遷移159 */160 $objMobile = new SC_Helper_Mobile_Ex();161 if (!$objMobile->gfIsMobileMailAddress($objCustomer->getValue('email'))) {162 if (!$objCustomer->hasValue('email_mobile')) {163 SC_Response_Ex::sendRedirect('../entry/email_mobile.php');164 exit;165 }166 }167 }168 169 //ダウンロード商品判定170 if($this->cartKey == PRODUCT_TYPE_DOWNLOAD){171 // 会員情報の住所を受注一時テーブルに書き込む172 $objPurchase->copyFromCustomer($sqlval, $objCustomer, 'shipping');173 // FIXME ダウンロード商品の場合は配送無し174 $arrDeliv = $objPurchase->getDeliv($this->cartKey);175 $sqlval['deliv_id'] = $arrDeliv[0]['deliv_id'];176 $objPurchase->saveShippingTemp($sqlval);177 $objPurchase->saveOrderTemp($uniqid, $sqlval, $objCustomer);178 // 正常に登録されたことを記録しておく179 $objSiteSess->setRegistFlag();180 // ダウンロード商品有りの場合は、支払方法画面に転送181 SC_Response_Ex::sendRedirect('payment.php');182 exit;183 }184 break;185 97 // 削除 186 98 case 'delete': … … 188 100 $where = "other_deliv_id = ?"; 189 101 $arrRet = $objQuery->delete("dtb_other_deliv", $where, array($_POST['other_deliv_id'])); 190 $this->objFormParam->setValue('select_addr_id', '');191 102 } 192 103 break; … … 201 112 $objPurchase->copyFromCustomer($sqlval, $objCustomer, 'shipping'); 202 113 $objPurchase->saveShippingTemp($sqlval); 203 $objPurchase->saveOrderTemp($ uniqid, $sqlval, $objCustomer);114 $objPurchase->saveOrderTemp($this->tpl_uniqid, $sqlval, $objCustomer); 204 115 205 116 // 正常に登録されたことを記録しておく … … 219 130 $objPurchase->copyFromOrder($sqlval, $otherDeliv, 'shipping', '');; 220 131 $objPurchase->saveShippingTemp($sqlval); 221 $objPurchase->saveOrderTemp($ uniqid, $sqlval, $objCustomer);132 $objPurchase->saveOrderTemp($this->tpl_uniqid, $sqlval, $objCustomer); 222 133 223 134 // 正常に登録されたことを記録しておく … … 246 157 default: 247 158 $objPurchase->unsetShippingTemp(); 248 $arrOrderTemp = $objPurchase->getOrderTemp($uniqid); 249 if (empty($arrOrderTemp)) $arrOrderTemp = array(""); 250 $this->objFormParam->setParam($arrOrderTemp); 159 251 160 break; 252 161 } … … 256 165 // 入力値の取得 257 166 if (!isset($arrErr)) $arrErr = array(); 258 $this->arrForm = $this->objFormParam->getFormParamList();259 167 $this->arrErr = $arrErr; 260 168 } … … 268 176 parent::destroy(); 269 177 } 270 271 /* パラメータ情報の初期化 */272 function lfInitParam() {273 $this->objFormParam->addParam("お名前1", "deliv_name01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));274 $this->objFormParam->addParam("お名前2", "deliv_name02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));275 $this->objFormParam->addParam("お名前(フリガナ・姓)", "deliv_kana01", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));276 $this->objFormParam->addParam("お名前(フリガナ・名)", "deliv_kana02", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));277 $this->objFormParam->addParam("郵便番号1", "deliv_zip01", ZIP01_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK"));278 $this->objFormParam->addParam("郵便番号2", "deliv_zip02", ZIP02_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK"));279 $this->objFormParam->addParam("都道府県", "deliv_pref", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK"));280 $this->objFormParam->addParam("住所1", "deliv_addr01", MTEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));281 $this->objFormParam->addParam("住所2", "deliv_addr02", MTEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));282 $this->objFormParam->addParam("電話番号1", "deliv_tel01", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK"));283 $this->objFormParam->addParam("電話番号2", "deliv_tel02", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK"));284 $this->objFormParam->addParam("電話番号3", "deliv_tel03", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK"));285 $this->objFormParam->addParam("", "deliv_check");286 }287 288 function lfInitLoginFormParam() {289 $this->objLoginFormParam->addParam("記憶する", "login_memory", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));290 $this->objLoginFormParam->addParam("メールアドレス", "login_email", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));291 $this->objLoginFormParam->addParam("パスワード", "login_pass", PASSWORD_LEN1, "", array("EXIST_CHECK"));292 $this->objLoginFormParam->addParam("パスワード", "login_pass1", PASSWORD_LEN1, "", array("EXIST_CHECK", "MIN_LENGTH_CHECK"));293 $this->objLoginFormParam->addParam("パスワード", "login_pass2", PASSWORD_LEN2, "", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));294 }295 296 /* DBへデータの登録 */297 function lfRegistNewAddrData($uniqid, $objCustomer) {298 $sqlval = $this->objFormParam->getDbArray();299 // 登録データの作成300 $sqlval['deliv_check'] = '1';301 $sqlval['order_temp_id'] = $uniqid;302 $sqlval['update_date'] = 'Now()';303 $sqlval['customer_id'] = $objCustomer->getValue('customer_id');304 $sqlval['order_birth'] = $objCustomer->getValue('birth');305 306 $objDb = new SC_Helper_DB_Ex();307 $objDb->sfRegistTempOrder($uniqid, $sqlval);308 }309 310 /* 入力内容のチェック */311 function lfCheckError() {312 // 入力データを渡す。313 $arrRet = $this->objFormParam->getHashArray();314 $objErr = new SC_CheckError($arrRet);315 $objErr->arrErr = $this->objFormParam->checkError();316 // 複数項目チェック TODO 要リファクタリング(MODE if利用)317 if ($this->getMode() == 'login'){318 $objErr->doFunc(array("メールアドレス", "login_email", STEXT_LEN), array("EXIST_CHECK"));319 $objErr->doFunc(array("パスワード", "login_pass", STEXT_LEN), array("EXIST_CHECK"));320 }321 $objErr->doFunc(array("TEL", "deliv_tel01", "deliv_tel02", "deliv_tel03"), array("TEL_CHECK"));322 return $objErr->arrErr;323 }324 325 /**326 * 入力されたEmailから余分な改行・空白を削除する327 *328 * @param string $_POST["login_email"]329 */330 function lfConvertEmail(){331 if( strlen($_POST["login_email"]) < 1 ){ return ; }332 $_POST["login_email"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["login_email"]);333 }334 335 /**336 * 入力されたPassから余分な空白を削除し、最小桁数・最大桁数チェック用に変数に入れる337 *338 * @param string $_POST["login_pass"]339 */340 function lfConvertLoginPass(){341 if( strlen($_POST["login_pass"]) < 1 ){ return ; }342 $_POST["login_pass"] = trim($_POST["login_pass"]); //認証用343 $_POST["login_pass1"] = $_POST["login_pass"]; //最小桁数比較用344 $_POST["login_pass2"] = $_POST["login_pass"]; //最大桁数比較用345 }346 178 } 347 179 ?>
Note: See TracChangeset
for help on using the changeset viewer.