Index: /branches/version-2_5-dev/data/Smarty/templates/default/shopping/confirm.tpl
===================================================================
--- /branches/version-2_5-dev/data/Smarty/templates/default/shopping/confirm.tpl	(revision 20116)
+++ /branches/version-2_5-dev/data/Smarty/templates/default/shopping/confirm.tpl	(revision 20122)
@@ -50,5 +50,5 @@
 
         <p>下記ご注文内容で送信してもよろしいでしょうか？<br />
-            よろしければ、「<!--{if $payment_type != ""}-->次へ<!--{else}-->ご注文完了ページへ<!--{/if}-->」ボタンをクリックしてください。</p>
+            よろしければ、「<!--{if $use_module}-->次へ<!--{else}-->ご注文完了ページへ<!--{/if}-->」ボタンをクリックしてください。</p>
 
         <form name="form1" id="form1" method="post" action="?">
@@ -58,5 +58,5 @@
             <div class="tblareabtn">
                 <a href="./payment.php" onmouseover="chgImgImageSubmit('<!--{$TPL_URLPATH}-->img/button/btn_back_on.gif',back03)" onmouseout="chgImgImageSubmit('<!--{$TPL_URLPATH}-->img/button/btn_back.gif',back03)"><img src="<!--{$TPL_URLPATH}-->img/button/btn_back.gif" width="150" height="30" alt="戻る" border="0" name="back03-top" id="back03-top" /></a>&nbsp;
-                <!--{if $payment_type != ""}-->
+                <!--{if $use_module}-->
                 <input type="image" onclick="return fnCheckSubmit();" onmouseover="chgImgImageSubmit('<!--{$TPL_URLPATH}-->img/button/btn_next_on.gif',this)" onmouseout="chgImgImageSubmit('<!--{$TPL_URLPATH}-->img/button/btn_next.gif',this)" src="<!--{$TPL_URLPATH}-->img/button/btn_next.gif" alt="次へ" class="box150" name="next-top" id="next-top" />
                 <!--{else}-->
@@ -72,5 +72,5 @@
                     <th>小計</th>
                 </tr>
-                <!--{foreach from=$cartItems item=item}-->
+                <!--{foreach from=$arrCartItems item=item}-->
                 <tr>
                     <td class="phototd">
@@ -110,5 +110,5 @@
                         <th colspan="4" class="resulttd">値引き（ポイントご使用時）</th>
                         <td class="pricetd">
-                        <!--{assign var=discount value=`$arrData.use_point*$smarty.const.POINT_VALUE`}-->
+                        <!--{assign var=discount value=`$arrForm.use_point*$smarty.const.POINT_VALUE`}-->
                          -<!--{$discount|number_format|default:0}-->円</td>
                     </tr>
@@ -116,13 +116,13 @@
                 <tr>
                     <th colspan="4" class="resulttd">送料</th>
-                    <td class="pricetd"><!--{$arrData.deliv_fee|number_format}-->円</td>
+                    <td class="pricetd"><!--{$arrForm.deliv_fee|number_format}-->円</td>
                 </tr>
                 <tr>
                     <th colspan="4" class="resulttd">手数料</th>
-                    <td class="pricetd"><!--{$arrData.charge|number_format}-->円</td>
+                    <td class="pricetd"><!--{$arrForm.charge|number_format}-->円</td>
                 </tr>
                 <tr>
                     <th colspan="4" class="resulttd">合計</th>
-                    <td class="pricetd"><em><!--{$arrData.payment_total|number_format}-->円</em></td>
+                    <td class="pricetd"><em><!--{$arrForm.payment_total|number_format}-->円</em></td>
                 </tr>
             </table>
@@ -137,18 +137,18 @@
                     <tr>
                         <th>ご使用ポイント</th>
