private static bool HasAccess(int DocumentId, string Path, cms.businesslogic.member.Member Member) { bool hasAccess = false; if (!IsProtected(DocumentId, Path)) { hasAccess = true; } else { XmlNode currentNode = getPage(getProtectedPage(Path)); if (Member != null) { IDictionaryEnumerator ide = Member.Groups.GetEnumerator(); while (ide.MoveNext()) { cms.businesslogic.member.MemberGroup mg = (cms.businesslogic.member.MemberGroup)ide.Value; if (currentNode.SelectSingleNode("./group [@id=" + mg.Id.ToString() + "]") != null) { hasAccess = true; break; } } } } return(hasAccess); }
public static cms.businesslogic.member.MemberGroup[] GetAccessingGroups(int DocumentId) { cms.businesslogic.web.Document d = new Document(DocumentId); if (!IsProtected(DocumentId, d.Path)) { return(null); } else { XmlNode currentNode = getPage(getProtectedPage(d.Path)); cms.businesslogic.member.MemberGroup[] mg = new umbraco.cms.businesslogic.member.MemberGroup[currentNode.SelectNodes("./group").Count]; int count = 0; foreach (XmlNode n in currentNode.SelectNodes("./group")) { mg[count] = new cms.businesslogic.member.MemberGroup(int.Parse(n.Attributes.GetNamedItem("id").Value)); count++; } return(mg); } }
public static cms.businesslogic.member.MemberGroup[] GetAccessingGroups(int DocumentId) { cms.businesslogic.web.Document d = new Document(DocumentId); if (!IsProtected(DocumentId, d.Path)) return null; else { XmlNode currentNode = getPage(getProtectedPage(d.Path)); cms.businesslogic.member.MemberGroup[] mg = new umbraco.cms.businesslogic.member.MemberGroup[currentNode.SelectNodes("./group").Count]; int count = 0; foreach (XmlNode n in currentNode.SelectNodes("./group")) { mg[count] = new cms.businesslogic.member.MemberGroup(int.Parse(n.Attributes.GetNamedItem("id").Value)); count++; } return mg; } }