/// <summary> /// 更新用户名 /// </summary> /// <param name="userInfo">当前用户信息</param> /// <param name="oldusername">以前用户的名称</param> /// <returns></returns> public static bool UserNameChange(UserInfo userInfo, string oldusername) { //将新主题表 Data.Topics.UpdateTopicLastPoster(userInfo.Uid, userInfo.Username); Data.Topics.UpdateTopicPoster(userInfo.Uid, userInfo.Username); //更新帖子表 //foreach (DataRow dr in Data.PostTables.GetAllPostTableName().Rows) //{ Data.Posts.UpdatePostPoster(userInfo.Uid, userInfo.Username); //} //更新短消息 Data.PrivateMessages.UpdatePMSenderAndReceiver(userInfo.Uid, userInfo.Username); //更新公告 Data.Announcements.UpdateAnnouncementPoster(userInfo.Uid, userInfo.Username); //更新统计表中的信息 if (Data.Statistics.UpdateStatisticsLastUserName(userInfo.Uid, userInfo.Username) != 0) { Discuz.Cache.DNTCache.GetCacheService().RemoveObject("/Forum/Statistics"); } //更新论坛版主相关信息 //foreach (DataRow dr in Data.Forums.GetModerators(oldusername).Rows) //{ // string moderators = "," + dr["moderators"].ToString().Trim() + ","; // if (moderators.IndexOf("," + oldusername + ",") >= 0) // Forums.UpdateForumField(Utils.StrToInt(dr["fid"], 0),"moderators",dr["moderators"].ToString().Trim().Replace(oldusername, userInfo.Username)); //} //更新版块版主的名字 Forums.UpdateModeratorName(oldusername, userInfo.Username); return(true); }
/// <summary> /// 更新当前用户名在版块属性中的版主信息 /// </summary> /// <param name="username">当前用户的名称</param> public static void UpdateForumsFieldModerators(string username) { ////删除版主表的相关用户信息 //DataTable dt = Data.Forums.GetModerators(username); //if (dt.Rows.Count > 0) //{ // string updatestr = ""; // foreach (DataRow dr in dt.Rows) // { // updatestr = dr["moderators"].ToString().Replace(username + ",", ""); // updatestr = updatestr.Replace("," + username, ""); // updatestr = updatestr.Replace(username, ""); // Forums.UpdateForumField(Utils.StrToInt(dr["fid"], 0), "moderators", updatestr); // } //} //删除版块中的版主 Forums.UpdateModeratorName(username, ""); }