-                        <td>-<!--{$arrData.use_point|number_format|default:0}-->Pt</td>
-                    </tr>
-                    <!--{if $arrData.birth_point > 0}-->
+                        <td>-<!--{$arrForm.use_point|number_format|default:0}-->Pt</td>
+                    </tr>
+                    <!--{if $arrForm.birth_point > 0}-->
                     <tr>
                         <th>お誕生月ポイント</th>
-                        <td>+<!--{$arrData.birth_point|number_format|default:0}-->Pt</td>
+                        <td>+<!--{$arrForm.birth_point|number_format|default:0}-->Pt</td>
                     </tr>
                     <!--{/if}-->
                     <tr>
                         <th>今回加算予定のポイント</th>
-                        <td>+<!--{$arrData.add_point|number_format|default:0}-->Pt</td>
-                    </tr>
-                    <tr>
-                    <!--{assign var=total_point value=`$tpl_user_point-$arrData.use_point+$arrData.add_point`}-->
+                        <td>+<!--{$arrForm.add_point|number_format|default:0}-->Pt</td>
+                    </tr>
+                    <tr>
+                    <!--{assign var=total_point value=`$tpl_user_point-$arrForm.use_point+$arrForm.add_point`}-->
                         <th>加算後のポイント</th>
                         <td><!--{$total_point|number_format}-->Pt</td>
@@ -161,7 +161,7 @@
             <!--{* 販売方法判定（ダウンロード販売のみの場合はお届け先を表示しない） *}-->
             <!--{if $cartKey != $smarty.const.PRODUCT_TYPE_DOWNLOAD}-->
-            <!--{foreach item=shippingItem from=$shipping name=shippingItem}-->
-            <h3>▼お届け先<!--{if $isMultiple}--><!--{$smarty.foreach.shippingItem.iteration}--><!--{/if}--></h3>
-           <!--{if $isMultiple}-->
+            <!--{foreach item=shippingItem from=$arrShipping name=shippingItem}-->
+            <h3>▼お届け先<!--{if $is_multiple}--><!--{$smarty.foreach.shippingItem.iteration}--><!--{/if}--></h3>
+           <!--{if $is_multiple}-->
             <table summary="ご注文内容確認">
               <tr>
@@ -249,13 +249,13 @@
                 <tr>
                     <th>配送方法</th>
-                    <td><!--{$arrDeliv[$arrData.deliv_id]|h}--></td>
+                    <td><!--{$arrDeliv[$arrForm.deliv_id]|h}--></td>
                 </tr>
                 <tr>
                     <th>お支払方法</th>
-                    <td><!--{$arrData.payment_method|h}--></td>
+                    <td><!--{$arrForm.payment_method|h}--></td>
                 </tr>
                 <tr>
                     <th>その他お問い合わせ</th>
-                    <td><!--{$arrData.message|h|nl2br}--></td>
+                    <td><!--{$arrForm.message|h|nl2br}--></td>
                 </tr>
                 </tbody>
@@ -264,5 +264,5 @@
             <div class="tblareabtn">
                 <a href="./payment.php" onmouseover="chgImgImageSubmit('<!--{$TPL_URLPATH}-->img/button/btn_back_on.gif',back03)" onmouseout="chgImgImageSubmit('<!--{$TPL_URLPATH}-->img/button/btn_back.gif',back03)"><img src="<!--{$TPL_URLPATH}-->img/button/btn_back.gif" width="150" height="30" alt="戻る" border="0" name="back03" id="back03" /></a>&nbsp;
-                <!--{if $payment_type != ""}-->
+                <!--{if $use_module}-->
                 <input type="image" onclick="return fnCheckSubmit();" onmouseover="chgImgImageSubmit('<!--{$TPL_URLPATH}-->img/button/btn_next_on.gif',this)" onmouseout="chgImgImageSubmit('<!--{$TPL_URLPATH}-->img/button/btn_next.gif',this)" src="<!--{$TPL_URLPATH}-->img/button/btn_next.gif" alt="次へ" class="box150" name="next" id="next" />
                 <!--{else}-->
