function _load_apps($checks = CHECK_ALL_UPDATES) { if (phpversion() > PHP_MIN_VERSION_UPDATES) { global $CONFIG; if ($checks & CHECK_KERNEL) { $this->apps[] = new Application('kernel', get_ulang(), APPLICATION_TYPE__KERNEL, phpboost_version(), PHPBOOST_OFFICIAL_REPOSITORY); } if ($checks & CHECK_MODULES) { global $MODULES; $kModules = array_keys($MODULES); foreach ($kModules as $module) { $infos = load_ini_file(PATH_TO_ROOT . '/' . $module . '/lang/', get_ulang()); $repository = !empty($infos['repository']) ? $infos['repository'] : PHPBOOST_OFFICIAL_REPOSITORY; if (!empty($infos['repository'])) { $this->apps[] = new Application($module, get_ulang(), APPLICATION_TYPE__MODULE, $infos['version'], $repository); } } } if ($checks & CHECK_THEMES) { global $THEME_CONFIG; $kThemes = array_keys($THEME_CONFIG); foreach ($kThemes as $theme) { $infos = get_ini_config(PATH_TO_ROOT . '/templates/' . $theme . '/config/', get_ulang()); if (!empty($infos['repository'])) { $this->apps[] = new Application($theme, get_ulang(), APPLICATION_TYPE__TEMPLATE, $infos['version'], $infos['repository']); } } } } }
<?php require_once '../admin/admin_begin.php'; define('TITLE', $LANG['administration']); require_once '../admin/admin_header.php'; $template = new Template('admin/admin_system_report.tpl'); $template->assign_vars(array('L_YES' => $LANG['yes'], 'L_NO' => $LANG['no'], 'L_UNKNOWN' => $LANG['unknown'], 'L_SYSTEM_REPORT' => $LANG['system_report'], 'L_SERVER' => $LANG['server'], 'L_PHPINFO' => $LANG['phpinfo'], 'L_PHP_VERSION' => $LANG['php_version'], 'L_DBMS_VERSION' => $LANG['dbms_version'], 'L_GD_LIBRARY' => $LANG['dg_library'], 'L_URL_REWRITING' => $LANG['url_rewriting'], 'L_REGISTER_GLOBALS_OPTION' => $LANG['register_globals_option'], 'L_SERVER_URL' => $LANG['serv_name'], 'L_SITE_PATH' => $LANG['serv_path'], 'L_PHPBOOST_CONFIG' => $LANG['phpboost_config'], 'L_KERNEL_VERSION' => $LANG['kernel_version'], 'L_DEFAULT_THEME' => $LANG['default_theme'], 'L_DEFAULT_LANG' => $LANG['default_language'], 'L_DEFAULT_EDITOR' => $LANG['choose_editor'], 'L_START_PAGE' => $LANG['start_page'], 'L_OUTPUT_GZ' => $LANG['output_gz'], 'L_COOKIE_NAME' => $LANG['cookie_name'], 'L_SESSION_LENGTH' => $LANG['session_time'], 'L_SESSION_GUEST_LENGTH' => $LANG['session invit'], 'L_DIRECTORIES_AUTH' => $LANG['directories_auth'], 'L_SUMMERIZATION' => $LANG['system_report_summerization'], 'L_SUMMERIZATION_EXPLAIN' => $LANG['system_report_summerization_explain'])); $temp_var = function_exists('apache_get_modules') ? apache_get_modules() : array(); $server_path = !empty($_SERVER['PHP_SELF']) ? $_SERVER['PHP_SELF'] : getenv('PHP_SELF'); if (!$server_path) { $server_path = !empty($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : getenv('REQUEST_URI'); } $server_path = trim(str_replace('/admin', '', dirname($server_path))); $server_name = 'http://' . (!empty($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : getenv('HTTP_HOST')); $lang_ini_file = load_ini_file('../lang/', get_ulang()); $template_ini_file = load_ini_file('../templates/' . get_utheme() . '/config/', get_ulang()); $directories_summerization = ''; $directories_list = array('/', '/cache', '/cache/backup', '/cache/syndication/', '/cache/tpl', '/images/avatars', '/images/group', '/images/maths', '/images/smileys', '/lang', '/menus', '/templates', '/upload'); foreach ($directories_list as $dir) { $dir_status = is_dir('..' . $dir) && is_writable('..' . $dir); $template->assign_block_vars('directories', array('NAME' => $dir, 'C_AUTH_DIR' => $dir_status)); $directories_summerization .= $dir . str_repeat(' ', 25 - strlen($dir)) . ": " . (int) $dir_status . "\n"; } $summerization = "---------------------------------System report---------------------------------\n-----------------------------generated by PHPBoost-----------------------------\n\nSERVER CONFIGURATION-----------------------------------------------------------\n\nphp version : " . phpversion() . "\ndbms version : " . $Sql->get_dbms_version() . "\ngd library : " . (int) @extension_loaded('gd') . "\nurl rewriting : " . (function_exists('apache_get_modules') ? (int) (!empty($temp_var[5])) : "?") . "\nregister globals : " . (int) (@ini_get('register_globals') == '1' || strtolower(@ini_get('register_globals')) == 'on') . "\nserver url : " . $server_name . "\nsite path : " . $server_path . "\n\nPHPBOOST CONFIGURATION---------------------------------------------------------\n\nphpboost version : " . phpboost_version() . "\nserver url : " . $CONFIG['server_name'] . "\nsite path : " . $CONFIG['server_path'] . "\ndefault theme : " . $template_ini_file['name'] . "\ndefault language : " . get_ulang() . "\ndefault editor : " . $CONFIG['editor'] . "\nstart page : " . $CONFIG['start_page'] . "\nurl rewriting : " . $CONFIG['rewrite'] . "\noutput gz : " . $CONFIG['ob_gzhandler'] . "\nsession cookie name : " . $CONFIG['site_cookie'] . "\nsession length : " . $CONFIG['site_session'] . "\nguest session length : " . $CONFIG['site_session_invit'] . "\n\nDIRECTORIES AUTHORIZATIONS-----------------------------------------------------\n\n" . $directories_summerization; $template->assign_vars(array('PHP_VERSION' => phpversion(), 'DBMS_VERSION' => $Sql->get_dbms_version(), 'C_SERVER_GD_LIBRARY' => @extension_loaded('gd'), 'C_URL_REWRITING_KNOWN' => function_exists('apache_get_modules'), 'C_SERVER_URL_REWRITING' => function_exists('apache_get_modules') ? !empty($temp_var[5]) : false, 'C_REGISTER_GLOBALS' => @ini_get('register_globals') == '1' || strtolower(@ini_get('register_globals')) == 'on', 'SERV_SERV_URL' => $server_name, 'SERV_SITE_PATH' => $server_path, 'KERNEL_VERSION' => phpboost_version(), 'KERNEL_SERV_URL' => $CONFIG['server_name'], 'KERNEL_SITE_PATH' => $CONFIG['server_path'], 'KERNEL_DEFAULT_THEME' => $template_ini_file['name'], 'KERNEL_DEFAULT_LANGUAGE' => $lang_ini_file['name'], 'KERNEL_DEFAULT_EDITOR' => $CONFIG['editor'] == 'tinymce' ? 'TinyMCE' : 'BBCode', 'KERNEL_START_PAGE' => $CONFIG['start_page'], 'C_KERNEL_URL_REWRITING' => (bool) $CONFIG['rewrite'], 'C_KERNEL_OUTPUT_GZ' => (bool) $CONFIG['ob_gzhandler'], 'COOKIE_NAME' => $CONFIG['site_cookie'], 'SESSION_LENGTH' => $CONFIG['site_session'], 'SESSION_LENGTH_GUEST' => $CONFIG['site_session_invit'], 'SUMMERIZATION' => $summerization)); $template->parse(); require_once '../admin/admin_footer.php';
function check_compatibility() { global $CONFIG; $current_version = '0'; switch ($this->type) { case APPLICATION_TYPE__KERNEL: $current_version = phpboost_version(); break; case APPLICATION_TYPE__MODULE: $kModules = array_keys($MODULES); foreach ($kModules as $module) { if ($module == $this->name) { $infos = load_ini_file(PATH_TO_ROOT . '/' . $module . '/lang/', get_ulang()); $current_version = $infos['version']; break; } } break; case APPLICATION_TYPE__TEMPLATE: global $THEME_CONFIG; $kThemes = array_keys($THEME_CONFIG); foreach ($kThemes as $theme) { if ($theme == $this->name) { $infos = get_ini_config(PATH_TO_ROOT . '/templates/' . $theme . '/config/', get_ulang()); $current_version = $infos['version']; break; } } break; default: return false; } if ($current_version == '0') { return false; } return version_compare($current_version, $this->get_version(), '<') > 0 && ($CONFIG['version'] >= $this->compatibility_min && ($this->compatibility_max == null || $CONFIG['version'] <= $this->compatibility_max && $this->compatibility_max >= $this->compatibility_min)); }