$messages[] = array('text' => nl2br($e->getMessage()), 'strong' => true, 'color' => 'red'); } } /******************************************************************************** * * Show Update List (RSS Feed from Google Code) if enabled * *********************************************************************************/ if (!$fatal_error && !$config['startup']['disable_update_list']) { $feed_link = 'https://github.com/sandboxgangster/Part-DB/releases.atom'; $item_count = 4; try { $rss_loop = array(); $feed_content = ''; try { $feed_content = curl_get_data($feed_link); } catch (Exception $e) { $feed_content = file_get_contents($feed_link); } if (strlen($feed_content) == 0) { throw new Exception('Der Atom-Feed konnte nicht aus dem Internet heruntergeladen werden. ' . 'Prüfen Sie bitte, ob Ihre PHP-Konfiguration das Herunterladen aus dem Internet zulässt.'); } if (!class_exists('SimpleXMLElement')) { throw new Exception('Die Klasse "SimpleXMLElement" ist nicht vorhanden!'); } $xml = simplexml_load_string($feed_content); if (!is_object($xml)) { throw new Exception('Das SimpleXMLElement konnte nicht erzeugt werden!'); } $rss_loop[] = array('title' => 'Part-DB Releases Atom-Feed', 'datetime' => $xml->updated, 'link' => $feed_link); $item_index = 1;
/** * @brief Get the latest system version which is available (in the internet or in the directory "/updates/") * * @param string $type 'stable' or 'unstable' * * @retval Version the latest available system version * * @throws Exception if there was an error * * @todo Search also in the local direcotry "/updates/" for updates. * This is needed for manual updates (maybe the server has no internet access, or no "curl"). */ public static function get_latest_version($type) { if ($type == 'stable' && !is_object(SystemVersion::$latest_stable_version) || $type == 'unstable' && !is_object(SystemVersion::$latest_unstable_version)) { $ini = curl_get_data('http://kami89.myparts.info/updates/latest.ini'); $ini_array = parse_ini_string($ini, true); SystemVersion::$latest_stable_version = new SystemVersion($ini_array['stable']['version']); SystemVersion::$latest_unstable_version = new SystemVersion($ini_array['unstable']['version']); } switch ($type) { case 'stable': return SystemVersion::$latest_stable_version; case 'unstable': return SystemVersion::$latest_unstable_version; default: debug('error', '$type=' . print_r($type, true), __FILE__, __LINE__, __METHOD__); throw new Exception('$type hat einen ungültigen Inhalt!'); } }