public override CompositionFetchResult GetCompositionData(ApplicationMetadata application, CompositionFetchRequest request, JObject currentData)
        {
            var compositionData = base.GetCompositionData(application, request, currentData);

            if (!compositionData.ResultObject.ContainsKey("attachment_"))
            {
                return(compositionData);
            }

            var attachments = compositionData.ResultObject["attachment_"].ResultList;

            foreach (var att in attachments)
            {
                var urlDescription = AttachmentHandler.BuildFileName(att["docinfo_.urlname"] as string);
                if (urlDescription == null)
                {
                    //keep description
                    att["urldescription"] = att["description"];
                }
                else
                {
                    att["urldescription"] = urlDescription;
                }
            }
            return(compositionData);
        }
Beispiel #2
0
        private static void HandleCreationSummary(DataMap resultObject)
        {
            var list = resultObject.GetAttribute("attachment_");
            var sb   = new StringBuilder();

            foreach (var dictionary in (IEnumerable <Dictionary <string, object> >)list)
            {
                sb.Append("<p>");
                var urlDescription = AttachmentHandler.BuildFileName(dictionary["docinfo_.urlname"] as string);
                if (urlDescription == null)
                {
                    //keep description
                    dictionary["urldescription"] = dictionary["description"];
                }
                else
                {
                    dictionary["urldescription"] = urlDescription;
                }
                sb.Append(dictionary["urldescription"]);
                sb.Append("</p>");
            }
            resultObject.Attributes.Add("#attachmentsummary", sb.ToString());
        }