Index: /branches/version-2_5-dev/data/Smarty/templates/mobile/shopping/confirm.tpl
===================================================================
--- /branches/version-2_5-dev/data/Smarty/templates/mobile/shopping/confirm.tpl	(revision 20116)
+++ /branches/version-2_5-dev/data/Smarty/templates/mobile/shopping/confirm.tpl	(revision 20122)
@@ -31,5 +31,5 @@
 
 【ご注文内容】<br>
-<!--{foreach from=$cartItems item=item}-->
+<!--{foreach from=$arrCartItems item=item}-->
 <!--{$item.productsClass.name|h}--><br>
 <!--{if $item.productsClass.classcategory_name1 != ""}--><!--{$item.productsClass.class_name1}-->：<!--{$item.productsClass.classcategory_name1}--><br><!--{/if}-->
@@ -44,11 +44,11 @@
 商品合計：<!--{$tpl_total_inctax[$cartKey]|number_format}-->円<br>
 <!--{if $smarty.const.USE_POINT !== false}-->
-<!--{assign var=discount value=`$arrData.use_point*$smarty.const.POINT_VALUE`}-->
+<!--{assign var=discount value=`$arrForm.use_point*$smarty.const.POINT_VALUE`}-->
 ポイント値引き：-<!--{$discount|number_format|default:0}-->円<br>
 <!--{/if}-->
-送料：<!--{$arrData.deliv_fee|number_format}-->円<br>
-<!--{if $arrData.charge > 0}-->手数料：<!--{$arrData.charge|number_format}-->円<br><!--{/if}-->
-合計：<!--{$arrData.payment_total|number_format}-->円<br>
-(内消費税：<!--{$arrData.tax|number_format}-->円)<br>
+送料：<!--{$arrForm.deliv_fee|number_format}-->円<br>
+<!--{if $arrForm.charge > 0}-->手数料：<!--{$arrForm.charge|number_format}-->円<br><!--{/if}-->
+合計：<!--{$arrForm.payment_total|number_format}-->円<br>
+(内消費税：<!--{$arrForm.tax|number_format}-->円)<br>
 
 <br>
@@ -58,8 +58,8 @@
 【ポイント確認】<br>
 ご注文前のポイント：<!--{$tpl_user_point|number_format|default:0}-->Pt<br>
-ご使用ポイント：-<!--{$arrData.use_point|number_format|default:0}-->Pt<br>
-<!--{if $arrData.birth_point > 0}-->お誕生月ポイント：+<!--{$arrData.birth_point|number_format|default:0}-->Pt<br><!--{/if}-->
-今回加算予定のポイント：+<!--{$arrData.add_point|number_format|default:0}-->Pt<br>
-<!--{assign var=total_point value=`$tpl_user_point-$arrData.use_point+$arrData.add_point`}-->
+ご使用ポイント：-<!--{$arrForm.use_point|number_format|default:0}-->Pt<br>
+<!--{if $arrForm.birth_point > 0}-->お誕生月ポイント：+<!--{$arrForm.birth_point|number_format|default:0}-->Pt<br><!--{/if}-->
+今回加算予定のポイント：+<!--{$arrForm.add_point|number_format|default:0}-->Pt<br>
+<!--{assign var=total_point value=`$tpl_user_point-$arrForm.use_point+$arrForm.add_point`}-->
 加算後のポイント：<!--{$total_point|number_format}-->Pt<br>
 
@@ -70,6 +70,6 @@
 <!--{if $cartKey != $smarty.const.PRODUCT_TYPE_DOWNLOAD}-->
 【お届け先】<br>
-<!--{foreach item=shippingItem from=$shipping name=shippingItem}-->
-<!--{if $isMultiple}-->
+<!--{foreach item=shippingItem from=$arrShipping name=shippingItem}-->
+<!--{if $is_multiple}-->
     ▼お届け先<!--{$smarty.foreach.shippingItem.iteration}--><br>
     <!--{* 複数お届け先の場合、お届け先毎の商品を表示 *}-->
