protected void btnBindModuleEditForm_Click(object sender, EventArgs e) { string tab = (string)ViewState["TabReference"]; PortalDefinition pd = PortalDefinition.Load(); PortalDefinition.Tab t = pd.GetTab(tab); string arg = Request.Form["pageArg"]; string moduleRef = string.Empty; string moduleType = string.Empty; string columnRef = string.Empty; string title = string.Empty; if (arg.Split("$".ToCharArray()).Length == 4) { moduleRef = arg.Split("$".ToCharArray())[0]; moduleType = arg.Split("$".ToCharArray())[1]; title = arg.Split("$".ToCharArray())[2]; columnRef = arg.Split("$".ToCharArray())[3]; } else { return; } PortalDefinition.Column column = pd.GetColumn(columnRef); if (moduleRef == null || moduleRef == string.Empty || moduleRef.ToLower() == "null") { module = PortalDefinition.Module.Create(); module.type = moduleType; module.title = title; moduleRef = module.reference; } else { module = new PortalDefinition.Module(); module.type = moduleType; module.title = title; module.reference = moduleRef; } if (module != null) { module.LoadModuleSettings(); module.LoadRuntimeProperties(); moduleSettings = module.moduleSettings; moduleRuntimeSettings = module.moduleRuntimeSettings; lblModuleType.Text = moduleType; txtReference.Text = module.reference; rptRuntimeProperties.DataSource = module.GetRuntimePropertiesSource(true); rptRuntimeProperties.DataBind(); upEditModuleForm.Update(); } }
internal static Control GetEditControl(Page p) { PortalDefinition.Tab tab = PortalDefinition.GetCurrentTab(); PortalDefinition.Module m = tab.GetModule(p.Request["ModuleRef"]); m.LoadModuleSettings(); Module em = null; if (m.moduleSettings != null) { // Module Settings are present, use custom ascx Control em = (Module)p.LoadControl(Config.GetModuleVirtualPath(m.type) + m.moduleSettings.editCtrl); } else { // Use default ascx control (Edit[type].ascx) em = (Module)p.LoadControl(Config.GetModuleVirtualPath(m.type) + "Edit" + m.type + ".ascx"); } // Initialize the control em.InitModule( tab.reference, m.reference, m.type, Config.GetModuleVirtualPath(m.type), true); return(em); }
/// <summary> /// Lưu các thiết lập của Module /// </summary> /// <param name="sender"></param> /// <param name="args"></param> protected void OnSave(object sender, EventArgs args) { try { if (Page.IsValid) { // Nạp cấu trúc Portal PortalDefinition pd = PortalDefinition.Load(); PortalDefinition.Tab t = pd.GetTab(CurrentTabReference); // Truy xuất đến cấu trúc Module hiện thời PortalDefinition.Module m = t.GetModule(CurrentReference); // Thay đổi các thông số tương ứng m.reference = txtReference.Text; m.title = HttpUtility.HtmlEncode(txtTitle.Text); m.type = cboPath.SelectedValue + "/" + cbType.SelectedItem.Value; m.roles = RolesCtrl.GetData(); m.CacheTime = Convert.ToInt32(txtCacheTime.Text); // Lưu các thông số và cấu trúc pd.Save(); // Lưu các thông số khi thực thi của module m.LoadModuleSettings(); m.LoadRuntimeProperties(); for (int _intPropertyCount = 0; _intPropertyCount < rptRuntimeProperties.Items.Count; _intPropertyCount++) { HtmlInputHidden _hihPropertyName = rptRuntimeProperties.Items[_intPropertyCount].FindControl("lblPropertyName") as HtmlInputHidden; TextBox _txtPropertyValue = rptRuntimeProperties.Items[_intPropertyCount].FindControl("txtPropertyValue") as TextBox; DropDownList _drdAvaiableValues = rptRuntimeProperties.Items[_intPropertyCount].FindControl("drdAvaiableValues") as DropDownList; if (_hihPropertyName != null && _txtPropertyValue != null) { string _strPropertyValue = _txtPropertyValue.Visible ? _txtPropertyValue.Text : _drdAvaiableValues.SelectedValue; m.moduleRuntimeSettings.SetRuntimePropertyValue(true, _hihPropertyName.Value, _strPropertyValue); } } m.SaveRuntimeSettings(); CurrentReference = m.reference; // Phát sinh sự kiện lưu thông tin thành công if (Save != null) { Save(this, new EventArgs()); } } } catch (Exception e) { lbError.Text = e.Message; } }
protected void btnSaveModule_Click(object sender, EventArgs e) { string tab = (string)ViewState["TabReference"]; PortalDefinition.Module module; string arg = Request.Form["pageArg"]; string moduleRef = string.Empty; string moduleType = string.Empty; string moduleTitle = string.Empty; string columnRef = string.Empty; if (arg.Split("$".ToCharArray()).Length == 4) { moduleRef = arg.Split("$".ToCharArray())[0]; moduleType = arg.Split("$".ToCharArray())[1]; moduleTitle = arg.Split("$".ToCharArray())[2]; columnRef = arg.Split("$".ToCharArray())[3]; } else { return; } if (string.IsNullOrEmpty(moduleRef)) { return; } module = new PortalDefinition.Module(); module.reference = moduleRef; module.type = moduleType; if (module != null) { // Lưu các thông số khi thực thi của module module.LoadModuleSettings(); module.LoadRuntimeProperties(); for (int _intPropertyCount = 0; _intPropertyCount < rptRuntimeProperties.Items.Count; _intPropertyCount++) { HtmlInputHidden _hihPropertyName = rptRuntimeProperties.Items[_intPropertyCount].FindControl("lblPropertyName") as HtmlInputHidden; TextBox _txtPropertyValue = rptRuntimeProperties.Items[_intPropertyCount].FindControl("txtPropertyValue") as TextBox; DropDownList _drdAvaiableValues = rptRuntimeProperties.Items[_intPropertyCount].FindControl("drdAvaiableValues") as DropDownList; if (_hihPropertyName != null && _txtPropertyValue != null) { string _strPropertyValue = _txtPropertyValue.Visible ? _txtPropertyValue.Text : _drdAvaiableValues.SelectedValue; module.moduleRuntimeSettings.SetRuntimePropertyValue(true, _hihPropertyName.Value, _strPropertyValue); } } module.SaveRuntimeSettings(); } }
public void LoadData(string tabRef, string moduleRef) { CurrentTabReference = tabRef; CurrentReference = moduleRef; PortalDefinition pd = PortalDefinition.Load(); PortalDefinition.Tab t = pd.GetTab(CurrentTabReference); _module = t.GetModule(CurrentReference); // Load Module Common Properties txtTitle.Text = HttpUtility.HtmlDecode(_module.title); txtReference.Text = _module.reference; txtCacheTime.Text = _module.CacheTime.ToString(); cboPath.ClearSelection(); cbType.ClearSelection(); //lay ve duong dan den file module tinh tu RootModule string strModule = _module.type, strPth = ""; string[] strModulePath = strModule.Split("/".ToCharArray()); if (strModulePath.Length == 2) { strPth = strModulePath[0]; strModule = strModulePath[1]; } ListItem pli = cboPath.Items.FindByValue(strPth); if (pli != null) { pli.Selected = true; } //goi load du lieu cho type LoadModuleTypes(strPth); ListItem li = cbType.Items.FindByValue(strModule); if (li != null) { li.Selected = true; } // Load Roles List RolesCtrl.LoadData(_module.roles); RolesCtrl.ShowRoleType = false; // Load Module's Runtime Properties _module.LoadModuleSettings(); _module.LoadRuntimeProperties(); rptRuntimeProperties.DataSource = _module.GetRuntimePropertiesSource(true); rptRuntimeProperties.DataBind(); }