Changeset 20262 for branches/version-2_5-dev/data/class
- Timestamp:
- 2011/02/20 19:53:19 (15 years ago)
- Location:
- branches/version-2_5-dev/data/class/pages/admin/products
- Files:
-
- 2 edited
-
LC_Page_Admin_Products_Review.php (modified) (8 diffs)
-
LC_Page_Admin_Products_ReviewEdit.php (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Review.php
r20194 r20262 56 56 $this->arrRECOMMEND = $masterData->getMasterData("mtb_recommend"); 57 57 $this->arrSex = $masterData->getMasterData("mtb_sex"); 58 } 59 60 /** 61 * Page のプロセス. 62 * 63 * @return void 64 */ 65 function process() { 66 $this->action(); 67 $this->sendResponse(); 68 } 69 70 /** 71 * Page のアクション. 72 * 73 * @return void 74 */ 75 function action() { 76 $objSess = new SC_Session(); 58 77 59 $objDate = new SC_Date(); 78 $objQuery =& SC_Query::getSingletonInstance();79 80 // 認証可否の判定81 SC_Utils_Ex::sfIsSuccess($objSess);82 83 60 // 登録・更新検索開始年 84 61 $objDate->setStartYear(RELEASE_YEAR); … … 93 70 $this->arrEndMonth = $objDate->getMonth(); 94 71 $this->arrEndDay = $objDate->getDay(); 72 } 73 74 /** 75 * Page のプロセス. 76 * 77 * @return void 78 */ 79 function process() { 80 $this->action(); 81 $this->sendResponse(); 82 } 83 84 /** 85 * Page のアクション. 86 * 87 * @return void 88 */ 89 function action() { 90 $objSess = new SC_Session(); 91 92 $objQuery =& SC_Query::getSingletonInstance(); 93 94 // 認証可否の判定 95 SC_Utils_Ex::sfIsSuccess($objSess); 95 96 96 97 // パラメータ管理クラス 97 $this->objFormParam = new SC_FormParam(); 98 // パラメータ情報の初期化 99 $this->lfInitParam(); 100 $this->objFormParam->setParam($_POST); 101 $arrForm = $this->objFormParam->getHashArray(); 102 103 // hidden の設定 104 $this->arrHidden = $this->lfSetHidden($arrForm); 98 $objFormParam = new SC_FormParam(); 99 $this->lfInitParam($objFormParam); 100 $objFormParam->setParam($_POST); 101 $this->arrForm = $objFormParam->getHashArray(); 102 $this->arrHidden = $this->lfSetHidden($this->arrForm); 105 103 106 104 switch ($this->getMode()) { … … 110 108 case 'csv': 111 109 // エラーチェック 112 $this->arrErr = $this->lfCheckError( );110 $this->arrErr = $this->lfCheckError($objFormParam); 113 111 if (!$this->arrErr){ 114 112 // 検索条件を取得 115 list($where, $arrval) = $this->lfGetWhere($ arrForm);113 list($where, $arrval) = $this->lfGetWhere($this->arrForm); 116 114 } 117 115 … … 123 121 124 122 // 検索条件を取得 125 $this->arrReview = $this->lfGetRevi re($arrForm, $where, $arrval);123 $this->arrReview = $this->lfGetReview($this->arrForm, $where, $arrval); 126 124 break; 127 125 default: 128 126 break; 129 127 } 130 131 $this->arrForm = $arrForm;132 128 } 133 129 … … 142 138 143 139 // 入力エラーチェック 144 function lfCheckError( ) {140 function lfCheckError(&$objFormParam) { 145 141 // 入力データを渡す。 146 $arrRet = $ this->objFormParam->getHashArray();142 $arrRet = $objFormParam->getHashArray(); 147 143 $objErr = new SC_CheckError($arrRet); 148 $objErr->arrErr = $ this->objFormParam->checkError();144 $objErr->arrErr = $objFormParam->checkError(); 149 145 150 146 switch ($this->getMode()){ … … 184 180 } 185 181 break; 186 187 182 default: 188 183 $arrHidden[$key] = $val; … … 195 190 196 191 /* パラメータ情報の初期化 */ 197 function lfInitParam( ) {198 $ this->objFormParam->addParam("投稿者名", "search_reviewer_name", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));199 $ this->objFormParam->addParam("投稿者URL", "search_reviewer_url", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));200 $ this->objFormParam->addParam("商品名", "search_name", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));201 $ this->objFormParam->addParam("商品コード", "search_product_code", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));202 $ this->objFormParam->addParam("性別", "search_sex", INT_LEN, "n", array("MAX_LENGTH_CHECK"));203 $ this->objFormParam->addParam("おすすめレベル", "search_recommend_level", INT_LEN, "n", array("MAX_LENGTH_CHECK"));204 $ this->objFormParam->addParam("投稿年", "search_startyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));205 $ this->objFormParam->addParam("投稿月", "search_startmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));206 $ this->objFormParam->addParam("投稿日", "search_startday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));207 $ this->objFormParam->addParam("投稿年", "search_endyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));208 $ this->objFormParam->addParam("投稿月", "search_endmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));209 $ this->objFormParam->addParam("投稿日", "search_endday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));210 $ this->objFormParam->addParam("最大表示件数", "search_page_max", INT_LEN, "n", array("MAX_LENGTH_CHECK"));211 $ this->objFormParam->addParam("ページ番号件数", "search_pageno", INT_LEN, "n", array("MAX_LENGTH_CHECK"));212 $ this->objFormParam->addParam("レビューID", "review_id", INT_LEN, "n", array("MAX_LENGTH_CHECK"));192 function lfInitParam(&$objFormParam) { 193 $objFormParam->addParam("投稿者名", "search_reviewer_name", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"),"",false); 194 $objFormParam->addParam("投稿者URL", "search_reviewer_url", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"),"",false); 195 $objFormParam->addParam("商品名", "search_name", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"),"",false); 196 $objFormParam->addParam("商品コード", "search_product_code", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"),"",false); 197 $objFormParam->addParam("性別", "search_sex", INT_LEN, "n", array("MAX_LENGTH_CHECK"),"",false); 198 $objFormParam->addParam("おすすめレベル", "search_recommend_level", INT_LEN, "n", array("MAX_LENGTH_CHECK"),"",false); 199 $objFormParam->addParam("投稿年", "search_startyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"),"",false); 200 $objFormParam->addParam("投稿月", "search_startmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"),"",false); 201 $objFormParam->addParam("投稿日", "search_startday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"),"",false); 202 $objFormParam->addParam("投稿年", "search_endyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"),"",false); 203 $objFormParam->addParam("投稿月", "search_endmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"),"",false); 204 $objFormParam->addParam("投稿日", "search_endday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"),"",false); 205 $objFormParam->addParam("最大表示件数", "search_page_max", INT_LEN, "n", array("MAX_LENGTH_CHECK"),"",false); 206 $objFormParam->addParam("ページ番号件数", "search_pageno", INT_LEN, "n", array("MAX_LENGTH_CHECK"),"",false); 207 $objFormParam->addParam("レビューID", "review_id", INT_LEN, "n", array("MAX_LENGTH_CHECK"),"",false); 213 208 } 214 209 … … 313 308 * レビューの検索結果取得 314 309 */ 315 function lfGetRevi re($arrForm, $where, $arrval) {310 function lfGetReview($arrForm, $where, $arrval) { 316 311 $objQuery =& SC_Query::getSingletonInstance(); 317 312 -
branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_ReviewEdit.php
r20194 r20262 23 23 24 24 // {{{ requires 25 require_once(CLASS_REALDIR . "pages/admin/ LC_Page_Admin.php");25 require_once(CLASS_REALDIR . "pages/admin/products/LC_Page_Admin_Products_Review.php"); 26 26 27 27 /** … … 32 32 * @version $Id$ 33 33 */ 34 class LC_Page_Admin_Products_ReviewEdit extends LC_Page_Admin {34 class LC_Page_Admin_Products_ReviewEdit extends LC_Page_Admin_Products_Review { 35 35 36 36 // }}} … … 48 48 $this->tpl_mainno = 'products'; 49 49 $this->tpl_subno = 'review'; 50 // 両方選択可能 51 $this->tpl_status_change = true; 50 52 51 53 $masterData = new SC_DB_MasterData_Ex(); … … 73 75 $objSess = new SC_Session(); 74 76 $this->objQuery =& SC_Query::getSingletonInstance(); 75 76 77 // 認証可否の判定 77 78 SC_Utils_Ex::sfIsSuccess($objSess); 78 79 79 // 検索ワードの引継ぎ 80 foreach ($_POST as $key => $val){ 81 if (ereg("^search_", $key)){ 82 $this->arrSearchHidden[$key] = $val; 83 } 84 } 85 86 // 両方選択可能 87 $this->tpl_status_change = true; 88 80 // パラメータ情報の初期化 81 $objFormParam = new SC_FormParam(); 82 $this->lfInitParam($objFormParam); 83 $objFormParam->setParam($_POST); 84 $objFormParam->convParam(); 85 // 検索ワードの引き継ぎ 86 $this->arrSearchHidden = $objFormParam->getSearchArray(); 87 $this->arrReview = $objFormParam->getHashArray(); 88 89 89 switch ($this->getMode()) { 90 90 // 登録 91 91 case 'complete': 92 // 取得文字列の変換用カラム 93 $arrRegistColumn = array ( 94 array("column" => "status"), 95 array("column" => "recommend_level"), 96 array("column" => "title", "convert" => "KVa"), 97 array("column" => "comment", "convert" => "KVa"), 98 array("column" => "reviewer_name", "convert" => "KVa"), 99 array("column" => "reviewer_url", "convert" => "KVa"), 100 array("column" => "sex", "convert" => "n") 101 ); 102 103 // フォーム値の変換 104 $arrReview = $this->lfConvertParam($_POST, $arrRegistColumn); 105 $this->arrErr = $this->lfCheckError($arrReview); 106 107 // エラー有り 108 if ($this->arrErr) { 109 // 入力内容を引き継ぐ 110 $this->arrReview = $arrReview; 111 } else { 92 $this->arrErr = $this->lfCheckError($objFormParam); 112 93 // エラー無し 94 if (!$this->arrErr) { 113 95 // レビュー情報の更新 114 $this->lfRegistReviewData($arrReview, $arrRegistColumn); 115 96 $this->lfRegistReviewData($objFormParam); 116 97 // レビュー情報のDB取得 117 $this->arrReview = $this->lfGetReviewData($arrReview['review_id']); 118 98 $this->arrReview = $this->lfGetReviewData($this->arrReview['review_id']); 119 99 $this->tpl_onload = "alert('登録が完了しました。');"; 120 100 } 121 101 break; 122 123 102 default: 124 103 // レビュー情報のDB取得 125 $this->arrReview = $this->lfGetReviewData($ _POST['review_id']);104 $this->arrReview = $this->lfGetReviewData($this->arrReview['review_id']); 126 105 break; 127 106 } … … 138 117 139 118 /** 140 * 入力エラーチェック119 * パラメータ情報の初期化を行う. 141 120 * 121 * @param SC_FormParam $objFormParam SC_FormParam インスタンス 122 * @return void 142 123 */ 143 function lfCheckError($arrReview) { 144 $objErr = new SC_CheckError($arrReview); 145 $objErr->doFunc(array("おすすめレベル", "recommend_level"), array("SELECT_CHECK")); 146 $objErr->doFunc(array("タイトル", "title", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 147 $objErr->doFunc(array("コメント", "comment", LTEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 148 $objErr->doFunc(array("投稿者名", "reviewer_name", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 149 $objErr->doFunc(array("投稿者URL", "reviewer_url", URL_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 150 $objErr->doFunc(array("性別", "sex", STEXT_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 151 return $objErr->arrErr; 152 } 124 function lfInitParam(&$objFormParam) { 125 // 検索条件のパラメータを初期化 126 parent::lfInitParam($objFormParam); 127 $objFormParam->addParam("レビューID", "review_id"); 128 $objFormParam->addParam("商品名", "name", "", "", array(), "", false); 129 $objFormParam->addParam("投稿日", "create_date", "", "", array(), "", false); 130 131 // 登録情報 132 $objFormParam->addParam("レビュー表示", "status", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 133 $objFormParam->addParam("投稿者名", "reviewer_name", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 134 $objFormParam->addParam("投稿者URL", "reviewer_url", URL_LEN, "KVCa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 135 $objFormParam->addParam("性別", "sex", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 136 $objFormParam->addParam("おすすめレベル", "recommend_level", INT_LEN, "n", array("SELECT_CHECK")); 137 $objFormParam->addParam("タイトル", "title", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 138 $objFormParam->addParam("コメント", "comment", LTEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 139 } 153 140 154 /**155 * 取得文字列の変換141 /** 142 * フォーム入力パラメーターエラーチェック 156 143 * 144 * @param array $objFormParam フォームパラメータークラス 145 * @return array エラー配列 157 146 */ 158 function lfConvertParam($array, $arrRegistColumn) { 159 /* 160 * 文字列の変換 161 * K : 「半角(ハンカク)片仮名」を「全角片仮名」に変換 162 * C : 「全角ひら仮名」を「全角かた仮名」に変換 163 * V : 濁点付きの文字を一文字に変換。"K","H"と共に使用します 164 * n : 「全角」数字を「半角(ハンカク)」に変換 165 * a : 全角英数字を半角英数字に変換する 166 */ 167 // カラム名とコンバート情報 168 foreach ($arrRegistColumn as $data) { 169 $arrConvList[ $data["column"] ] = isset($data["convert"]) 170 ? $data["convert"] : ""; 147 function lfCheckError(&$objFormParam) { 148 $arrErr = $objFormParam->checkError(); 149 if (!SC_Utils_Ex::isBlank($arrErr)) { 150 return $arrErr; 171 151 } 172 173 // 文字変換174 foreach ($arrConvList as $key => $val) {175 // POSTされてきた値のみ変換する。176 if(strlen(($array[$key])) > 0) {177 $array[$key] = mb_convert_kana($array[$key] ,$val);178 }179 }180 return $array;181 152 } 182 153 … … 194 165 SC_Utils_Ex::sfDispError(""); 195 166 } 196 197 167 return $arrReview[0]; 198 168 } … … 202 172 * 203 173 */ 204 function lfRegistReviewData($arrReview, $arrRegistColumn){ 205 foreach ($arrRegistColumn as $data) { 206 $arrRegist[ $data["column"] ] = $arrReview[ $data["column"] ]; 207 } 208 $arrRegist['update_date'] = 'now()'; 209 210 // 更新実行 211 $this->objQuery->update("dtb_review", $arrRegist, "review_id = ?", array($arrReview['review_id'])); 174 function lfRegistReviewData(&$objFormParam){ 175 $arrValues = $objFormParam->getDbArray(); 176 $arrValues['update_date'] = 'now()'; 177 $this->objQuery->update("dtb_review", $arrValues, "review_id = ?", array($arrValues['review_id'])); 212 178 } 213 179 }
Note: See TracChangeset
for help on using the changeset viewer.