@@ -98,16 +98,16 @@
 
 【配送方法】<br>
-<!--{$arrDeliv[$arrData.deliv_id]|h}--><br>
+<!--{$arrDeliv[$arrForm.deliv_id]|h}--><br>
 
 <br>
 
 【お支払い方法】<br>
-<!--{$arrData.payment_method|h}--><br>
+<!--{$arrForm.payment_method|h}--><br>
 
 <br>
 
-<!--{if $arrData.message != ""}-->
+<!--{if $arrForm.message != ""}-->
 【その他お問い合わせ】<br>
-<!--{$arrData.message|h|nl2br}--><br>
+<!--{$arrForm.message|h|nl2br}--><br>
 <br>
 <!--{/if}-->
Index: /branches/version-2_5-dev/data/Smarty/templates/sphone/shopping/confirm.tpl
===================================================================
--- /branches/version-2_5-dev/data/Smarty/templates/sphone/shopping/confirm.tpl	(revision 20116)
+++ /branches/version-2_5-dev/data/Smarty/templates/sphone/shopping/confirm.tpl	(revision 20122)
@@ -47,5 +47,5 @@
 
         <p>下記ご注文内容で送信してもよろしいでしょうか？<br />
-            よろしければ、「<!--{if $payment_type != ""}-->次へ<!--{else}-->ご注文完了ページへ<!--{/if}-->」ボタンをクリックしてください。</p>
+            よろしければ、「<!--{if $use_module}-->次へ<!--{else}-->ご注文完了ページへ<!--{/if}-->」ボタンをクリックしてください。</p>
 
         <form name="form1" id="form1" method="post" action="?">
@@ -60,5 +60,5 @@
                     <th>小計</th>
                 </tr>
-                <!--{foreach from=$cartItems item=item}-->
+                <!--{foreach from=$arrCartItems item=item}-->
                 <tr>
                     <td class="phototd">
@@ -98,5 +98,5 @@
                         <th colspan="4" class="resulttd">値引き（ポイントご使用時）</th>
                         <td class="pricetd">
-                        <!--{assign var=discount value=`$arrData.use_point*$smarty.const.POINT_VALUE`}-->
+                        <!--{assign var=discount value=`$arrForm.use_point*$smarty.const.POINT_VALUE`}-->
                          -<!--{$discount|number_format|default:0}-->円</td>
                     </tr>
@@ -104,13 +104,13 @@
                 <tr>
                     <th colspan="4" class="resulttd">送料</th>
-                    <td class="pricetd"><!--{$arrData.deliv_fee|number_format}-->円</td>
+                    <td class="pricetd"><!--{$arrForm.deliv_fee|number_format}-->円</td>
                 </tr>
                 <tr>
                     <th colspan="4" class="resulttd">手数料</th>
-                    <td class="pricetd"><!--{$arrData.charge|number_format}-->円</td>
+                    <td class="pricetd"><!--{$arrForm.charge|number_format}-->円</td>
                 </tr>
                 <tr>
                     <th colspan="4" class="resulttd">合計</th>
-                    <td class="pricetd"><em><!--{$arrData.payment_total|number_format}-->円</em></td>
+                    <td class="pricetd"><em><!--{$arrForm.payment_total|number_format}-->円</em></td>
                 </tr>
             </table>
@@ -125,18 +125,18 @@
                     <tr>
                         <th>ご使用ポイント</th>
-                        <td>-<!--{$arrData.use_point|number_format|default:0}-->Pt</td>
-                    </tr>
-                    <!--{if $arrData.birth_point > 0}-->
+                        <td>-<!--{$arrForm.use_point|number_format|default:0}-->Pt</td>
+                    </tr>
+                    <!--{if $arrForm.birth_point > 0}-->
                     <tr>
                         <th>お誕生月ポイント</th>
