/* Thor Server Project Copyright 2008 Joe Hegarty This file is part of The Thor Server Project. The Thor Server Project is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. The Thor Server Project is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with The Thor Server Project. If not, see . */ using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Xml.Linq; using System.Collections.Generic; using ThorServer; using ThorServer.Game.Users; namespace ThorHousekeeping { public partial class RoleChange : System.Web.UI.Page { UserInfo mUser; protected void Page_Load(object sender, EventArgs e) { this.Title = "Role Change Tool"; int userId = (int)Session["userid"]; mUser = InstanceManager.Game.Users.GetUser(userId); if (!InstanceManager.Game.Roles.HasRight(mUser.iRole, "fuse_housekeeping_user_changerole")) { Response.Redirect("./Default.aspx"); } if (!Page.IsPostBack) { PopulateRoleList(); } } private void PopulateRoleList() { Dictionary roles = InstanceManager.Game.Roles.GetRoles(); Dictionary.Enumerator myEnum = roles.GetEnumerator(); while (myEnum.MoveNext()) { ListItem item = new ListItem(myEnum.Current.Key.ToString() + " ["+ myEnum.Current.Value + "]", myEnum.Current.Key.ToString()); ddRole.Items.Add(item); } } protected void btnApply_Click(object sender, EventArgs e) { if (InstanceManager.Game.Users.UserExists(txtUsername.Text)) { UserInfo user = InstanceManager.Game.Users.GetUser(txtUsername.Text); user.iRole = int.Parse(ddRole.SelectedValue); InstanceManager.Game.Users.UpdateUser(user); InstanceManager.Game.Moderation.LogCommand(mUser.userId, user.userId, "changerole", "New Role: " + ddRole.SelectedValue.ToString() + " [" + ddRole.Text + "]", "Housekeeping"); lblInfo.Text = "Role updated!"; } else { lblInfo.Text = "Invalid user!"; } } } }