Ignore:
Timestamp:
2010/03/11 10:35:11 (14 years ago)
Author:
kajiwara
Message:

正式版にナイトリービルド版をマージしてみるテスト

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tmp/version-2_5-test/data/class/pages/shopping/LC_Page_Shopping.php

    r18562 r18609  
    5454        $this->tpl_mainpage = 'shopping/index.tpl'; 
    5555        $this->tpl_column_num = 1; 
     56        $this->tpl_title = 'ログイン'; 
    5657        $masterData = new SC_DB_MasterData(); 
    5758        $this->arrPref = $masterData->getMasterData("mtb_pref", array("pref_id", "pref_name", "rank")); 
     
    5960        $this->arrJob = $masterData->getMasterData("mtb_job"); 
    6061        $this->tpl_onload = 'fnCheckInputDeliv();'; 
    61         $this->allowClientCache(); 
     62        $this->httpCacheControl('nocache'); 
    6263    } 
    6364 
     
    116117                // DBへのデータ登録 
    117118                $this->lfRegistData($uniqid); 
    118  
    119                 // お届け先のコピー 
    120                 $this->lfCopyDeliv($uniqid, $_POST); 
    121119 
    122120                // 正常に登録されたことを記録しておく 
     
    152150            // DB値の取得 
    153151            $this->objFormParam->setParam($arrRet[0]); 
    154             $this->objFormParam->setValue('order_email_check', $arrRet[0]['order_email']); 
     152            $this->objFormParam->setValue('order_email02', $arrRet[0]['order_email']); 
    155153            $this->objFormParam->setDBDate($arrRet[0]['order_birth']); 
    156154            break; 
     
    163161        } 
    164162 
    165         // 選択用日付の取得 
    166         $objDate = new SC_Date(START_BIRTH_YEAR); 
    167         $this->arrYear = $objDate->getYear('', 1950);    // 日付プルダウン設定 
    168         $this->arrMonth = $objDate->getMonth(); 
    169         $this->arrDay = $objDate->getDay(); 
    170  
    171         if($this->year == '') { 
    172             $this->year = '----'; 
    173         } 
     163        // 生年月日選択肢の取得 
     164        $objDate = new SC_Date(START_BIRTH_YEAR, date("Y",strtotime("now"))); 
     165        $this->arrYear = $objDate->getYear('', 1950, ''); 
     166        $this->arrMonth = $objDate->getMonth(true); 
     167        $this->arrDay = $objDate->getDay(true); 
    174168 
    175169        // 入力値の取得 
    176170        $this->arrForm = $this->objFormParam->getFormParamList(); 
    177  
    178         if(empty($this->arrForm['year']['value'])){ 
    179             $this->arrForm['year']['value'] = '----'; 
    180         } 
    181171 
    182172        $this->transactionid = $this->getToken(); 
     
    228218        $this->tpl_valid_phone_id = $objCustomer->checkMobilePhoneId(); 
    229219 
    230         if (!isset($_POST['mode'])) $_POST['mode'] = ""; 
    231  
    232         switch($_POST['mode']) { 
    233         case 'nonmember_confirm': 
    234             $this->lfSetNonMember($this); 
    235             // ※breakなし 
    236         case 'confirm': 
    237             // 入力値の変換 
    238             $this->objFormParam->convParam(); 
    239             $this->objFormParam->toLower('order_mail'); 
    240             $this->objFormParam->toLower('order_mail_check'); 
    241  
    242             $this->arrErr = $this->lfCheckError(); 
    243  
    244             // 入力エラーなし 
    245             if(count($this->arrErr) == 0) { 
    246                 // DBへのデータ登録 
    247                 $this->lfRegistData($uniqid); 
    248  
    249                 // お届け先のコピー 
    250                 $this->lfCopyDeliv($uniqid, $_POST); 
    251  
    252                 // 正常に登録されたことを記録しておく 
    253                 $objSiteSess->setRegistFlag(); 
    254                 // お支払い方法選択ページへ移動 
    255                 $this->sendRedirect($this->getLocation(MOBILE_URL_SHOP_PAYMENT), true); 
    256                 exit; 
    257             } 
    258  
    259             break; 
    260             // 前のページに戻る 
    261         case 'return': 
    262             // 確認ページへ移動 
    263             $this->sendRedirect($this->getLocation(MOBILE_URL_CART_TOP), true); 
    264             exit; 
    265             break; 
    266         case 'nonmember': 
    267             $this->lfSetNonMember($this); 
    268             // ※breakなし 
    269         default: 
    270             if($_GET['from'] == 'nonmember') { 
    271                 $this->lfSetNonMember($this); 
    272             } 
    273             // ユーザユニークIDの取得 
    274             $uniqid = $objSiteSess->getUniqId(); 
    275             $objQuery = new SC_Query(); 
    276             $where = "order_temp_id = ?"; 
    277             $arrRet = $objQuery->select("*", "dtb_order_temp", $where, array($uniqid)); 
    278  
    279             if (empty($arrRet)) $arrRet = array( 
    280                                                 array('order_email' => "", 
    281                                                       'order_birth' => "")); 
    282  
    283             // DB値の取得 
    284             $this->objFormParam->setParam($arrRet[0]); 
    285             $this->objFormParam->setValue('order_email_check', $arrRet[0]['order_email']); 
    286             $this->objFormParam->setDBDate($arrRet[0]['order_birth']); 
    287             break; 
    288         } 
    289  
    290220        // クッキー判定 
    291221        $this->tpl_login_email = $objCookie->getCookie('login_email'); 
     
    294224        } 
    295225 
    296         // 選択用日付の取得 
    297         $objDate = new SC_Date(START_BIRTH_YEAR); 
    298         $this->arrYear = $objDate->getYear('', 1950);    // 日付プルダウン設定 
    299         $this->arrMonth = $objDate->getMonth(); 
    300         $this->arrDay = $objDate->getDay(); 
    301  
    302         if($this->year == '') { 
    303             $this->year = '----'; 
    304         } 
    305  
    306         // 入力値の取得 
    307         $this->arrForm = $this->objFormParam->getFormParamList(); 
    308  
    309         if($this->arrForm['year']['value'] == ""){ 
    310             $this->arrForm['year']['value'] = '----'; 
    311         } 
    312  
    313226        $objView->assignobj($this); 
    314227        $objView->display(SITE_FRAME); 
     
    327240    function lfSetNonMember(&$objPage) { 
    328241        $objPage->tpl_mainpage = 'shopping/nonmember_input.tpl'; 
     242        $this->tpl_title = 'お客様情報入力'; 
    329243    } 
    330244 
     
    338252        $this->objFormParam->addParam("郵便番号2", "order_zip02", ZIP02_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
    339253        $this->objFormParam->addParam("都道府県", "order_pref", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
    340         $this->objFormParam->addParam("住所1", "order_addr01", MTEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    341         $this->objFormParam->addParam("住所2", "order_addr02", MTEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     254        $this->objFormParam->addParam("住所1", "order_addr01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     255        $this->objFormParam->addParam("住所2", "order_addr02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    342256        $this->objFormParam->addParam("電話番号1", "order_tel01", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    343257        $this->objFormParam->addParam("電話番号2", "order_tel02", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     
    347261        $this->objFormParam->addParam("FAX番号3", "order_fax03", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    348262        $this->objFormParam->addParam("メールアドレス", "order_email", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "NO_SPTAB", "MAX_LENGTH_CHECK", "EMAIL_CHECK", "EMAIL_CHAR_CHECK")); 
    349         $this->objFormParam->addParam("メールアドレス(確認)", "order_email_check", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "NO_SPTAB", "MAX_LENGTH_CHECK", "EMAIL_CHECK", "EMAIL_CHAR_CHECK"), "", false); 
     263        $this->objFormParam->addParam("メールアドレス(確認)", "order_email02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "NO_SPTAB", "MAX_LENGTH_CHECK", "EMAIL_CHECK", "EMAIL_CHAR_CHECK"), "", false); 
    350264        $this->objFormParam->addParam("年", "year", INT_LEN, "n", array("MAX_LENGTH_CHECK"), "", false); 
    351265        $this->objFormParam->addParam("月", "month", INT_LEN, "n", array("MAX_LENGTH_CHECK"), "", false); 
     
    361275        $this->objFormParam->addParam("郵便番号2", "deliv_zip02", ZIP02_LEN, "n", array("NUM_CHECK", "NUM_COUNT_CHECK")); 
    362276        $this->objFormParam->addParam("都道府県", "deliv_pref", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
    363         $this->objFormParam->addParam("住所1", "deliv_addr01", MTEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    364         $this->objFormParam->addParam("住所2", "deliv_addr02", MTEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     277        $this->objFormParam->addParam("住所1", "deliv_addr01", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     278        $this->objFormParam->addParam("住所2", "deliv_addr02", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    365279        $this->objFormParam->addParam("電話番号1", "deliv_tel01", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    366280        $this->objFormParam->addParam("電話番号2", "deliv_tel02", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     
    374288        $sqlval = $this->objFormParam->getDbArray(); 
    375289        // 登録データの作成 
    376         $sqlval['order_temp_id'] = $uniqid; 
    377290        $sqlval['order_birth'] = SC_Utils_Ex::sfGetTimestamp($arrRet['year'], $arrRet['month'], $arrRet['day']); 
    378291        $sqlval['update_date'] = 'Now()'; 
    379292        $sqlval['customer_id'] = '0'; 
     293 
     294        // お届け先を指定しない場合、 
     295        if ($sqlval['deliv_check'] != '1') { 
     296            // 受注一時テーブルに登録する顧客(お客様情報)をお届け先へコピーする 
     297            $this->lfCopyDeliv($sqlval); 
     298        } 
    380299 
    381300        // 既存データのチェック 
     
    385304        // 既存データがない場合 
    386305        if ($cnt == 0) { 
     306            $sqlval['order_temp_id'] = $uniqid; 
    387307            $sqlval['create_date'] = 'Now()'; 
    388308            $objQuery->insert("dtb_order_temp", $sqlval); 
     
    423343        $objErr->doFunc(array("FAX", "deliv_fax01", "deliv_fax02", "deliv_fax03", TEL_ITEM_LEN), array("TEL_CHECK")); 
    424344        $objErr->doFunc(array("郵便番号", "deliv_zip01", "deliv_zip02"), array("ALL_EXIST_CHECK")); 
    425         $objErr->doFunc(array("生年月日", "year", "month", "day"), array("CHECK_DATE")); 
    426         $objErr->doFunc(array("メールアドレス", "メールアドレス(確認)", "order_email", "order_email_check"), array("EQUAL_CHECK")); 
     345        $objErr->doFunc(array("生年月日", "year", "month", "day"), array("CHECK_BIRTHDAY")); 
     346        $objErr->doFunc(array("メールアドレス", "メールアドレス(確認)", "order_email", "order_email02"), array("EQUAL_CHECK")); 
    427347 
    428348        //既存メールアドレスでの登録不可(購入時強制会員登録が有効の場合のみ) 
     
    453373    } 
    454374 
    455     // 受注一時テーブルのお届け先をコピーする 
    456     function lfCopyDeliv($uniqid, $arrData) { 
    457         $objQuery = new SC_Query(); 
    458  
    459         // 別のお届け先を指定していない場合、お届け先に登録住所をコピーする。 
    460         if($arrData["deliv_check"] != "1") { 
    461             $sqlval['deliv_name01'] = $arrData['order_name01']; 
    462             $sqlval['deliv_name02'] = $arrData['order_name02']; 
    463             $sqlval['deliv_kana01'] = $arrData['order_kana01']; 
    464             $sqlval['deliv_kana02'] = $arrData['order_kana02']; 
    465             $sqlval['deliv_pref'] = $arrData['order_pref']; 
    466             $sqlval['deliv_zip01'] = $arrData['order_zip01']; 
    467             $sqlval['deliv_zip02'] = $arrData['order_zip02']; 
    468             $sqlval['deliv_addr01'] = $arrData['order_addr01']; 
    469             $sqlval['deliv_addr02'] = $arrData['order_addr02']; 
    470             $sqlval['deliv_tel01'] = $arrData['order_tel01']; 
    471             $sqlval['deliv_tel02'] = $arrData['order_tel02']; 
    472             $sqlval['deliv_tel03'] = $arrData['order_tel03']; 
    473             $where = "order_temp_id = ?"; 
    474             $objQuery->update("dtb_order_temp", $sqlval, $where, array($uniqid)); 
    475         } 
     375    /** 
     376     * 受注一時テーブルに登録する顧客(お客様情報)をお届け先へコピーする 
     377     * 
     378     * @param array $sqlval 
     379     * @return void 
     380     */ 
     381    function lfCopyDeliv(&$sqlval) { 
     382        $sqlval['deliv_name01'] = $sqlval['order_name01']; 
     383        $sqlval['deliv_name02'] = $sqlval['order_name02']; 
     384        $sqlval['deliv_kana01'] = $sqlval['order_kana01']; 
     385        $sqlval['deliv_kana02'] = $sqlval['order_kana02']; 
     386        $sqlval['deliv_pref']   = $sqlval['order_pref']; 
     387        $sqlval['deliv_zip01']  = $sqlval['order_zip01']; 
     388        $sqlval['deliv_zip02']  = $sqlval['order_zip02']; 
     389        $sqlval['deliv_addr01'] = $sqlval['order_addr01']; 
     390        $sqlval['deliv_addr02'] = $sqlval['order_addr02']; 
     391        $sqlval['deliv_tel01']  = $sqlval['order_tel01']; 
     392        $sqlval['deliv_tel02']  = $sqlval['order_tel02']; 
     393        $sqlval['deliv_tel03']  = $sqlval['order_tel03']; 
    476394    } 
    477395} 
Note: See TracChangeset for help on using the changeset viewer.