-                        <td>+<!--{$arrData.birth_point|number_format|default:0}-->Pt</td>
+                        <td>+<!--{$arrForm.birth_point|number_format|default:0}-->Pt</td>
                     </tr>
                     <!--{/if}-->
                     <tr>
                         <th>今回加算予定のポイント</th>
-                        <td>+<!--{$arrData.add_point|number_format|default:0}-->Pt</td>
-                    </tr>
-                    <tr>
-                    <!--{assign var=total_point value=`$tpl_user_point-$arrData.use_point+$arrData.add_point`}-->
+                        <td>+<!--{$arrForm.add_point|number_format|default:0}-->Pt</td>
+                    </tr>
+                    <tr>
+                    <!--{assign var=total_point value=`$tpl_user_point-$arrForm.use_point+$arrForm.add_point`}-->
                         <th>加算後のポイント</th>
                         <td><!--{$total_point|number_format}-->Pt</td>
@@ -149,7 +149,7 @@
             <!--{* 販売方法判定（ダウンロード販売のみの場合はお届け先を表示しない） *}-->
             <!--{if $cartKey != $smarty.const.PRODUCT_TYPE_DOWNLOAD}-->
-            <!--{foreach item=shippingItem from=$shipping name=shippingItem}-->
-            <h3>▼お届け先<!--{if $isMultiple}--><!--{$smarty.foreach.shippingItem.iteration}--><!--{/if}--></h3>
-           <!--{if $isMultiple}-->
+            <!--{foreach item=shippingItem from=$arrShipping name=shippingItem}-->
+            <h3>▼お届け先<!--{if $is_multiple}--><!--{$smarty.foreach.shippingItem.iteration}--><!--{/if}--></h3>
+           <!--{if $is_multiple}-->
             <table summary="ご注文内容確認">
               <tr>
@@ -241,25 +241,21 @@
                 <tr>
                     <th>配送方法</th>
-                    <td><!--{$arrDeliv[$arrData.deliv_id]|h}--></td>
+                    <td><!--{$arrDeliv[$arrForm.deliv_id]|h}--></td>
                 </tr>
                 <tr>
                     <th>お支払方法</th>
-                    <td><!--{$arrData.payment_method|h}--></td>
+                    <td><!--{$arrForm.payment_method|h}--></td>
                 </tr>
                 <tr>
                     <th>その他お問い合わせ</th>
-                    <td><!--{$arrData.message|h|nl2br}--></td>
+                    <td><!--{$arrForm.message|h|nl2br}--></td>
                 </tr>
                 </tbody>
             </table>
-
-            <!--{if 'sfTSPrintOrderBox'|function_exists}-->
-                <!--{'sfTSPrintOrderBox'|call_user_func}-->
-            <!--{/if}-->
 
             <div class="tblareabtn">
             <a href="./payment.php" class="spbtn spbtn-medeum">
                     戻る</a>&nbsp;
-                <!--{if $payment_type != ""}-->
+                <!--{if $use_module}-->
                  <input type="submit" value="次へ" class="spbtn spbtn-shopping" width="130" height="30" alt="次へ" name="next" id="next" />
                 <!--{else}-->
Index: /branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping_Confirm.php
===================================================================
--- /branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping_Confirm.php	(revision 20116)
+++ /branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping_Confirm.php	(revision 20122)
@@ -78,5 +78,5 @@
         $objPurchase = new SC_Helper_Purchase_Ex();
 
-        $this->isMultiple = $objPurchase->isMultiple();
+        $this->is_multiple = $objPurchase->isMultiple();
 
         // 前のページで正しく登録手続きが行われた記録があるか判定
@@ -86,7 +86,6 @@
 
         // ユーザユニークIDの取得と購入状態の正当性をチェック
