Example #1
0
        protected override void ImportData(XmlNode fieldNode, ImportContext context)
        {
            XmlAttribute attachmentAttr = fieldNode.Attributes["attachment"];

            BinaryData binaryData = this.GetData() as BinaryData;

            if (binaryData == null)
            {
                binaryData = new BinaryData();
            }

            if (attachmentAttr == null)
            {
                binaryData.SetStream(RepositoryTools.GetStreamFromString(fieldNode.InnerXml));
                binaryData.FileName = String.Concat(this.Content.ContentHandler.Name, ".", this.Name, ".txt");
            }
            else
            {
                string path = context.UnescapeFileName(attachmentAttr.Value);
                binaryData.FileName = Path.Combine(context.CurrentDirectory, path);

                // webdav request: we don't have a binary file
                // next to the content as an attachment, so ignore the value
                var trans  = CompatibilitySupport.GetRequestHeader("Translate");
                var webdav = (!string.IsNullOrEmpty(trans) && trans.ToLower().CompareTo("f") == 0);


                if (!webdav)
                {
                    var stream = context.GetAttachmentStream(path);
                    if (stream == null)
                    {
                        return;
                    }

                    binaryData.SetStream(stream);
                }
            }

            this.SetData(binaryData);
        }
Example #2
0
 private static string GetDevice() => (string)CompatibilitySupport.GetHttpContextItem(ApplicationStorage.DEVICEPARAMNAME);