Ejemplo n.º 1
0
 protected void gpw_Delete(object sender, System.EventArgs e)
 {
     GenericProperties.GenericPropertyWrapper gpw = (GenericProperties.GenericPropertyWrapper)sender;
     gpw.GenricPropertyControl.PropertyType.delete();
     cType = ContentType.GetContentType(cType.Id);
     this.bindDataGenericProperties(true);
 }
Ejemplo n.º 2
0
		protected void Page_Load(object sender, System.EventArgs e)
		{
			// Put user code to initialize the page here
			foreach(cms.businesslogic.web.DocumentType dt in cms.businesslogic.web.DocumentType.GetAllAsList()) 
			{
				LabelDoc.Text +=
					"<div class=\"propertyType\"><p class=\"documentType\">" + dt.Text + "</p><p class=\"type\">Id: " + dt.Id.ToString() + ", Alias: " + dt.Alias + ")</p>";
				if (dt.PropertyTypes.Count > 0)
					LabelDoc.Text += "<p class=\"docHeader\">Property Types:</p>";
				foreach (cms.businesslogic.propertytype.PropertyType pt in dt.PropertyTypes)
					LabelDoc.Text +=
						"<p class=\"type\">" + pt.Id.ToString() + ", " + pt.Alias + ", " + pt.Name + "</p>";
				if (dt.getVirtualTabs.Length > 0)
					LabelDoc.Text += "<p class=\"docHeader\">Tabs:</p>";
                foreach (cms.businesslogic.ContentType.TabI t in dt.getVirtualTabs.ToList())
					LabelDoc.Text +=
						"<p class=\"type\">" + t.Id.ToString() + ", " + t.Caption + "</p>";
				if (dt.AllowedChildContentTypeIDs.Length > 0)
					LabelDoc.Text += "<p class=\"docHeader\">Allowed children:</p>";
				foreach (int child in dt.AllowedChildContentTypeIDs.ToList()) 
				{
					cms.businesslogic.ContentType _child = new cms.businesslogic.ContentType(child);
					LabelDoc.Text +=
						"<p class=\"type\">" + _child.Id.ToString() + ", " + _child.Text + "</p>";
				}

				LabelDoc.Text += "</div>";

			}
		}
Ejemplo n.º 3
0
        public ContentTypeControl(cms.businesslogic.ContentType ct, string id)
        {
            this.ID      = id;
            this.OnSave += new EventHandler(tmp_OnSave);
            this.OnPropertyTypeCreate += new EventHandler(this.tmp_OnSave);
            this.OnPropertyTypeDelete += new EventHandler(this.tmp_OnSave);
            docType     = ct;
            this.Width  = Unit.Pixel(600);
            this.Height = Unit.Pixel(600);
            string UmbracoPath = SystemDirectories.Umbraco;

            Panel1 = this.NewTabPage("Generelt");
            uicontrols.MenuImageButton Save = Panel1.Menu.NewImageButton();
            Save.Click   += new System.Web.UI.ImageClickEventHandler(save_click);
            Save.ID       = "Panel1Save";
            Save.ImageUrl = UmbracoPath + "/images/editor/save.gif";


            Panel2        = this.NewTabPage("Faneblade");
            Save          = Panel2.Menu.NewImageButton();
            Save.ID       = "Panel2Save";
            Save.Click   += new System.Web.UI.ImageClickEventHandler(save_click);
            Save.ImageUrl = UmbracoPath + "/images/editor/save.gif";


            Panel3        = this.NewTabPage("Struktur");
            Save          = Panel3.Menu.NewImageButton();
            Save.ID       = "Panel3Save";
            Save.Click   += new System.Web.UI.ImageClickEventHandler(save_click);
            Save.ImageUrl = UmbracoPath + "/images/editor/save.gif";

            Panel4        = this.NewTabPage("Generiske egenskaber");
            Save          = Panel4.Menu.NewImageButton();
            Save.ID       = "Panel4Save";
            Save.Click   += new System.Web.UI.ImageClickEventHandler(save_click);
            Save.ImageUrl = UmbracoPath + "/images/editor/save.gif";

            Panel1.Attributes.Add("align", "center");
            Panel2.Attributes.Add("align", "center");
            Panel3.Attributes.Add("align", "center");
            Panel4.Attributes.Add("align", "center");

            br         = new HtmlGenericControl();
            br.TagName = "br";
            Panel1.Controls.Add(br);

            br         = new HtmlGenericControl();
            br.TagName = "br";
            Panel2.Controls.Add(br);

            br         = new HtmlGenericControl();
            br.TagName = "br";
            Panel3.Controls.Add(br);

            br         = new HtmlGenericControl();
            br.TagName = "br";
            Panel4.Controls.Add(br);
        }
