/** * リリース情報を取得する. * * @return array 取得した情報配列 */ public 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) ? Utils::jsonDecode($jsonStr) : null; if (empty($arrTmpData)) { Utils::sfErrorHeader('>> 更新情報の取得に失敗しました。'); return array(); } $arrInfo = array(); foreach ($arrTmpData as $objData) { $arrInfo[] = get_object_vars($objData); } return $arrInfo; }