public void CreateServerList(ServerGroup serverGroup, GameServer.ServerType serverType) { this.Items.Clear(); foreach (GameServer server in serverGroup.List) { if (server.Type == serverType) { ListItem item = new ListItem(server.Name, server.Id.ToString()); this.Items.Add(item); } } }
private bool Save2DB() { try { //权限检查 if (_operation == Operation.Add) { if (!WebUtil.CheckPrivilege(TheAdminServer.GameServerManager.SecurityObject, OpType.WRITE, Session)) { LabelOpMsg.Text = StringDef.NotEnoughPrivilege; return(false); } } else if (_operation == Operation.Modify) { int id = int.Parse(TextBoxServerId.Text); GameServer server = TheAdminServer.GameServerManager.GetGameServer(id); if (server != null && !WebUtil.CheckPrivilege(TheAdminServer.GameServerManager.SecurityObject, OpType.WRITE, Session)) { LabelOpMsg.Text = StringDef.NotEnoughPrivilege; return(false); } } else { LabelOpMsg.Text = StringDef.NotEnoughPrivilege; return(false); } string name = TextBoxServerName.Text; string comment = TextBoxServerComment.Text; string ip = TextBoxServerIpAddress.Text; string gameDir = TextBoxGameDir.Text; string cfgContent = ServerConfig.Text; ////游戏目录最后一个“/”必须有 //if (gameDir != null && gameDir.Length > 0) // if (!gameDir.EndsWith(GameServer.FilePathDelimiter) && !gameDir.EndsWith(GameServer.FilePathWinDelimiter)) // { // if (gameDir.IndexOf(GameServer.FilePathWinDelimiter) >= 0) // { // gameDir = gameDir + GameServer.FilePathWinDelimiter; // } // else // { // gameDir = gameDir + GameServer.FilePathDelimiter; // } // TextBoxGameDir.Text = gameDir; // } ServerGroup group = ServerGroupDropDownList.SelectedServerGroup; LordConfig lordConfig = null; //GameServer.ConfigGuardState configState = CheckBoxHasBeenConfigGuard.Checked ? GameServer.ConfigGuardState.Configed : GameServer.ConfigGuardState.NotConfig; GameServer.ServerType serverType = (GameServer.ServerType) int.Parse(ListBoxServerType.SelectedValue); if (PanelLordConfig.Visible) { if (GuardCfg(ref lordConfig) == false) { return(false); } } if (_operation == Operation.Add) { int severtype = ListBoxServerType.SelectedIndex; string serverConfigFile = WebConfig.WebsiteRootPath + WebConfig.ConfigTemplateDir + GetServerConfigFileName(severtype); ServerConfig.getServerConfigTextBox(serverConfigFile); if (TheAdminServer.GameServerManager.AddGameServer(name, comment, ip, gameDir, group, GameServer.ConfigGuardState.None, ServerConfig.Text, serverType, FtpDropDownList.SelectFtp)) { LabelSuccess.Visible = true; LabelSuccess.Text = StringDef.AddGameServer + StringDef.Colon + StringDef.Success; } else { LabelOpMsg.Text = StringDef.AddGameServer + StringDef.Colon + StringDef.Failure; return(false); } } else if (_operation == Operation.Modify) { int id = int.Parse(TextBoxServerId.Text); GameServer server = TheAdminServer.GameServerManager.GetGameServer(id); if (TheAdminServer.GameServerManager.ModifyGameServer(server, name, comment, ip, gameDir, group, lordConfig, GameServer.ConfigGuardState.Configuring, ServerConfig.Text, serverType, FtpDropDownList.SelectFtp)) { LabelSuccess.Visible = true; LabelSuccess.Text = StringDef.ModifyServer + StringDef.Colon + StringDef.Success; if (_server.LordConfig.FSEyeIp == string.Empty || _server.LordConfig.FSEyePort == 0) { LabelLordIsConfig.Visible = true; } else { LabelLordIsConfig.Visible = false; } } else { LabelOpMsg.Text = StringDef.ModifyServer + StringDef.Colon + StringDef.Failure; return(false); } } } catch (Exception ex) { string operationText = string.Empty; if (_operation == Operation.Add) { operationText = StringDef.AddServer; } else if (_operation == Operation.Modify) { operationText = StringDef.ModifyServer; } LabelOpMsg.Text = operationText + StringDef.Colon + StringDef.Failure + StringDef.Colon + ex.Message; } return(true); }