// Verify running from command line if (php_sapi_name() !== 'cli') { die; } // Parse parameters into $_GET superglobal parse_str(implode('&', array_slice($argv, 1)), $_GET); // Verify an action was recieved if (empty($_GET['action'])) { die("No action specified. Example usage: php -f action=start server=alanaktion"); } // Initialize core chdir(dirname(__FILE__)); require_once 'inc/lib.php'; // Handle actions switch ($_GET['action']) { case "start": server_start($_GET['server']); break; case "stop": server_stop($_GET['server']); break; case "restart": server_stop($_GET['server']); server_start($_GET['server']); break; case "kill": server_kill($_GET['server']); break; default: die("Unknown action: {$_GET['action']}"); }
} break; case 'rename': file_rename($_POST['path'], $_POST['newname'], $user['home']); break; case 'server_start': echo server_start($user['user']); break; case 'server_cmd': server_cmd($user['user'], $_POST['cmd']); break; case 'server_stop': server_stop($user['user']); break; case 'server_kill': server_kill($user['user']); break; case 'server_running': echo json_encode(server_running($user['user'])); break; case 'server_log': /*if($files = glob($user['home'] . "screenlog.?*")) { // Prefer GNU screen log echo mclogparse2(file_backread($user['home'])); } else*/ if (is_file($user['home'] . "/logs/latest.log")) { // 1.7 logs echo mclogparse2(file_backread($user['home'] . '/logs/latest.log', 64)); } elseif (is_file($user['home'] . "/server.log")) { // 1.6 and earlier echo mclogparse2(file_backread($user['home'] . '/server.log', 64));
if ($_POST['action'] == 'user-add') { user_add($_POST['user'], $_POST['pass'], $_POST['role'], $_POST['dir'], $_POST['ram'], $_POST['port']); } // Start a server if ($_POST['action'] == 'server-start') { $stu = user_info($_POST['user']); if (!server_running($stu['user'])) { server_start($stu['user']); } } // Kill a server if ($_POST['action'] == 'server-stop') { if ($_POST['user'] == 'ALL') { server_kill_all(); } else { server_kill($_POST['user']); } } ?> <!doctype html> <html> <head> <title>Administration | MCHostPanel</title> <link rel="stylesheet" href="css/bootstrap.min.css"> <link rel="stylesheet" href="css/bootstrap-responsive.min.css"> <link rel="stylesheet" href="css/smooth.css" id="smooth-css"> <link rel="stylesheet" href="css/style.css"> <meta name="author" content="Alan Hardman (http://phpizza.com)"> <script src="js/jquery-1.7.2.min.js"></script> <script src="js/bootstrap.min.js"></script> <script type="text/javascript">