public string CalculateFieldValue(CalculatedFieldArgs args) { try { if (args.Item == null) { return(string.Empty); } int defaultLength = 250; string returnedValue = string.Empty; var _params = args.Parameters.Split('|'); if (_params.Length > 0 && !string.IsNullOrEmpty(_params[0])) // Length { int.TryParse(_params[0], out defaultLength); } if (args.Item.TemplateID == Templates.PublicationDetailPage.ID) { if (args.Item.Fields[Templates.PublicationDetailPage.Fields.Abstract] != null) { returnedValue = args.Item.Fields[Templates.PublicationDetailPage.Fields.Abstract].Value; } } else { if (args.Item.Fields[Templates._SearchSummary.Fields.SearchSummary] != null) { returnedValue = args.Item.Fields[Templates._SearchSummary.Fields.SearchSummary].Value; } } if (returnedValue.Length > defaultLength) { returnedValue = returnedValue.Substring(0, defaultLength - 1) + "..."; } return(returnedValue); } catch (Exception ex) { Sitecore.Diagnostics.Log.Error(ex.Message, ex, this); return(string.Empty); } }
public string CalculateFieldValue(CalculatedFieldArgs args) { string value = string.Empty; if (args.Item != null) { if (!string.IsNullOrEmpty(args.Parameters)) { foreach (string param in args.Parameters.Split('|')) { if (string.IsNullOrWhiteSpace(param)) { continue; } if (!string.IsNullOrWhiteSpace(args.Item[param])) { value = args.Item[param]; break; } } } if (string.IsNullOrWhiteSpace(value)) { if (!string.IsNullOrWhiteSpace(args.Item.DisplayName)) { value = args.Item.DisplayName; } else { value = args.Item.Name; } } } return(value); }