Ejemplo n.º 4
0
		public ContentTypeControl(cms.businesslogic.ContentType ct, string id) {
			this.ID = id;
			this.OnSave +=new EventHandler(tmp_OnSave);
			this.OnPropertyTypeCreate += new EventHandler(this.tmp_OnSave);
			this.OnPropertyTypeDelete += new EventHandler(this.tmp_OnSave);
			docType = ct;
			this.Width = Unit.Pixel(600);
			this.Height = Unit.Pixel(600);
            string UmbracoPath = SystemDirectories.Umbraco;
			Panel1 = this.NewTabPage("Generelt");
			uicontrols.MenuImageButton Save = Panel1.Menu.NewImageButton();
			Save.Click += new System.Web.UI.ImageClickEventHandler(save_click);
			Save.ID = "Panel1Save";
			Save.ImageUrl = UmbracoPath + "/images/editor/save.gif";
		

			Panel2 = this.NewTabPage("Faneblade");
			Save = Panel2.Menu.NewImageButton();
			Save.ID = "Panel2Save";
			Save.Click += new System.Web.UI.ImageClickEventHandler(save_click);
			Save.ImageUrl = UmbracoPath + "/images/editor/save.gif";


			Panel3 = this.NewTabPage("Struktur");
			Save = Panel3.Menu.NewImageButton();
			Save.ID = "Panel3Save";
			Save.Click += new System.Web.UI.ImageClickEventHandler(save_click);
			Save.ImageUrl = UmbracoPath + "/images/editor/save.gif";
			
			Panel4 = this.NewTabPage("Generiske egenskaber");
			Save = Panel4.Menu.NewImageButton();
			Save.ID = "Panel4Save";
			Save.Click += new System.Web.UI.ImageClickEventHandler(save_click);
			Save.ImageUrl = UmbracoPath + "/images/editor/save.gif";

			Panel1.Attributes.Add("align","center");
			Panel2.Attributes.Add("align","center");
			Panel3.Attributes.Add("align","center");
			Panel4.Attributes.Add("align","center");

			br = new HtmlGenericControl();
			br.TagName = "br";
			Panel1.Controls.Add(br);

			br = new HtmlGenericControl();
			br.TagName = "br";
			Panel2.Controls.Add(br);

			br = new HtmlGenericControl();
			br.TagName = "br";
			Panel3.Controls.Add(br);

			br = new HtmlGenericControl();
			br.TagName = "br";
			Panel4.Controls.Add(br);
		
		}
Ejemplo n.º 5
0
        protected void save_click(object sender, System.Web.UI.ImageClickEventArgs e)
        {
            // 2011 01 06 - APN - Modified method to update Xml caches if a doctype alias changed,
            // also added calls to update the tree if the name has changed
            // ---

            // Keep a reference of the original doctype alias and name
            var originalDocTypeAlias = cType.Alias;
            var originalDocTypeName  = cType.Text;

            cType.Text        = txtName.Text;
            cType.Alias       = txtAlias.Text;
            cType.IconUrl     = ddlIcons.SelectedValue;
            cType.Description = description.Text;
            cType.Thumbnail   = ddlThumbnails.SelectedValue;
            SaveClickEventArgs ea = new SaveClickEventArgs("Saved");

            ea.IconType = umbraco.BasePages.BasePage.speechBubbleIcon.success;

            saveProperties(ref ea);

            SaveTabs();

            SaveAllowedChildTypes();

            // reload content type (due to caching)
            cType = new ContentType(cType.Id);

            // Check if the doctype alias has changed as a result of either the user input or
            // the alias checking performed upon saving
            var docTypeAliasChanged = (string.Compare(originalDocTypeAlias, cType.Alias, true) != 0);
            var docTypeNameChanged  = (string.Compare(originalDocTypeName, cType.Text, true) != 0);

            // Only if the doctype alias changed, cause a regeneration of the xml cache file since
            // the xml element names will need to be updated to reflect the new alias
            if (docTypeAliasChanged)
            {
                RegenerateXmlCaches();
            }

            bindDataGenericProperties(true);

            // we need to re-bind the alias as the SafeAlias method can have changed it
            txtAlias.Text = cType.Alias;

            RaiseBubbleEvent(new object(), ea);

            if (docTypeNameChanged)
            {
                UpdateTreeNode();
            }
        }
