getUserById($_SESSION['user_id']); } $settings = $db->getSettings(); @$GLOBALS['panel_language'] = $settings['panel_language']; ogpLang(); // Apply debug level from panel settings (overrides the DEBUG_LEVEL constant) if (defined('DEBUG_MODE') && DEBUG_MODE && function_exists('gsp_apply_debug_level')) { gsp_apply_debug_level((int)($settings['debug_level'] ?? DEBUG_LEVEL)); } require_once("includes/view.php"); $view = new OGPView(); $view->setCharset(get_lang('lang_charset')); $view->setTimeZone($settings['time_zone']); if(isset($_GET['type']) && $_GET['type'] == 'cleared') { if(isset($_GET['data_type'])){ heading(true); $view->printView(true, $_GET['data_type']); }else{ heading(true); $view->printView(true); } } else { ogpHome(); $view->printView(); } function heading() { global $db,$view,$settings; if ( !file_exists(CONFIG_FILE) ) { print_failure(get_lang('failed_to_read_config')); $view->refresh("index.php"); return; } // Start Output Buffering if (!isset($_SESSION['users_login'])) { print_failure(get_lang('invalid_login_information')); echo "

".get_lang('invalid_redirect')."...

"; $view->refresh("index.php", 2); return; } else { $info = $db->getUserById($_SESSION['user_id']); // Use parent expiration date for subusers if(!is_null($info['users_parent']) && is_numeric($info['users_parent'])){ $parentInfo = $db->getUserById($info['users_parent']); if(is_array($parentInfo) && array_key_exists("user_expires", (array)$parentInfo) && $parentInfo['user_expires'] != "X"){ $info['user_expires'] = $parentInfo['user_expires']; } } if($info['user_expires'] != "X") { list($days,$strd,$hours,$strh,$minutes,$strm) = explode(" ", read_expire($info['user_expires'])); $minutes2expire = $minutes + intval( $hours * 60 ) + intval( $days * 24 * 60 ); if($minutes2expire <= 0) { echo "

".get_lang('account_expired')."

"; echo "

".get_lang('contact_admin_to_enable_account')."

"; session_destroy(); return; } } if( isset($settings['maintenance_mode']) && $settings['maintenance_mode'] == "1" ) { if ($_SESSION['users_group'] == "user") { echo "

".$settings['maintenance_title']."

"; echo "

".$settings['maintenance_message']."

"; $view->setTitle("OGP: Maintenance."); echo "

".get_lang('logging_out_10')."...

"; $view->refresh("index.php", 10); session_destroy(); return; } } if ( isset($_REQUEST['logout']) ) { session_destroy(); print_success(get_lang('logout_message')); $view->refresh("index.php"); return; } include "includes/navig.php"; } if(isset($maintenance))echo $maintenance; } function ogpHome() { global $db,$view,$settings; ?> %top% isAdmin($_SESSION['user_id']); if ( $isAdmin ) $server_homes = $db->getHomesFor('admin', $_SESSION['user_id']); else $server_homes = $db->getHomesFor('user_and_group', $_SESSION['user_id']); if(!empty($server_homes)) { $servers_by_game_name = array(); foreach ((array)$server_homes as $server_home) { if(isset($settings['check_expiry_by']) and $settings['check_expiry_by'] == "once_logged_in") { if($db->check_expire_date($_SESSION['user_id'], $server_home['home_id'])) continue; } $servers_by_game_name["$server_home[game_name]"][] = $server_home; } ksort($servers_by_game_name); $game_homes_list = "\n"; } else $game_homes_list = ""; // Show admin-only warning for any game config XMLs that failed to parse. if ($isAdmin) { $xml_errors = function_exists('gsp_get_xml_errors') ? gsp_get_xml_errors() : array(); if (!empty($xml_errors)) { echo "
"; echo "⚠ One or more game config XML files failed to load and have been skipped:"; echo "

Use Game/Mod Config to edit and fix the broken file(s).

"; echo "
"; } } ?> %topbody%
%botbody% %bottom%