Index: branches/version-2_5-dev/data/class/pages/mypage/LC_Page_Mypage_Change.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/mypage/LC_Page_Mypage_Change.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/mypage/LC_Page_Mypage_Change.php	(revision 20044)
@@ -127,7 +127,8 @@
             $this->arrForm = $this->objFormParam->getHashArray();
 
+
+            switch ($this->getMode()) {
+            case 'confirm':
             //-- 確認
-            if ($this->getMode() == "confirm") {
-
                 $this->arrErr = $this->lfErrorCheck();
 
@@ -144,6 +145,6 @@
                     $this->tpl_title = '会員登録(確認ページ)';
                 }
-
-            } elseif ($this->getMode() == "complete") {
+                break;
+            case 'complete':
                 //-- 会員登録と完了画面
 
@@ -155,5 +156,7 @@
                 SC_Response_Ex::sendRedirect('change_complete.php');
                 exit;
-
+                break;
+            default:
+                break;
             }
         } else {
Index: branches/version-2_5-dev/data/class/pages/mypage/LC_Page_Mypage_DeliveryAddr.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/mypage/LC_Page_Mypage_DeliveryAddr.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/mypage/LC_Page_Mypage_DeliveryAddr.php	(revision 20044)
@@ -89,4 +89,5 @@
         if (!isset($_GET['other_deliv_id'])) $_GET['other_deliv_id'] = "";
 
+        //TODO 要リファクタリング(MODE if利用)
         if ($this->getMode() == null){
             $_SESSION['other_deliv_id'] = $_GET['other_deliv_id'];
Index: branches/version-2_5-dev/data/class/pages/mypage/LC_Page_Mypage_Favorite.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/mypage/LC_Page_Mypage_Favorite.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/mypage/LC_Page_Mypage_Favorite.php	(revision 20044)
@@ -90,8 +90,12 @@
         }
 
+        switch ($this->getMode()) {
+        case 'delete_favorite':
         // お気に入り削除
-        if ($this->getMode() == 'delete_favorite') {
             $customer_id = $objCustomer->getValue('customer_id');
             $this->lfDeleteFavoriteProduct($customer_id, $_POST['product_id']);
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping_Deliv.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping_Deliv.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping_Deliv.php	(revision 20044)
@@ -103,5 +103,5 @@
         $this->cartKey = $objCartSess->getKey();
 
-        // ログインチェック
+        // ログインチェック TODO 要リファクタリング(MODE if利用)
         if($this->getMode() != 'login' && !$objCustomer->isLoginSuccess(true)) {
             // 不正アクセスとみなす
@@ -312,5 +312,5 @@
         $objErr = new SC_CheckError($arrRet);
         $objErr->arrErr = $this->objFormParam->checkError();
-        // 複数項目チェック
+        // 複数項目チェック TODO 要リファクタリング(MODE if利用)
         if ($this->getMode() == 'login'){
             $objErr->doFunc(array("メールアドレス", "login_email", STEXT_LEN), array("EXIST_CHECK"));
Index: branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_Recommend.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_Recommend.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_Recommend.php	(revision 20044)
@@ -84,8 +84,8 @@
 
         if (!isset($_POST['category_id'])) $_POST['category_id'] = "";
-
-        // 登録時
-        if ( $this->getMode() == 'regist' ){
-
+        //TODO: 要リファクタリング(MODE switch 2か所で行われている)
+        switch ($this->getMode()) {
+        case 'regist':
+            // 登録時
             // 入力文字の強制変換
             $this->arrForm = $_POST;
@@ -105,11 +105,12 @@
                 $objQuery->insert("dtb_best_products", $this->arrForm );
             }
-
-        } elseif ( $this->getMode() == 'delete' ){
+            break;
+        case 'delete':
             // 削除時
-
             $sql = "DELETE FROM dtb_best_products WHERE category_id = ? AND rank = ?";
             $objQuery->query($sql, array($_POST['category_id'] ,$_POST['rank']));
-
+            break;
+        default:
+            break;
         }
 
@@ -130,18 +131,23 @@
 
         // 商品変更時 or 登録エラー時は、選択された商品に一時的に置き換える
-        if (
-            $this->getMode() == 'set_item'
-            || $this->getMode() == 'regist' && !empty($this->arrErr[$this->arrForm['rank']])
-        ) {
-            $sql = "SELECT product_id, name, main_list_image FROM dtb_products WHERE product_id = ? AND del_flg = 0";
-            $result = $objQuery->getAll($sql, array($_POST['product_id']));
-            if ( $result ){
-                $data = $result[0];
-                foreach( $data as $key=>$val){
-                    $this->arrItems[$_POST['rank']][$key] = $val;
+        //TODO: 要リファクタリング(MODE switch 2か所で行われている)
+        switch ($this->getMode()) {
+        case 'set_item':
+        case 'regist':
+            if (!empty($this->arrErr[$this->arrForm['rank']])) {
+                $sql = "SELECT product_id, name, main_list_image FROM dtb_products WHERE product_id = ? AND del_flg = 0";
+                $result = $objQuery->getAll($sql, array($_POST['product_id']));
+                if ( $result ){
+                    $data = $result[0];
+                    foreach( $data as $key=>$val){
+                        $this->arrItems[$_POST['rank']][$key] = $val;
+                    }
+                    $this->arrItems[$_POST['rank']]['rank'] = $_POST['rank'];
                 }
-                $this->arrItems[$_POST['rank']]['rank'] = $_POST['rank'];
+                $this->checkRank = $_POST['rank'];
             }
-            $this->checkRank = $_POST['rank'];
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_FileManager.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_FileManager.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_FileManager.php	(revision 20044)
@@ -80,5 +80,5 @@
         $objFileManager = new SC_Helper_FileManager_Ex();
 
-        // 現在の階層を取得
+        // 現在の階層を取得 TODO 要リファクタリング(MODE if利用)
         if($this->getMode() != null) {
             $now_dir = $_POST['now_file'];
Index: branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_CSV.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_CSV.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_CSV.php	(revision 20044)
@@ -105,8 +105,8 @@
         $subno_id = array_keys($this->arrSubnavi,$subno_csv);
         $subno_id = $subno_id[0];
+
         // データの登録
-
-        if ($this->getMode() == "confirm") {
-
+        switch ($this->getMode()) {
+        case 'confirm':
             // エラーチェック
             $this->arrErr = $this->lfCheckError($_POST['output_list']);
@@ -119,4 +119,7 @@
                 $this->objDisplay->reload(array("tpl_subno_csv" => $subno_csv));
             }
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_RecommendSearch.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_RecommendSearch.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_RecommendSearch.php	(revision 20044)
@@ -72,6 +72,6 @@
         SC_Utils_Ex::sfIsSuccess($objSess);
 
-         if ($this->getMode() == "search") {
-
+        switch ($this->getMode()) {
+        case 'search':
             // POST値の引き継ぎ
             $this->arrForm = $_POST;
@@ -137,4 +137,7 @@
             // 検索結果の取得
             $this->arrProducts = $objQuery->select("*", SC_Product::alldtlSQL(), $where, $arrval);
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents.php	(revision 20044)
@@ -86,5 +86,6 @@
 
         //---- 新規登録/編集登録
-        if ( $this->getMode() == 'regist'){
+        switch ($this->getMode()) {
+        case 'regist':
             $_POST = $this->lfConvData($_POST);
 
@@ -111,52 +112,52 @@
                 $this->tpl_onload = "window.alert('編集が完了しました');";
             }
-        }
-
+            break;
+        case 'search':
         //----　編集データ取得
-        if ($this->getMode() == "search" && is_numeric($_POST["news_id"])) {
-            $sql = "SELECT *, cast(news_date as date) as cast_news_date FROM dtb_news WHERE news_id = ? ";
-            $result = $objQuery->getAll($sql, array($_POST["news_id"]));
-            $this->arrForm = $result[0];
-
-            $arrData = split("-", $result[0]["cast_news_date"]);
-            $this->arrForm['year']  = $arrData[0];
-            $this->arrForm['month'] = $arrData[1];
-            $this->arrForm['day']   = $arrData[2];
-
-            $this->edit_mode = "on";
-        }
-
+            if (is_numeric($_POST["news_id"])) {
+                $sql = "SELECT *, cast(news_date as date) as cast_news_date FROM dtb_news WHERE news_id = ? ";
+                $result = $objQuery->getAll($sql, array($_POST["news_id"]));
+                $this->arrForm = $result[0];
+
+                $arrData = split("-", $result[0]["cast_news_date"]);
+                $this->arrForm['year']  = $arrData[0];
+                $this->arrForm['month'] = $arrData[1];
+                $this->arrForm['day']   = $arrData[2];
+
+                $this->edit_mode = "on";
+            }
+            break;
+        case 'delete':
         //----　データ削除
-        if ( $this->getMode() == 'delete' && is_numeric($_POST["news_id"])) {
-
-            // rankを取得
-            $pre_rank = $objQuery->getOne(" SELECT rank FROM dtb_news WHERE del_flg = 0 AND news_id = ? ", array( $_POST['news_id']  ));
-
-            //-- 削除する新着情報以降のrankを1つ繰り上げておく
-            $objQuery->begin();
-            $sql = "UPDATE dtb_news SET rank = rank - 1, update_date = NOW() WHERE del_flg = 0 AND rank > ?";
-            $objQuery->query( $sql, array( $pre_rank  ) );
-
-            $sql = "UPDATE dtb_news SET rank = 0, del_flg = 1, update_date = NOW() WHERE news_id = ?";
-            $objQuery->query( $sql, array( $_POST['news_id'] ) );
-            $objQuery->commit();
-
-            $this->objDisplay->reload();             //自分にリダイレクト（再読込による誤動作防止）
-        }
-
+            if (is_numeric($_POST["news_id"])) {
+                // rankを取得
+                $pre_rank = $objQuery->getOne(" SELECT rank FROM dtb_news WHERE del_flg = 0 AND news_id = ? ", array( $_POST['news_id']  ));
+
+                //-- 削除する新着情報以降のrankを1つ繰り上げておく
+                $objQuery->begin();
+                $sql = "UPDATE dtb_news SET rank = rank - 1, update_date = NOW() WHERE del_flg = 0 AND rank > ?";
+                $objQuery->query( $sql, array( $pre_rank  ) );
+
+                $sql = "UPDATE dtb_news SET rank = 0, del_flg = 1, update_date = NOW() WHERE news_id = ?";
+                $objQuery->query( $sql, array( $_POST['news_id'] ) );
+                $objQuery->commit();
+
+                $this->objDisplay->reload();             //自分にリダイレクト（再読込による誤動作防止）
+            }
+            break;
+        case 'move':
         //----　表示順位移動
-
-        if ( $this->getMode() == 'move' && is_numeric($_POST["news_id"]) ) {
-            if ($_POST["term"] == "up") {
-                $objDb->sfRankUp("dtb_news", "news_id", $_POST["news_id"]);
-            } else if ($_POST["term"] == "down") {
-                $objDb->sfRankDown("dtb_news", "news_id", $_POST["news_id"]);
-            }
-            //sf_rebuildIndex($conn);
-            $this->objDisplay->reload();
-        }
-
+            if (is_numeric($_POST["news_id"]) ) {
+                if ($_POST["term"] == "up") {
+                    $objDb->sfRankUp("dtb_news", "news_id", $_POST["news_id"]);
+                } else if ($_POST["term"] == "down") {
+                    $objDb->sfRankDown("dtb_news", "news_id", $_POST["news_id"]);
+                }
+                //sf_rebuildIndex($conn);
+                $this->objDisplay->reload();
+            }
+            break;
+        case 'moveRankSet':
         //----　指定表示順位移動
-        if ($this->getMode() == 'moveRankSet') {
             $key = "pos-".$_POST['news_id'];
             $input_pos = mb_convert_kana($_POST[$key], "n");
@@ -165,4 +166,7 @@
                 $this->objDisplay->reload();
             }
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Payment_Input.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Payment_Input.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Payment_Input.php	(revision 20044)
@@ -124,5 +124,6 @@
         }
 
-        if($this->getMode() == "") {
+        if ($_SERVER['REQUEST_METHOD'] == 'GET') {
+        	//TODO: 要リファクタリング(MODE switch 入れ子)
             switch($this->getMode()) {
             case 'pre_edit':
Index: branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis.php	(revision 20042)
+++ branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis.php	(revision 20044)
@@ -92,4 +92,5 @@
             $this->tpl_mode = "insert";
         }
+        //TODO 要リファクタリング(MODE if利用)
         if($this->getMode()!=null) {
             // POSTデータの引き継ぎ
Index: branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Mail.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Mail.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Mail.php	(revision 20044)
@@ -76,6 +76,6 @@
 
         $this->arrMailTEMPLATE = $masterData->getMasterData("mtb_mail_template");
-
-        if ( $this->getMode() == 'id_set'){
+        switch ($this->getMode()) {
+        case 'id_set':
             // テンプレートプルダウン変更時
 
@@ -89,24 +89,28 @@
                 }
             }
+            break;
+        case 'regist':
+            if (SC_Utils_Ex::sfCheckNumLength( $_POST['template_id']) ){
 
-        } elseif ( $this->getMode() == 'regist' && SC_Utils_Ex::sfCheckNumLength( $_POST['template_id']) ){
+                // POSTデータの引き継ぎ
+                $this->arrForm = $this->lfConvertParam($_POST);
+                $this->arrErr = $this->fnErrorCheck($this->arrForm);
 
-            // POSTデータの引き継ぎ
-            $this->arrForm = $this->lfConvertParam($_POST);
-            $this->arrErr = $this->fnErrorCheck($this->arrForm);
+                if ( $this->arrErr ){
+                    // エラーメッセージ
+                    $this->tpl_msg = "エラーが発生しました";
 
-            if ( $this->arrErr ){
-                // エラーメッセージ
-                $this->tpl_msg = "エラーが発生しました";
+                } else {
+                    // 正常
+                    $this->lfRegist($objQuery, $this->arrForm);
 
-            } else {
-                // 正常
-                $this->lfRegist($objQuery, $this->arrForm);
-
-                // 完了メッセージ
-                $this->tpl_onload = "window.alert('メール設定が完了しました。テンプレートを選択して内容をご確認ください。');";
-                unset($this->arrForm);
+                    // 完了メッセージ
+                    $this->tpl_onload = "window.alert('メール設定が完了しました。テンプレートを選択して内容をご確認ください。');";
+                    unset($this->arrForm);
+                }
             }
-
+            break;
+        default:
+            break;
         }
     }
Index: branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Tradelaw.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Tradelaw.php	(revision 20042)
+++ branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Tradelaw.php	(revision 20044)
@@ -95,5 +95,5 @@
             $this->tpl_mode = "insert";
         }
-
+        //TODO 要リファクタリング(MODE if利用)
         if($this->getMode()!=null) {
             // 入力値の変換
Index: branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Seo.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Seo.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Seo.php	(revision 20044)
@@ -89,5 +89,6 @@
         $page_id = (isset($_POST['page_id'])) ? $_POST['page_id'] : '';
 
-        if($this->getMode() == "confirm") {
+        switch ($this->getMode()) {
+        case 'confirm':
             // エラーチェック
             $this->arrErr[$device_type_id][$page_id] = $this->lfErrorCheck($_POST['meta'][$device_type_id][$page_id]);
@@ -108,4 +109,7 @@
                 $this->arrPageData = $arrPageData;
             }
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Point.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Point.php	(revision 20042)
+++ branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Point.php	(revision 20044)
@@ -92,5 +92,5 @@
             $this->tpl_mode = "insert";
         }
-
+        //TODO 要リファクタリング(MODE if利用)
         if($this->getMode()!=null) {
             // 入力値の変換
Index: branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer.php	(revision 20044)
@@ -259,8 +259,8 @@
             }
         }
-
-
+        //TODO: 要リファクタリング(MODE switch 2か所で行われている)
+        switch ($this->getMode()) {
+        case 'delete':
         // 顧客削除
-        if ($this->getMode() == "delete") {
             $sql = "SELECT status,email FROM dtb_customer WHERE customer_id = ? AND del_flg = 0";
             $result_customer = $objQuery->getAll($sql, array($_POST["edit_customer_id"]));
@@ -272,7 +272,7 @@
                 $objQuery->query($sql, array($_POST["edit_customer_id"]));
             }
-        }
+            break;
+        case 'resend_mail':
         // 登録メール再送
-        if ($this->getMode() == "resend_mail") {
             $arrRet = $objQuery->select("name01, name02, secret_key, email, email_mobile", "dtb_customer","customer_id = ? AND del_flg <> 1 AND status = 1", array($_POST["edit_customer_id"]));
             if( is_array($arrRet) === true && count($arrRet) > 0 ){
@@ -317,9 +317,16 @@
                 $objMail->sendMail();
             }
-
+            break;
+        default:
+            break;
         }
-        $mode = $this->getMode();
-        if ($mode == "search" || $mode == "csv"  || $mode == "delete" || $mode == "delete_all" || $mode == "resend_mail") {
-
+
+        //TODO: 要リファクタリング(MODE switch 2か所で行われている)
+        switch ($this->getMode()) {
+        case 'search':
+        case 'csv':
+        case 'delete':
+        case 'delete_all':
+        case 'resend_mail':
             // 入力文字の強制変換
             $this->lfConvertParam();
@@ -351,5 +358,5 @@
                 $offset = $page_max * ($this->arrForm['search_pageno'] - 1);
                 $objSelect->setLimitOffset($page_max, $offset);
-
+                //TODO 要リファクタリング(MODE if利用)
                 if ($this->getMode() == 'csv') {
                     $searchSql = $objSelect->getListCSV($this->arrColumnCSV);
@@ -359,5 +366,5 @@
 
                 $this->search_data = $objQuery->getAll($searchSql, $objSelect->arrVal);
-
+                //TODO: 要リファクタリング(MODE switch 入れ子)
                 switch($this->getMode()) {
                 case 'csv':
@@ -427,4 +434,7 @@
                 }
             }
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer_Customer.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer_Customer.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer_Customer.php	(revision 20044)
@@ -118,8 +118,9 @@
         $arrRejectRegistColumn = array("year", "month", "day");
 
-        $mode = $this->getMode();
         //----　顧客情報編集
-        if ($mode == "confirm" || $mode == "complete" || $mode == "return") {
-
+        switch ($this->getMode()) {
+        case 'confirm':
+        case 'complete':
+        case 'return':
             //-- POSTデータの引き継ぎ
             $this->arrForm = $_POST;
@@ -158,5 +159,9 @@
                 }
             }
-        }
+            break;
+        default:
+            break;
+        }
+
     }
 
Index: branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer_Edit.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer_Edit.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer_Edit.php	(revision 20044)
@@ -120,5 +120,5 @@
         $arrRejectRegistColumn = array("year", "month", "day");
 
-        // 検索条件を保持
+        // 検索条件を保持 TODO 要リファクタリング(MODE if利用)
         if ($this->getMode() == "edit_search") {
             $arrSearch = $_POST;
@@ -135,76 +135,80 @@
 
         //----　顧客編集情報取得
-        $mode = $this->getMode();
-        if (($mode == "edit" || $mode == "edit_search") && is_numeric($_POST["edit_customer_id"])) {
-
-            //--　顧客データ取得
-            $sql = "SELECT * FROM dtb_customer WHERE del_flg = 0 AND customer_id = ?";
-            $result = $this->objQuery->getAll($sql, array($_POST["edit_customer_id"]));
-            $this->list_data = $result[0];
-
-            $birth = split(" ", $this->list_data["birth"]);
-            $birth = split("-",$birth[0]);
-
-            $this->list_data["year"] = $birth[0];
-            $this->list_data["month"] = isset($birth[1]) ? $birth[1] : "";
-            $this->list_data["day"] = isset($birth[2]) ? $birth[2] : "";
-
-            $this->list_data["password"] = DEFAULT_PASSWORD;
-            $this->list_data["reminder_answer"] = DEFAULT_PASSWORD;
-            //DB登録のメールアドレスを渡す
-            $this->tpl_edit_email = $result[0]['email'];
-            //購入履歴情報の取得
-            $this->arrPurchaseHistory = $this->lfPurchaseHistory($_POST['edit_customer_id']);
-            // 支払い方法の取得
-            $this->arrPayment = $objDb->sfGetIDValueList("dtb_payment", "payment_id", "payment_method");
-        }
-
-        //----　顧客情報編集
-        if ( $mode != "edit" && $mode != "edit_search" && is_numeric($_POST["customer_id"])) {
-
-            //-- POSTデータの引き継ぎ
-            $this->arrForm = $_POST;
-            $this->arrForm['email'] = strtolower($this->arrForm['email']);        // emailはすべて小文字で処理
-
-            //-- 入力データの変換
-            $this->arrForm = $this->lfConvertParam($this->arrForm, $arrRegistColumn);
-            //-- 入力チェック
-            $this->arrErr = $this->lfErrorCheck($this->arrForm);
-
-            //-- 入力エラー発生 or リターン時
-            if ($this->arrErr || $mode == "return") {
-                foreach($this->arrForm as $key => $val) {
-                    $this->list_data[ $key ] = $val;
-                }
+        switch ($this->getMode()) {
+        case 'edit':
+        case 'edit_search':
+            if (is_numeric($_POST["edit_customer_id"])) {
+
+                //--　顧客データ取得
+                $sql = "SELECT * FROM dtb_customer WHERE del_flg = 0 AND customer_id = ?";
+                $result = $this->objQuery->getAll($sql, array($_POST["edit_customer_id"]));
+                $this->list_data = $result[0];
+
+                $birth = split(" ", $this->list_data["birth"]);
+                $birth = split("-",$birth[0]);
+
+                $this->list_data["year"] = $birth[0];
+                $this->list_data["month"] = isset($birth[1]) ? $birth[1] : "";
+                $this->list_data["day"] = isset($birth[2]) ? $birth[2] : "";
+
+                $this->list_data["password"] = DEFAULT_PASSWORD;
+                $this->list_data["reminder_answer"] = DEFAULT_PASSWORD;
+                //DB登録のメールアドレスを渡す
+                $this->tpl_edit_email = $result[0]['email'];
                 //購入履歴情報の取得
-                $this->arrPurchaseHistory = $this->lfPurchaseHistory($_POST['customer_id']);
+                $this->arrPurchaseHistory = $this->lfPurchaseHistory($_POST['edit_customer_id']);
                 // 支払い方法の取得
                 $this->arrPayment = $objDb->sfGetIDValueList("dtb_payment", "payment_id", "payment_method");
-
-            } else {
-                //-- 確認
-                if ($mode == "confirm") {
-                    $this->tpl_mainpage = 'customer/edit_confirm.tpl';
-                    $passlen = strlen($this->arrForm['password']);
-                    $this->passlen = SC_Utils_Ex::lfPassLen($passlen);
-
+            }
+            break;
+        default:
+        	//----　顧客情報編集
+            if (is_numeric($_POST["customer_id"])) {
+                //-- POSTデータの引き継ぎ
+                $this->arrForm = $_POST;
+                $this->arrForm['email'] = strtolower($this->arrForm['email']);        // emailはすべて小文字で処理
+
+                //-- 入力データの変換
+                $this->arrForm = $this->lfConvertParam($this->arrForm, $arrRegistColumn);
+                //-- 入力チェック
+                $this->arrErr = $this->lfErrorCheck($this->arrForm);
+
+                //-- 入力エラー発生 or リターン時
+                if ($this->arrErr || $mode == "return") {
+                    foreach($this->arrForm as $key => $val) {
+                        $this->list_data[ $key ] = $val;
+                    }
+                    //購入履歴情報の取得
+                    $this->arrPurchaseHistory = $this->lfPurchaseHistory($_POST['customer_id']);
+                    // 支払い方法の取得
+                    $this->arrPayment = $objDb->sfGetIDValueList("dtb_payment", "payment_id", "payment_method");
+
+                } else {
+                    //-- 確認
+                    if ($mode == "confirm") {
+                        $this->tpl_mainpage = 'customer/edit_confirm.tpl';
+                        $passlen = strlen($this->arrForm['password']);
+                        $this->passlen = SC_Utils_Ex::lfPassLen($passlen);
+
+                    }
+                    //--　編集
+                    if($mode == "complete") {
+                        $this->tpl_mainpage = 'customer/edit_complete.tpl';
+
+                        // 現在の会員情報を取得する
+                        $arrCusSts = $this->objQuery->getOne("SELECT status FROM dtb_customer WHERE customer_id = ?", array($_POST["customer_id"]));
+
+                        // 会員情報が変更されている場合にはシークレット№も更新する。
+                        if ($arrCusSts != $_POST['status']){
+                            $secret = SC_Utils_Ex::sfGetUniqRandomId("r");
+                            $this->arrForm['secret_key'] = $secret;
+                            array_push($arrRegistColumn, array('column' => 'secret_key', 'convert' => 'n'));
+                        }
+                        //-- 編集登録
+                        $objCustomerHelper->sfEditCustomerDataAdmin($this->arrForm, $arrRegistColumn);
+                    }
                 }
-                //--　編集
-                if($mode == "complete") {
-                    $this->tpl_mainpage = 'customer/edit_complete.tpl';
-
-                    // 現在の会員情報を取得する
-                    $arrCusSts = $this->objQuery->getOne("SELECT status FROM dtb_customer WHERE customer_id = ?", array($_POST["customer_id"]));
-
-                    // 会員情報が変更されている場合にはシークレット№も更新する。
-                    if ($arrCusSts != $_POST['status']){
-                        $secret = SC_Utils_Ex::sfGetUniqRandomId("r");
-                        $this->arrForm['secret_key'] = $secret;
-                        array_push($arrRegistColumn, array('column' => 'secret_key', 'convert' => 'n'));
-                    }
-                    //-- 編集登録
-                    $objCustomerHelper->sfEditCustomerDataAdmin($this->arrForm, $arrRegistColumn);
-                }
-            }
+            }
+            break;
         }
     }
Index: branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer_SearchCustomer.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer_SearchCustomer.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/customer/LC_Page_Admin_Customer_SearchCustomer.php	(revision 20044)
@@ -70,5 +70,6 @@
 
         // POSTのモードがsearchなら顧客検索開始
-        if($this->getMode() == 'search'){
+        switch ($this->getMode()) {
+        case 'search':
             $this->objFormParam = new SC_FormParam();
             // 値の初期化
@@ -164,5 +165,7 @@
                 $this->arrCustomer = $objQuery->select($col, $from, $where, $sqlval);
             }
-
+            break;
+        default:
+            break;
         }
         $this->arrForm = $arrForm;
Index: branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products.php	(revision 20044)
@@ -118,7 +118,7 @@
         $this->arrHidden['search_pageno'] = isset($_POST['search_pageno']) ? $_POST['search_pageno'] : "";
 
+        switch ($this->getMode()) {
+        case 'delete':
         // 商品削除
-        $mode = $this->getMode();
-        if ($mode == "delete") {
             $objQuery = new SC_Query();
             $objQuery->delete("dtb_products",
@@ -134,8 +134,8 @@
             $objDb->sfCountCategory($objQuery);
             $objDb->sfCountMaker($objQuery);
-        }
-
-
-        if ($mode == "search" || $mode == "csv"  || $mode == "delete" || $mode == "delete_all" || $mode == "camp_search") {
+        case 'search':
+        case 'csv':
+        case 'delete_all':
+        case 'camp_search':
             // 入力文字の強制変換
             $this->lfConvertParam();
@@ -233,5 +233,6 @@
                 $objQuery = new SC_Query();
                 $objProduct = new SC_Product();
-                switch($mode) {
+                //TODO: 要リファクタリング(MODE switch 入れ子)
+                switch ($this->getMode()) {
                     case 'csv':
                         require_once(CLASS_EX_REALDIR . "helper_extends/SC_Helper_CSV_Ex.php");
@@ -306,4 +307,7 @@
                 }
             }
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Product.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Product.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Product.php	(revision 20044)
@@ -157,5 +157,5 @@
 
                 $this->lfProductPage();     // 商品登録ページ
-
+                //TODO 要リファクタリング(MODE if利用)
                 if($this->getMode() == "copy"){
                     $this->arrForm["copy_product_id"] = $this->arrForm["product_id"];
Index: branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_ProductSelect.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_ProductSelect.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_ProductSelect.php	(revision 20044)
@@ -76,6 +76,6 @@
         SC_Utils_Ex::sfIsSuccess($objSess);
 
-        if ($this->getMode() == "search") {
-
+        switch ($this->getMode()) {
+        case 'search':
             // POST値の引き継ぎ
             $this->arrForm = $_POST;
@@ -143,4 +143,7 @@
             // FIXME 商品コードの表示
             $this->arrProducts = $objQuery->select("*", SC_Product::alldtlSQL(), $where, $arrval);
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Review.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Review.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Review.php	(revision 20044)
@@ -116,13 +116,10 @@
             }
         }
-        $mode = $this->getMode();
-
-        if ($mode == "delete"){
+        switch ($this->getMode()) {
+        case 'delete':
             //レビューの削除
             $objQuery->exec("UPDATE dtb_review SET del_flg=1 WHERE review_id=?", array($_POST['review_id']));
-        }
-
-        if ($mode == 'search' || $mode == 'csv' || $mode == 'delete'){
-
+        case 'search':
+        case 'csv':
             //削除されていない商品を検索
             $where="A.del_flg = 0 AND B.del_flg = 0";
@@ -268,4 +265,7 @@
                 exit;
             }
+            break;
+        default:
+            break;
         }
     }
Index: branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Trackback.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Trackback.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Trackback.php	(revision 20044)
@@ -106,13 +106,9 @@
             }
         }
-
-        $mode = $this->getMode();
-        // トラックバックの削除
-        if ($mode == "delete") {
+        switch ($this->getMode()) {
+        case 'delete':
             $objQuery->exec("UPDATE dtb_trackback SET del_flg = 1, update_date = now() WHERE trackback_id = ?", array($_POST['trackback_id']));
-        }
-
-        if ($mode == 'search' || $mode == 'csv' || $mode == 'delete'){
-
+        case 'search':
+        case 'csv':
             //削除されていない商品を検索
             $where="A.del_flg = 0 AND B.del_flg = 0";
@@ -244,4 +240,7 @@
                 exit;
             }
+            break;
+        default:
+            break;
         }
     }
Index: branches/version-2_5-dev/data/class/pages/admin/design/LC_Page_Admin_Design.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/design/LC_Page_Admin_Design.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/design/LC_Page_Admin_Design.php	(revision 20044)
@@ -131,4 +131,5 @@
         case 'confirm':
         case 'preview':
+            //TODO 要リファクタリング(MODE if利用)
             $page_id = $_POST['page_id'];
             if ($this->getMode() == 'preview') {
@@ -202,5 +203,5 @@
             }
 
-            // プレビュー処理
+            // プレビュー処理 TODO 要リファクタリング(MODE if利用)
             if ($this->getMode() == 'preview') {
                 $this->lfSetPreData($arrPageData, $objLayout);
Index: branches/version-2_5-dev/data/class/pages/admin/design/LC_Page_Admin_Design_Header.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/design/LC_Page_Admin_Design_Header.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/design/LC_Page_Admin_Design_Header.php	(revision 20044)
@@ -96,5 +96,6 @@
 
             // 登録時はプレビュー用テンプレートをコピーする
-            if ($this->getMode() == 'confirm'){
+            switch ($this->getMode()) {
+            case 'regist':
                 copy($pre_DIR.$division.".tpl", $this->objLayout->getTemplatePath($device_type_id) . $division . ".tpl");
                 // 完了メッセージ（プレビュー時は表示しない）
@@ -104,9 +105,12 @@
                 $_POST['header_row'] = "";
                 $_POST['footer_row'] = "";
-            }else if ($this->getMode() == 'preview'){
+                break;
+            case 'preview':
                 if ($division == "header") $this->header_prev = "on";
                 if ($division == "footer") $this->footer_prev = "on";
+                break;
+            default:
+                break;
             }
-
             // ヘッダーファイルの読み込み(プレビューデータ)
             $header_data = file_get_contents($pre_DIR . "header.tpl");
Index: branches/version-2_5-dev/data/class/pages/admin/order/LC_Page_Admin_Order.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/order/LC_Page_Admin_Order.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/order/LC_Page_Admin_Order.php	(revision 20044)
@@ -120,15 +120,12 @@
         if (!isset($arrRet)) $arrRet = array();
 
-        if($this->getMode() == 'delete') {
-            if(SC_Utils_Ex::sfIsInt($_POST['order_id'])) {
-                $objQuery = new SC_Query();
-                $where = "order_id = ?";
-                $sqlval['del_flg'] = '1';
-                $objQuery->update("dtb_order", $sqlval, $where, array($_POST['order_id']));
-            }
-        }
-
         switch($this->getMode()) {
             case 'delete':
+                if(SC_Utils_Ex::sfIsInt($_POST['order_id'])) {
+                    $objQuery = new SC_Query();
+                    $where = "order_id = ?";
+                    $sqlval['del_flg'] = '1';
+                    $objQuery->update("dtb_order", $sqlval, $where, array($_POST['order_id']));
+                }
             case 'csv':
             case 'delete_all':
@@ -266,4 +263,5 @@
 
                     $order = "update_date DESC";
+                    //TODO 要リファクタリング(MODE 入れ子switch)
                     switch($this->getMode()) {
                         case 'csv':
Index: branches/version-2_5-dev/data/class/pages/admin/order/LC_Page_Admin_Order_ProductSelect.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/order/LC_Page_Admin_Order_ProductSelect.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/order/LC_Page_Admin_Order_ProductSelect.php	(revision 20044)
@@ -83,6 +83,6 @@
         }
 
-        if ($this->getMode() == "search") {
-
+        switch ($this->getMode()) {
+        case 'search':
             // POST値の引き継ぎ
             $this->arrForm = $_POST;
@@ -199,4 +199,7 @@
             $this->tpl_product_class_id = $objProduct->product_class_id;
             $this->tpl_stock_find = $objProduct->stock_find;
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_History.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_History.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_History.php	(revision 20044)
@@ -79,11 +79,16 @@
         if (!isset($_POST['search_pageno'])) $_POST['search_pageno'] = "";
 
-        // 削除時
-        if (SC_Utils_Ex::sfCheckNumLength($_GET['send_id']) && ($this->getMode()=='delete')) {
-
-            $sql = "UPDATE dtb_send_history SET del_flg = 1 WHERE send_id = ?";
-            $objQuery->query($sql, array($_GET['send_id']) );
-            $_SERVER['QUERY_STRING'] = "";
-            $this->objDisplay->reload();
+        switch ($this->getMode()) {
+        case 'delete':
+            // 削除時
+            if (SC_Utils_Ex::sfCheckNumLength($_GET['send_id'])) {
+                $sql = "UPDATE dtb_send_history SET del_flg = 1 WHERE send_id = ?";
+                $objQuery->query($sql, array($_GET['send_id']) );
+                $_SERVER['QUERY_STRING'] = "";
+                $this->objDisplay->reload();
+            }
+            break;
+        default:
+            break;
         }
         $from = "dtb_send_history";
Index: branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_Template.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_Template.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_Template.php	(revision 20044)
@@ -78,20 +78,24 @@
         if (!isset($_GET['id'])) $_GET['id'] = "";
 
-        if ( $this->getMode() == "delete" && SC_Utils_Ex::sfCheckNumLength($_GET['id'])===true ){
+        switch ($this->getMode()) {
+        case 'delete':
+            if ( SC_Utils_Ex::sfCheckNumLength($_GET['id'])===true ){
+                // メール担当の画像があれば削除しておく
+                $sql = "SELECT charge_image FROM dtb_mailmaga_template WHERE template_id = ?";
+                $result = $objQuery->getOne($sql, array($_GET["id"]));
+                if (strlen($result) > 0) {
+                    @unlink(IMAGE_SAVE_REALDIR. $result);
+                }
 
-            // メール担当の画像があれば削除しておく
-            $sql = "SELECT charge_image FROM dtb_mailmaga_template WHERE template_id = ?";
-            $result = $objQuery->getOne($sql, array($_GET["id"]));
-            if (strlen($result) > 0) {
-                @unlink(IMAGE_SAVE_REALDIR. $result);
+                // 登録削除
+                $sql = "UPDATE dtb_mailmaga_template SET del_flg = 1 WHERE template_id = ?";
+                $objQuery->query($sql, array($_GET['id']));
+
+                $this->objDisplay->reload(null, true);
             }
-
-            // 登録削除
-            $sql = "UPDATE dtb_mailmaga_template SET del_flg = 1 WHERE template_id = ?";
-            $objQuery->query($sql, array($_GET['id']));
-
-            $this->objDisplay->reload(null, true);
+            break;
+        default:
+            break;
         }
-
 
         $sql = "SELECT *, create_date as disp_date FROM dtb_mailmaga_template WHERE del_flg = 0 ORDER BY create_date DESC";
Index: branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_TemplateInput.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_TemplateInput.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_TemplateInput.php	(revision 20044)
@@ -88,15 +88,15 @@
         }
 
-        // モードによる処理分岐
-        if ( $this->getMode() == 'edit' && SC_Utils_Ex::sfCheckNumLength($_GET['template_id'])===true ){
-
-            // 編集
-            $sql = "SELECT * FROM dtb_mailmaga_template WHERE template_id = ? AND del_flg = 0";
-            $result = $objQuery->getAll($sql, array($_GET['template_id']));
-            $this->arrForm = $result[0];
-
-
-        } elseif ( $this->getMode() == 'regist' ) {
-
+        switch ($this->getMode()) {
+        case 'edit':
+            // モードによる処理分岐
+            if ( SC_Utils_Ex::sfCheckNumLength($_GET['template_id'])===true ){
+                // 編集
+                $sql = "SELECT * FROM dtb_mailmaga_template WHERE template_id = ? AND del_flg = 0";
+                $result = $objQuery->getAll($sql, array($_GET['template_id']));
+                $this->arrForm = $result[0];
+            }
+            break;
+        case 'regist':
             // 新規登録
             $this->arrForm = $this->lfConvData( $_POST );
@@ -109,9 +109,11 @@
                 $this->objDisplay->reload(array("mode" => "complete"));
             }
-
-        } elseif ( $this->getMode() == 'complete' ) {
-
+            break;
+        case 'complete':
             // 完了画面表示
             $this->tpl_mainpage = 'mail/template_complete.tpl';
+            break;
+        default:
+            break;
         }
     }
Index: branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_Sendmail.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_Sendmail.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail_Sendmail.php	(revision 20044)
@@ -74,5 +74,6 @@
         $sqlval = array();
         // リアルタイム配信モードがオンのとき
-        if ($this->getMode() == 'now') {
+        switch ($this->getMode()) {
+        case 'now':
             // 指定データを取得する
             $where .= ' AND send_id = ?';
@@ -81,10 +82,13 @@
                 $where .= ' AND complete_count = 0 AND end_date IS NULL';
             }
-        } else {
+            break;
+        default:
             $where .= ' AND end_date IS NULL';
             $dbFactory = SC_DB_DBFactory::getInstance();
             $where .= $dbFactory->getSendHistoryWhereStartdateSql();
             // 30分毎にCronが送信時間データ確認
+            break;
         }
+
         $objQuery->setOrder('send_id');
         $arrMailList = $objQuery->select('*', 'dtb_send_history', $where, $sqlval);
@@ -177,4 +181,5 @@
             }
         }
+        //TODO 要リファクタリング(MODE if利用)
         if ($this->getMode() == 'now') {
             SC_Response_Ex::sendRedirectFromUrlPath(ADMIN_DIR . 'mail/history.php');
Index: branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/mail/LC_Page_Admin_Mail.php	(revision 20044)
@@ -168,49 +168,50 @@
         SC_Utils_Ex::sfIsSuccess($objSess);
 
-        /*
-         query:配信履歴「確認」
-        */
-        if ($this->getMode() == "query" && SC_Utils_Ex::sfCheckNumLength($_GET["send_id"])) {
-            // 送信履歴より、送信条件確認画面
-            $sql = "SELECT search_data FROM dtb_send_history WHERE send_id = ?";
-            $result = $objQuery->getOne($sql, array($_GET["send_id"]));
-            $tpl_path = "mail/query.tpl";
-
-            $list_data = unserialize($result);
-
-            // 都道府県を変換
-            $list_data['pref_disp'] = $this->arrPref[$list_data['pref']];
-
-            // 配信形式
-            $list_data['htmlmail_disp'] = $this->arrHtmlmail[$list_data['htmlmail']];
-
-            // 性別の変換
-            if (count($list_data['sex']) > 0) {
-                foreach($list_data['sex'] as $key => $val){
-                    $list_data['sex'][$key] = $this->arrSex[$val];
-                    $sex_disp .= $list_data['sex'][$key] . " ";
-                }
-                $list_data['sex_disp'] = $sex_disp;
-            }
-
-            // 職業の変換
-            if (count($list_data['job']) > 0) {
-                foreach($list_data['job'] as $key => $val){
-                    $list_data['job'][$key] = $this->arrJob[$val];
-                    $job_disp .= $list_data['job'][$key] . " ";
-                }
-                $list_data['job_disp'] = $job_disp;
-            }
-
-            // カテゴリ変換
-            $arrCatList = $objDb->sfGetCategoryList();
-            $list_data['category_name'] = $arrCatList[$list_data['category_id']];
-
-            $this->list_data = $list_data;
-            $this->setTemplate('mail/query.tpl');
-            return;
-        }
-
         switch($this->getMode()) {
+        case 'query':
+            /*
+             query:配信履歴「確認」
+            */
+            if (SC_Utils_Ex::sfCheckNumLength($_GET["send_id"])) {
+                // 送信履歴より、送信条件確認画面
+                $sql = "SELECT search_data FROM dtb_send_history WHERE send_id = ?";
+                $result = $objQuery->getOne($sql, array($_GET["send_id"]));
+                $tpl_path = "mail/query.tpl";
+
+                $list_data = unserialize($result);
+
+                // 都道府県を変換
+                $list_data['pref_disp'] = $this->arrPref[$list_data['pref']];
+
+                // 配信形式
+                $list_data['htmlmail_disp'] = $this->arrHtmlmail[$list_data['htmlmail']];
+
+                // 性別の変換
+                if (count($list_data['sex']) > 0) {
+                    foreach($list_data['sex'] as $key => $val){
+                        $list_data['sex'][$key] = $this->arrSex[$val];
+                        $sex_disp .= $list_data['sex'][$key] . " ";
+                    }
+                    $list_data['sex_disp'] = $sex_disp;
+                }
+
+                // 職業の変換
+                if (count($list_data['job']) > 0) {
+                    foreach($list_data['job'] as $key => $val){
+                        $list_data['job'][$key] = $this->arrJob[$val];
+                        $job_disp .= $list_data['job'][$key] . " ";
+                    }
+                    $list_data['job_disp'] = $job_disp;
+                }
+
+                // カテゴリ変換
+                $arrCatList = $objDb->sfGetCategoryList();
+                $list_data['category_name'] = $arrCatList[$list_data['category_id']];
+
+                $this->list_data = $list_data;
+                $this->setTemplate('mail/query.tpl');
+                return;
+            }
+            break;
             /*
              search:「検索」ボタン
@@ -353,5 +354,5 @@
                     isset($this->list_data['name'])
                     ? $this->list_data['name'] : "";
-
+                //TODO 要リファクタリング(MODE if利用)
                 if ( $this->getMode() == 'regist_confirm'){
                     $this->tpl_mainpage = 'mail/input_confirm.tpl';
Index: branches/version-2_5-dev/data/class/pages/admin/total/LC_Page_Admin_Total.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/total/LC_Page_Admin_Total.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/total/LC_Page_Admin_Total.php	(revision 20044)
@@ -232,5 +232,5 @@
                     break;
                 }
-
+                //TODO 要リファクタリング(MODE if利用)
                 if($this->getMode() == 'csv') {
                     // CSV出力タイトル行の取得
Index: branches/version-2_5-dev/data/class/pages/admin/system/LC_Page_Admin_System_Parameter.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/system/LC_Page_Admin_System_Parameter.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/system/LC_Page_Admin_System_Parameter.php	(revision 20044)
@@ -86,6 +86,6 @@
         $this->arrKeys = $this->getParamKeys($masterData);
 
-        if ($this->getMode() == "update") {
-
+        switch ($this->getMode()) {
+        case 'update':
             // データの引き継ぎ
             $this->arrForm = $_POST;
@@ -102,5 +102,7 @@
                 $this->tpl_onload = "window.alert('エラーが発生しました。入力内容をご確認下さい。');";
             }
-
+            break;
+        default:
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/admin/system/LC_Page_Admin_System_Bkup.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/system/LC_Page_Admin_System_Bkup.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/admin/system/LC_Page_Admin_System_Bkup.php	(revision 20044)
@@ -107,12 +107,8 @@
 
             // リストア
+        case 'restore_config':
+        	$this->mode = "restore_config";
         case 'restore':
-        case 'restore_config':
-            if ($this->getMode() == 'restore_config') {
-                $this->mode = "restore_config";
-            }
-
             $this->lfRestore($_POST['list_name']);
-
             break;
 
Index: branches/version-2_5-dev/data/class/pages/cart/LC_Page_Cart.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/cart/LC_Page_Cart.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/cart/LC_Page_Cart.php	(revision 20044)
@@ -96,4 +96,5 @@
         $this->cartItems =& $objCartSess->getAllCartList();
 
+        //TODO: 要リファクタリング(MODE switch 2か所で行われている)
         switch($this->getMode()) {
         case 'confirm':
@@ -131,4 +132,5 @@
          * FIXME モバイルの場合 sfReload() ではなく sendRedirect() を使った方が良いが無限ループしてしまう...
          */
+        //TODO: 要リファクタリング(MODE switch 2か所で行われている)
         switch($this->getMode()) {
         case 'up':
Index: branches/version-2_5-dev/data/class/pages/regist/LC_Page_Regist.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/regist/LC_Page_Regist.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/regist/LC_Page_Regist.php	(revision 20044)
@@ -73,6 +73,7 @@
         $this->CONF = $objDb->sfGetBasisData();
 
+        switch ($this->getMode()) {
+        case 'regist':
         //--　本登録完了のためにメールから接続した場合
-        if ($this->getMode() == "regist") {
             //-- 入力チェック
             $this->arrErr = $this->lfErrorCheck($_GET);
@@ -92,8 +93,9 @@
                 exit;
             }
-
+            break;
         //--　それ以外のアクセスは無効とする
-        } else {
+        default:
             SC_Utils_Ex::sfDispSiteError(FREE_ERROR_MSG, "", true, "無効なアクセスです。");
+            break;
         }
     }
Index: branches/version-2_5-dev/data/class/pages/entry/LC_Page_Entry.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/entry/LC_Page_Entry.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/entry/LC_Page_Entry.php	(revision 20044)
@@ -148,7 +148,7 @@
             $this->arrForm = $this->objFormParam->getHashArray();
 
+            switch ($this->getMode()) {
+            case 'confirm':
             //-- 確認
-            if ($this->getMode() == "confirm") {
-
                 $this->arrErr = $this->lfErrorCheck();
 
@@ -165,6 +165,6 @@
                     $this->tpl_title = '会員登録(確認ページ)';
                 }
-
-            } elseif ($this->getMode() == "complete") {
+                break;
+            case 'complete':
                 //-- 会員登録と完了画面
 
@@ -182,5 +182,7 @@
                 SC_Response_Ex::sendRedirect('complete.php', array("ci" => $customer_id));
                 exit;
-
+                break;
+            default:
+                break;
             }
         }
Index: branches/version-2_5-dev/data/class/pages/products/LC_Page_Products_Detail.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/products/LC_Page_Products_Detail.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/products/LC_Page_Products_Detail.php	(revision 20044)
@@ -498,5 +498,7 @@
     /* 入力内容のチェック */
     function lfCheckError() {
-        if ($this->getMode() == "add_favorite") {
+
+        switch ($this->getMode()) {
+        case 'add_favorite':
             $objCustomer = new SC_Customer();
             $objErr = new SC_CheckError();
@@ -505,5 +507,6 @@
                 $objErr->arrErr['add_favorite'.$favorite_product_id] = "※ この商品は既にお気に入りに追加されています。<br />";
             }
-        } else {
+            break;
+        default:
             // 入力データを渡す。
             $arrRet =  $this->objFormParam->getHashArray();
@@ -518,4 +521,5 @@
                 $objErr->doFunc(array("規格2", "classcategory_id2"), array("EXIST_CHECK"));
             }
+            break;
         }
 
Index: branches/version-2_5-dev/data/class/pages/rss/LC_Page_Rss_Products.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/rss/LC_Page_Rss_Products.php	(revision 20041)
+++ branches/version-2_5-dev/data/class/pages/rss/LC_Page_Rss_Products.php	(revision 20044)
@@ -64,6 +64,6 @@
         //商品IDを取得
         $product_id = $_GET['product_id'];
+        //TODO 要リファクタリング(MODE if利用)
         $mode = $this->getMode();
-
         if(($product_id != "" and is_numeric($product_id)) or $mode == "all"){
             //商品詳細を取得