-        $uniqid = $objSiteSess->getUniqId();
-        $objPurchase->verifyChangeCart($uniqid, $objCartSess);
-        $this->tpl_uniqid = $uniqid;
+        $this->tpl_uniqid = $objSiteSess->getUniqId();
+        $objPurchase->verifyChangeCart($this->tpl_uniqid, $objCartSess);
 
         $this->cartKey = $objCartSess->getKey();
@@ -94,5 +93,5 @@
         // カート内商品のチェック
         $this->tpl_message = $objCartSess->checkProducts($this->cartKey);
-        if (strlen($this->tpl_message) >= 1) {
+        if (!SC_Utils_Ex::isBlank($this->tpl_message)) {
             SC_Response_Ex::sendRedirect(CART_URLPATH);
             exit;
@@ -100,5 +99,6 @@
 
         // カートの商品を取得
-        $this->cartItems = $objCartSess->getCartList($this->cartKey);
+        $this->arrShipping = $objPurchase->getShippingTemp();
+        $this->arrCartItems = $objCartSess->getCartList($this->cartKey);
         // 合計金額
         $this->tpl_total_inctax[$this->cartKey] = $objCartSess->getAllProductsTotal($this->cartKey);
@@ -108,11 +108,14 @@
         $this->tpl_total_point[$this->cartKey] = $objCartSess->getAllProductsPoint($this->cartKey);
 
-        // TODO リファクタリング
         // 一時受注テーブルの読込
-        $tmpData = $objPurchase->getOrderTemp($uniqid);
+        $arrOrderTemp = $objPurchase->getOrderTemp($this->tpl_uniqid);
 
         // カート集計を元に最終計算
-        // FIXME 使用ポイント, 手数料の扱い
-        $arrData = array_merge($tmpData, $objCartSess->calculate($this->cartKey, $objCustomer, $tmpData['use_point'], $objPurchase->getShippingPref(), $tmpData['charge'], $tmpData['discount']));
+        $arrCalcResults = $objCartSess->calculate($this->cartKey, $objCustomer,
+                                                  $arrOrderTemp['use_point'],
+                                                  $objPurchase->getShippingPref(),
+                                                  $arrOrderTemp['charge'],
+                                                  $arrOrderTemp['discount']);
+        $this->arrForm = array_merge($arrOrderTemp, $arrCalcResults);
 
         // 会員ログインチェック
@@ -122,15 +125,6 @@
         }
 
-        // 決済区分を取得する
-        $payment_type = "";
-        if($objDb->sfColumnExists("dtb_payment", "memo01")){
-            // MEMO03に値が入っている場合には、モジュール追加されたものとみなす
-            $sql = "SELECT memo03 FROM dtb_payment WHERE payment_id = ?";
-            $arrPayment = $objQuery->getAll($sql, array($arrData['payment_id']));
-            $payment_type = $arrPayment[0]["memo03"];
-        }
-        $this->payment_type = $payment_type;
-
-        $this->shipping = $objPurchase->getShippingTemp();
+        // 決済モジュールを使用するかどうか
+        $this->use_module = $this->useModule($this->arrForm['payment_id']);
 
         switch($this->getMode()) {
@@ -143,22 +137,26 @@
             break;
         case 'confirm':
-            // この時点で注文番号を確保しておく（クレジット、コンビニ決済で必要なため）
-            $arrData["order_id"] = $objQuery->nextval("dtb_order_order_id");
+            /*
+             * 決済モジュールで必要なため, 受注番号を取得
+             */
+            $this->arrForm["order_id"] = $objQuery->nextval("dtb_order_order_id");
 
             // 集計結果を受注一時テーブルに反映
-            $objPurchase->saveOrderTemp($uniqid, $arrData, $objCustomer);
+            $objPurchase->saveOrderTemp($this->tpl_uniqid, $this->arrForm,
+                                        $objCustomer);
+
             // 正常に登録されたことを記録しておく
             $objSiteSess->setRegistFlag();
 
-            // 決済方法により画面切替
-            if($payment_type != "") {
-                $_SESSION["payment_id"] = $arrData['payment_id'];
-
+            // 決済モジュールを使用する場合
+            if ($this->use_module) {
+                $_SESSION["payment_id"] = $this->arrForm['payment_id'];
                 $objPurchase->completeOrder(ORDER_PENDING);
                 SC_Response_Ex::sendRedirect(SHOPPING_MODULE_URLPATH);
-            }else{
-                // 受注を完了し, 購入完了ページへ
+            }
+            // 購入完了ページ
+            else {
                 $objPurchase->completeOrder(ORDER_NEW);
-                $objPurchase->sendOrderMail($arrData["order_id"]);
+                $objPurchase->sendOrderMail($this->arrForm["order_id"]);
                 SC_Response_Ex::sendRedirect(SHOPPING_COMPLETE_URLPATH);
             }
@@ -168,5 +166,4 @@
             break;
         }
-        $this->arrData = $arrData;
     }
 
@@ -179,4 +176,19 @@
         parent::destroy();
     }
