/** * 選択中の商品のカテゴリを取得する. * * @param integer $product_id プロダクトID * @param integer $category_id カテゴリID * @param bool $closed 非表示の商品を含む場合はtrue * @return array 選択中の商品のカテゴリIDの配列 * */ public function sfGetCategoryId($product_id, $category_id = 0, $closed = false) { if ($closed) { $status = ''; } else { $status = 'status = 1'; } $category_id = (int) $category_id; $product_id = (int) $product_id; $objCategory = new SC_Helper_Category_Ex(); if ($objCategory->isValidCategoryId($category_id, $closed)) { $category_id = array($category_id); } elseif (SC_Utils_Ex::sfIsInt($product_id) && $product_id != 0 && SC_Helper_DB_Ex::sfIsRecord('dtb_products', 'product_id', $product_id, $status)) { $objQuery =& SC_Query_Ex::getSingletonInstance(); $category_id = $objQuery->getCol('category_id', 'dtb_product_categories', 'product_id = ?', array($product_id)); } else { // 不正な場合は、空の配列を返す。 $category_id = array(); } return $category_id; }
/** * カテゴリIDの取得 * * @param int $category_id * @return integer|void カテゴリID */ public function lfGetCategoryId($category_id) { // 指定なしの場合、0 を返す if (empty($category_id)) { return 0; } // 正当性チェック $objCategory = new SC_Helper_Category_Ex(); if ($objCategory->isValidCategoryId($category_id)) { return $category_id; } else { SC_Utils_Ex::sfDispSiteError(CATEGORY_NOT_FOUND); } }