Exemple #1
0
        public static void AddMembershipRoleToDocument(int documentId, string role)
        {
            //event
            AddMemberShipRoleToDocumentEventArgs e = new AddMemberShipRoleToDocumentEventArgs();

            new Access().FireBeforeAddMemberShipRoleToDocument(new Document(documentId), role, e);

            if (!e.Cancel)
            {
                XmlElement x = (XmlElement)getPage(documentId);

                if (x == null)
                {
                    throw new Exception("Document is not protected!");
                }
                else
                {
                    if (x.SelectSingleNode("group [@id = '" + role + "']") == null)
                    {
                        XmlElement groupXml = (XmlElement)AccessXml.CreateNode(XmlNodeType.Element, "group", "");
                        groupXml.SetAttribute("id", role);
                        x.AppendChild(groupXml);
                        save();
                    }
                }

                new Access().FireAfterAddMemberShipRoleToDocument(new Document(documentId), role, e);
            }
        }
        public static void AddMembershipRoleToDocument(int documentId, string role)
        {
            //event
            var doc = new Document(documentId);
            var e   = new AddMemberShipRoleToDocumentEventArgs();

            new Access().FireBeforeAddMemberShipRoleToDocument(doc, role, e);

            if (e.Cancel)
            {
                return;
            }


            var entry = ApplicationContext.Current.Services.PublicAccessService.AddRule(
                doc.ContentEntity,
                Constants.Conventions.PublicAccess.MemberRoleRuleType,
                role);

            if (entry.Success == false && entry.Result.Entity == null)
            {
                throw new Exception("Document is not protected!");
            }

            Save();

            new Access().FireAfterAddMemberShipRoleToDocument(doc, role, e);
        }
Exemple #3
0
		public static void AddMembershipRoleToDocument(int documentId, string role) {
			//event
			AddMemberShipRoleToDocumentEventArgs e = new AddMemberShipRoleToDocumentEventArgs();
			new Access().FireBeforeAddMemberShipRoleToDocument(new Document(documentId), role, e);

			if (!e.Cancel) {
				XmlElement x = (XmlElement)getPage(documentId);

				if (x == null)
					throw new Exception("Document is not protected!");
				else {
					if (x.SelectSingleNode("group [@id = '" + role + "']") == null) {
						XmlElement groupXml = (XmlElement)AccessXml.CreateNode(XmlNodeType.Element, "group", "");
						groupXml.SetAttribute("id", role);
						x.AppendChild(groupXml);
						save();
					}
				}

				new Access().FireAfterAddMemberShipRoleToDocument(new Document(documentId), role, e);
			}
		}
		void Access_AfterAddMemberShipRoleToDocument(global::umbraco.cms.businesslogic.web.Document sender, string role, AddMemberShipRoleToDocumentEventArgs e)
		{
			((UmbracoSiteMapProvider)System.Web.SiteMap.Provider).UpdateNode(new NodeFactory.Node(sender.Id));
		}
Exemple #5
0
		protected virtual void FireAfterAddMemberShipRoleToDocument(Document doc, string role, AddMemberShipRoleToDocumentEventArgs e) {
			if (AfterAddMemberShipRoleToDocument != null)
				AfterAddMemberShipRoleToDocument(doc, role, e);
		}
Exemple #6
0
 protected virtual void FireAfterAddMemberShipRoleToDocument(Document doc, string role, AddMemberShipRoleToDocumentEventArgs e)
 {
     if (AfterAddMemberShipRoleToDocument != null)
     {
         AfterAddMemberShipRoleToDocument(doc, role, e);
     }
 }
Exemple #7
0
 void Access_AfterAddMemberShipRoleToDocument(global::umbraco.cms.businesslogic.web.Document sender, string role, AddMemberShipRoleToDocumentEventArgs e)
 {
     ((UmbracoSiteMapProvider)System.Web.SiteMap.Provider).UpdateNode(new NodeFactory.Node(sender.Id));
 }