Ignore:
Timestamp:
2011/01/05 22:10:58 (13 years ago)
Author:
fukuda
Message:

#880(mobile/sphoneディレクトリを削除)に対応。まずmobileのみ意図通りの動作になるように一部コミット(entryディレクトリ) 登録完了時に無限ループする?

Location:
branches/version-2_5-dev/data
Files:
8 deleted
8 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_5-dev/data/Smarty/templates/default/entry/kiyaku.tpl

    r19785 r19830  
    3030                 readonly="readonly"><!--{$tpl_kiyaku_text}--></textarea> 
    3131       <div class="tblareabtn"> 
    32        <!--{if $is_campaign}--> 
    33          <a href="javascript:history.back();" onmouseover="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_cannot_on.gif','b_noagree');" onmouseout="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_cannot.gif','b_noagree');"> 
    34            <img src="<!--{$TPL_DIR}-->img/button/btn_entry_cannot.gif" width="180" height="30" alt="同意しない" border="0" name="b_noagree" /></a>&nbsp; 
    35        <!--{else}--> 
    3632         <a href="<!--{$smarty.const.URL_SITE_TOP}-->" onmouseover="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_cannot_on.gif','b_noagree');" onmouseout="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_cannot.gif','b_noagree');"> 
    3733           <img src="<!--{$TPL_DIR}-->img/button/btn_entry_cannot.gif" width="180" height="30" alt="同意しない" border="0" name="b_noagree" /></a>&nbsp; 
    38        <!--{/if}--> 
    3934         <a href="<!--{$smarty.const.URL_ENTRY_TOP}-->" onmouseover="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_agree_on.gif','b_agree');" onmouseout="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_agree.gif','b_agree');"> 
    4035           <img src="<!--{$TPL_DIR}-->img/button/btn_entry_agree.gif" width="180" height="30" alt="規約に同意して会員登録" border="0" name="b_agree" /></a> 
  • branches/version-2_5-dev/data/Smarty/templates/mobile/entry/confirm.tpl

    r19785 r19830  
    2626<form name="form1" id="form1" method="post" action="<!--{$smarty.server.PHP_SELF|h}-->" utn> 
    2727    <input type="hidden" name="mode" value="complete"> 
     28    <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 
    2829    <!--{foreach from=$list_data key=key item=item}--> 
    2930        <input type="hidden" name="<!--{$key|h}-->" value="<!--{$item|h}-->"> 
     
    5556    <input type="submit" name="submit" value="登録"><br> 
    5657    <input type="submit" name="return" value="戻る"> 
    57  
    58     <!--{foreach from=$list_data key=key item=item}--> 
    59         <input type="hidden" name="<!--{$key|h}-->" value="<!--{$item|h}-->"> 
    60     <!--{/foreach}--> 
    6158</form> 
    6259 
  • branches/version-2_5-dev/data/Smarty/templates/mobile/entry/index.tpl

    r19785 r19830  
    2222 */ 
    2323*}--> 
    24 <div align="center">会員情報入力 1/3</div> 
     24<div align="center">会員情報入力 </div> 
    2525<hr> 
    2626<form name="form1" method="post" action="<!--{$smarty.server.PHP_SELF|h}-->"> 
    27     <input type="hidden" name="mode" value="set1"> 
    28  
     27    <input type="hidden" name="mode" value="confirm" /> 
     28    <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 
    2929    <font color="#FF0000">*は必須項目です。</font><br> 
    3030    <br> 
     
    6565    <font color="#FF0000"><!--{$arrErr.kana01}--><!--{$arrErr.kana02}--></font> 
    6666 
    67     カナ/姓(例:シブヤ)<br> 
     67    カナ/姓(例:シブヤ)<font color="#FF0000">※</font><br> 
    6868    <input type="text" name="kana01" value="<!--{$kana01|h}-->" maxlength="<!--{$smarty.const.STEXT_LEN}-->" istyle="2"><br> 
    6969 
    70     カナ/名(例:ハナコ)<br> 
     70    カナ/名(例:ハナコ)<font color="#FF0000">※</font><br> 
    7171    <input type="text" name="kana02" value="<!--{$kana02|h}-->" maxlength="<!--{$smarty.const.STEXT_LEN}-->" istyle="2"><br> 
     72 
     73    【性別】<font color="#FF0000">*</font><br> 
     74    <font color="#FF0000"><!--{$arrErr.sex}--></font> 
     75    <input type="radio" name="sex" value="1" <!--{if $sex eq 1}-->checked<!--{/if}--> />男性&nbsp;<input type="radio" name="sex" value="2" <!--{if $sex eq 2}-->checked<!--{/if}--> />女性<br> 
     76 
     77    【生年月日】<br> 
     78    <font color="#FF0000"><!--{$arrErr.year}--><!--{$arrErr.month}--><!--{$arrErr.day}--></font> 
     79    <input type="text" name="year" value="<!--{$year|h}-->" size="4" maxlength="4" istyle="4">年<br> 
     80    <select name="month"> 
     81        <!--{html_options options=$arrMonth selected=$month}--> 
     82    </select>月<br> 
     83    <select name="day"> 
     84        <!--{html_options options=$arrDay selected=$day}--> 
     85    </select>日<br> 
     86 
     87    <!--{assign var=key1 value="zip01"}--> 
     88    <!--{assign var=key2 value="zip02"}--> 
     89    【郵便番号】<font color="#FF0000">*</font><br> 
     90    <font color="#FF0000"><!--{$arrErr[$key1]}--><!--{$arrErr[$key2]}--></font> 
     91    <!--{assign var="size1" value="`$smarty.const.ZIP01_LEN+2`"}--> 
     92    <!--{assign var="size2" value="`$smarty.const.ZIP02_LEN+2`"}--> 
     93    <input size="<!--{$size1}-->" type="text" name="zip01" value="<!--{if $zip01 == ""}--><!--{$arrOtherDeliv.zip01|h}--><!--{else}--><!--{$zip01|h}--><!--{/if}-->" maxlength="<!--{$smarty.const.ZIP01_LEN}-->" istyle="4"> 
     94    &nbsp;-&nbsp; 
     95    <input size="<!--{$size2}-->" type="text" name="zip02" value="<!--{if $zip02 == ""}--><!--{$arrOtherDeliv.zip02|h}--><!--{else}--><!--{$zip02|h}--><!--{/if}-->" maxlength="<!--{$smarty.const.ZIP02_LEN}-->" istyle="4"><br> 
     96 
     97    【都道府県】<font color="#FF0000">*</font><br> 
     98    <font color="#FF0000"><!--{$arrErr.pref}--></font> 
     99    <select name="pref"> 
     100        <option value="">都道府県を選択</option> 
     101        <!--{html_options options=$arrPref selected=$pref}--> 
     102    </select><br> 
     103 
     104    【住所1】<font color="#FF0000">*</font><br> 
     105    <font color="#FF0000"><!--{$arrErr.addr01}--></font> 
     106    <input type="text" name="addr01" value="<!--{$addr01|h}-->" istyle="1"><br> 
     107 
     108    【住所2】<font color="#FF0000">*</font><br> 
     109    <font color="#FF0000"><!--{$arrErr.addr02}--></font> 
     110    <input type="text" name="addr02" value="<!--{$addr02|h}-->" istyle="1"><br> 
     111 
     112    【電話番号】<font color="#FF0000">*</font><br> 
     113    <font color="#FF0000"><!--{$arrErr.tel01}--><!--{$arrErr.tel02}--><!--{$arrErr.tel03}--></font> 
     114    <!--{assign var="size" value="`$smarty.const.TEL_ITEM_LEN+2`"}--> 
     115    <input type="text" size="<!--{$size}-->" name="tel01" value="<!--{$tel01|h}-->" maxlength="<!--{$smarty.const.TEL_ITEM_LEN}-->" istyle="4"> 
     116    &nbsp;-&nbsp; 
     117    <input type="text" size="<!--{$size}-->" name="tel02" value="<!--{$tel02|h}-->" maxlength="<!--{$smarty.const.TEL_ITEM_LEN}-->" istyle="4"> 
     118    &nbsp;-&nbsp; 
     119    <input type="text" size="<!--{$size}-->" name="tel03" value="<!--{$tel03|h}-->" maxlength="<!--{$smarty.const.TEL_ITEM_LEN}-->" istyle="4"><br> 
     120 
     121    【メールマガジン】<br> 
     122    お得な情報を希望されますか?<br> 
     123    配信希望<input type="checkbox" name="mailmaga_flg" value="on" <!--{if $mailmaga_flg eq 'on' || $mailmaga_flg == 2}-->checked<!--{/if}--> /><br> 
     124    (希望されない場合はチェックをはずしてください)<br> 
     125    <br> 
    72126 
    73127    <input type="submit" name="submit" value="次へ"> 
  • branches/version-2_5-dev/data/Smarty/templates/mobile/entry/kiyaku.tpl

    r19785 r19830  
    2323*}--> 
    2424<div align="center">ご利用規約</div> 
     25<!--{if $offset eq 1}--> 
     26<hr> 
     27ご注文に際して必要な内容(ご自宅住所等)をご登録していただきます。<br> 
     28ご利用の規約をよくお読みの上、ご登録下さい。<br> 
     29<!--{/if}--> 
    2530<hr> 
    2631<!--{$tpl_kiyaku_text|h|nl2br}--><br> 
    2732 
    2833<BR> 
    29 <!--{if $offset != -1}--> 
    30     <a href="kiyaku.php?offset=<!--{$offset}-->">次へ→</a><br><br> 
     34<!--{if $max >= $offset+1}--> 
     35    <a href="kiyaku.php?offset=<!--{$offset+1}-->">次へ→</a><br><br> 
    3136<!--{/if}--> 
    3237 
  • branches/version-2_5-dev/data/class/pages/entry/LC_Page_Entry.php

    r19805 r19830  
    171171        $CONF = $objDb->sfGetBasisData(); 
    172172 
    173         $ssl_url  = rtrim(HTTPS_URL,"/"); 
    174         $ssl_url .= $_SERVER['PHP_SELF']; 
    175  
    176         // 規約ページからの遷移でなければエラー画面へ遷移する 
    177         if (empty($_POST) && !preg_match('/kiyaku.php/', basename($_SERVER['HTTP_REFERER']))) { 
    178             SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, "", true); 
    179         } 
    180  
    181         //---- 登録用カラム配列 
     173        // PC時は規約ページからの遷移でなければエラー画面へ遷移する 
     174        $this->lfCheckReferer(); 
     175         
     176        //---- 登録用カラム配列 
    182177        $arrRegistColumn = array( 
    183178                                     array(  "column" => "name01", "convert" => "aKV" ), 
     
    217212 
    218213        if ($_SERVER["REQUEST_METHOD"] == "POST") { 
    219  
     214             
     215            //CSRF対策 
    220216            if (!SC_Helper_Session_Ex::isValidToken()) { 
    221217                SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, "", true); 
     
    223219 
    224220            // 空白・改行の削除 
    225             $_POST["name01"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["name01"]); 
    226             $_POST["name02"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["name02"]); 
    227             $_POST["kana01"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["kana01"]); 
    228             $_POST["kana02"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["kana02"]); 
    229             $_POST["zip01"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["zip01"]); 
    230             $_POST["zip02"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["zip02"]); 
    231             $_POST["addr01"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["addr01"]); 
    232             $_POST["addr02"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["addr02"]); 
    233             $_POST["tel01"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["tel01"]); 
    234             $_POST["tel02"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["tel02"]); 
    235             $_POST["tel03"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["tel03"]); 
    236             $_POST["fax01"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["fax01"]); 
    237             $_POST["fax02"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["fax02"]); 
    238             $_POST["fax03"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["fax03"]); 
    239             $_POST["email"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["email"]); 
    240             $_POST["email02"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["email02"]); 
    241             $_POST["password"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["password"]); 
    242             $_POST["password02"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["password02"]); 
    243             $_POST["reminder_answer"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["reminder_answer"]); 
     221            foreach ($arrRegistColumn as $item){ 
     222                $_POST["${item["column"]}"] = preg_replace('/^[  \r\n]*(.*?)[  \r\n]*$/u', '$1', $_POST["${item["column"]}"]); 
     223            } 
    244224 
    245225            //-- POSTデータの引き継ぎ 
     
    247227 
    248228            // SSL用 
    249             $this->arrForm['ssl_url'] = $ssl_url; 
    250  
     229            $this->arrForm['ssl_url'] = rtrim(HTTPS_URL,"/").$_SERVER['PHP_SELF']; 
     230 
     231            // 
    251232            $this->arrForm['email'] = strtolower($this->arrForm['email']);      // emailはすべて小文字で処理 
    252233            $this->arrForm['email02'] = strtolower($this->arrForm['email02']);  // emailはすべて小文字で処理 
     
    254235            //-- 入力データの変換 
    255236            $this->arrForm = $this->lfConvertParam($this->arrForm, $arrRegistColumn); 
    256  
     237                // mobile用 
     238                if (!empty($_POST["return"])) { 
     239                    $_POST["mode"] = "return"; 
     240                } 
     241 
     242                 
    257243            //-- 入力エラーチェック 
    258244            $this->arrErr = $this->lfErrorCheck($this->arrForm); 
    259  
     245              
    260246            if ($this->arrErr || $_POST["mode"] == "return") {      // 入力エラーのチェック 
    261247                foreach($arrRegistColumn as $key) { 
    262248                    $this->$key['column'] = $this->arrForm[$key['column']]; 
    263                 } 
    264  
     249                }             
    265250            } else { 
    266  
     251                
    267252                //-- 確認 
    268253                if ($_POST["mode"] == "confirm") { 
    269254                    foreach($this->arrForm as $key => $val) { 
    270                         if ($key != "mode" && $key != "subm") $this->list_data[ $key ] = $val; 
     255                        if ($key != "mode" && $key != "subm" && $key != "transactionid") $this->list_data[ $key ] = $val; 
    271256                    } 
    272257                    //パスワード表示 
     
    329314                    $this->objDisplay->redirect($this->getLocation("./complete.php", array("ci" => $customer_id))); 
    330315                    exit; 
     316                     
    331317                } 
    332318            } 
    333319        } 
    334  
    335320        $this->transactionid = SC_Helper_Session_Ex::getToken(); 
    336     } 
    337  
    338     /** 
    339      * モバイルページを初期化する. 
    340      * 
    341      * @return void 
    342      */ 
    343     function mobileInit() { 
    344         $this->init(); 
    345         $this->tpl_title .= '会員登録(1/3)';            // ページタイトル 
    346     } 
    347  
    348     /** 
    349      * Page のプロセス(モバイル). 
    350      * 
    351      * @return void 
    352      */ 
    353     function mobileProcess() { 
    354         $this->mobileAction(); 
    355         $this->sendResponse(); 
    356     } 
    357  
    358     /** 
    359      * Page のアクション(モバイル). 
    360      * 
    361      * @return void 
    362      */ 
    363     function mobileAction() { 
    364         //---- ページ初期設定 
    365         $objDb = new SC_Helper_DB_Ex(); 
    366         $objMobile = new SC_Helper_Mobile_Ex(); 
    367         $CONF = $objDb->sfGetBasisData();                   // 店舗基本情報 
    368         $objView = new SC_MobileView(); 
    369         $objCustomer = new SC_Customer(); 
    370  
    371         // 空メール 
    372         if (isset($_SESSION['mobile']['kara_mail_from'])) { 
    373             $_POST['email'] = $_SESSION['mobile']['kara_mail_from']; 
    374             $this->tpl_kara_mail_from = $_POST['email']; 
    375         } elseif (MOBILE_USE_KARA_MAIL) { 
    376             $token = $objMobile->gfPrepareKaraMail('entry/' . DIR_INDEX_URL); 
    377             if ($token !== false) { 
    378                 $this->tpl_mainpage = 'entry/mail.tpl'; 
    379                 $this->tpl_title = '会員登録(空メール)'; 
    380                 $this->tpl_kara_mail_to = MOBILE_KARA_MAIL_ADDRESS_USER . MOBILE_KARA_MAIL_ADDRESS_DELIMITER . 'entry_' . $token . '@' . MOBILE_KARA_MAIL_ADDRESS_DOMAIN; 
    381                 $this->tpl_from_address = $CONF['email03']; 
    382             } 
    383         } 
    384  
    385         //---- 登録用カラム配列 
    386         $arrRegistColumn = array( 
    387                                  array(  "column" => "name01", "convert" => "aKV" ), 
    388                                  array(  "column" => "name02", "convert" => "aKV" ), 
    389                                  array(  "column" => "kana01", "convert" => "CKV" ), 
    390                                  array(  "column" => "kana02", "convert" => "CKV" ), 
    391                                  array(  "column" => "zip01", "convert" => "n" ), 
    392                                  array(  "column" => "zip02", "convert" => "n" ), 
    393                                  array(  "column" => "pref", "convert" => "n" ), 
    394                                  array(  "column" => "addr01", "convert" => "aKV" ), 
    395                                  array(  "column" => "addr02", "convert" => "aKV" ), 
    396                                  array(  "column" => "email", "convert" => "a" ), 
    397                                  array(  "column" => "email02", "convert" => "a" ), 
    398                                  array(  "column" => "email_mobile", "convert" => "a" ), 
    399                                  array(  "column" => "email_mobile02", "convert" => "a" ), 
    400                                  array(  "column" => "tel01", "convert" => "n" ), 
    401                                  array(  "column" => "tel02", "convert" => "n" ), 
    402                                  array(  "column" => "tel03", "convert" => "n" ), 
    403                                  array(  "column" => "fax01", "convert" => "n" ), 
    404                                  array(  "column" => "fax02", "convert" => "n" ), 
    405                                  array(  "column" => "fax03", "convert" => "n" ), 
    406                                  array(  "column" => "sex", "convert" => "n" ), 
    407                                  array(  "column" => "job", "convert" => "n" ), 
    408                                  array(  "column" => "birth", "convert" => "n" ), 
    409                                  array(  "column" => "year", "convert" => "n" ), 
    410                                  array(  "column" => "month", "convert" => "n" ), 
    411                                  array(  "column" => "day", "convert" => "n" ), 
    412                                  array(  "column" => "reminder", "convert" => "n" ), 
    413                                  array(  "column" => "reminder_answer", "convert" => "aKV"), 
    414                                  array(  "column" => "password", "convert" => "a" ), 
    415                                  array(  "column" => "password02", "convert" => "a" ), 
    416                                  array(  "column" => "mailmaga_flg", "convert" => "n" ), 
    417                                  ); 
    418  
    419         //---- 登録除外用カラム配列 
    420         $arrRejectRegistColumn = array("year", "month", "day", "email02", "email_mobile02", "password02"); 
    421  
    422         if ($_SERVER["REQUEST_METHOD"] == "POST") { 
    423  
    424             //-- POSTデータの引き継ぎ 
    425             $this->arrForm = $_POST; 
    426             $this->arrForm['email'] = strtolower($this->arrForm['email']);      // emailはすべて小文字で処理 
    427  
    428             //-- 入力データの変換 
    429             $this->arrForm = $this->lfConvertParam($this->arrForm, $arrRegistColumn); 
    430  
    431             // 戻るボタン用処理 
    432             if (!empty($_POST["return"])) { 
    433                 switch ($_POST["mode"]) { 
    434                 case "complete": 
    435                     $_POST["mode"] = "set3"; 
    436                     break; 
    437                 case "confirm": 
    438                     $_POST["mode"] = "set2"; 
    439                     break; 
    440                 default: 
    441                     $_POST["mode"] = "set1"; 
    442                     break; 
    443                 } 
    444             } 
    445  
    446             //-- 入力エラーチェック 
    447             if ($_POST["mode"] == "set1") { 
    448                 $this->arrErr = $this->lfErrorCheck1($this->arrForm); 
    449                 $this->tpl_mainpage = 'entry/index.tpl'; 
    450                 $this->tpl_title = '会員登録(1/3)'; 
    451             } elseif ($_POST["mode"] == "set2") { 
    452                 $this->arrErr = $this->lfErrorCheck2($this->arrForm); 
    453                 $this->tpl_mainpage = 'entry/set1.tpl'; 
    454                 $this->tpl_title = '会員登録(2/3)'; 
    455             } else { 
    456                 $this->arrErr = $this->lfErrorCheck3($this->arrForm); 
    457                 $this->tpl_mainpage = 'entry/set2.tpl'; 
    458                 $this->tpl_title = '会員登録(3/3)'; 
    459             } 
    460  
    461             foreach($arrRegistColumn as $key) { 
    462                 $this->$key['column'] = $this->arrForm[$key['column']]; 
    463             } 
    464  
    465             if ($this->arrErr || !empty($_POST["return"])) {        // 入力エラーのチェック 
    466  
    467                 //-- データの設定 
    468                 if ($_POST["mode"] == "set1") { 
    469                     $checkVal = array("email", "password", "reminder", "reminder_answer", "name01", "name02", "kana01", "kana02"); 
    470                 } elseif ($_POST["mode"] == "set2") { 
    471                     $checkVal = array("sex", "year", "month", "day", "zip01", "zip02"); 
    472                 } else { 
    473                     $checkVal = array("pref", "addr01", "addr02", "tel01", "tel02", "tel03", "mailmaga_flg"); 
    474                 } 
    475  
    476                 foreach($this->arrForm as $key => $val) { 
    477                     if ($key != "mode" && $key != "submit" && $key != "return" && $key != session_name() && !in_array($key, $checkVal)) 
    478                         $this->list_data[ $key ] = $val; 
    479                 } 
    480  
    481  
    482  
    483             } else { 
    484  
    485                 //-- テンプレート設定 
    486                 if ($_POST["mode"] == "set1") { 
    487                     $this->tpl_mainpage = 'entry/set1.tpl'; 
    488                     $this->tpl_title = '会員登録(2/3)'; 
    489                 } elseif ($_POST["mode"] == "set2") { 
    490                     $this->tpl_mainpage = 'entry/set2.tpl'; 
    491                     $this->tpl_title = '会員登録(3/3)'; 
    492  
    493                     if (@$this->arrForm['pref'] == "" && @$this->arrForm['addr01'] == "" && @$this->arrForm['addr02'] == "") { 
    494                         $address = SC_Utils_Ex::sfGetAddress($_REQUEST['zip01'].$_REQUEST['zip02']); 
    495                         $this->pref = @$address[0]['state']; 
    496                         $this->addr01 = @$address[0]['city'] . @$address[0]['town']; 
    497                     } 
    498                 } elseif ($_POST["mode"] == "confirm") { 
    499                     // パスワード表示 
    500                     $passlen = strlen($this->arrForm['password']); 
    501                     $this->passlen = $this->lfPassLen($passlen); 
    502  
    503                     // メール受け取り 
    504                     if (!isset($this->arrForm['mailmaga_flg'])) $this->arrForm['mailmaga_flg']  = ""; 
    505                     if (strtolower($this->arrForm['mailmaga_flg']) == "on") { 
    506                         $this->arrForm['mailmaga_flg']  = "2"; 
    507                     } else { 
    508                         $this->arrForm['mailmaga_flg']  = "3"; 
    509                     } 
    510  
    511                     $this->tpl_mainpage = 'entry/confirm.tpl'; 
    512                     $this->tpl_title = '会員登録(確認ページ)'; 
    513  
    514                 } 
    515  
    516                 //-- データ設定 
    517                 unset($this->list_data); 
    518                 if ($_POST["mode"] == "set1") { 
    519                     $checkVal = array("sex", "year", "month", "day", "zip01", "zip02"); 
    520                 } elseif ($_POST["mode"] == "set2") { 
    521                     $checkVal = array("pref", "addr01", "addr02", "tel01", "tel02", "tel03", "mailmaga_flg"); 
    522                 } else { 
    523                     $checkVal = array(); 
    524                 } 
    525  
    526                 foreach($this->arrForm as $key => $val) { 
    527                     if ($key != "mode" && $key != "submit" && $key != "confirm" && $key != "return" && $key != session_name() && !in_array($key, $checkVal)) { 
    528                         $this->list_data[ $key ] = $val; 
    529                     } 
    530                 } 
    531  
    532  
    533                 //-- 仮登録と完了画面 
    534                 if ($_POST["mode"] == "complete") { 
    535  
    536                     // 確認画面で再度エラーチェックを行う。(画面1) 
    537                     $arrErr = $this->lfErrorCheck1($this->arrForm); 
    538                     if(count($arrErr) > 0){ 
    539                         $this->tpl_mainpage = 'entry/index.tpl'; 
    540                         $this->tpl_title = '会員登録(1/3)'; 
    541                         $this->arrErr = $arrErr; 
    542                         //---- ページ表示 
    543                         $objView->assignobj($this); 
    544                         $objView->display(SITE_FRAME); 
    545                         exit(); 
    546                     } 
    547  
    548                     // 確認画面で再度エラーチェックを行う。(画面2) 
    549                     $arrErr = $this->lfErrorCheck2($this->arrForm); 
    550                     if(count($arrErr) > 0){ 
    551                         $this->tpl_mainpage = 'entry/set1.tpl'; 
    552                         $this->tpl_title = '会員登録(2/3)'; 
    553                         $this->arrErr = $arrErr; 
    554                         //---- ページ表示 
    555                         $objView->assignobj($this); 
    556                         $objView->display(SITE_FRAME); 
    557                         exit(); 
    558                     } 
    559  
    560                     // 確認画面で再度エラーチェックを行う。(画面3) 
    561                     $arrErr = $this->lfErrorCheck3($this->arrForm); 
    562                     if(count($arrErr) > 0){ 
    563                         $this->tpl_mainpage = 'entry/set2.tpl'; 
    564                         $this->tpl_title = '会員登録(3/3)'; 
    565                         $this->arrErr = $arrErr; 
    566                         //---- ページ表示 
    567                         $objView->assignobj($this); 
    568                         $objView->display(SITE_FRAME); 
    569                         exit(); 
    570                     } 
    571  
    572                     $this->CONF = $CONF; 
    573                     $this->uniqid = $this->lfRegistData ($this->arrForm, $arrRegistColumn, $arrRejectRegistColumn, CUSTOMER_CONFIRM_MAIL, true, $this->arrForm["email"]); 
    574  
    575                     // 空メールを受信済みの場合はすぐに本登録完了にする。 
    576                     if (isset($_SESSION['mobile']['kara_mail_from'])) { 
    577                         $param = array("mode" => "regist", 
    578                                        "id" => $this->uniqid, 
    579                                        session_name() => session_id()); 
    580                         $this->objDisplay->redirect($this->getLocation(MOBILE_URL_PATH . "regist/" . DIR_INDEX_URL, $param)); 
    581                         exit; 
    582                     } 
    583  
    584                     $this->tpl_mainpage = 'entry/complete.tpl'; 
    585                     $this->tpl_title = '会員登録(完了ページ)'; 
    586  
    587                     $objMobile->sfMobileSetExtSessionId('id', $this->uniqid, 'regist/' . DIR_INDEX_URL); 
    588  
    589                     // 仮登録完了メール送信 
    590                     $this->to_name01 = $_POST['name01']; 
    591                     $this->to_name02 = $_POST['name02']; 
    592                     $objMailText = new SC_MobileView(); 
    593                     $objMailText->assignobj($this); 
    594                     $objHelperMail = new SC_Helper_Mail_Ex(); 
    595                     $objQuery = new SC_Query(); 
    596  
    597                     // 仮会員が有効の場合 
    598                     if(CUSTOMER_CONFIRM_MAIL == true) { 
    599                         // Moba8パラメーターを保持する場合はカラム追加 
    600                         if (isset($_SESSION['a8'])) $this->etc_value = "&a8=". $_SESSION['a8']; 
    601                         $subject = $objHelperMail->sfMakeSubject('会員登録のご確認'); 
    602                         $toCustomerMail = $objMailText->fetch("mail_templates/customer_mail.tpl"); 
    603                     } else { 
    604                         $subject = $objHelperMail->sfMakeSubject('会員登録のご完了'); 
    605                         $toCustomerMail = $objMailText->fetch("mail_templates/customer_regist_mail.tpl"); 
    606                         // ログイン状態にする 
    607                         $objCustomer->setLogin($_POST["email"]); 
    608                     } 
    609  
    610                     $objMail = new SC_SendMail(); 
    611                     $objMail->setItem( 
    612                                         ''                  // 宛先 
    613                                       , $subject            // サブジェクト 
    614                                       , $toCustomerMail     // 本文 
    615                                       , $CONF["email03"]    // 配送元アドレス 
    616                                       , $CONF["shop_name"]  // 配送元 名前 
    617                                       , $CONF["email03"]    // reply_to 
    618                                       , $CONF["email04"]    // return_path 
    619                                       , $CONF["email04"]    // Errors_to 
    620                                       , $CONF["email01"]    // Bcc 
    621                     ); 
    622                     // 宛先の設定 
    623                     $name = $_POST["name01"] . $_POST["name02"] ." 様"; 
    624                     $objMail->setTo($_POST["email"], $name); 
    625                     $objMail->sendMail(); 
    626  
    627                     // 完了ページに移動させる。 
    628                     $this->objDisplay->redirect($this->getLocation("./complete.php")); 
    629                     exit; 
    630                 } 
    631             } 
    632         } 
    633321    } 
    634322 
     
    697385        /* 
    698386          secret_keyは、テーブルで重複許可されていない場合があるので、 
    699           本会員登録では利用されないがセットしておく。 
     387                          本会員登録では利用されないがセットしておく。 
    700388        */ 
    701389        $arrRegist["secret_key"] = $uniqid;     // 会員登録キー 
     
    718406        $arrRegist['customer_id'] = $objQuery->nextVal('dtb_customer_customer_id'); 
    719407        $objQuery->insert("dtb_customer", $arrRegist); 
    720  
    721  
    722     /* メルマガ会員機能は現在停止中 2007/03/07 
    723  
    724  
    725         //-- 非会員でメルマガ登録しているかの判定 
    726         $sql = "SELECT count(*) FROM dtb_customer_mail WHERE email = ?"; 
    727         $mailResult = $objConn->getOne($sql, array($arrRegist["email"])); 
    728  
    729         //-- メルマガ仮登録実行 
    730         $arrRegistMail["email"] = $arrRegist["email"]; 
    731         if ($array["mailmaga_flg"] == 1) { 
    732             $arrRegistMail["mailmaga_flg"] = 4; 
    733         } elseif ($array["mailmaga_flg"] == 2) { 
    734             $arrRegistMail["mailmaga_flg"] = 5; 
    735         } else { 
    736             $arrRegistMail["mailmaga_flg"] = 6; 
    737         } 
    738         $arrRegistMail["update_date"] = "now()"; 
    739  
    740         // 非会員でメルマガ登録している場合 
    741         if ($mailResult == 1) { 
    742             $objQuery->update("dtb_customer_mail", $arrRegistMail, "email = '" .addslashes($arrRegistMail["email"]). "'"); 
    743         } else {                // 新規登録の場合 
    744             $arrRegistMail["create_date"] = "now()"; 
    745             $objQuery->insert("dtb_customer_mail", $arrRegistMail); 
    746         } 
    747     */ 
     408         
    748409        $objQuery->commit(); 
    749410 
     
    784445        $objErr->doFunc(array("お名前(フリガナ・姓)", 'kana01', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK", "KANA_CHECK")); 
    785446        $objErr->doFunc(array("お名前(フリガナ・名)", 'kana02', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK", "KANA_CHECK")); 
     447        $objErr->doFunc(array("パスワード", 'password', PASSWORD_LEN1, PASSWORD_LEN2), array("EXIST_CHECK", "SPTAB_CHECK" ,"ALNUM_CHECK", "NUM_RANGE_CHECK")); 
     448        $objErr->doFunc(array("パスワード確認用の質問", "reminder") ,array("SELECT_CHECK", "NUM_CHECK")); 
     449        $objErr->doFunc(array("パスワード確認用の質問の答え", "reminder_answer", STEXT_LEN) ,array("EXIST_CHECK","SPTAB_CHECK" , "MAX_LENGTH_CHECK")); 
    786450        $objErr->doFunc(array("郵便番号1", "zip01", ZIP01_LEN ) ,array("EXIST_CHECK", "SPTAB_CHECK" ,"NUM_CHECK", "NUM_COUNT_CHECK")); 
    787451        $objErr->doFunc(array("郵便番号2", "zip02", ZIP02_LEN ) ,array("EXIST_CHECK", "SPTAB_CHECK" ,"NUM_CHECK", "NUM_COUNT_CHECK")); 
     
    790454        $objErr->doFunc(array("住所1", "addr01", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 
    791455        $objErr->doFunc(array("住所2", "addr02", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 
    792         $objErr->doFunc(array('メールアドレス', "email", MTEXT_LEN) ,array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK", "SPTAB_CHECK" ,"EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK")); 
    793         $objErr->doFunc(array('メールアドレス(確認)', "email02", MTEXT_LEN) ,array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK","SPTAB_CHECK" , "EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK")); 
    794         $objErr->doFunc(array('メールアドレス', 'メールアドレス(確認)', "email", "email02") ,array("EQUAL_CHECK")); 
     456        $objErr->doFunc(array("お電話番号1", 'tel01'), array("EXIST_CHECK","SPTAB_CHECK" )); 
     457        $objErr->doFunc(array("お電話番号2", 'tel02'), array("EXIST_CHECK","SPTAB_CHECK" )); 
     458        $objErr->doFunc(array("お電話番号3", 'tel03'), array("EXIST_CHECK","SPTAB_CHECK" )); 
     459        $objErr->doFunc(array("お電話番号", "tel01", "tel02", "tel03") ,array("TEL_CHECK")); 
     460        $objErr->doFunc(array("性別", "sex") ,array("SELECT_CHECK", "NUM_CHECK")); 
     461        $objErr->doFunc(array("生年月日", "year", "month", "day"), array("CHECK_BIRTHDAY")); 
     462         
     463        if (Net_UserAgent_Mobile::isMobile() === false){ 
     464            $objErr->doFunc(array('メールアドレス', "email", MTEXT_LEN) ,array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK", "SPTAB_CHECK" ,"EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK")); 
     465            $objErr->doFunc(array("FAX番号1", 'fax01'), array("SPTAB_CHECK")); 
     466            $objErr->doFunc(array("FAX番号2", 'fax02'), array("SPTAB_CHECK")); 
     467            $objErr->doFunc(array("FAX番号3", 'fax03'), array("SPTAB_CHECK")); 
     468            $objErr->doFunc(array("FAX番号", "fax01", "fax02", "fax03") ,array("TEL_CHECK")); 
     469            $objErr->doFunc(array("メールマガジン", "mailmaga_flg") ,array("SELECT_CHECK", "NUM_CHECK")); 
     470            $objErr->doFunc(array("メールマガジン", 'mailmaga_flg'), array("SELECT_CHECK")); 
     471            $objErr->doFunc(array("パスワード(確認)", 'password02', PASSWORD_LEN1, PASSWORD_LEN2), array("EXIST_CHECK", "SPTAB_CHECK" ,"ALNUM_CHECK", "NUM_RANGE_CHECK")); 
     472            $objErr->doFunc(array('パスワード', 'パスワード(確認)', "password", "password02") ,array("EQUAL_CHECK")); 
     473            $objErr->doFunc(array('メールアドレス(確認)', "email02", MTEXT_LEN) ,array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK","SPTAB_CHECK" , "EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK")); 
     474            $objErr->doFunc(array('メールアドレス', 'メールアドレス(確認)', "email", "email02") ,array("EQUAL_CHECK")); 
     475        } 
    795476 
    796477        // 現会員の判定 → 現会員もしくは仮登録中は、メアド一意が前提になってるので同じメアドで登録不可 
     
    819500            } 
    820501        } 
    821  
    822         $objErr->doFunc(array("お電話番号1", 'tel01'), array("EXIST_CHECK","SPTAB_CHECK" )); 
    823         $objErr->doFunc(array("お電話番号2", 'tel02'), array("EXIST_CHECK","SPTAB_CHECK" )); 
    824         $objErr->doFunc(array("お電話番号3", 'tel03'), array("EXIST_CHECK","SPTAB_CHECK" )); 
    825         $objErr->doFunc(array("お電話番号", "tel01", "tel02", "tel03") ,array("TEL_CHECK")); 
    826         $objErr->doFunc(array("FAX番号1", 'fax01'), array("SPTAB_CHECK")); 
    827         $objErr->doFunc(array("FAX番号2", 'fax02'), array("SPTAB_CHECK")); 
    828         $objErr->doFunc(array("FAX番号3", 'fax03'), array("SPTAB_CHECK")); 
    829         $objErr->doFunc(array("FAX番号", "fax01", "fax02", "fax03") ,array("TEL_CHECK")); 
    830         $objErr->doFunc(array("ご性別", "sex") ,array("SELECT_CHECK", "NUM_CHECK")); 
    831         $objErr->doFunc(array("パスワード", 'password', PASSWORD_LEN1, PASSWORD_LEN2), array("EXIST_CHECK", "SPTAB_CHECK" ,"ALNUM_CHECK", "NUM_RANGE_CHECK")); 
    832         $objErr->doFunc(array("パスワード(確認)", 'password02', PASSWORD_LEN1, PASSWORD_LEN2), array("EXIST_CHECK", "SPTAB_CHECK" ,"ALNUM_CHECK", "NUM_RANGE_CHECK")); 
    833         $objErr->doFunc(array('パスワード', 'パスワード(確認)', "password", "password02") ,array("EQUAL_CHECK")); 
    834         $objErr->doFunc(array("パスワードを忘れたときのヒント 質問", "reminder") ,array("SELECT_CHECK", "NUM_CHECK")); 
    835         $objErr->doFunc(array("パスワードを忘れたときのヒント 答え", "reminder_answer", STEXT_LEN) ,array("EXIST_CHECK","SPTAB_CHECK" , "MAX_LENGTH_CHECK")); 
    836         $objErr->doFunc(array("メールマガジン", "mailmaga_flg") ,array("SELECT_CHECK", "NUM_CHECK")); 
    837  
    838         $objErr->doFunc(array("生年月日", "year", "month", "day"), array("CHECK_BIRTHDAY")); 
    839         $objErr->doFunc(array("メールマガジン", 'mailmaga_flg'), array("SELECT_CHECK")); 
    840502        return $objErr->arrErr; 
    841503    } 
     
    851513        return $ret; 
    852514    } 
    853  
    854     // }}} 
    855     // {{{ mobile functions 
    856  
    857     //---- 入力エラーチェック 
    858     function lfErrorCheck1($array) { 
    859  
    860         $objErr = new SC_CheckError($array); 
    861         $objDb = new SC_Helper_DB_Ex(); 
    862  
    863         $objErr->doFunc(array("お名前(姓)", 'name01', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 
    864         $objErr->doFunc(array("お名前(名)", 'name02', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" , "MAX_LENGTH_CHECK")); 
    865         $objErr->doFunc(array("お名前(フリガナ・姓)", 'kana01', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK", "KANA_CHECK")); 
    866         $objErr->doFunc(array("お名前(フリガナ・名)", 'kana02', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK", "KANA_CHECK")); 
    867         $objErr->doFunc(array('メールアドレス', "email", MTEXT_LEN) ,array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK", "SPTAB_CHECK" ,"EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK", "MOBILE_EMAIL_CHECK")); 
    868  
    869         // 現会員の判定 → 現会員もしくは仮登録中は、メアド一意が前提になってるので同じメアドで登録不可 
    870         if (strlen($array["email"]) > 0) { 
    871             $array['email'] = strtolower($array['email']); 
    872             $objQuery = new SC_Query(); 
    873             $arrRet = $objQuery->select("email, update_date, del_flg", "dtb_customer","email = ? OR email_mobile = ? ORDER BY del_flg", array($array["email"], $array["email"])); 
    874  
    875             if(count($arrRet) > 0) { 
    876                 if($arrRet[0]['del_flg'] != '1') { 
    877                     // 会員である場合 
    878                     $objErr->arrErr["email"] .= "※ すでに会員登録で使用されているメールアドレスです。<br />"; 
    879                 } else { 
    880                     // 退会した会員である場合 
    881                     $leave_time = SC_Utils_Ex::sfDBDatetoTime($arrRet[0]['update_date']); 
    882                     $now_time = time(); 
    883                     $pass_time = $now_time - $leave_time; 
    884                     // 退会から何時間-経過しているか判定する。 
    885                     $limit_time = ENTRY_LIMIT_HOUR * 3600; 
    886                     if($pass_time < $limit_time) { 
    887                         $objErr->arrErr["email"] .= "※ 退会から一定期間の間は、同じメールアドレスを使用することはできません。<br />"; 
    888                     } 
    889                 } 
    890             } 
    891         } 
    892  
    893         $objErr->doFunc(array("パスワード", 'password', PASSWORD_LEN1, PASSWORD_LEN2), array("EXIST_CHECK", "SPTAB_CHECK" ,"ALNUM_CHECK", "NUM_RANGE_CHECK")); 
    894         $objErr->doFunc(array("パスワード確認用の質問", "reminder") ,array("SELECT_CHECK", "NUM_CHECK")); 
    895         $objErr->doFunc(array("パスワード確認用の質問の答え", "reminder_answer", STEXT_LEN) ,array("EXIST_CHECK","SPTAB_CHECK" , "MAX_LENGTH_CHECK")); 
    896  
    897         return $objErr->arrErr; 
    898     } 
    899  
    900     //---- 入力エラーチェック 
    901     function lfErrorCheck2($array) { 
    902         $objErr = new SC_CheckError($array); 
    903  
    904         $objErr->doFunc(array("郵便番号1", "zip01", ZIP01_LEN ) ,array("EXIST_CHECK", "SPTAB_CHECK" ,"NUM_CHECK", "NUM_COUNT_CHECK")); 
    905         $objErr->doFunc(array("郵便番号2", "zip02", ZIP02_LEN ) ,array("EXIST_CHECK", "SPTAB_CHECK" ,"NUM_CHECK", "NUM_COUNT_CHECK")); 
    906         $objErr->doFunc(array("郵便番号", "zip01", "zip02"), array("ALL_EXIST_CHECK")); 
    907  
    908         $objErr->doFunc(array("性別", "sex") ,array("SELECT_CHECK", "NUM_CHECK")); 
    909         $objErr->doFunc(array("生年月日", "year", "month", "day"), array("CHECK_BIRTHDAY")); 
    910  
    911         return $objErr->arrErr; 
    912     } 
    913  
    914     //---- 入力エラーチェック 
    915     function lfErrorCheck3($array) { 
    916         $objErr = new SC_CheckError($array); 
    917  
    918         $objErr->doFunc(array("都道府県", 'pref'), array("SELECT_CHECK","NUM_CHECK")); 
    919         $objErr->doFunc(array('住所1', "addr01", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 
    920         $objErr->doFunc(array('住所2', "addr02", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 
    921         $objErr->doFunc(array("電話番号1", 'tel01'), array("EXIST_CHECK","SPTAB_CHECK" )); 
    922         $objErr->doFunc(array("電話番号2", 'tel02'), array("EXIST_CHECK","SPTAB_CHECK" )); 
    923         $objErr->doFunc(array("電話番号3", 'tel03'), array("EXIST_CHECK","SPTAB_CHECK" )); 
    924         $objErr->doFunc(array("電話番号", "tel01", "tel02", "tel03") ,array("TEL_CHECK")); 
    925  
    926         return $objErr->arrErr; 
     515     
     516    function lfCheckReferer(){ 
     517        /** 
     518         * 規約ページからの遷移でなければエラー画面へ遷移する 
     519         */  
     520        if (Net_UserAgent_Mobile::isMobile() === FALSE 
     521             && empty($_POST) 
     522             && !preg_match('/kiyaku.php/', basename($_SERVER['HTTP_REFERER'])) 
     523            ) { 
     524            SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, "", true); 
     525        } 
    927526    } 
    928527 
  • branches/version-2_5-dev/data/class/pages/entry/LC_Page_Entry_Complete.php

    r19805 r19830  
    8282 
    8383    /** 
    84      * モバイルページを初期化する. 
    85      * 
    86      * @return void 
    87      */ 
    88     function mobileInit() { 
    89         $this->init(); 
    90     } 
    91  
    92     /** 
    93      * Page のプロセス(モバイル). 
    94      * 
    95      * @return void 
    96      */ 
    97     function mobileProcess() { 
    98         $this->mobileAction(); 
    99         $this->sendResponse(); 
    100     } 
    101  
    102     /** 
    103      * Page のアクション(モバイル). 
    104      * 
    105      * @return void 
    106      */ 
    107     function mobileAction() { 
    108         // do nothing... 
    109     } 
    110  
    111     /** 
    11284     * デストラクタ. 
    11385     * 
  • branches/version-2_5-dev/data/class/pages/entry/LC_Page_Entry_Kiyaku.php

    r19805 r19830  
    6363     */ 
    6464    function action() { 
    65         $objCustomer = new SC_Customer(); 
    6665 
    6766        // 規約内容の取得 
     
    6968        $objQuery->setOrder("rank DESC"); 
    7069        $arrRet = $objQuery->select("kiyaku_title, kiyaku_text", "dtb_kiyaku", "del_flg <> 1"); 
    71  
    72         $max = count($arrRet); 
    73         $this->tpl_kiyaku_text = ""; 
    74         for ($i = 0; $i < $max; $i++) { 
    75             $this->tpl_kiyaku_text.=$arrRet[$i]['kiyaku_title'] . "\n\n"; 
    76             $this->tpl_kiyaku_text.=$arrRet[$i]['kiyaku_text'] . "\n\n"; 
    77         } 
    78     } 
    79  
    80     /** 
    81      * モバイルページを初期化する. 
    82      * 
    83      * @return void 
    84      */ 
    85     function mobileInit() { 
    86         $this->init(); 
    87     } 
    88  
    89     /** 
    90      * Page のプロセス(モバイル). 
    91      * 
    92      * @return void 
    93      */ 
    94     function mobileProcess() { 
    95         $this->mobilAection(); 
    96         $this->sendResponse(); 
    97     } 
    98  
    99     /** 
    100      * Page のアクション(モバイル). 
    101      * 
    102      * @return void 
    103      */ 
    104     function mobileAction() { 
    105         $objCustomer = new SC_Customer(); 
    106  
    107         $offset = isset($_REQUEST['offset']) ? $_REQUEST['offset'] : 0; 
    108         $next = $offset; 
    109  
    110         // 規約内容の取得 
    111         $objQuery = new SC_Query(); 
    112         $count = $objQuery->count("dtb_kiyaku", "del_flg <> 1"); 
    113         $objQuery->setOrder("rank DESC"); 
    114         $objQuery->setLimitOffset(1, $offset); 
    115         $arrRet = $objQuery->select("kiyaku_title, kiyaku_text", "dtb_kiyaku", "del_flg <> 1"); 
    116  
    117         if($count > $offset + 1){ 
    118             $next++; 
    119         } else { 
    120             $next = -1; 
     70        $this->max = count($arrRet); 
     71         
     72        // mobile時はGETでページ指定 
     73        if ( Net_UserAgent_Mobile::isMobile() === true ){ 
     74            $this->offset = is_numeric($_GET['offset'])===true ? $offset = intval($_GET['offset']) : 1; 
    12175        } 
    12276 
    123         $max = count($arrRet); 
     77        // 規約文の作成 
    12478        $this->tpl_kiyaku_text = ""; 
    125         for ($i = 0; $i < $max; $i++) { 
     79        for ($i = 0; $i < $this->max; $i++) { 
     80            if ($this->offset !== null && ($this->offset - 1) <> $i) continue; 
    12681            $this->tpl_kiyaku_text.=$arrRet[$i]['kiyaku_title'] . "\n\n"; 
    12782            $this->tpl_kiyaku_text.=$arrRet[$i]['kiyaku_text'] . "\n\n"; 
  • branches/version-2_5-dev/data/class/session/SC_SessionFactory.php

    r19805 r19830  
    7474        case 'useCookie': 
    7575            // モバイルの場合はSC_SessionFactory_UseRequestを使用する 
    76             if (defined('MOBILE_SITE')) { 
     76            if (Net_UserAgent_Mobile::isMobile()===true) { 
    7777                $session = new SC_SessionFactory_UseRequest; 
    7878                $session->setState('mobile'); 
Note: See TracChangeset for help on using the changeset viewer.