7 * LICENSE: This source file is licensed under the terms of the GNU General Public License.
9 * @package Magic3 Framework
10 * @author 平田直毅(Naoki Hirata) <naoki@aplo.co.jp>
11 * @copyright Copyright 2006-2011 Magic3 Project.
12 * @license http://www.gnu.org/copyleft/gpl.html GPL License
13 * @version SVN: $Id: ec_product_display2Db.php 4495 2011-12-05 12:14:03Z fishbone $
14 * @link http://www.magic3.org
16 require_once($gEnvManager->getDbPath() . '/baseDb.php');
18 class ec_product_display2Db extends BaseDb
24 * @param string $langId 言語ID
25 * @param array $priceRows 商品価格
26 * @param array $imageRows 商品画像
27 * @param array $statusRows 商品ステータス
28 * @return bool 取得 = true, 取得なし= false
30 function getProductInfo($id, $langId, &$priceRows, &$imageRows, &$statusRows)
32 $queryStr = 'SELECT * FROM product_price ';
33 $queryStr .= 'WHERE pp_deleted = false ';// 削除されていない
34 $queryStr .= 'AND pp_product_id = ? ';
35 $queryStr .= 'AND pp_language_id = ? ';
36 $this->selectRecords($queryStr, array($id, $langId), $priceRows);
38 $queryStr = 'SELECT * FROM product_image ';
39 $queryStr .= 'WHERE im_deleted = false ';// 削除されていない
40 $queryStr .= 'AND im_type = 2 '; // 商品画像
41 $queryStr .= 'AND im_id = ? ';
42 $queryStr .= 'AND im_language_id = ? ';
43 $this->selectRecords($queryStr, array($id, $langId), $imageRows);
46 $queryStr = 'SELECT * FROM product_status ';
47 $queryStr .= 'WHERE ps_deleted = false ';// 削除されていない
48 $queryStr .= 'AND ps_id = ? ';
49 $queryStr .= 'AND ps_language_id = ? ';
50 $this->selectRecords($queryStr, array($id, $langId), $statusRows);
56 * @param string $lang 言語
57 * @param array $productArray 商品ID
58 * @param function $callback コールバック関数
61 function getProduct($lang, $productArray, $callback)
63 $productIdStr = implode(',', $productArray);
66 $caseStr = 'CASE pt_id ';
67 for ($i = 0; $i < count($productArray); $i++){
68 $caseStr .= 'WHEN ' . $productArray[$i] . ' THEN ' . $i . ' ';
70 $caseStr .= 'END AS no';
72 $queryStr = 'SELECT *, ' . $caseStr . ' FROM product ';
73 $queryStr .= 'WHERE pt_deleted = false '; // 削除されていない
74 $queryStr .= 'AND pt_visible = true '; // 表示可能
75 $queryStr .= 'AND pt_id in (' . $productIdStr . ') ';
76 $queryStr .= 'AND pt_language_id = ? ';
77 $queryStr .= 'ORDER BY no';
78 $this->selectLoop($queryStr, array($lang), $callback);
83 * @param string $type 単位タイプ
84 * @param string $lang 言語
85 * @param array $row レコード
86 * @return bool 取得 = true, 取得なし= false
88 function getCurrency($type, $lang, &$row)
90 $queryStr = 'SELECT * FROM currency ';
91 $queryStr .= 'WHERE cu_id = ? AND cu_language_id = ? ';
92 $ret = $this->selectRecord($queryStr, array($type, $lang), $row);
98 * @param string $type 画像タイプ
99 * @param array $row レコード
100 * @return bool 取得 = true, 取得なし= false
102 function getProductImageInfo($type, &$row)
104 $queryStr = 'SELECT * FROM image_size ';
105 $queryStr .= 'WHERE is_id = ? ';
106 $ret = $this->selectRecord($queryStr, array($type), $row);