/** * リリース情報を取得する. * * @return array 取得した情報配列 */ function lfGetInfo() { // 更新情報の取得ON/OFF確認 if (!ECCUBE_INFO) { return array(); } // パラメーター「UPDATE_HTTP」が空文字の場合、処理しない。 // XXX これと別に on/off を持たせるべきか。 if (strlen(UPDATE_HTTP) == 0) { return array(); } $query = ''; // サイト情報の送信可否設定 // XXX インストール時に問い合わせて送信可否設定を行うように設定すべきか。 // XXX (URLは強制送信すべきではないと思うが)バージョンは強制送信すべきか。 if (UPDATE_SEND_SITE_INFO === true) { $query = '?site_url=' . HTTP_URL . '&eccube_version=' . ECCUBE_VERSION; } $url = UPDATE_HTTP . $query; // タイムアウト時間設定 $context = array('http' => array('timeout' => HTTP_REQUEST_TIMEOUT)); $jsonStr = @file_get_contents($url, false, stream_context_create($context)); $arrTmpData = is_string($jsonStr) ? SC_Utils_Ex::jsonDecode($jsonStr) : null; if (empty($arrTmpData)) { SC_Utils_Ex::sfErrorHeader(t('c_>> Update information was not obtained._01')); return array(); } $arrInfo = array(); foreach ($arrTmpData as $objData) { $arrInfo[] = get_object_vars($objData); } return $arrInfo; }
/** * 表示用フォームパラメーター取得 * - 入力画面 * * @param object $objUpFile SC_UploadFileインスタンス * @param object $objDownFile SC_UploadFileインスタンス * @param array $arrForm フォーム入力パラメーター配列 * @return array 表示用フォームパラメーター配列 */ function lfSetViewParam_InputPage(&$objUpFile, &$objDownFile, &$arrForm) { // カテゴリマスターデータ取得 $objDb = new SC_Helper_DB_Ex(); list($this->arrCatVal, $this->arrCatOut) = $objDb->sfGetLevelCatList(false); if (isset($arrForm['category_id']) && !is_array($arrForm['category_id'])) { $arrForm['category_id'] = SC_Utils_Ex::jsonDecode($arrForm['category_id']); } if ($arrForm['status'] == '') { $arrForm['status'] = DEFAULT_PRODUCT_DISP; } if ($arrForm['product_type_id'] == '') { $arrForm['product_type_id'] = DEFAULT_PRODUCT_DOWN; } // アップロードファイル情報取得(Hidden用) $arrHidden = $objUpFile->getHiddenFileList(); $arrForm['arrHidden'] = array_merge((array) $arrHidden, (array) $objDownFile->getHiddenFileList()); // 画像ファイル表示用データ取得 $arrForm['arrFile'] = $objUpFile->getFormFileList(IMAGE_TEMP_URLPATH, IMAGE_SAVE_URLPATH); // ダウンロード商品実ファイル名取得 $arrForm['down_realfilename'] = $objDownFile->getFormDownFile(); // 基本情報(デフォルトポイントレート用) $arrForm['arrInfo'] = SC_Helper_DB_Ex::sfGetBasisData(); // サブ情報ありなしフラグ $arrForm['sub_find'] = $this->hasSubProductData($arrForm); return $arrForm; }
/** * JSONデータをデコードする. * * php5.2.0からpreg_match関数に渡せるデータ長に制限がある(?)ため, * Services_JSONが正常に動作しなくなる. * そのため5.2.0以上の場合は組み込み関数のjson_decode()を使用する. * * @param string $str * @return StdClass * @see SC_Utils_Ex::jsonDecode */ public function decode($str) { return SC_Utils_Ex::jsonDecode($str); }
/** * 表示用フォームパラメーター取得 * - 入力画面 * * @param SC_UploadFile_Ex $objUpFile SC_UploadFileインスタンス * @param SC_UploadFile_Ex $objDownFile SC_UploadFileインスタンス * @param array $arrForm フォーム入力パラメーター配列 * @return array 表示用フォームパラメーター配列 */ public function lfSetViewParam_InputPage(&$objUpFile, &$objDownFile, &$arrForm) { // カテゴリマスターデータ取得 $objDb = new SC_Helper_DB_Ex(); list($this->arrCatVal, $this->arrCatOut) = $objDb->sfGetLevelCatList(false); if (isset($arrForm['category_id']) && !is_array($arrForm['category_id'])) { $arrForm['category_id'] = SC_Utils_Ex::jsonDecode($arrForm['category_id']); } $this->tpl_json_category_id = !empty($arrForm['category_id']) ? SC_Utils_Ex::jsonEncode($arrForm['category_id']) : SC_Utils_Ex::jsonEncode(array()); if ($arrForm['status'] == '') { $arrForm['status'] = DEFAULT_PRODUCT_DISP; } if ($arrForm['product_type_id'] == '') { $arrForm['product_type_id'] = DEFAULT_PRODUCT_DOWN; } if (OPTION_PRODUCT_TAX_RULE) { // 編集の場合は設定された税率、新規の場合はデフォルトの税率を取得 if ($arrForm['product_id'] == '') { $arrRet = SC_Helper_TaxRule_Ex::getTaxRule(); } else { $arrRet = SC_Helper_TaxRule_Ex::getTaxRule($arrForm['product_id'], $arrForm['product_class_id']); } $arrForm['tax_rate'] = $arrRet['tax_rate']; } // アップロードファイル情報取得(Hidden用) $arrHidden = $objUpFile->getHiddenFileList(); $arrForm['arrHidden'] = array_merge((array) $arrHidden, (array) $objDownFile->getHiddenFileList()); // 画像ファイル表示用データ取得 $arrForm['arrFile'] = $objUpFile->getFormFileList(IMAGE_TEMP_URLPATH, IMAGE_SAVE_URLPATH); // ダウンロード商品実ファイル名取得 $arrForm['down_realfilename'] = $objDownFile->getFormDownFile(); // 基本情報(デフォルトポイントレート用) $arrForm['arrInfo'] = SC_Helper_DB_Ex::sfGetBasisData(); // サブ情報ありなしフラグ $arrForm['sub_find'] = $this->hasSubProductData($arrForm); return $arrForm; }