public object ComputeFieldValue(Sitecore.ContentSearch.IIndexable indexable) { var item = IndexingUtility.ValidIndexableItem(indexable, this); if (item == null) { return(null); } string isAMHosted = "0"; if (item != null) { Sitecore.Data.Fields.LookupField field = item.Fields["Host"]; if (field != null && field.InnerField != null && !string.IsNullOrWhiteSpace(field.InnerField.Value) && field.InnerField.Value == "Genworth") { isAMHosted = "1"; } } return(isAMHosted); }
private void InitializeButtonViewRendering() { DisplayItem = Rendering.Item; var generalLinkParameter = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.GeneralLink] ?? null; var buttonText = (string)null; var buttonLink = (string)null; var buttonTarget = (string)null; if (!string.IsNullOrEmpty(generalLinkParameter)) { var generalLinkXml = HttpUtility.HtmlDecode(generalLinkParameter); var renderingParameterTemplateField = Rendering.RenderingItem.InnerItem.Fields[MobileFieldNames.ViewRenderingFields.ParametersTemplate]; var renderingParameterTemplateLookupField = new Sitecore.Data.Fields.LookupField(renderingParameterTemplateField); var renderingParameterTemplateItem = new Sitecore.Data.Items.TemplateItem(renderingParameterTemplateLookupField.TargetItem); var standardValuesGeneralLinkField = renderingParameterTemplateItem.StandardValues.Fields[MobileFieldNames.ButtonViewRenderingParameters.GeneralLink]; var generalLinkField = new Sitecore.Data.Fields.LinkField(standardValuesGeneralLinkField, generalLinkXml); buttonText = generalLinkField.Text; buttonTarget = !string.IsNullOrEmpty(generalLinkField.Target) ? generalLinkField.Target : null; if (!string.IsNullOrEmpty(generalLinkField.Anchor)) { buttonLink = string.Format("#{0}", generalLinkField.Anchor); } else { buttonLink = generalLinkField.Url; } } ButtonModel = new SitecoreMobile.Models.ButtonModel() { Item = DisplayItem, ButtonText = buttonText, ButtonLink = buttonLink, ButtonTarget = buttonTarget, LinkFieldName = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.LinkFieldName] ?? null, TextFieldName = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.TextFieldName] ?? null, ButtonIcon = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonIcon], ButtonTheme = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonTheme], ButtonInline = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonInline] == "1" ? true : false, ButtonMini = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonMini] == "1" ? true : false, ButtonIconPosition = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonIconPosition], ButtonIconShadow = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonIconShadow] == "1" || string.IsNullOrEmpty(Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonIconShadow]) ? true : false, ButtonCorners = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonCorners] == "1" || string.IsNullOrEmpty(Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonCorners]) ? true : false, ButtonShadow = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonShadow] == "1" || string.IsNullOrEmpty(Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonShadow]) ? true : false, ButtonPopupOverlay = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonPopupOverlay] == "1" || string.IsNullOrEmpty(Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonPopupOverlay]) ? true : false, ButtonTransition = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonTransition] ?? null, ButtonMode = Rendering.Parameters[MobileFieldNames.ButtonViewRenderingParameters.ButtonMode] ?? null }; }
public object ComputeFieldValue(Sitecore.ContentSearch.IIndexable indexable) { var item = IndexingUtility.ValidIndexableItem(indexable, this); if (item == null) { return(null); } string result = Genworth.SitecoreExt.Constants.NewsArchive.Indexes.ArticlesIndex.Types.General; if (item != null && item.InstanceOfTemplate("Article with Left Sidebar")) { Sitecore.Data.Fields.LookupField field = item.Fields["Category"]; if (field != null && !string.IsNullOrEmpty(field.Value)) { result = field.Value; } } return(result); }
private void InitializeBeaconViewRendering() { DisplayItem = Rendering.Item; var linkFieldNameParameter = Rendering.Parameters[MobileFieldNames.BarcodeViewRenderingParameters.LinkFieldName] ?? null; var generalLinkParameter = Rendering.Parameters[MobileFieldNames.BarcodeViewRenderingParameters.GeneralLink] ?? null; BarcodeFormatParameter = Rendering.Parameters[MobileFieldNames.BarcodeViewRenderingParameters.BarcodeFormat] ?? defaultBarcodeFormat; ImageFormatParameter = Rendering.Parameters[MobileFieldNames.BarcodeViewRenderingParameters.ImageFormat] ?? defaultImageFormat; int w = defaultWidthPx; int h = defaultHeightPx; int.TryParse(Rendering.Parameters[MobileFieldNames.BarcodeViewRenderingParameters.WidthPx], out w); int.TryParse(Rendering.Parameters[MobileFieldNames.BarcodeViewRenderingParameters.HeightPx], out h); ZXing.BarcodeFormat barcodeFormat = ZXing.BarcodeFormat.QR_CODE; ImageFormat imageFormat = ImageFormat.Png; barcodeFormat = (ZXing.BarcodeFormat)Enum.Parse(typeof(ZXing.BarcodeFormat), BarcodeFormatParameter.Trim()); switch (ImageFormatParameter.ToLower()) { case "bmp": imageFormat = ImageFormat.Bmp; break; case "emf": imageFormat = ImageFormat.Emf; break; case "gif": imageFormat = ImageFormat.Gif; break; case "icon": imageFormat = ImageFormat.Icon; break; case "jpeg": case "jpg": imageFormat = ImageFormat.Jpeg; break; case "png": imageFormat = ImageFormat.Png; break; case "tiff": imageFormat = ImageFormat.Tiff; break; case "wmf": imageFormat = ImageFormat.Wmf; break; case "svg": break; default: throw new ArgumentException("Image format isn't supported", ImageFormatParameter.ToLower()); } var buttonText = (string)null; var buttonLink = (string)null; var buttonTarget = (string)null; if (!string.IsNullOrEmpty(generalLinkParameter)) { var generalLinkXml = HttpUtility.HtmlDecode(generalLinkParameter); var renderingParameterTemplateField = Rendering.RenderingItem.InnerItem.Fields[MobileFieldNames.ViewRenderingFields.ParametersTemplate]; var renderingParameterTemplateLookupField = new Sitecore.Data.Fields.LookupField(renderingParameterTemplateField); var renderingParameterTemplateItem = new Sitecore.Data.Items.TemplateItem(renderingParameterTemplateLookupField.TargetItem); var standardValuesGeneralLinkField = renderingParameterTemplateItem.StandardValues.Fields[MobileFieldNames.BarcodeViewRenderingParameters.GeneralLink]; var generalLinkField = new Sitecore.Data.Fields.LinkField(standardValuesGeneralLinkField, generalLinkXml); buttonText = generalLinkField.Text; buttonTarget = !string.IsNullOrEmpty(generalLinkField.Target) ? generalLinkField.Target : null; if (!string.IsNullOrEmpty(generalLinkField.Anchor)) { buttonLink = string.Format("#{0}", generalLinkField.Anchor); } else { buttonLink = generalLinkField.Url; } } if (string.IsNullOrEmpty(buttonLink) && !string.IsNullOrEmpty(linkFieldNameParameter) && DisplayItem != null) { var itemField = DisplayItem.Fields[linkFieldNameParameter]; if (itemField == null) { return; } var fieldItem = DisplayItem.Database.GetItem(itemField.ID); if (fieldItem == null) { return; } var linkField = new Sitecore.Data.Fields.LinkField(itemField); if (linkField.TargetItem == null) { EmbeddedBarcodeImage = new HtmlString("Undefined barcode link field target item"); SvgBarcodeImage = new HtmlString("Undefined barcode link field target item"); return; } buttonLink = DisplayItem.GetRoutePathInfo( new Sitecore.Links.UrlOptions() { AlwaysIncludeServerUrl = true }); } if (string.IsNullOrEmpty(buttonLink) && DisplayItem != null) { buttonLink = DisplayItem.GetRoutePathInfo( new Sitecore.Links.UrlOptions() { AlwaysIncludeServerUrl = true }); } if (string.IsNullOrEmpty(buttonLink)) { EmbeddedBarcodeImage = new HtmlString("Missing barcode link"); SvgBarcodeImage = new HtmlString("Missing barcode link"); return; } BarcodeModel = new BarcodeModel(buttonLink, imageFormat, barcodeFormat, w, h); System.Web.Mvc.TagBuilder tagBuilder = new System.Web.Mvc.TagBuilder("img"); // tagBuilder.MergeAttributes<string, object>(tagParameters); string base64ImageString = string.Concat("data:", GetMimeType(imageFormat), ";base64,", Convert.ToBase64String(BarcodeModel.BarcodeImageEncoded)); tagBuilder.Attributes.Add(new KeyValuePair <string, string>("src", base64ImageString)); EmbeddedBarcodeImage = new HtmlString(tagBuilder.ToString()); SvgBarcodeImage = new HtmlString(BarcodeModel.BarcodeImageSvg); }