/// <summary> /// Loads the site DropDownLists. /// </summary> private void LoadSites() { // Define special fields SpecialFieldsDefinition specialFields = new SpecialFieldsDefinition(null, FieldInfo, ContextResolver); specialFields.Add(new SpecialField { Text = GetString("general.selectall"), Value = "##all##" }); specialFields.Add(new SpecialField { Text = GetString("dialogs.config.currentsite"), Value = "##current##" }); // Set site selector siteSelectorContent.DropDownSingleSelect.AutoPostBack = true; siteSelectorContent.AllowAll = false; siteSelectorContent.UseCodeNameForSelection = true; siteSelectorContent.UniSelector.SpecialFields = specialFields; siteSelectorMedia.DropDownSingleSelect.AutoPostBack = true; siteSelectorMedia.AllowAll = false; siteSelectorMedia.UseCodeNameForSelection = true; siteSelectorMedia.UniSelector.SpecialFields = specialFields; if (mediaLoaded) { siteSelectorMedia.UniSelector.OnSelectionChanged += UniSelectorMediaSites_OnSelectionChanged; } }
/// <summary> /// Loads and selects control. /// </summary> private void LoadAndSelectList() { if (dropDownList.Items.Count == 0) { string options = GetResolvedValue <string>("options", null); string query = ValidationHelper.GetString(GetValue("query"), null); string macro = MacroSource; try { if (string.IsNullOrEmpty(macro)) { // Load from options or query FormHelper.LoadItemsIntoList(options, query, dropDownList.Items, FieldInfo, ContextResolver, SortItems); } else { // Load from macro source var def = new SpecialFieldsDefinition(null, FieldInfo, ContextResolver, SortItems); def.LoadFromMacro(macro, ValueFormat, TextFormat); def.FillItems(dropDownList.Items); } } catch (Exception ex) { DisplayException(ex); } FormHelper.SelectSingleValue(mSelectedValue, dropDownList, true); } }
/// <summary> /// Page load event. /// </summary> protected void Page_Load(object sender, EventArgs e) { if (StopProcessing) { uniselect.StopProcessing = true; return; } var specialFields = new SpecialFieldsDefinition(null, FieldInfo, ContextResolver); if (ShowDefaultItem) { specialFields.Add(new SpecialField { Text = GetString("WebPartPropertise.Default"), Value = "|default|" }); } if (ShowNewItem) { specialFields.Add(new SpecialField { Text = GetString("WebPartPropertise.New"), Value = "|new|" }); } uniselect.SpecialFields = specialFields; uniselect.DropDownSingleSelect.AutoPostBack = true; uniselect.IsLiveSite = IsLiveSite; }
private void LoadAndSelectList(bool forceReload = false) { lbOptions.SelectionMode = AllowMultiple ? ListSelectionMode.Multiple : ListSelectionMode.Single; if (forceReload) { // Keep selected value _selectedValues = lbOptions.Items.Cast <ListItem>().Where(x => x.Selected).Select(x => x.Value).ToList(); // Clears values if forced reload is requested lbOptions.Items.Clear(); } if (lbOptions.Items.Count == 0) { try { var def = new SpecialFieldsDefinition(null, FieldInfo, ContextResolver, SortItems); if (string.IsNullOrEmpty(MacroSource)) { if (string.IsNullOrEmpty(QuerySource)) { // Load from text source def.LoadFromText(Options); } else { // Load from query source def.LoadFromQuery(QuerySource); } } else { // Load from macro source def.LoadFromMacro(MacroSource, ValueFormat, TextFormat); } def.FillItems(lbOptions.Items); } catch (Exception ex) { DisplayException(ex); } foreach (ListItem lbOptionsItem in lbOptions.Items) { if (_selectedValues != null && _selectedValues.Contains(lbOptionsItem.Value)) { lbOptionsItem.Selected = true; } } lbOptions.Items.Insert(0, new ListItem(String.Empty, String.Empty)); } }
/// <summary> /// Loads text into textbox from value or from 'QueryColumnName' column. /// </summary> /// <param name="value">Value parameter</param> /// <returns>Returns text of options or query</returns> private string LoadTextFromData(string value) { InitOptions(); txtValue.Editor.ValueIsMacro = false; // Options data if (!String.IsNullOrEmpty(value)) { lstOptions.SelectedIndex = ListSourceIndex; // Get string representation SpecialFieldsDefinition def = new SpecialFieldsDefinition(null, FieldInfo, ContextResolver); def.LoadFromText(value); return(def.ToString()); } // Query selected if (ContainsColumn(QueryColumnName)) { string query = ValidationHelper.GetString(Form.Data.GetValue(QueryColumnName), string.Empty).Trim(); if (!String.IsNullOrEmpty(query)) { lstOptions.SelectedIndex = SqlSourceIndex; if (!MembershipContext.AuthenticatedUser.IsAuthorizedPerResource("CMS.Form", "EditSQLQueries")) { mDisabledSql = true; } return(query); } } // Macro data source selected if (ContainsColumn(MacroColumnName)) { string macro = ValidationHelper.GetString(Form.Data.GetValue(MacroColumnName), string.Empty).Trim(); if (!String.IsNullOrEmpty(macro)) { lstOptions.SelectedIndex = MacroSourceIndex; txtValue.Editor.ValueIsMacro = true; return(MacroProcessor.RemoveDataMacroBrackets(macro)); } } return(null); }
/// <summary> /// Prepares new field. /// </summary> /// <param name="controlName">Code name of used control</param> private FormFieldInfo PrepareNewField(string controlName) { FormFieldInfo ffi = new FormFieldInfo(); string[] controlDefaultDataType = FormUserControlInfoProvider.GetUserControlDefaultDataType(controlName); ffi.DataType = controlDefaultDataType[0]; ffi.Size = ValidationHelper.GetInteger(controlDefaultDataType[1], 0); ffi.FieldType = FormFieldControlTypeEnum.CustomUserControl; FormUserControlInfo control = FormUserControlInfoProvider.GetFormUserControlInfo(controlName); if (control != null) { ffi.SetPropertyValue(FormFieldPropertyEnum.FieldCaption, control.UserControlDisplayName); } ffi.AllowEmpty = true; ffi.PublicField = true; ffi.Name = GetUniqueFieldName(controlName); ffi.Settings["controlname"] = controlName; // For list controls create three default options if (FormHelper.HasListControl(ffi)) { SpecialFieldsDefinition optionDefinition = new SpecialFieldsDefinition(); for (int i = 1; i <= 3; i++) { optionDefinition.Add(new SpecialField { Value = OptionsDesigner.DEFAULT_OPTION + i, Text = OptionsDesigner.DEFAULT_OPTION + i }); } ffi.Settings["Options"] = optionDefinition.ToString(); } if (controlName.EqualsCSafe("CalendarControl")) { ffi.Settings["EditTime"] = false; } return(ffi); }
/// <summary> /// Init UniSelectors for selecting controls. /// </summary> private void InitControlSelectors() { var detailsControlSelector = (UniSelector)EditForm.FieldControls["activitytypedetailformcontrol"]; var mainControlSelector = (UniSelector)EditForm.FieldControls["activitytypemainformcontrol"]; // Add additional item for selecting default control - currently used only for 'Custom Activity' SpecialFieldsDefinition specialFields = new SpecialFieldsDefinition(); specialFields.Add(new SpecialField() { Text = GetString("general.defaultchoice"), Value = "##default##" }); detailsControlSelector.SpecialFields = mainControlSelector.SpecialFields = specialFields; // Set (None) values to save to database detailsControlSelector.NoneRecordValue = ""; mainControlSelector.NoneRecordValue = ""; }
protected void Page_Load(object sender, EventArgs e) { // Check license if (DataHelper.GetNotEmpty(RequestContext.CurrentDomain, "") != "") { LicenseHelper.CheckFeatureAndRedirect(RequestContext.CurrentDomain, FeatureEnum.WebAnalytics); } // If deletion is in progress if (StatisticsInfoProvider.DataDeleterIsRunning) { timeRefresh.Enabled = true; ViewState["DeleterStarted"] = true; EnableControls(false); ReloadInfoPanel(); } // If deletion has just end - add close script else if (ValidationHelper.GetBoolean(ViewState["DeleterStarted"], false)) { ScriptHelper.RegisterStartupScript(this, typeof(string), "CloseScript", ScriptHelper.GetScript("wopener.RefreshPage(); CloseDialog();")); } // Configure dynamic selectors SpecialFieldsDefinition specialFields = new SpecialFieldsDefinition(); specialFields.Add(new SpecialField { Text = GetString("general.pleaseselect"), Value = "" }); usCampaigns.UniSelector.SpecialFields = specialFields; ucConversions.UniSelector.SpecialFields = specialFields; if (!RequestHelper.IsPostBack()) { usCampaigns.Value = ""; ucConversions.Value = ""; } string title = GetString("AnayticsManageData.ManageData"); Page.Title = title; PageTitle.TitleText = title; // Confirmation message for deleting string deleteFromToMessage = ScriptHelper.GetString(GetString("webanal.deletefromtomsg")); deleteFromToMessage = deleteFromToMessage.Replace("##FROM##", "' + elemFromStr + '"); deleteFromToMessage = deleteFromToMessage.Replace("##TO##", "' + elemToStr + '"); string script = " var elemTo = document.getElementById('" + pickerTo.ClientID + "_txtDateTime'); " + " var elemFrom = document.getElementById('" + pickerFrom.ClientID + "_txtDateTime'); " + " var elemToStr = " + ScriptHelper.GetString(GetString("webanal.now")) + "; " + " var elemFromStr = " + ScriptHelper.GetString(GetString("webanal.beginning")) + "; " + " var deleteAll = 1; " + " if (elemTo.value != '') { deleteAll = 0; elemToStr = elemTo.value; }; " + " if (elemFrom.value != '') { deleteAll = 0; elemFromStr = elemFrom.value; }; " + " if (deleteAll == 1) { return confirm(" + ScriptHelper.GetString(GetString("webanal.deleteall")) + "); } " + " else { return confirm(" + deleteFromToMessage + "); }; "; btnDelete.OnClientClick = script + "; return false;"; statCodeName = QueryHelper.GetString("statCodeName", String.Empty); switch (statCodeName) { case "campaigns": pnlCampaigns.Visible = true; break; case "conversion": pnlConversions.Visible = true; break; } }
/// <summary> /// Returns true if user control is valid. /// </summary> public override bool IsValid() { bool valid = true; // Check 'options' validity if (lstOptions.SelectedIndex == ListSourceIndex) { // Some option must be included if (string.IsNullOrEmpty(txtValue.Text.Trim())) { ValidationError += GetString("TemplateDesigner.ErrorDropDownListOptionsEmpty") + " "; valid = false; } else { // Parse lines int lineIndex = 0; string[] lines = txtValue.Text.Split(new[] { '\n' }, StringSplitOptions.RemoveEmptyEntries); for (lineIndex = 0; lineIndex <= lines.GetUpperBound(0); lineIndex++) { // Loop through only not-empty lines if ((lines[lineIndex] != null) && (lines[lineIndex].Trim() != string.Empty)) { // Get line items string[] items = lines[lineIndex].Replace(SpecialFieldsDefinition.SEMICOLON_TO_REPLACE, SpecialFieldsDefinition.REPLACED_SEMICOLON).Split(';'); // Every line must have value and item element and optionally visibility macro if (items.Length > 3) { ValidationError += GetString("TemplateDesigner.ErrorDropDownListOptionsInvalidFormat") + " "; valid = false; break; } else { // Check for possible macro (with/without visibility condition) if (items.Length <= 2) { string specialMacro = items[0].Trim(); // Check if special macro is used if (SpecialFieldsDefinition.IsSpecialFieldMacro(specialMacro)) { string macro = (items.Length == 2) ? items[1].Trim() : String.Empty; // If special field macro used and second item isn't macro show error if (!String.IsNullOrEmpty(macro) && !MacroProcessor.ContainsMacro(macro)) { ValidationError += string.Format(GetString("TemplateDesigner.ErrorDropDownListOptionsInvalidMacroFormat"), lineIndex + 1) + " "; valid = false; break; } } } // Check valid Double format if (FieldInfo.DataType == FieldDataType.Double) { if (!ValidationHelper.IsDouble(items[0]) && !(FieldInfo.AllowEmpty && string.IsNullOrEmpty(items[0]))) { ValidationError += string.Format(GetString("TemplateDesigner.ErrorDropDownListOptionsInvalidDoubleFormat"), lineIndex + 1) + " "; valid = false; break; } } // Check valid Integer format else if (FieldInfo.DataType == FieldDataType.Integer) { if (!ValidationHelper.IsInteger(items[0]) && !(FieldInfo.AllowEmpty && string.IsNullOrEmpty(items[0]))) { ValidationError += string.Format(GetString("TemplateDesigner.ErrorDropDownListOptionsInvalidIntFormat"), lineIndex + 1) + " "; valid = false; break; } } // Check valid Long integer format else if (FieldInfo.DataType == FieldDataType.LongInteger) { if (!ValidationHelper.IsLong(items[0]) && !(FieldInfo.AllowEmpty && string.IsNullOrEmpty(items[0]))) { ValidationError += string.Format(GetString("TemplateDesigner.ErrorDropDownListOptionsInvalidLongIntFormat"), lineIndex + 1) + " "; valid = false; break; } } // Check valid Date time format else if (FieldInfo.DataType == FieldDataType.DateTime) { if ((ValidationHelper.GetDateTime(items[0], DateTimeHelper.ZERO_TIME) == DateTimeHelper.ZERO_TIME) && !FieldInfo.AllowEmpty) { ValidationError += string.Format(GetString("TemplateDesigner.ErrorDropDownListOptionsInvalidDateTimeFormat"), lineIndex + 1) + " "; valid = false; break; } } } } } } } // Check SQL query validity else if ((lstOptions.SelectedIndex == SqlSourceIndex) && (string.IsNullOrEmpty(txtValue.Text.Trim()))) { ValidationError += GetString("TemplateDesigner.ErrorDropDownListQueryEmpty") + " "; valid = false; } else if ((lstOptions.SelectedIndex == MacroSourceIndex) && (string.IsNullOrEmpty(txtValue.Text.Trim()))) { ValidationError += GetString("TemplateDesigner.ErrorDropDownListMacroEmpty") + " "; valid = false; } return(valid); }
/// <summary> /// Prepares new field. /// </summary> /// <param name="controlName">Code name of used control</param> private FormFieldInfo PrepareNewField(string controlName) { FormFieldInfo ffi = new FormFieldInfo(); string[] controlDefaultDataType = FormUserControlInfoProvider.GetUserControlDefaultDataType(controlName); ffi.DataType = controlDefaultDataType[0]; ffi.Size = ValidationHelper.GetInteger(controlDefaultDataType[1], 0); ffi.FieldType = FormFieldControlTypeEnum.CustomUserControl; FormUserControlInfo control = FormUserControlInfoProvider.GetFormUserControlInfo(controlName); if (control != null) { ffi.SetPropertyValue(FormFieldPropertyEnum.FieldCaption, control.UserControlDisplayName); } ffi.AllowEmpty = true; ffi.PublicField = true; ffi.Name = GetUniqueFieldName(controlName); ffi.Settings["controlname"] = controlName; // For list controls create three default options if (FormHelper.HasListControl(ffi)) { SpecialFieldsDefinition optionDefinition = new SpecialFieldsDefinition(); for (int i = 1; i <= 3; i++) { optionDefinition.Add(new SpecialField { Value = OptionsDesigner.DEFAULT_OPTION + i, Text = OptionsDesigner.DEFAULT_OPTION + i }); } ffi.Settings["Options"] = optionDefinition.ToString(); } if (controlName.EqualsCSafe("CalendarControl")) { ffi.Settings["EditTime"] = false; } return ffi; }
/// <summary> /// Loads text into textbox from value or from 'QueryColumnName' column. /// </summary> /// <param name="value">Value parameter</param> /// <returns>Returns text of options or query</returns> private string LoadTextFromData(string value) { InitOptions(); // Options data if (!String.IsNullOrEmpty(value)) { lstOptions.SelectedIndex = ListSourceIndex; // Get string representation SpecialFieldsDefinition def = new SpecialFieldsDefinition(null, FieldInfo, ContextResolver); def.LoadFromText(value); return def.ToString(); } // Query selected else if (ContainsColumn(QueryColumnName)) { string query = ValidationHelper.GetString(Form.Data.GetValue(QueryColumnName), string.Empty).Trim(); if (!String.IsNullOrEmpty(query)) { lstOptions.SelectedIndex = SqlSourceIndex; if (!MembershipContext.AuthenticatedUser.IsAuthorizedPerResource("CMS.Form", "EditSQLQueries")) { disabledSql = true; } return query; } // Macro data source selected else if (ContainsColumn(MacroColumnName)) { string macro = ValidationHelper.GetString(Form.Data.GetValue(MacroColumnName), string.Empty).Trim(); if (!String.IsNullOrEmpty(macro)) { lstOptions.SelectedIndex = MacroSourceIndex; return macro; } } } return null; }
/// <summary> /// Loads and selects control. /// </summary> private void LoadAndSelectList() { if (dropDownList.Items.Count == 0) { string options = GetResolvedValue<string>("options", null); string query = ValidationHelper.GetString(GetValue("query"), null); string macro = MacroSource; try { if (string.IsNullOrEmpty(macro)) { // Load from options or query FormHelper.LoadItemsIntoList(options, query, dropDownList.Items, FieldInfo, ContextResolver, SortItems); } else { // Load from macro source var def = new SpecialFieldsDefinition(null, FieldInfo, ContextResolver, SortItems); def.LoadFromMacro(macro, ValueFormat, TextFormat); def.FillItems(dropDownList.Items); } } catch (Exception ex) { DisplayException(ex); } FormHelper.SelectSingleValue(mSelectedValue, dropDownList, true); } }
/// <summary> /// Returns true if user control is valid. /// </summary> public override bool IsValid() { bool valid = true; // Check 'options' validity if (lstOptions.SelectedIndex == ListSourceIndex) { // Some option must be included if (String.IsNullOrWhiteSpace(txtValue.Text)) { ValidationError += GetString("TemplateDesigner.ErrorDropDownListOptionsEmpty") + " "; valid = false; } else { // Parse lines int lineIndex; string[] lines = txtValue.Text.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries); for (lineIndex = 0; lineIndex <= lines.GetUpperBound(0); lineIndex++) { // Loop through only not-empty lines string line = lines[lineIndex]; if (!String.IsNullOrWhiteSpace(line)) { // Get line items string[] items = line.Replace(SpecialFieldsDefinition.SEMICOLON_TO_REPLACE, SpecialFieldsDefinition.REPLACED_SEMICOLON).Split(';'); // Every line must have value and item element and optionally visibility macro if (items.Length > 3) { ValidationError += GetString("TemplateDesigner.ErrorDropDownListOptionsInvalidFormat") + " "; valid = false; break; } // Check for possible macro (with/without visibility condition) if (items.Length <= 2) { string specialMacro = items[0].Trim(); // Check if special macro is used if (SpecialFieldsDefinition.IsSpecialFieldMacro(specialMacro)) { string macro = (items.Length == 2) ? items[1].Trim() : String.Empty; // If special field macro used and second item isn't macro show error if (!String.IsNullOrEmpty(macro) && !MacroProcessor.ContainsMacro(macro)) { ValidationError += string.Format(GetString("TemplateDesigner.ErrorDropDownListOptionsInvalidMacroFormat"), lineIndex + 1) + " "; valid = false; break; } } } // Validate input value var checkType = new DataTypeIntegrity(items[0], EditedFieldDataType); var result = checkType.ValidateDataType(); if (!String.IsNullOrEmpty(result)) { ValidationError += string.Format(GetString("TemplateDesigner.ErrorDropDownListOptionsInvalidValue"), lineIndex + 1) + " " + result + " "; valid = false; break; } } } } } // Check SQL query validity else if ((lstOptions.SelectedIndex == SqlSourceIndex) && String.IsNullOrWhiteSpace(txtValue.Text)) { ValidationError += GetString("TemplateDesigner.ErrorDropDownListQueryEmpty") + " "; valid = false; } else if ((lstOptions.SelectedIndex == MacroSourceIndex) && String.IsNullOrWhiteSpace(txtValue.Text)) { ValidationError += GetString("TemplateDesigner.ErrorDropDownListMacroEmpty") + " "; valid = false; } return(valid); }