void nameElem_Click(object sender, EventArgs e) { // Code name validation string err = new Validator().IsIdentificator(nameElem.CodeName, GetString("general.erroridentificatorformat")).Result; if (err != String.Empty) { lblError.Visible = true; lblError.Text = err; return; } // Checking for duplicate items DataSet ds = AlternativeFormInfoProvider.GetAlternativeForms("FormName='" + SqlHelperClass.GetSafeQueryString(nameElem.CodeName, false) + "' AND FormClassID=" + classId, null); if (!DataHelper.DataSourceIsEmpty(ds)) { lblError.Visible = true; lblError.Text = GetString("general.codenameexists"); return; } // Create new info object AlternativeFormInfo afi = new AlternativeFormInfo(); afi.FormID = 0; afi.FormGUID = Guid.NewGuid(); afi.FormClassID = classId; afi.FormName = nameElem.CodeName; afi.FormDisplayName = nameElem.DisplayName; AlternativeFormInfoProvider.SetAlternativeFormInfo(afi); URLHelper.Redirect("AlternativeForms_Frameset.aspx?classid=" + classId + "&altformid=" + afi.FormID + "&saved=1"); }
protected void Page_Load(object sender, EventArgs e) { // Get alternative form ID from URL int altFormId = QueryHelper.GetInteger("altformid", 0); CurrentMaster.BodyClass += " FieldEditorBody"; // Get alternative form AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(altFormId); if (afi != null) { // Get name of the edited class string className = DataClassInfoProvider.GetClassName(afi.FormClassID); // Initialize field editor altFormFieldEditor.Mode = FieldEditorModeEnum.SystemTable; altFormFieldEditor.ShowFieldVisibility = (className.ToLowerCSafe().Trim() == SiteObjectType.USER.ToLowerCSafe()); altFormFieldEditor.AlternativeFormID = altFormId; altFormFieldEditor.DisplayedControls = FieldEditorControlsEnum.SystemTables; if (className.ToLowerCSafe().Trim() == PredefinedObjectType.SKU) { altFormFieldEditor.ShowInheritanceSettings = true; } } }
/// <summary> /// Saves form layout. /// </summary> protected void SaveData() { bool saved = false; bool deleted = false; // Get form layout string layout = FormLayout; // Delete layout if editor is hidden if (!CustomLayoutEnabled) { deleted = LayoutIsSet; layout = null; } if (DataClassID > 0) { if (!IsAlternative) { DataClassInfo dci = DataClassInfoProvider.GetDataClass(DataClassID); CMSPage.EditedObject = dci; if (dci != null) { // Update dataclass form layout and save object dci.ClassFormLayout = layout; DataClassInfoProvider.SetDataClass(dci); saved = true; } } else { AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(ObjectID); CMSPage.EditedObject = afi; if (afi != null) { // Update alternative form layout and save object afi.FormLayout = layout; AlternativeFormInfoProvider.SetAlternativeFormInfo(afi); saved = true; } } // Display info if successfully saved if (saved) { if (!deleted) { ShowChangesSaved(); } else { ShowConfirmation(GetString("DocumentType_Edit_Form.LayoutDeleted")); } } } else { CMSPage.EditedObject = null; } }
/// <summary> /// Loads form layout of document, bizform, systemtable or alternative form. /// </summary> protected void LoadData() { if (DataClassID > 0) { if (!IsAlternative) { DataClassInfo dci = DataClassInfoProvider.GetDataClass(DataClassID); CMSPage.EditedObject = dci; if (dci != null) { // Load layout of document, bizform or systemtable FormLayout = dci.ClassFormLayout; } } else { AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(ObjectID); CMSPage.EditedObject = afi; if (afi != null) { // Load layout of alternative form FormLayout = afi.FormLayout; } } } else { CMSPage.EditedObject = null; } }
protected void Page_Load(object sender, EventArgs e) { altFormId = QueryHelper.GetInteger("altformid", 0); // Validate AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(altFormId); EditedObject = afi; if (afi == null) { return; } // Init values if (!RequestHelper.IsPostBack()) { nameElem.DisplayName = afi.FormDisplayName; nameElem.CodeName = afi.FormName; } nameElem.ShowSubmitButton = true; nameElem.Click += new EventHandler(nameElem_Click); if (QueryHelper.GetInteger("saved", 0) == 1) { lblInfo.Visible = true; lblInfo.Text = GetString("general.changessaved"); // Reload header if changes were saved ScriptHelper.RefreshTabHeader(Page, null); } }
/// <summary> /// Fills alternative form list according to selection in class CMSDropDownList. /// </summary> protected void LoadAltFormsList() { int formClassId = ValidationHelper.GetInteger(drpClass.SelectedValue, 0); DataSet ds = AlternativeFormInfoProvider.GetAlternativeForms("FormClassID=" + formClassId, "FormName"); lstAlternativeForms.Items.Clear(); if (!DataHelper.DataSourceIsEmpty(ds)) { foreach (DataRow dr in ds.Tables[0].Rows) { AlternativeFormInfo afi = new AlternativeFormInfo(dr); if (afi != null) { if ((afi.FormDisplayName != String.Empty) && (afi.FormName != String.Empty)) { lstAlternativeForms.Items.Add(new ListItem(ResHelper.LocalizeString(afi.FormDisplayName), afi.FullName)); } } } lstAlternativeForms.SelectedValue = null; lstAlternativeForms.DataBind(); } ds.Dispose(); }
/// <summary> /// Initializes the control properties. /// </summary> protected void SetupControl() { this.myProfile.IsLiveSite = true; if (this.StopProcessing) { this.myProfile.StopProcessing = true; } else { // Get alternative form info AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(AlternativeFormName); if (afi != null) { this.myProfile.AlternativeFormName = this.AlternativeFormName; this.myProfile.AllowEditVisibility = this.AllowEditVisibility; } else { lblError.Text = String.Format(GetString("altform.formdoesntexists"), AlternativeFormName); lblError.Visible = true; plcContent.Visible = false; } } }
/// <summary> /// Click event - updates new values. /// </summary> /// <param name="sender">Sender</param> /// <param name="e">Params</param> protected void nameElem_Click(object sender, EventArgs e) { // Check 'EditForm' permission if (!CMSContext.CurrentUser.IsAuthorizedPerResource("cms.form", "EditForm")) { RedirectToCMSDeskAccessDenied("cms.form", "EditForm"); } // Code name validation string err = new Validator().IsIdentificator(nameElem.CodeName, GetString("general.erroridentificatorformat")).Result; if (err != String.Empty) { lblError.Visible = true; lblError.Text = err; lblInfo.Visible = false; return; } // Validate form id AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(altFormId); EditedObject = afi; if (afi == null) { return; } // Checking for duplicate items DataSet ds = AlternativeFormInfoProvider.GetAlternativeForms("FormName='" + SqlHelperClass.GetSafeQueryString(nameElem.CodeName, false) + "' AND FormClassID=" + afi.FormClassID, null); if (!DataHelper.DataSourceIsEmpty(ds)) { if (!((ds.Tables.Count == 1) && (ds.Tables[0].Rows.Count == 1) && ( ValidationHelper.GetInteger(ds.Tables[0].Rows[0]["FormID"], 0) == altFormId))) { lblError.Visible = true; lblError.Text = GetString("general.codenameexists"); lblInfo.Visible = false; return; } } afi.FormDisplayName = nameElem.DisplayName; afi.FormName = nameElem.CodeName; AlternativeFormInfoProvider.SetAlternativeFormInfo(afi); // Required to log staging task, alternative form is not binded to bizform as child using (CMSActionContext context = new CMSActionContext()) { context.CreateVersion = false; // Log synchronization BizFormInfo bfi = BizFormInfoProvider.GetBizFormInfo(formId); SynchronizationHelper.LogObjectChange(bfi, TaskTypeEnum.UpdateObject); } URLHelper.Redirect("AlternativeForms_Edit_General.aspx?altformid=" + altFormId + "&formid=" + formId + "&saved=1"); }
/// <summary> /// Fills alternative form list according to selection in class CMSDropDownList. /// </summary> protected void LoadAltFormsList() { int formClassId = ValidationHelper.GetInteger(drpClass.SelectedValue, 0); DataSet ds = AlternativeFormInfoProvider.GetAlternativeForms("FormClassID=" + formClassId, "FormName"); lstAlternativeForms.Items.Clear(); if (!DataHelper.DataSourceIsEmpty(ds)) { foreach (DataRow dr in ds.Tables[0].Rows) { AlternativeFormInfo afi = new AlternativeFormInfo(dr); if (afi != null) { if ((afi.FormDisplayName != String.Empty) && (afi.FormName != String.Empty)) { lstAlternativeForms.Items.Add(new ListItem(ResHelper.LocalizeString(afi.FormDisplayName), afi.FullName)); } } } lstAlternativeForms.SelectedValue = null; lstAlternativeForms.DataBind(); } ds.Dispose(); }
/// <summary> /// Initializes the control properties. /// </summary> protected void SetupControl() { myProfile.IsLiveSite = true; if (StopProcessing) { myProfile.StopProcessing = true; } else { // Get alternative form info AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(AlternativeFormName); if (afi != null) { myProfile.AlternativeFormName = AlternativeFormName; myProfile.AllowEditVisibility = AllowEditVisibility; myProfile.AfterSaveRedirectURL = AfterSaveRedirectURL; myProfile.SubmitButtonResourceString = SubmitButtonResourceString; myProfile.FormCSSClass = FormCSSClass; myProfile.MarkRequiredFields = MarkRequiredFields; myProfile.UseColonBehindLabel = UseColonBehindLabel; myProfile.ValidationErrorMessage = GetString("general.errorvalidationerror"); } else { lblError.Text = String.Format(GetString("altform.formdoesntexists"), AlternativeFormName); lblError.Visible = true; plcContent.Visible = false; } } }
/// <summary> /// Loads form layout of document, bizform, systemtable or alternative form. /// </summary> protected void LoadData() { if (DataClassID > 0) { if (!IsAlternative) { classInfo = DataClassInfoProvider.GetDataClassInfo(DataClassID); UIContext.EditedObject = classInfo; } else { altFormInfo = AlternativeFormInfoProvider.GetAlternativeFormInfo(ObjectID); UIContext.EditedObject = altFormInfo; } if (!RequestHelper.IsPostBack()) { LayoutTypeEnum layoutType = LayoutTypeEnum.Html; InitTypeSelector(); if (!IsAlternative) { if (classInfo != null) { // Load layout of document, bizform or systemtable FormLayout = classInfo.ClassFormLayout; layoutType = classInfo.ClassFormLayoutType; } } else { if (altFormInfo != null) { // Load layout of alternative form FormLayout = altFormInfo.FormLayout; layoutType = altFormInfo.FormLayoutType; } } radCustomLayout.Checked = LayoutIsSet; drpLayoutType.SelectedValue = layoutType.ToString(); // Switch visibility of layout editors based on layout type plcHTML.Visible = drpLayoutType.SelectedValue.EqualsCSafe(LayoutTypeEnum.Html.ToString(), StringComparison.InvariantCultureIgnoreCase); plcASCX.Visible = !plcHTML.Visible; } if (radCustomLayout.Checked) { InitDialog(); } radAutoLayout.Checked = !radCustomLayout.Checked; } else { UIContext.EditedObject = null; } }
/// <summary> /// Initializes the control properties. /// </summary> protected void SetupControl() { if (this.StopProcessing) { // Do nothing } else { // Set default visibility pnlRegForm.Visible = true; lblInfo.Visible = false; // WAI validation lblCaptcha.AssociatedControlClientID = captchaElem.InputClientID; // Get alternative form info AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(AlternativeForm); if (afi != null) { formUser.AlternativeFormFullName = this.AlternativeForm; formUser.Info = new UserInfo(); formUser.Info.ClearData(); formUser.ClearAfterSave = false; formUser.Visible = true; formUser.ValidationErrorMessage = this.RegistrationErrorMessage; formUser.IsLiveSite = true; // Reload form if not in PortalEngine environment and if post back if ((this.StandAlone) && (RequestHelper.IsPostBack())) { formUser.ReloadData(); } captchaElem.Visible = this.DisplayCaptcha; lblCaptcha.Visible = this.DisplayCaptcha; plcCaptcha.Visible = this.DisplayCaptcha; btnRegister.Text = this.ButtonText; btnRegister.Click += btnRegister_Click; formUser.OnBeforeSave += formUser_OnBeforeSave; lblInfo.CssClass = "EditingFormInfoLabel"; lblError.CssClass = "EditingFormErrorLabel"; if (formUser.BasicForm != null) { // Set the live site context formUser.BasicForm.ControlContext.ContextName = CMS.SiteProvider.ControlContext.LIVE_SITE; } } else { lblError.Text = String.Format(GetString("altform.formdoesntexists"), AlternativeForm); lblError.Visible = true; pnlRegForm.Visible = false; } } }
protected void Page_Load(object sender, EventArgs e) { AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(mAlternativeFormId); UIContext.EditedObject = afi; if (afi == null) { return; } DataClassInfo dci = DataClassInfoProvider.GetDataClassInfo(afi.FormClassID); if (dci == null) { ShowError(GetString("general.invalidid")); } else { string formDef = dci.ClassFormDefinition; string coupledClassName = null; if (afi.FormCoupledClassID > 0) { // If coupled class is defined combine form definitions DataClassInfo coupledDci = DataClassInfoProvider.GetDataClassInfo(afi.FormCoupledClassID); if (coupledDci != null) { formDef = FormHelper.MergeFormDefinitions(formDef, coupledDci.ClassFormDefinition); coupledClassName = coupledDci.ClassName; } } var resource = ResourceInfo.Provider.Get(QueryHelper.GetInteger("moduleid", 0)); // Allow development mode only for non-system tables fieldEditor.DevelopmentMode = (resource != null) && resource.IsEditable; // Set original form definition fieldEditor.OriginalFormDefinition = formDef; // Merge class and alternative form definitions formDef = FormHelper.MergeFormDefinitions(formDef, afi.FormDefinition); // Initialize field editor mode and load form definition fieldEditor.AlternativeFormFullName = afi.FullName; fieldEditor.FormDefinition = formDef; // Specify set of controls which should be offered for field types fieldEditor.DisplayedControls = mDisplayedControls; fieldEditor.ClassName = dci.ClassName; fieldEditor.CoupledClassName = coupledClassName; // Handle definition update (move up, move down, delete, OK button) fieldEditor.OnAfterDefinitionUpdate += fieldEditor_OnAfterDefinitionUpdate; fieldEditor.OnFieldNameChanged += fieldEditor_OnFieldNameChanged; } }
void nameElem_Click(object sender, EventArgs e) { // Check 'EditForm' permission if (!CMSContext.CurrentUser.IsAuthorizedPerResource("cms.form", "EditForm")) { RedirectToCMSDeskAccessDenied("cms.form", "EditForm"); } // Code name validation string err = new Validator().IsIdentificator(nameElem.CodeName, GetString("general.erroridentificatorformat")).Result; if (err != String.Empty) { lblError.Visible = true; lblError.Text = err; return; } // Checking for duplicate items DataSet ds = AlternativeFormInfoProvider.GetAlternativeForms("FormName='" + nameElem.CodeName + "' AND FormClassID=" + classId, null); if (!DataHelper.DataSourceIsEmpty(ds)) { lblError.Visible = true; lblError.Text = GetString("general.codenameexists"); return; } // Create new info object AlternativeFormInfo afi = new AlternativeFormInfo(); afi.FormID = 0; afi.FormGUID = Guid.NewGuid(); afi.FormClassID = classId; afi.FormName = nameElem.CodeName; afi.FormDisplayName = nameElem.DisplayName; AlternativeFormInfoProvider.SetAlternativeFormInfo(afi); // Required to log staging task, alternative form is not binded to bizform as child using (CMSActionContext context = new CMSActionContext()) { context.CreateVersion = false; // Log synchronization SynchronizationHelper.LogObjectChange(bfi, TaskTypeEnum.UpdateObject); } URLHelper.Redirect("AlternativeForms_Frameset.aspx?formid=" + formId.ToString() + "&altformid=" + afi.FormID + "&saved=1"); }
/// <summary> /// After form definition update event handler. /// </summary> private void fieldEditor_OnAfterDefinitionUpdate(object sender, EventArgs e) { // Perform OnBeforeSave if defined if (OnBeforeSave != null) { OnBeforeSave(this, EventArgs.Empty); } // Stop processing if set from outside if (StopProcessing) { return; } // Get alternative form info object and data class info object AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(mAlternativeFormId); if (afi != null) { DataClassInfo dci = DataClassInfoProvider.GetDataClassInfo(afi.FormClassID); if (dci != null) { string formDefinition = dci.ClassFormDefinition; if (afi.FormCoupledClassID > 0) { // Combine form definitions of class and its coupled class DataClassInfo coupledDci = DataClassInfoProvider.GetDataClassInfo(afi.FormCoupledClassID); if (coupledDci != null) { formDefinition = FormHelper.MergeFormDefinitions(formDefinition, coupledDci.ClassFormDefinition); } } // Compare original and alternative form definitions - store differences only afi.FormDefinition = FormHelper.GetFormDefinitionDifference(formDefinition, fieldEditor.FormDefinition, true); // Update alternative form info in database AlternativeFormInfoProvider.SetAlternativeFormInfo(afi); } else { ShowError(GetString("general.invalidid")); } } // Perform OnAfterSave if defined if (OnAfterSave != null) { OnAfterSave(this, EventArgs.Empty); } }
protected void form_OnBeforeSave(object sender, EventArgs e) { // Set parent's class ID AlternativeFormInfo info = (AlternativeFormInfo)form.EditedObject; DataClassInfo dci = DataClassInfoProvider.GetDataClass(SiteObjectType.USERSETTINGS); if (dci != null) { info.FormCoupledClassID = (chkCombineUserSettings.Checked) ? dci.ClassID : 0; } info.FormClassID = classId; }
/// <summary> /// Initializes the control properties. /// </summary> protected void SetupControl() { if (StopProcessing) { // Do nothing } else { // Get group info GroupInfo gi = null; if (((GroupName == "") || GroupName == GroupInfoProvider.CURRENT_GROUP) && (CommunityContext.CurrentGroup != null)) { gi = CommunityContext.CurrentGroup; } else { gi = GroupInfoProvider.GetGroupInfo(GroupName, SiteContext.CurrentSiteName); } if (gi != null) { // Get alternative form info AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(AlternativeFormName); if (afi != null) { // Initialize data form formElem.Visible = true; formElem.Info = gi; formElem.AlternativeFormFullName = AlternativeFormName; formElem.SubmitButton.Visible = false; formElem.IsLiveSite = true; } else { lblError.Text = String.Format(GetString("altform.formdoesntexists"), AlternativeFormName); lblError.Visible = true; plcContent.Visible = false; } } else { // Hide data form formElem.Visible = false; lblNoProfile.Visible = true; lblNoProfile.Text = NoProfileText; } } }
/// <summary> /// Click event - updates new values. /// </summary> /// <param name="sender">Sender</param> /// <param name="e">Params</param> void btnOK_Click(object sender, EventArgs e) { // Code name validation string err = new Validator().IsIdentificator(txtCodeName.Text, GetString("general.erroridentificatorformat")).Result; if (err != String.Empty) { lblError.Visible = true; lblError.Text = err; lblInfo.Visible = false; return; } // Validate form id AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(altFormId); EditedObject = afi; if (afi == null) { return; } // Checking for duplicate items DataSet ds = AlternativeFormInfoProvider.GetAlternativeForms("FormName='" + SqlHelperClass.GetSafeQueryString(txtCodeName.Text, false) + "' AND FormClassID=" + afi.FormClassID, null); if (!DataHelper.DataSourceIsEmpty(ds)) { if (!((ds.Tables.Count == 1) && (ds.Tables[0].Rows.Count == 1) && ( ValidationHelper.GetInteger(ds.Tables[0].Rows[0]["FormID"], 0) == altFormId))) { lblError.Visible = true; lblError.Text = GetString("general.codenameexists"); lblInfo.Visible = false; return; } } afi.FormDisplayName = txtDisplayName.Text; afi.FormName = txtCodeName.Text; AlternativeFormInfoProvider.SetAlternativeFormInfo(afi); lblInfo.Visible = true; lblInfo.Text = GetString("general.changessaved"); // Reload header if changes were saved ScriptHelper.RefreshTabHeader(Page, null); }
protected void Page_Load(object sender, EventArgs e) { AlternativeFormInfo editedObject = (AlternativeFormInfo)EditedObject; // Check if the 'Combine With User Settings' feature should be available if (editedObject.FormClassID > 0) { string className = DataClassInfoProvider.GetClassName(editedObject.FormClassID); if (className != null && (className.ToLowerCSafe().Trim() == SiteObjectType.USER.ToLowerCSafe())) { pnlCombineUserSettings.Visible = true; chkCombineUserSettings.Checked = (editedObject.FormCoupledClassID > 0); } } form.OnAfterSave += (s, ea) => ScriptHelper.RefreshTabHeader(Page, null); }
protected void Page_Load(object sender, EventArgs e) { // Get alternative form ID from URL int altFormId = QueryHelper.GetInteger("altformid", 0); CurrentMaster.BodyClass += " FieldEditorBody"; // Get alternative form AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(altFormId); if (afi != null) { // Initialize field editor altFormFieldEditor.AlternativeFormID = altFormId; } ScriptHelper.HideVerticalTabs(this); }
protected void Page_Load(object sender, EventArgs e) { // Check 'ReadForm' permission if (!CMSContext.CurrentUser.IsAuthorizedPerResource("cms.form", "ReadForm")) { RedirectToCMSDeskAccessDenied("cms.form", "ReadForm"); } int formId = QueryHelper.GetInteger("formid", 0); AlternativeFormInfo afi = EditedObject as AlternativeFormInfo; // Set Breadcrumbs InitBreadcrumbs(2); SetBreadcrumb(0, GetString("altforms.listlink"), ResolveUrl("~/CMSModules/BizForms/Tools/AlternativeForms/AlternativeForms_List.aspx?formid=" + formId), "BizFormContent", null); SetBreadcrumb(1, afi.FormDisplayName, null, null, null); InitalizeMenu(afi.FormID, formId); }
protected void Page_Load(object sender, EventArgs e) { AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(mAlternativeFormId); CMSPage.EditedObject = afi; if (afi != null) { DataClassInfo dci = DataClassInfoProvider.GetDataClass(afi.FormClassID); if (dci != null) { string formDef = dci.ClassFormDefinition; string coupledClassName = null; if (afi.FormCoupledClassID > 0) { // If coupled class is defined combine form definitions DataClassInfo coupledDci = DataClassInfoProvider.GetDataClass(afi.FormCoupledClassID); if (coupledDci != null) { formDef = FormHelper.MergeFormDefinitions(formDef, coupledDci.ClassFormDefinition, true); coupledClassName = coupledDci.ClassName; } } // Merge class and alternative form definitions formDef = FormHelper.MergeFormDefinitions(formDef, afi.FormDefinition); // Initialize field editor mode and load form definition fieldEditor.IsAlternativeForm = true; fieldEditor.AlternativeFormFullName = afi.FullName; fieldEditor.FormDefinition = formDef; // Specify set of controls which should be offered for field types fieldEditor.DisplayedControls = mDisplayedControls; fieldEditor.ClassName = dci.ClassName; fieldEditor.CoupledClassName = coupledClassName; // Handle definition update (move up, move down, delete, OK button) fieldEditor.OnAfterDefinitionUpdate += fieldEditor_OnAfterDefinitionUpdate; } else { ShowErrorMessage(); } } }
void btnOK_Click(object sender, EventArgs e) { // Code name validation string err = new Validator().IsIdentificator(this.txtCodeName.Text, GetString("general.erroridentificatorformat")).Result; if (err != String.Empty) { lblError.Visible = true; lblError.Text = err; return; } // Checking for duplicate items DataSet ds = AlternativeFormInfoProvider.GetAlternativeForms("FormName='" + SqlHelperClass.GetSafeQueryString(this.txtCodeName.Text, false) + "' AND FormClassID=" + classId, null); if (!DataHelper.DataSourceIsEmpty(ds)) { lblError.Visible = true; lblError.Text = GetString("general.codenameexists"); return; } // Create new info object AlternativeFormInfo afi = new AlternativeFormInfo(); afi.FormID = 0; afi.FormGUID = Guid.NewGuid(); afi.FormClassID = classId; afi.FormName = this.txtCodeName.Text; afi.FormDisplayName = this.txtDisplayName.Text; DataClassInfo dci = DataClassInfoProvider.GetDataClass(SiteObjectType.USERSETTINGS); if (dci != null) { afi.FormCoupledClassID = (this.chkCombineUserSettings.Checked) ? dci.ClassID : 0; } AlternativeFormInfoProvider.SetAlternativeFormInfo(afi); URLHelper.Redirect("Frameset.aspx?classid=" + classId + "&altformid=" + afi.FormID + "&saved=1"); }
protected void nameElem_Click(object sender, EventArgs e) { // Code name validation string err = new Validator().IsIdentificator(nameElem.CodeName, GetString("general.erroridentificatorformat")).Result; if (err != String.Empty) { lblError.Visible = true; lblError.Text = err; return; } // Checking for duplicate items DataSet ds = AlternativeFormInfoProvider.GetAlternativeForms("FormName='" + SqlHelperClass.GetSafeQueryString(nameElem.CodeName, false) + "' AND FormClassID=" + classId, null); if (!DataHelper.DataSourceIsEmpty(ds)) { lblError.Visible = true; lblError.Text = GetString("general.codenameexists"); return; } // Create new info object AlternativeFormInfo alternativeFormInfo = new AlternativeFormInfo(); alternativeFormInfo.FormID = 0; alternativeFormInfo.FormGUID = Guid.NewGuid(); alternativeFormInfo.FormClassID = classId; alternativeFormInfo.FormName = nameElem.CodeName; alternativeFormInfo.FormDisplayName = nameElem.DisplayName; try { AlternativeFormInfoProvider.SetAlternativeFormInfo(alternativeFormInfo); URLHelper.Redirect("AlternativeForms_Frameset.aspx?classid=" + classId + "&altformid=" + alternativeFormInfo.FormID + "&saved=1"); } catch (Exception ex) { lblError.Visible = true; lblError.Text = ex.Message; } }
/// <summary> /// Initializes the control properties. /// </summary> protected void SetupControl() { if (StopProcessing) { // Do nothing } else { // Get user info UserInfo ui = GetUser(); if (ui != null) { // Get alternative form info AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(AlternativeFormName); if (afi != null) { // Initialize data form formElem.Visible = true; formElem.Info = ui; formElem.AlternativeFormFullName = AlternativeFormName; formElem.IsLiveSite = true; formElem.ApplyVisibility = ApplyVisibility; formElem.VisibilityFormName = VisibilityFormName; formElem.SubmitButton.Visible = false; } else { lblError.Text = String.Format(GetString("altform.formdoesntexists"), AlternativeFormName); lblError.Visible = true; plcContent.Visible = false; } } else { // Hide data form formElem.Visible = false; lblNoProfile.Visible = true; lblNoProfile.Text = NoProfileText; } } }
protected void Page_Load(object sender, EventArgs e) { // Get alternative form ID from URL int altFormId = QueryHelper.GetInteger("altformid", 0); CurrentMaster.BodyClass += " FieldEditorBody"; // Get alternative form AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(altFormId); if (afi != null) { // Get name of the edited class string className = DataClassInfoProvider.GetClassName(afi.FormClassID); // Initialize field editor altFormFieldEditor.AlternativeFormID = altFormId; altFormFieldEditor.ShowFieldVisibility = className.Equals(UserInfo.OBJECT_TYPE, StringComparison.InvariantCultureIgnoreCase); } ScriptHelper.HideVerticalTabs(this); }
protected void Page_Load(object sender, EventArgs e) { // Check 'ReadForm' permission if (!CMSContext.CurrentUser.IsAuthorizedPerResource("cms.form", "ReadForm")) { RedirectToCMSDeskAccessDenied("cms.form", "ReadForm"); } altFormId = QueryHelper.GetInteger("altformid", 0); formId = QueryHelper.GetInteger("formid", 0); // Validate AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(altFormId); EditedObject = afi; if (afi == null) { return; } // Init values if (!RequestHelper.IsPostBack()) { nameElem.DisplayName = afi.FormDisplayName; nameElem.CodeName = afi.FormName; } nameElem.ShowSubmitButton = true; nameElem.Click += new EventHandler(nameElem_Click); if (QueryHelper.GetInteger("saved", 0) == 1) { lblInfo.Visible = true; lblInfo.Text = GetString("general.changessaved"); // Reload header if changes were saved ScriptHelper.RefreshTabHeader(Page, null); } }
protected void Page_Load(object sender, EventArgs e) { altFormId = QueryHelper.GetInteger("altformid", 0); // Validate AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(altFormId); EditedObject = afi; // Initialize controls btnOk.Text = GetString("general.ok"); rfvCodeName.ErrorMessage = GetString("general.requirescodename"); rfvDisplayName.ErrorMessage = GetString("general.requiresdisplayname"); if (!RequestHelper.IsPostBack()) { // Init values this.txtCodeName.Text = afi.FormName; this.txtDisplayName.Text = afi.FormDisplayName; string className = DataClassInfoProvider.GetClassName(afi.FormClassID); if (className.ToLower().Trim() == SiteObjectType.USER.ToLower()) { this.pnlCombineUserSettings.Visible = true; this.chkCombineUserSettings.Checked = (afi.FormCoupledClassID > 0); } } btnOk.Click += new EventHandler(btnOK_Click); if (QueryHelper.GetInteger("saved", 0) == 1) { lblInfo.Visible = true; lblInfo.Text = GetString("general.changessaved"); } }
private string Validate(string value, bool allowPreselect) { if (!string.IsNullOrEmpty(value)) { // If alternative form name contains macro or is not full name, it is always valid if (MacroProcessor.ContainsMacro(value) || !ValidationHelper.IsFullName(value)) { return(string.Empty); } // Try to get alternative form object AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(value); if (afi == null) { if (allowPreselect) { // Alternative form does not exist DataClassInfo di = DataClassInfoProvider.GetDataClassInfo(value); if ((di == null) && (value != string.Empty)) { return(GetString("altform.selectaltform.notexist").Replace("%%code%%", value)); } else { return(String.Empty); } } else { return(GetString("altforms.selectaltform.formnotexist").Replace("%%code%%", value)); } } } return(string.Empty); }
// Contains initialization code that is executed when the application starts protected override void OnInit() { base.OnInit(); // Custom Relationship Name logging since adhoc is disabled in staging by default (since usually tied to page type) RelationshipNameInfo.TYPEINFO.Events.Insert.After += RelationshipName_Insert_After; RelationshipNameInfo.TYPEINFO.Events.Update.After += RelationshipName_Update_After; RelationshipNameInfo.TYPEINFO.Events.Delete.After += RelationshipName_Delete_After; RelationshipNameSiteInfo.TYPEINFO.Events.Insert.After += RelationshipNameSiteInfo_Insert_After; RelationshipNameSiteInfo.TYPEINFO.Events.Delete.After += RelationshipNameSiteInfo_Delete_After; // Since normally a page is "Saved" (changed) when you handle ad-hoc relationships, must also handle triggering the update on the document RelationshipInfo.TYPEINFO.Events.Insert.After += Relationship_Insert_Or_Delete_After; RelationshipInfo.TYPEINFO.Events.Delete.After += Relationship_Insert_Or_Delete_After; // Add in events to handle Document-bound node categories, or adjust to synchronize manually if (DataHelper.GetNotEmpty(SettingsKeyInfoProvider.GetValue(new SettingsKeyName("NodeCategoryStagingMode")), "WithDocument") == "WithDocument") { // Similar to Relationships, a Node Category needs to touch the Node, however this really is touching the 'document' not the node, so must manually trigger TreeCategoryInfo.TYPEINFO.Events.Insert.After += TreeCategory_Insert_Or_Delete_After; TreeCategoryInfo.TYPEINFO.Events.Delete.After += TreeCategory_Insert_Or_Delete_After; // Need to add TreeCategories to document data set and then processes it since sadly isn't doing it automatically :( StagingEvents.LogTask.Before += LogTask_Before; StagingEvents.ProcessTask.After += ProcessTask_After; } else { // Add some custom logic to create a more readable Task Title StagingEvents.LogTask.Before += NonBindingLogTask_Before; // Handle object deletions, additions work but removals don't for node object relationships StagingEvents.ProcessTask.After += NonBindingNodeDocument_ProcessTask_After; } // Handle any tasks that need to be deleted due to originating from another server StagingEvents.LogTask.After += LogTask_After; // Also make sure that the foreign key exists for the class try { if (DataClassInfoProvider.GetDataClassInfo("CMS.TreeCategory") != null) { ConnectionHelper.ExecuteQuery("CMS.TreeCategory.EnsureForeignKeys", null); } } catch (Exception ex) { Service.Resolve <IEventLogService>().LogException("RelationshipsExtended", "ErrorSettingForeignKeys", ex, additionalMessage: "Make sure the Query CMS.TreeCategory.EnsureForeignKey exists. IGNORE if you just installed the module as this will run before the class installs on the first application start after installation."); } // Registers "CustomNamespace" into the macro engine MacroContext.GlobalResolver.SetNamedSourceData("RelHelper", RelHelperMacroNamespace.Instance); MacroContext.GlobalResolver.SetNamedSourceData("RelEnums", EnumMacroEvaluator.EnumMacroObjects()); /* Check to make sure the 2 forms exist */ if (AlternativeFormInfoProvider.GetAlternativeFormInfo("cms.relationshipname.NewForm") == null) { int ClassID = DataClassInfoProvider.GetDataClassInfo("cms.relationshipname").ClassID; AlternativeFormInfo RelationshipNewForm = new AlternativeFormInfo() { FormClassID = ClassID, FormName = "NewForm", FormDisplayName = "New Form", FormDefinition = "<form version=\"2\"><field column=\"RelationshipNameID\" guid=\"47839bd6-f19c-4cfd-b67f-1ca754694d46\" /><field column=\"RelationshipDisplayName\" guid=\"6515b190-003a-44b6-b541-8814760de218\" /><field column=\"RelationshipName\" guid=\"42221f4a-30fa-47a6-bc80-3f99ee81f8a5\" /><field column=\"RelationshipAllowedObjects\" guid=\"2a02c9d5-f0f9-4a19-be8d-9a007f4464ac\" /><field column=\"RelationshipNameIsAdHoc\" guid=\"f1d3667d-77eb-47de-9ad0-5f22ad63e082\" visible=\"true\"><settings><controlname>CheckBoxControl</controlname></settings><properties><fieldcaption>Relationship Is AdHoc (Sortable)</fieldcaption><fielddescription>Must be true if you wish to use sorting.</fielddescription></properties></field><field column=\"RelationshipGUID\" guid=\"03ad948a-2bb7-44b2-b580-b05abf3a2a8b\" /><field column=\"RelationshipLastModified\" guid=\"ea7edf35-ed86-4cef-91c5-7bfdde27c389\" /><field column=\"ReltionshipSite\" guid=\"a733ba02-3675-481a-b586-b87c49e23268\" /></form>", FormHideNewParentFields = false, FormIsCustom = true }; AlternativeFormInfoProvider.SetAlternativeFormInfo(RelationshipNewForm); } if (AlternativeFormInfoProvider.GetAlternativeFormInfo("cms.relationshipname.EditForm") == null) { int ClassID = DataClassInfoProvider.GetDataClassInfo("cms.relationshipname").ClassID; AlternativeFormInfo RelationshipNewForm = new AlternativeFormInfo() { FormClassID = ClassID, FormName = "EditForm", FormDisplayName = "Edit Form", FormDefinition = "<form version=\"2\"><field column=\"RelationshipNameID\" guid=\"47839bd6-f19c-4cfd-b67f-1ca754694d46\" /><field column=\"RelationshipDisplayName\" guid=\"6515b190-003a-44b6-b541-8814760de218\" /><field column=\"RelationshipName\" guid=\"42221f4a-30fa-47a6-bc80-3f99ee81f8a5\" /><field column=\"RelationshipAllowedObjects\" guid=\"2a02c9d5-f0f9-4a19-be8d-9a007f4464ac\" /><field column=\"RelationshipNameIsAdHoc\" guid=\"f1d3667d-77eb-47de-9ad0-5f22ad63e082\" visible=\"true\"><settings><controlname>CheckBoxControl</controlname></settings><properties><fieldcaption>Relationship Is AdHoc (Sortable)</fieldcaption><fielddescription>Must be true if you wish to use sorting.</fielddescription></properties></field><field column=\"RelationshipGUID\" guid=\"03ad948a-2bb7-44b2-b580-b05abf3a2a8b\" /><field column=\"RelationshipLastModified\" guid=\"ea7edf35-ed86-4cef-91c5-7bfdde27c389\" /><field column=\"ReltionshipSite\" guid=\"a733ba02-3675-481a-b586-b87c49e23268\" /></form>", FormHideNewParentFields = false, FormIsCustom = true }; AlternativeFormInfoProvider.SetAlternativeFormInfo(RelationshipNewForm); } }
void btnOK_Click(object sender, EventArgs e) { // Code name validation string err = new Validator().IsIdentificator(this.txtCodeName.Text, GetString("general.erroridentificatorformat")).Result; if (err != String.Empty) { lblError.Visible = true; lblError.Text = err; return; } // Checking for duplicate items DataSet ds = AlternativeFormInfoProvider.GetAlternativeForms("FormName='" + SqlHelperClass.GetSafeQueryString(this.txtCodeName.Text, false) + "' AND FormClassID=" + classId, null); if (!DataHelper.DataSourceIsEmpty(ds)) { lblError.Visible = true; lblError.Text = GetString("general.codenameexists"); return; } // Create new info object AlternativeFormInfo afi = new AlternativeFormInfo(); afi.FormID = 0; afi.FormGUID = Guid.NewGuid(); afi.FormClassID = classId; afi.FormName = this.txtCodeName.Text; afi.FormDisplayName = this.txtDisplayName.Text; DataClassInfo dci = DataClassInfoProvider.GetDataClass(SiteObjectType.USERSETTINGS); if (dci != null) { afi.FormCoupledClassID = (this.chkCombineUserSettings.Checked) ? dci.ClassID : 0; } AlternativeFormInfoProvider.SetAlternativeFormInfo(afi); URLHelper.Redirect("Frameset.aspx?classid=" + classId + "&altformid=" + afi.FormID + "&saved=1"); }
/// <summary> /// Initializes the control properties. /// </summary> protected void SetupControl() { if (StopProcessing) { // Do nothing } else { plcOther.Controls.Clear(); if (AuthenticationHelper.IsAuthenticated()) { // Set the layout of tab menu tabMenu.TabControlLayout = BasicTabControl.GetTabMenuLayout(TabControlLayout); // Remove 'saved' parameter from query string string absoluteUri = URLHelper.RemoveParameterFromUrl(RequestContext.CurrentURL, "saved"); var currentUser = MembershipContext.AuthenticatedUser; // Get customer info GeneralizedInfo customer = null; int customerId = 0; var emptyCustomer = ModuleManager.GetReadOnlyObject(PredefinedObjectType.CUSTOMER); if (emptyCustomer != null) { var q = emptyCustomer.Generalized.GetDataQuery( true, s => s .WhereEquals("CustomerUserID", currentUser.UserID) .OrderBy("CustomerCreated") .TopN(1), false ); var result = q.Result; if (!DataHelper.DataSourceIsEmpty(result)) { customer = ModuleManager.GetObject(result.Tables[0].Rows[0], PredefinedObjectType.CUSTOMER); customerId = customer.ObjectID; } } // Get friends enabled setting bool friendsEnabled = UIHelper.IsFriendsModuleEnabled(SiteContext.CurrentSiteName); // Selected page URL string selectedPage = string.Empty; // Menu initialization tabMenu.UrlTarget = "_self"; ArrayList activeTabs = new ArrayList(); // Handle 'Notifications' tab displaying bool showNotificationsTab = (DisplayMyNotifications && LicenseHelper.IsFeatureAvailableInUI(FeatureEnum.Notifications, ModuleName.NOTIFICATIONS)); bool isWindowsAuthentication = RequestHelper.IsWindowsAuthentication(); string tabName; // Personal tab if (DisplayMyPersonalSettings) { tabName = personalTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.MyPersonalSettings"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, personalTab) }); if (currentUser != null) { selectedPage = tabName; } } // These items can be displayed only for customer if ((customer != null) && ModuleEntryManager.IsModuleLoaded(ModuleName.ECOMMERCE)) { if (DisplayMyDetails) { // Try to load the control dynamically (if available) ucMyDetails = Page.LoadUserControl("~/CMSModules/Ecommerce/Controls/MyDetails/MyDetails.ascx") as CMSAdminControl; if (ucMyDetails != null) { ucMyDetails.ID = "ucMyDetails"; plcOther.Controls.Add(ucMyDetails); // Set new tab tabName = detailsTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.MyDetails"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, detailsTab) }); if (selectedPage == string.Empty) { selectedPage = tabName; } } } if (DisplayMyAddresses) { // Try to load the control dynamically (if available) ucMyAddresses = Page.LoadUserControl("~/CMSModules/Ecommerce/Controls/MyDetails/MyAddresses.ascx") as CMSAdminControl; if (ucMyAddresses != null) { ucMyAddresses.ID = "ucMyAddresses"; plcOther.Controls.Add(ucMyAddresses); // Set new tab tabName = addressesTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.MyAddresses"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, addressesTab) }); if (selectedPage == string.Empty) { selectedPage = tabName; } } } if (DisplayMyOrders) { // Try to load the control dynamically (if available) ucMyOrders = Page.LoadUserControl("~/CMSModules/Ecommerce/Controls/MyDetails/MyOrders.ascx") as CMSAdminControl; if (ucMyOrders != null) { ucMyOrders.ID = "ucMyOrders"; plcOther.Controls.Add(ucMyOrders); // Set new tab tabName = ordersTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.MyOrders"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, ordersTab) }); if (selectedPage == string.Empty) { selectedPage = tabName; } } } if (DisplayMyCredits) { // Try to load the control dynamically (if available) ucMyCredit = Page.LoadUserControl("~/CMSModules/Ecommerce/Controls/MyDetails/MyCredit.ascx") as CMSAdminControl; if (ucMyCredit != null) { ucMyCredit.ID = "ucMyCredit"; plcOther.Controls.Add(ucMyCredit); // Set new tab tabName = creditTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.MyCredit"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, creditTab) }); if (selectedPage == string.Empty) { selectedPage = tabName; } } } } if (DisplayChangePassword && !currentUser.IsExternal && !isWindowsAuthentication) { // Set new tab tabName = passwordTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.ChangePassword"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, passwordTab) }); if (selectedPage == string.Empty) { selectedPage = tabName; } } if ((ucMyNotifications == null) && showNotificationsTab) { // Try to load the control dynamically (if available) ucMyNotifications = Page.LoadUserControl("~/CMSModules/Notifications/Controls/UserNotifications.ascx") as CMSAdminControl; if (ucMyNotifications != null) { ucMyNotifications.ID = "ucMyNotifications"; plcOther.Controls.Add(ucMyNotifications); // Set new tab tabName = notificationsTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.MyNotifications"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, notificationsTab) }); if (selectedPage == string.Empty) { selectedPage = tabName; } } } if ((ucMyMessages == null) && DisplayMyMessages && ModuleManager.IsModuleLoaded(ModuleName.MESSAGING)) { // Try to load the control dynamically (if available) ucMyMessages = Page.LoadUserControl("~/CMSModules/Messaging/Controls/MyMessages.ascx") as CMSAdminControl; if (ucMyMessages != null) { ucMyMessages.ID = "ucMyMessages"; plcOther.Controls.Add(ucMyMessages); // Set new tab tabName = messagesTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.MyMessages"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, messagesTab) }); if (selectedPage == string.Empty) { selectedPage = tabName; } } } if ((ucMyFriends == null) && DisplayMyFriends && ModuleManager.IsModuleLoaded(ModuleName.COMMUNITY) && friendsEnabled) { // Try to load the control dynamically (if available) ucMyFriends = Page.LoadUserControl("~/CMSModules/Friends/Controls/MyFriends.ascx") as CMSAdminControl; if (ucMyFriends != null) { ucMyFriends.ID = "ucMyFriends"; plcOther.Controls.Add(ucMyFriends); // Set new tab tabName = friendsTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.MyFriends"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, friendsTab) }); if (selectedPage == string.Empty) { selectedPage = tabName; } } } if ((ucMyAllSubscriptions == null) && DisplayMySubscriptions) { // Try to load the control dynamically (if available) ucMyAllSubscriptions = Page.LoadUserControl("~/CMSModules/Membership/Controls/Subscriptions.ascx") as CMSAdminControl; if (ucMyAllSubscriptions != null) { // Set control ucMyAllSubscriptions.Visible = false; ucMyAllSubscriptions.SetValue("ShowBlogs", DisplayBlogs); ucMyAllSubscriptions.SetValue("ShowMessageBoards", DisplayMessageBoards); ucMyAllSubscriptions.SetValue("ShowNewsletters", DisplayNewsletters); ucMyAllSubscriptions.SetValue("ShowForums", DisplayForums); ucMyAllSubscriptions.SetValue("ShowReports", DisplayReports); ucMyAllSubscriptions.SetValue("sendconfirmationemail", SendConfirmationEmails); ucMyAllSubscriptions.ID = "ucMyAllSubscriptions"; plcOther.Controls.Add(ucMyAllSubscriptions); // Set new tab tabName = subscriptionsTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.MyAllSubscriptions"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, subscriptionsTab) }); if (selectedPage == string.Empty) { selectedPage = tabName; } } } // My memberships if ((ucMyMemberships == null) && DisplayMyMemberships) { // Try to load the control dynamically ucMyMemberships = Page.LoadUserControl("~/CMSModules/Membership/Controls/MyMemberships.ascx") as CMSAdminControl; if (ucMyMemberships != null) { ucMyMemberships.SetValue("UserID", currentUser.UserID); if (!String.IsNullOrEmpty(MembershipsPagePath)) { ucMyMemberships.SetValue("BuyMembershipURL", DocumentURLProvider.GetUrl(MembershipsPagePath)); } plcOther.Controls.Add(ucMyMemberships); // Set new tab tabName = membershipsTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("myaccount.mymemberships"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, membershipsTab) }); if (selectedPage == String.Empty) { selectedPage = tabName; } } } if ((ucMyCategories == null) && DisplayMyCategories) { // Try to load the control dynamically (if available) ucMyCategories = Page.LoadUserControl("~/CMSModules/Categories/Controls/Categories.ascx") as CMSAdminControl; if (ucMyCategories != null) { ucMyCategories.Visible = false; ucMyCategories.SetValue("DisplaySiteCategories", false); ucMyCategories.SetValue("DisplaySiteSelector", false); ucMyCategories.ID = "ucMyCategories"; plcOther.Controls.Add(ucMyCategories); // Set new tab tabName = categoriesTab; activeTabs.Add(tabName); tabMenu.TabItems.Add(new TabItem() { Text = GetString("MyAccount.MyCategories"), RedirectUrl = URLHelper.AddParameterToUrl(absoluteUri, ParameterName, categoriesTab) }); if (selectedPage == string.Empty) { selectedPage = tabName; } } } // Set CSS class pnlBody.CssClass = CssClass; // Get page URL page = QueryHelper.GetString(ParameterName, selectedPage); // Set controls visibility ucChangePassword.Visible = false; ucChangePassword.StopProcessing = true; if (ucMyAddresses != null) { ucMyAddresses.Visible = false; ucMyAddresses.StopProcessing = true; } if (ucMyOrders != null) { ucMyOrders.Visible = false; ucMyOrders.StopProcessing = true; } if (ucMyDetails != null) { ucMyDetails.Visible = false; ucMyDetails.StopProcessing = true; } if (ucMyCredit != null) { ucMyCredit.Visible = false; ucMyCredit.StopProcessing = true; } if (ucMyAllSubscriptions != null) { ucMyAllSubscriptions.Visible = false; ucMyAllSubscriptions.StopProcessing = true; ucMyAllSubscriptions.SetValue("CacheMinutes", CacheMinutes); } if (ucMyNotifications != null) { ucMyNotifications.Visible = false; ucMyNotifications.StopProcessing = true; } if (ucMyMessages != null) { ucMyMessages.Visible = false; ucMyMessages.StopProcessing = true; } if (ucMyFriends != null) { ucMyFriends.Visible = false; ucMyFriends.StopProcessing = true; } if (ucMyMemberships != null) { ucMyMemberships.Visible = false; ucMyMemberships.StopProcessing = true; } if (ucMyCategories != null) { ucMyCategories.Visible = false; ucMyCategories.StopProcessing = true; } tabMenu.SelectedTab = activeTabs.IndexOf(page); // Select current page switch (page) { case personalTab: if (myProfile != null) { // Get alternative form info AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(AlternativeFormName); if (afi != null) { myProfile.StopProcessing = false; myProfile.Visible = true; myProfile.AllowEditVisibility = AllowEditVisibility; myProfile.AlternativeFormName = AlternativeFormName; } else { lblError.Text = String.Format(GetString("altform.formdoesntexists"), AlternativeFormName); lblError.Visible = true; myProfile.Visible = false; } } break; // My details tab case detailsTab: if (ucMyDetails != null) { ucMyDetails.Visible = true; ucMyDetails.StopProcessing = false; ucMyDetails.SetValue("Customer", customer); } break; // My addresses tab case addressesTab: if (ucMyAddresses != null) { ucMyAddresses.Visible = true; ucMyAddresses.StopProcessing = false; ucMyAddresses.SetValue("CustomerId", customerId); } break; // My orders tab case ordersTab: if (ucMyOrders != null) { ucMyOrders.Visible = true; ucMyOrders.StopProcessing = false; ucMyOrders.SetValue("CustomerId", customerId); ucMyOrders.SetValue("ShowOrderTrackingNumber", ShowOrderTrackingNumber); ucMyOrders.SetValue("ShowOrderToShoppingCart", ShowOrderToShoppingCart); } break; // My credit tab case creditTab: if (ucMyCredit != null) { ucMyCredit.Visible = true; ucMyCredit.StopProcessing = false; ucMyCredit.SetValue("CustomerId", customerId); } break; // Password tab case passwordTab: ucChangePassword.Visible = true; ucChangePassword.StopProcessing = false; ucChangePassword.AllowEmptyPassword = AllowEmptyPassword; break; // Notification tab case notificationsTab: if (ucMyNotifications != null) { ucMyNotifications.Visible = true; ucMyNotifications.StopProcessing = false; ucMyNotifications.SetValue("UserId", currentUser.UserID); ucMyNotifications.SetValue("UnigridImageDirectory", UnigridImageDirectory); } break; // My messages tab case messagesTab: if (ucMyMessages != null) { ucMyMessages.Visible = true; ucMyMessages.StopProcessing = false; } break; // My friends tab case friendsTab: if (ucMyFriends != null) { ucMyFriends.Visible = true; ucMyFriends.StopProcessing = false; ucMyFriends.SetValue("UserID", currentUser.UserID); } break; // My subscriptions tab case subscriptionsTab: if (ucMyAllSubscriptions != null) { ucMyAllSubscriptions.Visible = true; ucMyAllSubscriptions.StopProcessing = false; ucMyAllSubscriptions.SetValue("userid", currentUser.UserID); ucMyAllSubscriptions.SetValue("siteid", SiteContext.CurrentSiteID); } break; // My memberships tab case membershipsTab: if (ucMyMemberships != null) { ucMyMemberships.Visible = true; ucMyMemberships.StopProcessing = false; } break; // My categories tab case categoriesTab: if (ucMyCategories != null) { ucMyCategories.Visible = true; ucMyCategories.StopProcessing = false; } break; } } else { // Hide control if current user is not authenticated Visible = false; } } }
/// <summary> /// Loads form layout of document, bizform, systemtable or alternative form. /// </summary> protected void LoadData() { if (DataClassID > 0) { if (!IsAlternative) { classInfo = DataClassInfoProvider.GetDataClassInfo(DataClassID); UIContext.EditedObject = classInfo; } else { altFormInfo = AlternativeFormInfoProvider.GetAlternativeFormInfo(ObjectID); UIContext.EditedObject = altFormInfo; } if (!RequestHelper.IsPostBack()) { LayoutTypeEnum layoutType = LayoutTypeEnum.Html; InitTypeSelector(); if (!IsAlternative) { if (classInfo != null) { // Load layout of document, bizform or systemtable FormLayout = classInfo.ClassFormLayout; layoutType = classInfo.ClassFormLayoutType; } } else { if (altFormInfo != null) { // Load layout of alternative form FormLayout = altFormInfo.FormLayout; layoutType = altFormInfo.FormLayoutType; } } radCustomLayout.Checked = LayoutIsSet; drpLayoutType.SelectedValue = layoutType.ToString(); // Switch visibility of layout editors based on layout type plcHTML.Visible = drpLayoutType.SelectedValue.EqualsCSafe(LayoutTypeEnum.Html.ToString(), StringComparison.InvariantCultureIgnoreCase); plcASCX.Visible = !plcHTML.Visible; } if (radCustomLayout.Checked) { InitDialog(); } radAutoLayout.Checked = !radCustomLayout.Checked; } else { UIContext.EditedObject = null; } }
/// <summary> /// Initializes the control properties. /// </summary> protected void SetupControl() { if (StopProcessing) { // Do nothing } else { // Set default visibility pnlRegForm.Visible = true; lblCaptcha.ResourceString = "webparts_membership_registrationform.captcha"; // WAI validation lblCaptcha.AssociatedControlClientID = captchaElem.InputClientID; // Get alternative form info AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(AlternativeForm); if (afi != null) { formUser.Data = new UserInfo(); formUser.FormInformation = FormHelper.GetFormInfo(AlternativeForm, true); formUser.AltFormInformation = afi; formUser.Visible = true; formUser.ValidationErrorMessage = RegistrationErrorMessage; formUser.IsLiveSite = true; formUser.UseColonBehindLabel = DisplayColons; formUser.DefaultFormLayout = FormLayout.ToEnum <FormLayoutEnum>(); formUser.DefaultFieldLayout = FieldLayout.ToEnum <FieldLayoutEnum>(); formUser.MessagesPlaceHolder = plcMess; formUser.InfoLabel = plcMess.InfoLabel; formUser.ErrorLabel = plcMess.ErrorLabel; formUser.OnAfterSave += formUser_OnAfterSave; // Reload form if not in PortalEngine environment and if post back if ((StandAlone) && (RequestHelper.IsPostBack())) { formUser.ReloadData(); } captchaElem.Visible = DisplayCaptcha; lblCaptcha.Visible = DisplayCaptcha; plcCaptcha.Visible = DisplayCaptcha; btnRegister.Text = ButtonText; btnRegister.AddCssClass(ButtonCSS); btnRegister.Click += btnRegister_Click; InfoLabel.CssClass = "EditingFormInfoLabel"; ErrorLabel.CssClass = "EditingFormErrorLabel ErrorLabel"; if (formUser != null) { // Set the live site context formUser.ControlContext.ContextName = CMS.ExtendedControls.ControlContext.LIVE_SITE; } } else { ShowError(String.Format(GetString("altform.formdoesntexists"), AlternativeForm)); pnlRegForm.Visible = false; } } }
/// <summary> /// Saves form layout. /// </summary> protected bool SaveData() { if (!IsAuthorizedForAscxEditing()) { ShowError(GetString("EditCode.NotAllowed")); return false; } bool saved = false; bool deleted = false; // Get form layout string layout = FormLayout; // Delete layout if editor is hidden if (!CustomLayoutEnabled) { deleted = LayoutIsSet; layout = null; } if (DataClassID > 0) { if (!IsAlternative) { classInfo = DataClassInfoProvider.GetDataClassInfo(DataClassID); UIContext.EditedObject = classInfo; if (classInfo != null) { // Update dataclass form layout and save object classInfo.ClassFormLayout = layout; classInfo.ClassFormLayoutType = LayoutHelper.GetLayoutTypeEnum(drpLayoutType.SelectedValue); DataClassInfoProvider.SetDataClassInfo(classInfo); saved = true; } } else { altFormInfo = AlternativeFormInfoProvider.GetAlternativeFormInfo(ObjectID); UIContext.EditedObject = altFormInfo; if (altFormInfo != null) { // Update alternative form layout and save object altFormInfo.FormLayout = layout; altFormInfo.FormLayoutType = LayoutHelper.GetLayoutTypeEnum(drpLayoutType.SelectedValue); AlternativeFormInfoProvider.SetAlternativeFormInfo(altFormInfo); saved = true; } } // Display info if successfully saved if (saved) { if (!deleted) { ShowChangesSaved(); } else { ShowConfirmation(GetString("DocumentType_Edit_Form.LayoutDeleted")); } } } else { UIContext.EditedObject = null; } return true; }
void nameElem_Click(object sender, EventArgs e) { // Check 'EditForm' permission if (!CMSContext.CurrentUser.IsAuthorizedPerResource("cms.form", "EditForm")) { RedirectToCMSDeskAccessDenied("cms.form", "EditForm"); } // Code name validation string err = new Validator().IsIdentificator(nameElem.CodeName, GetString("general.erroridentificatorformat")).Result; if (err != String.Empty) { lblError.Visible = true; lblError.Text = err; return; } // Checking for duplicate items DataSet ds = AlternativeFormInfoProvider.GetAlternativeForms("FormName='" + nameElem.CodeName + "' AND FormClassID=" + classId, null); if (!DataHelper.DataSourceIsEmpty(ds)) { lblError.Visible = true; lblError.Text = GetString("general.codenameexists"); return; } // Create new info object AlternativeFormInfo afi = new AlternativeFormInfo(); afi.FormID = 0; afi.FormGUID = Guid.NewGuid(); afi.FormClassID = classId; afi.FormName = nameElem.CodeName; afi.FormDisplayName = nameElem.DisplayName; AlternativeFormInfoProvider.SetAlternativeFormInfo(afi); // Required to log staging task, alternative form is not binded to bizform as child using (CMSActionContext context = new CMSActionContext()) { context.CreateVersion = false; // Log synchronization SynchronizationHelper.LogObjectChange(bfi, TaskTypeEnum.UpdateObject); } URLHelper.Redirect("AlternativeForms_Frameset.aspx?formid=" + formId.ToString() + "&altformid=" + afi.FormID + "&saved=1"); }