Ejemplo n.º 6
0
        override protected void OnInit(EventArgs e)
        {
            base.OnInit(e);

            int docTypeId = getDocTypeId();

            cType = new cms.businesslogic.ContentType(docTypeId);

            setupInfoPane();
            if (!HideStructure)
            {
                setupStructurePane();
            }
            setupGenericPropertiesPane();
            setupTabPane();
        }
        override protected void OnInit(EventArgs e)
        {
            base.OnInit(e);

            int docTypeId = getDocTypeId();
            cType = new cms.businesslogic.ContentType(docTypeId);

            setupInfoPane();
            if (!HideStructure)
            {
                setupStructurePane();
            }
            setupGenericPropertiesPane();
            setupTabPane();

        }
Ejemplo n.º 8
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            // Put user code to initialize the page here
            foreach (cms.businesslogic.web.DocumentType dt in cms.businesslogic.web.DocumentType.GetAllAsList())
            {
                LabelDoc.Text +=
                    "<div class=\"propertyType\"><p class=\"documentType\">" + dt.Text + "</p><p class=\"type\">Id: " + dt.Id.ToString() + ", Alias: " + dt.Alias + ")</p>";
                if (dt.PropertyTypes.Count > 0)
                {
                    LabelDoc.Text += "<p class=\"docHeader\">Property Types:</p>";
                }
                foreach (cms.businesslogic.propertytype.PropertyType pt in dt.PropertyTypes)
                {
                    LabelDoc.Text +=
                        "<p class=\"type\">" + pt.Id.ToString() + ", " + pt.Alias + ", " + pt.Name + "</p>";
                }
                if (dt.getVirtualTabs.Length > 0)
                {
                    LabelDoc.Text += "<p class=\"docHeader\">Tabs:</p>";
                }
                foreach (cms.businesslogic.ContentType.TabI t in dt.getVirtualTabs.ToList())
                {
                    LabelDoc.Text +=
                        "<p class=\"type\">" + t.Id.ToString() + ", " + t.Caption + "</p>";
                }
                if (dt.AllowedChildContentTypeIDs.Length > 0)
                {
                    LabelDoc.Text += "<p class=\"docHeader\">Allowed children:</p>";
                }
                foreach (int child in dt.AllowedChildContentTypeIDs.ToList())
                {
                    cms.businesslogic.ContentType _child = new cms.businesslogic.ContentType(child);
                    LabelDoc.Text +=
                        "<p class=\"type\">" + _child.Id.ToString() + ", " + _child.Text + "</p>";
                }

                LabelDoc.Text += "</div>";
            }
        }
