public bool SaveSetting(IPermissionSet setting) { ForumPermissionSetNodeCollection tempNodes = new ForumPermissionSetNodeCollection(); bool haveAdd = false; foreach (ForumPermissionSetNode node in Nodes) { if (node.NodeID == setting.NodeID) { tempNodes.Add((ForumPermissionSetNode)setting); haveAdd = true; } else { tempNodes.Add(node); } } if (haveAdd == false) { tempNodes.Add((ForumPermissionSetNode)setting); } ForumPermissionSet permissionSet = new ForumPermissionSet(); permissionSet.Nodes = tempNodes; return(SettingManager.SaveSettings(permissionSet)); }
public bool SetDefaultSkin(string skinID) { Skin skin = TemplateManager.GetSkin(skinID, true); if (skinID == null) { return(false); } if (skin.Enabled == false) { lock (locker) { if (DisabledSkins.Contains(skinID)) { DisabledSkins.Remove(skinID); } } } DefaultSkin = skinID; SettingManager.SaveSettings(this); return(true); }
public bool DeleteSetting(int nodeID) { if (nodeID == 0) { return(true); } ManageForumPermissionSetNodeCollection tempNodes = new ManageForumPermissionSetNodeCollection(); foreach (ManageForumPermissionSetNode node in Nodes) { if (node.NodeID != nodeID) { tempNodes.Add(node); } } ManageForumPermissionSet permissionSet = new ManageForumPermissionSet(); permissionSet.Nodes = tempNodes; bool success = SettingManager.SaveSettings(permissionSet); return(success); }
public void EnableSkin(string skinID) { lock (locker) { if (DisabledSkins.Contains(skinID)) { DisabledSkins.Remove(skinID); } } TemplateManager.ClearSkinCache(); SettingManager.SaveSettings(this); }
public void DeleteGroup(int groupID, MessageDisplay msgdisplay) { DefaultEmoticonGroup group = m_groups.GetValue(groupID);// m_groups[groupName]; if (group != null) { bool error = false; if (string.IsNullOrEmpty(group.DirectoryName)) { msgdisplay.AddError("groupname", "不能删除默认分组"); } else { //全部文件监控都关闭然后再删除文件夹, 否则会导致重启 || 事实证明停止监视也会重启 EndWach(); foreach (DefaultEmoticonGroup tempgroup in m_groups) { tempgroup.EndWach(); } try { Directory.Delete(m_groups.GetValue(groupID).FilePath, true); } catch (Exception ex) { group.BeginWach(); msgdisplay.AddError("删除表情出错,错误信息:" + ex.Message); error = true; } if (error == false) { SettingManager.SaveSettings(this); init(group.DirectoryName); } else { foreach (DefaultEmoticonGroup tempgroup in m_groups) { tempgroup.BeginWach(); } BeginWach(); } } } }
public void CreateGroup(int sortorder, string GroupName, MessageDisplay msgdisplay) { if (GroupName != null && GroupName.Trim() != string.Empty) { GroupName = GroupName.Trim(); if (GetEmoticonGroupByName(GroupName) != null) { msgdisplay.AddError("groupname", "分组:" + GroupName + " 已经存在"); } else { if (Regex.IsMatch(GroupName, "[\\/:\\*\\?\"\\<\\>\\|]+")) { msgdisplay.AddError("分组是以文件夹的形式存在。因此,分组名称里不能包含下列字符:/ : * ? \" < > |"); } else { bool error = false; try { Directory.CreateDirectory(IOUtil.JoinPath(this.FaceDirectory, GroupName)); } catch (Exception ex) { error = true; msgdisplay.AddError("创建表情分组失败, 可能的原因是: 对 " + this.FaceDirectory + " 无写入权限! 具体错误信息: " + ex.Message); } if (error == false) { init(); DefaultEmoticonGroup newGroup = GetEmoticonGroupByName(GroupName); if (newGroup != null) { newGroup.SortOrder = sortorder; } SettingManager.SaveSettings(this); } } } } else { msgdisplay.AddError("groupname", "分组名称不能为空。"); } }
public void RemoveLink(int[] linkIds) { bool needSave = false; foreach (int g in linkIds) { for (int i = 0; i < Links.Count; i++) { if (Links[i].LinkID == g) { Links.RemoveAt(i); needSave = true; break; } } } if (needSave) { SettingManager.SaveSettings(this); } }
public void DisableSkin(string skinID) { if (TemplateManager.GetSkin(skinID, true) == null) { return; } if (DefaultSkin == skinID) { return; } lock (locker) { if (DisabledSkins.Contains(skinID) == false) { DisabledSkins.Add(skinID); } } TemplateManager.ClearSkinCache(); SettingManager.SaveSettings(this); }
public void ClearExperiesData() { //return; PointActionCollection pointActions = new PointActionCollection(); foreach (PointAction pointAction in PointActions) { PointActionType pointActionType = PointActionManager.GetPointActionType(pointAction.Type); if (pointActionType == null) { continue; } //检查nodeID if (pointActionType.HasNodeList && pointAction.NodeID != 0) { bool isExperies = true; foreach (NodeItem item in pointActionType.NodeItemList) { if (item.NodeID == pointAction.NodeID) { isExperies = false; break; } } if (isExperies) { continue; } } PointAction tempPointAction = new PointAction(); //检查roleID PointActionItemCollection pointActionItems = new PointActionItemCollection(); foreach (PointActionItem pointActionItem in pointAction.PointActionItems) { if (pointActionItem.RoleID == Guid.Empty || AllSettings.Current.RoleSettings.Roles.GetValue(pointActionItem.RoleID) != null) { pointActionItems.Add(pointActionItem); } } tempPointAction.PointActionItems = pointActionItems; tempPointAction.NodeID = pointAction.NodeID; tempPointAction.Type = pointAction.Type; pointActions.Add(tempPointAction); } PointActionSettings setting = new PointActionSettings(); setting.PointActions = pointActions; try { SettingManager.SaveSettings(setting); } catch { } }