Please make sure IN_MYBB is defined."); } $page->add_breadcrumb_item($lang->version_check, "index.php?module=home-version_check"); $plugins->run_hooks("admin_home_version_check_begin"); if(!$mybb->input['action']) { $plugins->run_hooks("admin_home_version_check_start"); $page->output_header($lang->version_check); $sub_tabs['version_check'] = array( 'title' => $lang->version_check, 'link' => "index.php?module=home-version_check", 'description' => $lang->version_check_description ); $sub_tabs['download_mybb'] = array( 'title' => $lang->dl_the_latest_mybb, 'link' => "http://mybb.com/downloads", 'link_target' => '_blank' ); $sub_tabs['check_plugins'] = array( 'title' => $lang->check_plugin_versions, 'link' => "index.php?module=config-plugins&action=check", ); $page->output_nav_tabs($sub_tabs, 'version_check'); $current_version = rawurlencode($mybb->version_code); $updated_cache = array( "last_check" => TIME_NOW ); require_once MYBB_ROOT."inc/class_xml.php"; $contents = fetch_remote_file("http://www.mybb.com/version_check.php"); if(!$contents) { $page->output_inline_error($lang->error_communication); $page->output_footer(); exit; } // We do this because there is some weird symbols that show up in the xml file for unknown reasons $pos = strpos($contents, "<"); if($pos > 1) { $contents = substr($contents, $pos); } $pos = strpos(strrev($contents), ">"); if($pos > 1) { $contents = substr($contents, 0, (-1) * ($pos-1)); } $parser = new XMLParser($contents); $tree = $parser->get_tree(); if(!is_array($tree) || !isset($tree['mybb'])) { $page->output_inline_error($lang->error_communication); $page->output_footer(); exit; } $latest_code = $tree['mybb']['version_code']['value']; $latest_version = "".$tree['mybb']['latest_version']['value']." (".$latest_code.")"; if($latest_code > $mybb->version_code) { $latest_version = "".$latest_version.""; $version_warn = 1; $updated_cache['latest_version'] = $latest_version; $updated_cache['latest_version_code'] = $latest_code; } else { $version_warn = 0; $latest_version = "".$latest_version.""; } $cache->update("update_check", $updated_cache); require_once MYBB_ROOT."inc/class_feedparser.php"; $feed_parser = new FeedParser(); $feed_parser->parse_feed("http://feeds.feedburner.com/MyBBDevelopmentBlog"); $table = new Table; $table->construct_header($lang->your_version); $table->construct_header($lang->latest_version); $table->construct_cell("".$mybb->version." (".$mybb->version_code.")"); $table->construct_cell($latest_version); $table->construct_row(); $table->output($lang->version_check); if($version_warn) { $page->output_error("

{$lang->error_out_of_date} {$lang->update_forum}

"); } else { $page->output_success("

{$lang->success_up_to_date}

"); } if($feed_parser->error == '') { foreach($feed_parser->items as $item) { if($item['date_timestamp']) { $stamp = my_date($mybb->settings['dateformat'], $item['date_timestamp']).", ".my_date($mybb->settings['timeformat'], $item['date_timestamp']); } else { $stamp = ''; } if($item['content']) { $content = $item['content']; } else { $content = $item['description']; } $table->construct_cell("".$item['title']."

{$content}{$stamp}

» {$lang->read_more}
"); $table->construct_row(); } } else { $table->construct_cell("{$lang->error_fetch_news} "); $table->construct_row(); } $table->output($lang->latest_mybb_announcements); $page->output_footer(); } ?>