protected override void LoadComponentDefinition() { #region Properties List<BXParamValue> properties = new List<BXParamValue>(), propertiesForUserReference = new List<BXParamValue>(); int selectedIblockId = 0; if (Parameters.ContainsKey("IBlockId")) int.TryParse(Parameters["IBlockId"], out selectedIblockId); if (selectedIblockId > 0) { BXCustomFieldCollection customFields = BXIBlock.GetCustomFields(selectedIblockId); foreach (BXCustomField customField in customFields) { string title = BXTextEncoder.HtmlTextEncoder.Decode(customField.EditFormLabel); string code = customField.Name.ToUpper(); properties.Add(new BXParamValue(title, code)); if (string.Equals(customField.CustomTypeId, "Bitrix.System.Int", StringComparison.Ordinal)) propertiesForUserReference.Add(new BXParamValue(title, code)); } } #endregion #region Iblock type List<BXParamValue> typeParamValue = new List<BXParamValue>(); typeParamValue.Add(new BXParamValue(GetMessageRaw("SelectIBlockType"), string.Empty)); BXIBlockTypeCollection iblockTypes = BXIBlockType.GetList(null, new BXOrderBy(new BXOrderByPair(BXIBlockType.Fields.Name, BXOrderByDirection.Asc)), null, null, BXTextEncoder.EmptyTextEncoder); foreach (BXIBlockType iblockType in iblockTypes) typeParamValue.Add(new BXParamValue(iblockType.Translations[BXLoc.CurrentLocale].Name, iblockType.Id.ToString())); ParamsDefinition["IBlockTypeId"].Values = typeParamValue; ParamsDefinition["IBlockTypeId"].RefreshOnDirty = true; #endregion #region Iblock int selectedIBlockType = 0; if (Parameters.ContainsKey("IBlockTypeId")) int.TryParse(Parameters["IBlockTypeId"], out selectedIBlockType); BXFilter filter = new BXFilter(); if (selectedIBlockType > 0) filter.Add(new BXFilterItem(BXIBlock.Fields.Type.ID, BXSqlFilterOperators.Equal, selectedIBlockType)); if (!string.IsNullOrEmpty(DesignerSite)) filter.Add(new BXFilterItem(BXIBlock.Fields.Sites.SiteId, BXSqlFilterOperators.Equal, DesignerSite)); List<BXParamValue> iblockParamValue = new List<BXParamValue>(); iblockParamValue.Add(new BXParamValue(GetMessageRaw("SelectIBlockID"), string.Empty)); BXIBlockCollection iblocks = BXIBlock.GetList(filter, new BXOrderBy(new BXOrderByPair(BXIBlock.Fields.Name, BXOrderByDirection.Asc)), null, null, BXTextEncoder.EmptyTextEncoder); foreach (BXIBlock iblock in iblocks) iblockParamValue.Add(new BXParamValue(iblock.Name, iblock.Id.ToString())); ParamsDefinition["IBlockId"].Values = iblockParamValue; ParamsDefinition["IBlockId"].RefreshOnDirty = true; #endregion #region Sorting List<BXParamValue> sortingFields = new List<BXParamValue>(); sortingFields.Add(new BXParamValue(GetMessageRaw("ElementID"), "ID")); sortingFields.Add(new BXParamValue(GetMessageRaw("ElementName"), "Name")); sortingFields.Add(new BXParamValue(GetMessageRaw("Active"), "Active")); sortingFields.Add(new BXParamValue(GetMessageRaw("ActiveFromDate"), "ActiveFromDate")); sortingFields.Add(new BXParamValue(GetMessageRaw("ActiveUntilDate"), "ActiveToDate")); sortingFields.Add(new BXParamValue(GetMessageRaw("SortIndex"), "Sort")); sortingFields.Add(new BXParamValue(GetMessageRaw("DateOfModification"), "UpdateDate")); sortingFields.AddRange(properties); ParamsDefinition["SortBy"].Values = sortingFields; #endregion #region Access //RolesAuthorizedToManage && RolesAuthorizedToAdminister && RolesAuthorizedToView && RolesAuthorizedToManageOfActivation IList<BXParamValue> rolesAuthorizedToManage = ParamsDefinition["RolesAuthorizedToManage"].Values; if (rolesAuthorizedToManage.Count > 0) rolesAuthorizedToManage.Clear(); IList<BXParamValue> rolesAuthorizedToAdminister = ParamsDefinition["RolesAuthorizedToAdminister"].Values; if (rolesAuthorizedToAdminister.Count > 0) rolesAuthorizedToAdminister.Clear(); IList<BXParamValue> rolesAuthorizedToView = ParamsDefinition["RolesAuthorizedToView"].Values; if (rolesAuthorizedToView.Count > 0) rolesAuthorizedToView.Clear(); IList<BXParamValue> authRolesAuthorizedToManageOfActivationValues = ParamsDefinition["RolesAuthorizedToManageOfActivation"].Values; if (authRolesAuthorizedToManageOfActivationValues.Count > 0) authRolesAuthorizedToManageOfActivationValues.Clear(); BXRoleCollection roles = BXRoleManager.GetList(new BXFormFilter(new BXFormFilterItem("Active", true, BXSqlFilterOperators.Equal)), new BXOrderBy_old("RoleName", "Asc")); for (int i = 0; i < roles.Count; i++) { BXRole role = roles[i]; BXParamValue v = new BXParamValue(role.Title, role.RoleName); rolesAuthorizedToManage.Add(v); rolesAuthorizedToAdminister.Add(v); rolesAuthorizedToView.Add(v); authRolesAuthorizedToManageOfActivationValues.Add(v); } //--- //MannerOfIssueModificationPermission IList<BXParamValue> manOfIssueModificationPermissionValues = ParamsDefinition["MannerOfIssueModificationPermission"].Values; if (manOfIssueModificationPermissionValues.Count > 0) manOfIssueModificationPermissionValues.Clear(); foreach (string n in Enum.GetNames(typeof(MannerOfIssueModificationPermission))) manOfIssueModificationPermissionValues.Add(new BXParamValue(GetMessageRaw(string.Concat("MannerOfIssueModificationPermission", n)), n)); //--- //MannerOfUserAssociation IList<BXParamValue> mannerOfUserAssociationValues = ParamsDefinition["MannerOfUserAssociation"].Values; if (mannerOfUserAssociationValues.Count > 0) mannerOfUserAssociationValues.Clear(); foreach (string n in Enum.GetNames(typeof(MannerOfUserAssociation))) mannerOfUserAssociationValues.Add(new BXParamValue(GetMessageRaw(string.Concat("MannerOfUserAssociation", n)), n)); //--- //UserAssociatedByCustomIBlockProperty IList<BXParamValue> userAssociatedByCustomIBlockPropertyValues = ParamsDefinition["UserAssociatedByCustomIBlockProperty"].Values; if (userAssociatedByCustomIBlockPropertyValues.Count > 0) userAssociatedByCustomIBlockPropertyValues.Clear(); userAssociatedByCustomIBlockPropertyValues.Add(new BXParamValue(GetMessageRaw("NotSelected"), string.Empty)); for (int n = 0; n < propertiesForUserReference.Count; n++) userAssociatedByCustomIBlockPropertyValues.Add(propertiesForUserReference[n]); //--- //MannerOfUserIdentification IList<BXParamValue> mannerOfUserIdentificationValues = ParamsDefinition["MannerOfUserIdentification"].Values; if (mannerOfUserIdentificationValues.Count > 0) mannerOfUserIdentificationValues.Clear(); foreach (string n in Enum.GetNames(typeof(MannerOfUserIdentification))) mannerOfUserIdentificationValues.Add(new BXParamValue(GetMessageRaw(string.Concat("MannerOfUserIdentification", n)), n)); //--- IList<BXParamValue> elementStatusValues = ParamsDefinition["ElementActiveAfterSave"].Values; if (elementStatusValues.Count > 0) elementStatusValues.Clear(); foreach (string n in Enum.GetNames(typeof(ElementStatus))) elementStatusValues.Add(new BXParamValue(GetMessageRaw(string.Concat("ElementStatus", n)), n)); #endregion #region WebForm List<BXParamValue> fields = new List<BXParamValue>(); fields.Add(new BXParamValue(GetMessageRaw("ElementFieldCaptionActive"), "Active")); fields.Add(new BXParamValue(GetMessageRaw("ElementFieldCaptionName"), "Name")); fields.Add(new BXParamValue(GetMessageRaw("ElementFieldCaptionActiveFromDate"), "ActiveFromDate")); fields.Add(new BXParamValue(GetMessageRaw("ElementFieldCaptionActiveToDate"), "ActiveToDate")); fields.Add(new BXParamValue(GetMessageRaw("ElementFieldCaptionSections"), "Sections")); fields.Add(new BXParamValue(GetMessageRaw("ElementFieldCaptionPreviewText"), "PreviewText")); fields.Add(new BXParamValue(GetMessageRaw("ElementFieldCaptionPreviewPicture"), "PreviewImage")); fields.Add(new BXParamValue(GetMessageRaw("ElementFieldCaptionDetailText"), "DetailText")); fields.Add(new BXParamValue(GetMessageRaw("ElementFieldCaptionDetailPicture"), "DetailImage")); IList<BXParamValue> requiredFieldsValues = ParamsDefinition["RequiredFields"].Values; if (requiredFieldsValues.Count > 0) requiredFieldsValues.Clear(); IList<BXParamValue> editableFieldsValues = ParamsDefinition["EditFields"].Values; if (editableFieldsValues.Count > 0) editableFieldsValues.Clear(); int fieldCount = fields.Count; for (int n = 0; n < fieldCount; n++) { requiredFieldsValues.Add(fields[n]); editableFieldsValues.Add(fields[n]); } editableFieldsValues.Add(new BXParamValue(GetMessageRaw("ElementFieldCaptionCaptcha"), "Captcha")); if (selectedIblockId > 0) { BXCustomFieldCollection customFields = BXIBlock.GetCustomFields(selectedIblockId); foreach (BXCustomField customField in customFields) { string title = BXTextEncoder.HtmlTextEncoder.Decode(customField.EditFormLabel); string code = customField.Name.ToUpper(); editableFieldsValues.Add(new BXParamValue(title, string.Concat("PROPERTY_", code))); } } #endregion }
protected override void LoadComponentDefinition() { //Iblock type List<BXParamValue> typeParamValue = new List<BXParamValue>(); typeParamValue.Add(new BXParamValue(GetMessageRaw("SelectIBlockType"), "")); BXIBlockTypeCollection iblockTypes = BXIBlockType.GetList(null, new BXOrderBy(new BXOrderByPair(BXIBlockType.Fields.Name, BXOrderByDirection.Asc)), null, null, BXTextEncoder.EmptyTextEncoder); foreach (BXIBlockType iblockType in iblockTypes) typeParamValue.Add(new BXParamValue(iblockType.Translations[BXLoc.CurrentLocale].Name, iblockType.Id.ToString())); ParamsDefinition["IBlockTypeId"].Values = typeParamValue; ParamsDefinition["IBlockTypeId"].RefreshOnDirty = true; //Iblock int selectedIBlockType = 0; if (Parameters.ContainsKey("IBlockTypeId")) int.TryParse(Parameters["IBlockTypeId"], out selectedIBlockType); BXFilter filter = new BXFilter(); if (selectedIBlockType > 0) filter.Add(new BXFilterItem(BXIBlock.Fields.Type.ID, BXSqlFilterOperators.Equal, selectedIBlockType)); if (!String.IsNullOrEmpty(DesignerSite)) filter.Add(new BXFilterItem(BXIBlock.Fields.Sites.SiteId, BXSqlFilterOperators.Equal, DesignerSite)); List<BXParamValue> iblockParamValue = new List<BXParamValue>(); iblockParamValue.Add(new BXParamValue(GetMessageRaw("SelectIBlockID"), "-")); BXIBlockCollection iblocks = BXIBlock.GetList(filter, new BXOrderBy(new BXOrderByPair(BXIBlock.Fields.Name, BXOrderByDirection.Asc)), null, null, BXTextEncoder.EmptyTextEncoder); foreach (BXIBlock iblock in iblocks) iblockParamValue.Add(new BXParamValue(iblock.Name, iblock.Id.ToString())); ParamsDefinition["IBlockId"].Values = iblockParamValue; ParamsDefinition["IBlockId"].RefreshOnDirty = true; //Properties int selectedIblockId = 0; if (Parameters.ContainsKey("IBlockId")) int.TryParse(Parameters["IBlockId"], out selectedIblockId); List<BXParamValue> sortProperties = new List<BXParamValue>(); List<BXParamValue> properties = new List<BXParamValue>(); properties.Add(new BXParamValue(GetMessageRaw("NotSelected"), "-")); if (selectedIblockId > 0) { BXCustomFieldCollection customFields = BXIBlock.GetCustomFields(selectedIblockId); foreach (BXCustomField customField in customFields) { string title = BXTextEncoder.HtmlTextEncoder.Decode(customField.EditFormLabel); string code = customField.Name.ToUpper(); properties.Add(new BXParamValue(title, code)); sortProperties.Add(new BXParamValue(title, "-" + code)); } } //List<BXParamValue> properties1 = new List<BXParamValue>(properties); //properties1.RemoveAt(0); //ParamsDefinition["ListProperties"].Values = properties1; ParamsDefinition["ListProperties"].Values = properties; ParamsDefinition["DetailProperties"].Values = properties; ParamsDefinition["PropertyKeywords"].Values = properties; ParamsDefinition["PropertyDescription"].Values = properties; ParamsDefinition["TopProperties"].Values = properties; ParamsDefinition["IBlockElementPropertyForFilePath"].Values = properties; ParamsDefinition["IBlockElementPropertyForPlaylistPreviewImageFilePath"].Values = properties; ParamsDefinition["IBlockElementPropertyForPlayerPreviewImageFilePath"].Values = properties; ParamsDefinition["IBlockElementPropertyForDownloadingFilePath"].Values = properties; //Sorting List<BXParamValue> sortingFields = new List<BXParamValue>(); sortingFields.Add(new BXParamValue(GetMessageRaw("ElementID"), "ID")); sortingFields.Add(new BXParamValue(GetMessageRaw("ElementName"), "Name")); sortingFields.Add(new BXParamValue(GetMessageRaw("ActiveFromDate"), "ActiveFromDate")); sortingFields.Add(new BXParamValue(GetMessageRaw("ActiveUntilDate"), "ActiveToDate")); sortingFields.Add(new BXParamValue(GetMessageRaw("SortIndex"), "Sort")); sortingFields.Add(new BXParamValue(GetMessageRaw("DateOfModification"), "UpdateDate")); sortingFields.AddRange(sortProperties); ParamsDefinition["ListSortBy"].Values = sortingFields; ParamsDefinition["TopSortBy"].Values = sortingFields; #region PlayerStretching string[] playerStretchingModeNameArr = Enum.GetNames(typeof(MediaPlayerStretchingMode)); int playerStretchingModeNameArrCount = playerStretchingModeNameArr != null ? playerStretchingModeNameArr.Length : 0; if (playerStretchingModeNameArrCount > 0) { BXParamValue[] paramValueArr = new BXParamValue[playerStretchingModeNameArrCount]; for (int i = 0; i < playerStretchingModeNameArrCount; i++) { string playerStretchingModeName = playerStretchingModeNameArr[i]; paramValueArr[i] = new BXParamValue(GetMessageRaw(string.Concat("MediaPlayerStretchingMode", playerStretchingModeName)), playerStretchingModeName); } BXParam palyerStretchingModeParam = ParamsDefinition["PlayerStretching"]; IList<BXParamValue> palyerStretchingModeParamVals = palyerStretchingModeParam.Values; if (palyerStretchingModeParamVals != null) { if (palyerStretchingModeParamVals.Count > 0) palyerStretchingModeParamVals.Clear(); for (int j = 0; j < playerStretchingModeNameArrCount; j++) palyerStretchingModeParamVals.Add(paramValueArr[j]); } else palyerStretchingModeParam.Values = new List<BXParamValue>(paramValueArr); } else { IList<BXParamValue> palyerStretchingModeParamVals = ParamsDefinition["PlayerStretching"].Values; if (palyerStretchingModeParamVals != null && palyerStretchingModeParamVals.Count > 0) palyerStretchingModeParamVals.Clear(); } #endregion #region PlayerDownloadingLinkTargetWindow IList<BXParamValue> playerDownloadingLinkTargetWindowVals = ParamsDefinition["PlayerDownloadingLinkTargetWindow"].Values; playerDownloadingLinkTargetWindowVals.Add(new BXParamValue(GetMessageRaw("PlayerDownloadingLinkTargetWindowSelf"), "_self")); playerDownloadingLinkTargetWindowVals.Add(new BXParamValue(GetMessageRaw("PlayerDownloadingLinkTargetWindowBlank"), "_blank")); #endregion }
protected override void LoadComponentDefinition() { ParamsDefinition["RegistrationAllow"].ClientSideAction = new ParamClientSideActionGroupViewSwitch(ClientID, "RegistrationAllow", "RegistrationEnabled", "RegistrationDisabled"); ParamsDefinition["RegistrationDoAuthentication"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "RegistrationDoAuthentication", new string[] { "RegistrationEnabled" }); ParamsDefinition["RegistrationRedirectUrl"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "RegistrationRedirectUrl", new string[] { "RegistrationEnabled" }); ParamsDefinition["FirstNameFieldMode"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "FirstNameFieldMode", new string[] { "RegistrationEnabled" }); ParamsDefinition["LastNameFieldMode"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "LastNameFieldMode", new string[] { "RegistrationEnabled" }); ParamsDefinition["DisplayNameFieldMode"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "DisplayNameFieldMode", new string[] { "RegistrationEnabled" }); ParamsDefinition["EnableSEF"].ClientSideAction = new ParamClientSideActionGroupViewSwitch(ClientID, "EnableSEF", "Sef", "NonSef"); ParamsDefinition["SEFFolder"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "SEFFolder", new string[] { "Sef" }); ParamsDefinition["ActionVariable"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "ActionVariable", new string[] { "NonSef" }); ParamsDefinition["RegisterTemplate"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "RegisterTemplate", new string[] { "Sef", "RegistrationEnabled" }, ParamClientSideActionGroupViewMemberDisplayCondition.And); ParamsDefinition["PasswordRecoveryTemplate"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "PasswordRecoveryTemplate", new string[] { "Sef" }); ParamsDefinition["PasswordResetTemplate"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "PasswordResetTemplate", new string[] { "Sef" }); ParamsDefinition["ConfirmationTemplate"].ClientSideAction = new ParamClientSideActionGroupViewMember(ClientID, "ConfirmationTemplate", new string[] { "Sef" }); ParamsDefinition["FirstNameFieldMode"].Values = new List<BXParamValue>(new BXParamValue[] { new BXParamValue(GetMessageRaw("Field.Hide"), "hide"), new BXParamValue(GetMessageRaw("Field.Show"), "show"), new BXParamValue(GetMessageRaw("Field.Require"), "require") }); ParamsDefinition["LastNameFieldMode"].Values = new List<BXParamValue>(new BXParamValue[] { new BXParamValue(GetMessageRaw("Field.Hide"), "hide"), new BXParamValue(GetMessageRaw("Field.Show"), "show"), new BXParamValue(GetMessageRaw("Field.Require"), "require") }); ParamsDefinition["DisplayNameFieldMode"].Values = new List<BXParamValue>(new BXParamValue[] { new BXParamValue(GetMessageRaw("Field.Hide"), "hide"), new BXParamValue(GetMessageRaw("Field.Show"), "show"), new BXParamValue(GetMessageRaw("Field.Require"), "require") }); BXCustomFieldCollection col = BXCustomEntityManager.GetFields(BXUser.GetCustomFieldsKey()); List<BXParamValue> fields = new List<BXParamValue>(); foreach (BXCustomField customField in col) { string title = BXTextEncoder.HtmlTextEncoder.Decode(customField.EditFormLabel); string code = customField.Name.ToUpper(); fields.Add(new BXParamValue(title, "PROPERTY_" + code)); } ParamsDefinition["EditFields"].Values = fields; List<BXParamValue> addToRoles = ParamsDefinition["AddToRoles"].Values; if (addToRoles.Count > 0) addToRoles.Clear(); foreach (BXRole r in BXRoleManager.GetList(new BXFormFilter(new BXFormFilterItem("Active", true, BXSqlFilterOperators.Equal)), new BXOrderBy_old("RoleName", "Asc"))) { BXParamValue v = new BXParamValue(r.Title, r.RoleName); addToRoles.Add(v); } ParamsDefinition["AddToRoles"].Values = addToRoles; }