[Svn-src-all:1261] [version-2_5-dev 20150] リファクタリング
miningbrownie
admin @ mail.ec-cube.net
2011年 2月 12日 (土) 11:44:35 JST
Subversion committed to /home/svn/open 20150
http://svn.ec-cube.net/open_trac/changeset/20150
┌────────────────────────────┐
│更新者 : miningbrownie │
│更新日時: 2011-02-12 11:44:35 +0900 (土, 12 2月 2011)│
└────────────────────────────┘
Log:
--------------------------------------------------------
リファクタリング
Changed: [U:修正,A:追加,D:削除]
--------------------------------------------------------
U branches/version-2_5-dev/data/class/pages/admin/order/LC_Page_Admin_Order_Mail.php
変更: branches/version-2_5-dev/data/class/pages/admin/order/LC_Page_Admin_Order_Mail.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/order/LC_Page_Admin_Order_Mail.php 2011-02-11 09:58:01 UTC (rev 20149)
+++ branches/version-2_5-dev/data/class/pages/admin/order/LC_Page_Admin_Order_Mail.php 2011-02-12 02:44:35 UTC (rev 20150)
@@ -74,12 +74,9 @@
SC_Utils_Ex::sfIsSuccess($objSess);
// 検索パラメータの引き継ぎ
- foreach ($_POST as $key => $val) {
- if (ereg("^search_", $key)) {
- $this->arrSearchHidden[$key] = $val;
- }
- }
+ $this->arrSearchHidden = $this->getSearchParameters($_POST);
+
$this->tpl_order_id = $_POST['order_id'];
// パラメータ管理クラス
@@ -90,59 +87,59 @@
$objMail = new SC_Helper_Mail_Ex();
switch($this->getMode()) {
- case 'pre_edit':
- break;
- case 'return':
- // POST値の取得
- $objFormParam->setParam($_POST);
- break;
- case 'send':
- // POST値の取得
- $objFormParam->setParam($_POST);
- // 入力値の変換
- $objFormParam->convParam();
- $this->arrErr = $objFormParam->checkerror();
- // メールの送信
- if (count($this->arrErr) == 0) {
- // 注文受付メール
- $objMail->sfSendOrderMail($_POST['order_id'], $_POST['template_id'], $_POST['subject'], $_POST['header'], $_POST['footer']);
- }
- SC_Response_Ex::sendRedirect(ADMIN_ORDER_URLPATH);
- exit;
- break;
- case 'confirm':
- // POST値の取得
- $objFormParam->setParam($_POST);
- // 入力値の変換
- $objFormParam->convParam();
- // 入力値の引き継ぎ
- $this->arrHidden = $objFormParam->getHashArray();
- $this->arrErr = $objFormParam->checkerror();
- // メールの送信
- if (count($this->arrErr) == 0) {
- // 注文受付メール(送信なし)
- $objSendMail = $objMail->sfSendOrderMail($_POST['order_id'], $_POST['template_id'], $_POST['subject'], $_POST['header'], $_POST['footer'], false);
- // 確認ページの表示
- $this->tpl_subject = $_POST['subject'];
- $this->tpl_body = mb_convert_encoding( $objSendMail->body, CHAR_CODE, "auto" );
- $this->tpl_to = $objSendMail->tpl_to;
- $this->tpl_mainpage = 'order/mail_confirm.tpl';
- return;
- }
- break;
- case 'change':
- // POST値の取得
- $objFormParam->setValue('template_id', $_POST['template_id']);
- if(SC_Utils_Ex::sfIsInt($_POST['template_id'])) {
- $objQuery = new SC_Query();
- $where = "template_id = ?";
- $arrRet = $objQuery->select("subject, header, footer", "dtb_mailtemplate", $where, array($_POST['template_id']));
- $objFormParam->setParam($arrRet[0]);
- }
- break;
+ case 'pre_edit':
+ break;
+ case 'return':
+ // POST値の取得
+ $objFormParam->setParam($_POST);
+ break;
+ case 'send':
+ // POST値の取得
+ $objFormParam->setParam($_POST);
+ // 入力値の変換
+ $objFormParam->convParam();
+ $this->arrErr = $objFormParam->checkerror();
+ // メールの送信
+ if (count($this->arrErr) == 0) {
+ // 注文受付メール
+ $objMail->sfSendOrderMail($_POST['order_id'], $_POST['template_id'], $_POST['subject'], $_POST['header'], $_POST['footer']);
+ }
+ SC_Response_Ex::sendRedirect(ADMIN_ORDER_URLPATH);
+ exit;
+ break;
+ case 'confirm':
+ // POST値の取得
+ $objFormParam->setParam($_POST);
+ // 入力値の変換
+ $objFormParam->convParam();
+ // 入力値の引き継ぎ
+ $this->arrHidden = $objFormParam->getHashArray();
+ $this->arrErr = $objFormParam->checkerror();
+ // メールの送信
+ if (count($this->arrErr) == 0) {
+ // 注文受付メール(送信なし)
+ $objSendMail = $objMail->sfSendOrderMail($_POST['order_id'], $_POST['template_id'], $_POST['subject'], $_POST['header'], $_POST['footer'], false);
+ // 確認ページの表示
+ $this->tpl_subject = $_POST['subject'];
+ $this->tpl_body = mb_convert_encoding( $objSendMail->body, CHAR_CODE, "auto" );
+ $this->tpl_to = $objSendMail->tpl_to;
+ $this->tpl_mainpage = 'order/mail_confirm.tpl';
+ return;
+ }
+ break;
+ case 'change':
+ // POST値の取得
+ $objFormParam->setValue('template_id', $_POST['template_id']);
+ if(SC_Utils_Ex::sfIsInt($_POST['template_id'])) {
+ $objQuery = new SC_Query();
+ $where = "template_id = ?";
+ $arrRet = $objQuery->select("subject, header, footer", "dtb_mailtemplate", $where, array($_POST['template_id']));
+ $objFormParam->setParam($arrRet[0]);
+ }
+ break;
}
- $objQuery = new SC_Query();
+ $objQuery =& SC_Query::getSingletonInstance();
$col = "send_date, subject, template_id, send_id";
$where = "order_id = ?";
$objQuery->setOrder("send_date DESC");
@@ -155,6 +152,22 @@
}
/**
+ * TODO これ色々なところでやっていそうなので、どこかに共通化した方がよいんちゃうかな
+ * 検索パラメータを配列で返す
+ *
+ */
+ function getSearchParameters($post){
+ // 検索パラメータの引き継ぎ
+ $searchHiddenParams = array();
+ foreach ($post as $key => $val) {
+ if (preg_match("/^search_/", $key)) {
+ $searchHiddenParams[$key] = $val;
+ }
+ }
+ }
+
+
+ /**
* デストラクタ.
*
* @return void
@@ -173,4 +186,3 @@
$objFormParam->addParam("フッター", "footer", LTEXT_LEN, "KVa", array("MAX_LENGTH_CHECK", "SPTAB_CHECK"));
}
}
-?>
Svn-src-all メーリングリストの案内