Ejemplo n.º 9
0
        protected void btnNewTab_Click(object sender, System.EventArgs e)
        {
            if (txtNewTab.Text.Trim() != "")
            {
                cType.AddVirtualTab(txtNewTab.Text);
                cType = new ContentType(cType.Id);
                SaveClickEventArgs ea = new SaveClickEventArgs(ui.Text("contentTypeTabCreated"));
                ea.IconType = umbraco.BasePages.BasePage.speechBubbleIcon.success;

                RaiseBubbleEvent(new object(), ea);

                txtNewTab.Text = "";
                bindTabs();
                bindDataGenericProperties(true);
            }

            Page.ClientScript.RegisterStartupScript(this.GetType(), "dropDowns", @"
Umbraco.Controls.TabView.onActiveTabChange(function(tabviewid, tabid, tabs) {
    refreshDropDowns();
});
", true);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// Allows a documentType to be created below another documentType.
        /// </summary>
        /// <param name="packageName">Name of the package.</param>
        /// <param name="xmlData">The XML data.</param>
        /// <example><code>
        /// <Action runat="install" alias="allowDocumenttype" documentTypeAlias="MyNewDocumentType" parentDocumentTypeAlias="HomePage"  />
        /// </code></example>
        /// <returns>Returns true on success</returns>
        public bool Execute(string packageName, XmlNode xmlData)
        {
            string doctypeName       = xmlData.Attributes["documentTypeAlias"].Value;
            string parentDoctypeName = xmlData.Attributes["parentDocumentTypeAlias"].Value;

            cms.businesslogic.ContentType ct       = cms.businesslogic.ContentType.GetByAlias(doctypeName);
            cms.businesslogic.ContentType parentct = cms.businesslogic.ContentType.GetByAlias(parentDoctypeName);

            if (ct != null && parentct != null)
            {
                bool      containsId = false;
                ArrayList tmp        = new ArrayList();

                foreach (int i in parentct.AllowedChildContentTypeIDs.ToList())
                {
                    tmp.Add(i);
                    if (i == ct.Id)
                    {
                        containsId = true;
                    }
                }

                if (!containsId)
                {
                    int[] ids = new int[tmp.Count + 1];
                    for (int i = 0; i < tmp.Count; i++)
                    {
                        ids[i] = (int)tmp[i];
                    }
                    ids[ids.Length - 1] = ct.Id;

                    parentct.AllowedChildContentTypeIDs = ids;
                    parentct.Save();
                    return(true);
                }
            }
            return(false);
        }
Ejemplo n.º 11
0
			public NodeTypeAddPropertyTypeControl(cms.businesslogic.ContentType dt, ContentTypeControl parent) 
			{
				ctctrl = parent;
				this.Attributes.Add("width","100%");
				HtmlTableRow tr = new HtmlTableRow();
				HtmlTableCell td =  new HtmlTableCell();
				td.InnerText = "Alias";
				tr.Cells.Add(td);

				td = new HtmlTableCell();
				td.InnerText  = "Navn";
				tr.Cells.Add(td);

				td = new HtmlTableCell();
				td.InnerText = "Type";
				tr.Cells.Add(td);

				td = new HtmlTableCell();
				td.InnerText = "Fane";
				tr.Cells.Add(td);

				td = new HtmlTableCell();
				tr.Cells.Add(td);

				this.Rows.Add(tr);
				tr = new HtmlTableRow();

				td = new HtmlTableCell();
				td.Controls.Add(AliasTxt);
				tr.Cells.Add(td);

				td = new HtmlTableCell();
				td.Controls.Add(NameTxt);
				tr.Cells.Add(td);

				td = new HtmlTableCell();
				td.Controls.Add(DataTypeDDL);
				tr.Cells.Add(td);

				td = new HtmlTableCell();
				td.Controls.Add(TabDDL);
				tr.Cells.Add(td);

				td = new HtmlTableCell();
				Button btn = new Button();
					
				td.Controls.Add(btn);
				btn.Text = "Opret";
				tr.Cells.Add(td);
				this.Rows.Add(tr);

				// Add create new PropertyType eventhandler
				btn.Click += new System.EventHandler(this.AddPropertyType);


                foreach (cms.businesslogic.ContentType.TabI t in dt.getVirtualTabs.ToList()) 
				{
					ListItem li = new ListItem();
					li.Value = t.Id.ToString();
					li.Text = t.Caption;
					TabDDL.Items.Add(li);
				}
				ListItem lie = new ListItem();
				lie.Text = "Egenskaber";
				lie.Value = "0";
				TabDDL.Items.Add(lie);
				
				foreach(cms.businesslogic.datatype.DataTypeDefinition DataType in cms.businesslogic.datatype.DataTypeDefinition.GetAll()) 
				{
					ListItem li = new ListItem();
					li.Value = DataType.Id.ToString();
					li.Text = DataType.Text;
					DataTypeDDL.Items.Add(li);
				}
				_dt = dt;
			}
Ejemplo n.º 12
0
        protected void btnNewTab_Click(object sender, System.EventArgs e)
        {
            if (txtNewTab.Text.Trim() != "")
            {
                cType.AddVirtualTab(txtNewTab.Text);
                cType = new ContentType(cType.Id);
                SaveClickEventArgs ea = new SaveClickEventArgs(ui.Text("contentTypeTabCreated"));
                ea.IconType = umbraco.BasePages.BasePage.speechBubbleIcon.success;

                RaiseBubbleEvent(new object(), ea);

                txtNewTab.Text = "";
                bindTabs();
                bindDataGenericProperties(true);
            }

            Page.ClientScript.RegisterStartupScript(this.GetType(), "dropDowns", @"
Umbraco.Controls.TabView.onActiveTabChange(function(tabviewid, tabid, tabs) {
    refreshDropDowns();
});
", true);
        }
Ejemplo n.º 13
0
 protected void gpw_Delete(object sender, System.EventArgs e)
 {
     GenericProperties.GenericPropertyWrapper gpw = (GenericProperties.GenericPropertyWrapper)sender;
     gpw.GenricPropertyControl.PropertyType.delete();
     cType = ContentType.GetContentType(cType.Id);
     this.bindDataGenericProperties(true);
 }
Ejemplo n.º 14
0
        protected void save_click(object sender, System.Web.UI.ImageClickEventArgs e)
        {
            // 2011 01 06 - APN - Modified method to update Xml caches if a doctype alias changed, 
            // also added calls to update the tree if the name has changed
            // ---

            // Keep a reference of the original doctype alias and name
            var originalDocTypeAlias = cType.Alias;
            var originalDocTypeName = cType.Text;

            cType.Text = txtName.Text;
            cType.Alias = txtAlias.Text;
            cType.IconUrl = ddlIcons.SelectedValue;
            cType.Description = description.Text;
            cType.Thumbnail = ddlThumbnails.SelectedValue;
            SaveClickEventArgs ea = new SaveClickEventArgs("Saved");
            ea.IconType = umbraco.BasePages.BasePage.speechBubbleIcon.success;

            saveProperties(ref ea);

            SaveTabs();

            SaveAllowedChildTypes();

            // reload content type (due to caching)
            cType = new ContentType(cType.Id);

            // Check if the doctype alias has changed as a result of either the user input or
            // the alias checking performed upon saving
            var docTypeAliasChanged = (string.Compare(originalDocTypeAlias, cType.Alias, true) != 0);
            var docTypeNameChanged = (string.Compare(originalDocTypeName, cType.Text, true) != 0);

            // Only if the doctype alias changed, cause a regeneration of the xml cache file since
            // the xml element names will need to be updated to reflect the new alias
            if (docTypeAliasChanged)
                RegenerateXmlCaches();

            bindDataGenericProperties(true);

            // we need to re-bind the alias as the SafeAlias method can have changed it
            txtAlias.Text = cType.Alias;

            RaiseBubbleEvent(new object(), ea);

            if (docTypeNameChanged)
                UpdateTreeNode();
        }
Ejemplo n.º 15
0
            public NodeTypeAddPropertyTypeControl(cms.businesslogic.ContentType dt, ContentTypeControl parent)
            {
                ctctrl = parent;
                this.Attributes.Add("width", "100%");
                HtmlTableRow  tr = new HtmlTableRow();
                HtmlTableCell td = new HtmlTableCell();

                td.InnerText = "Alias";
                tr.Cells.Add(td);

                td           = new HtmlTableCell();
                td.InnerText = "Navn";
                tr.Cells.Add(td);

                td           = new HtmlTableCell();
                td.InnerText = "Type";
                tr.Cells.Add(td);

                td           = new HtmlTableCell();
                td.InnerText = "Fane";
                tr.Cells.Add(td);

                td = new HtmlTableCell();
                tr.Cells.Add(td);

                this.Rows.Add(tr);
                tr = new HtmlTableRow();

                td = new HtmlTableCell();
                td.Controls.Add(AliasTxt);
                tr.Cells.Add(td);

                td = new HtmlTableCell();
                td.Controls.Add(NameTxt);
                tr.Cells.Add(td);

                td = new HtmlTableCell();
                td.Controls.Add(DataTypeDDL);
                tr.Cells.Add(td);

                td = new HtmlTableCell();
                td.Controls.Add(TabDDL);
                tr.Cells.Add(td);

                td = new HtmlTableCell();
                Button btn = new Button();

                td.Controls.Add(btn);
                btn.Text = "Opret";
                tr.Cells.Add(td);
                this.Rows.Add(tr);

                // Add create new PropertyType eventhandler
                btn.Click += new System.EventHandler(this.AddPropertyType);


                foreach (cms.businesslogic.ContentType.TabI t in dt.getVirtualTabs.ToList())
                {
                    ListItem li = new ListItem();
                    li.Value = t.Id.ToString();
                    li.Text  = t.Caption;
                    TabDDL.Items.Add(li);
                }
                ListItem lie = new ListItem();

                lie.Text  = "Egenskaber";
                lie.Value = "0";
                TabDDL.Items.Add(lie);

                foreach (cms.businesslogic.datatype.DataTypeDefinition DataType in cms.businesslogic.datatype.DataTypeDefinition.GetAll())
                {
                    ListItem li = new ListItem();
                    li.Value = DataType.Id.ToString();
                    li.Text  = DataType.Text;
                    DataTypeDDL.Items.Add(li);
                }
                _dt = dt;
            }