+
+    /**
+     * 決済モジュールを使用するかどうか.
+     *
+     * dtb_payment.memo03 に値が入っている場合は決済モジュールと見なす.
+     *
+     * @param integer $payment_id 支払い方法ID
+     * @return boolean 決済モジュールを使用する支払い方法の場合 true
+     */
+    function useModule($payment_id) {
+        $objQuery =& SC_Query::getSingletonInstance();
+        $memo03 = $objQuery->get('memo03', 'dtb_payment', 'payment_id = ?',
+                                 array($payment_id));
+        return !SC_Utils_Ex::isBlank($memo03);
+    }
 }
 ?>
Index: /branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping.php
===================================================================
--- /branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping.php	(revision 20116)
+++ /branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping.php	(revision 20122)
@@ -129,6 +129,6 @@
 
                 // モバイルサイトで携帯アドレスの登録が無い場合
-                if($this->hasEmailMobile($objCustomer)) {
-                    SC_Response_Ex::sendRedirect('../entry/email_mobile.php');
+                if(!$this->hasEmailMobile($objCustomer)) {
+                    SC_Response_Ex::sendRedirectFromUrlPath('entry/email_mobile.php');
                     exit;
                 }
@@ -470,7 +470,6 @@
      */
     function doLogin(&$objCustomer, $login_email, $login_pass) {
-
         switch (SC_Display::detectDevice()) {
-        case DEVICE_TYPE_MOBILLE:
+        case DEVICE_TYPE_MOBILE:
             if(!$objCustomer->getCustomerDataFromMobilePhoneIdPass($login_pass) &&
                !$objCustomer->getCustomerDataFromEmailPass($login_pass, $login_email, true)) {
@@ -503,8 +502,8 @@
     function hasEmailMobile(&$objCustomer) {
         switch (SC_Display::detectDevice()) {
-        case DEVICE_TYPE_MOBILLE:
+        case DEVICE_TYPE_MOBILE:
             $objMobile = new SC_Helper_Mobile_Ex();
             if (!$objMobile->gfIsMobileMailAddress($objCustomer->getValue('email'))) {
-                if (!$objCustomer->hasValue('email_mobile')) {
+                if ($objCustomer->hasValue('email_mobile')) {
                     return true;
                 }
Index: /branches/version-2_5-dev/data/class/SC_Customer.php
===================================================================
--- /branches/version-2_5-dev/data/class/SC_Customer.php	(revision 19986)
+++ /branches/version-2_5-dev/data/class/SC_Customer.php	(revision 20122)
@@ -251,5 +251,8 @@
     // パラメータがNULLかどうかの判定
     function hasValue($keyname) {
-        return isset($_SESSION['customer'][$keyname]);
+        if (isset($_SESSION['customer'][$keyname])) {
+            return !SC_Utils_Ex::isBlank($_SESSION['customer'][$keyname]);
+        }
+        return false;
     }
 
