From eea60fc63c97a5817d96ae6f2df740ff7e25cfef Mon Sep 17 00:00:00 2001 From: "agrath@gmail.com" Date: Mon, 11 Jun 2012 11:10:06 -0100 Subject: [PATCH] SyncTree for DataType deeplink --- .../developer/DataTypes/editDatatype.aspx.cs | 158 +++++++++--------- 1 file changed, 81 insertions(+), 77 deletions(-) diff --git a/umbraco/presentation/umbraco/developer/DataTypes/editDatatype.aspx.cs b/umbraco/presentation/umbraco/developer/DataTypes/editDatatype.aspx.cs index dca6316300..b583a7cd76 100644 --- a/umbraco/presentation/umbraco/developer/DataTypes/editDatatype.aspx.cs +++ b/umbraco/presentation/umbraco/developer/DataTypes/editDatatype.aspx.cs @@ -13,34 +13,35 @@ using umbraco.IO; namespace umbraco.cms.presentation.developer { - public partial class editDatatype : BasePages.UmbracoEnsuredPage - { - public editDatatype() - { + public partial class editDatatype : BasePages.UmbracoEnsuredPage + { + public editDatatype() + { CurrentApp = BusinessLogic.DefaultApps.developer.ToString(); - } - protected ImageButton save; - private cms.businesslogic.datatype.DataTypeDefinition dt; - cms.businesslogic.datatype.controls.Factory f; - private int _id = 0; - private interfaces.IDataPrevalue _prevalue; + } + protected ImageButton save; + private cms.businesslogic.datatype.DataTypeDefinition dt; + cms.businesslogic.datatype.controls.Factory f; + private int _id = 0; + private interfaces.IDataPrevalue _prevalue; - protected void Page_Load(object sender, System.EventArgs e) - { + protected void Page_Load(object sender, System.EventArgs e) + { pp_name.Text = ui.Text("name"); pp_renderControl.Text = ui.Text("renderControl"); pane_settings.Text = ui.Text("settings"); - pp_guid.Text = ui.Text("guid"); + pp_guid.Text = ui.Text("guid"); - _id = int.Parse(Request.QueryString["id"]); - dt = cms.businesslogic.datatype.DataTypeDefinition.GetDataTypeDefinition(_id); - - - f = new cms.businesslogic.datatype.controls.Factory(); + _id = int.Parse(Request.QueryString["id"]); + dt = cms.businesslogic.datatype.DataTypeDefinition.GetDataTypeDefinition(_id); - if (!IsPostBack) { + + f = new cms.businesslogic.datatype.controls.Factory(); + + if (!IsPostBack) + { txtName.Text = dt.Text; SortedList datatypes = new SortedList(); @@ -51,57 +52,60 @@ namespace umbraco.cms.presentation.developer IDictionaryEnumerator ide = datatypes.GetEnumerator(); string datatTypeId = dt.DataType != null ? dt.DataType.Id.ToString() : String.Empty; - while (ide.MoveNext()) { + while (ide.MoveNext()) + { ListItem li = new ListItem(); li.Text = ide.Key.ToString().Substring(0, ide.Key.ToString().IndexOf("|")); li.Value = ide.Value.ToString(); - + if (!String.IsNullOrEmpty(datatTypeId) && li.Value.ToString() == datatTypeId) li.Selected = true; - ddlRenderControl.Items.Add(li); + ddlRenderControl.Items.Add(li); } - ClientTools - .SetActiveTreeType(TreeDefinitionCollection.Instance.FindTree().Tree.Alias) - .SyncTree(_id.ToString(), false); - + ClientTools + .SetActiveTreeType(TreeDefinitionCollection.Instance.FindTree().Tree.Alias) + .SyncTree("-1,init," + _id.ToString(), false); + } if (dt.DataType != null) - litGuid.Text = dt.DataType.Id.ToString(); + litGuid.Text = dt.DataType.Id.ToString(); Panel1.Text = umbraco.ui.Text("edit") + " datatype: " + dt.Text; - insertPrevalueEditor(); - } + insertPrevalueEditor(); + } + + private void insertPrevalueEditor() + { + try + { + if (ddlRenderControl.SelectedIndex >= 0) + { + interfaces.IDataType o = f.DataType(new Guid(ddlRenderControl.SelectedValue)); + + o.DataTypeDefinitionId = dt.Id; + _prevalue = o.PrevalueEditor; - private void insertPrevalueEditor() { - try - { - if (ddlRenderControl.SelectedIndex >= 0) - { - interfaces.IDataType o = f.DataType(new Guid(ddlRenderControl.SelectedValue)); - - o.DataTypeDefinitionId = dt.Id; - _prevalue = o.PrevalueEditor; - if (o.PrevalueEditor.Editor != null) - plcEditorPrevalueControl.Controls.Add(o.PrevalueEditor.Editor); - } - else - { - plcEditorPrevalueControl.Controls.Add(new LiteralControl("No editor control selected")); - } - } - catch {} - - } + plcEditorPrevalueControl.Controls.Add(o.PrevalueEditor.Editor); + } + else + { + plcEditorPrevalueControl.Controls.Add(new LiteralControl("No editor control selected")); + } + } + catch { } - protected void save_click(object sender, System.Web.UI.ImageClickEventArgs e) { - // save prevalues; - if (_prevalue != null) - _prevalue.Save(); + } - dt.Text = txtName.Text; - - dt.DataType = f.DataType(new Guid(ddlRenderControl.SelectedValue)); + protected void save_click(object sender, System.Web.UI.ImageClickEventArgs e) + { + // save prevalues; + if (_prevalue != null) + _prevalue.Save(); + + dt.Text = txtName.Text; + + dt.DataType = f.DataType(new Guid(ddlRenderControl.SelectedValue)); System.Web.HttpRuntime.Cache.Remove(string.Format("UmbracoDataTypeDefinition{0}", dt.UniqueId)); @@ -109,36 +113,36 @@ namespace umbraco.cms.presentation.developer this.speechBubble(BasePages.BasePage.speechBubbleIcon.save, ui.Text("speechBubbles", "dataTypeSaved", null), ""); //Response.Redirect("editDataType.aspx?id=" + _id); - } + } - #region Web Form Designer generated code + #region Web Form Designer generated code - override protected void OnInit(EventArgs e) - { + override protected void OnInit(EventArgs e) + { save = Panel1.Menu.NewImageButton(); save.ID = "save"; save.Click += new System.Web.UI.ImageClickEventHandler(save_click); save.ImageUrl = SystemDirectories.Umbraco + "/images/editor/save.gif"; Panel1.hasMenu = true; - - // - // CODEGEN: This call is required by the ASP.NET Web Form Designer. - // - InitializeComponent(); - base.OnInit(e); - } - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - } - #endregion - } + // + // CODEGEN: This call is required by the ASP.NET Web Form Designer. + // + InitializeComponent(); + base.OnInit(e); + } + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + + } + #endregion + } }