public void Write(ContentItem item, string propertyName, System.IO.TextWriter writer)
        {
            var folder = item[propertyName] as string;

            if (string.IsNullOrEmpty(folder))
            {
                return;
            }

            foreach (var potentialImage in Engine.Resolve <IFileSystem>().GetFiles(folder))
            {
                if (!N2.Web.Drawing.ImagesUtility.IsImagePath(potentialImage.VirtualPath))
                {
                    continue;
                }

                if (string.IsNullOrEmpty(PreferredSize))
                {
                    DisplayableImageAttribute.WriteImage(potentialImage.VirtualPath, writer);
                }
                else
                {
                    if (N2.Web.Drawing.ImagesUtility.GetSize(potentialImage.VirtualPath, new[] { PreferredSize }) == PreferredSize)
                    {
                        DisplayableImageAttribute.WriteImage(potentialImage.VirtualPath, writer, PreferredSize);
                    }
                }
            }
        }
示例#2
0
        public void Write(ContentItem item, string propertyName, TextWriter writer)
        {
            string url = item[propertyName] as string;

            if (string.IsNullOrEmpty(url))
            {
                return;
            }

            string extension = VirtualPathUtility.GetExtension(url);

            switch (extension.ToLower())
            {
            case ".gif":
            case ".png":
            case ".jpg":
            case ".jpeg":
                DisplayableImageAttribute.WriteImage(item, propertyName, PreferredSize, alt, CssClass, writer);
                return;

            default:
                WriteUrl(item, propertyName, cssClass, writer, url);
                return;
            }
        }
示例#3
0
        public virtual void Write(ContentItem item, string propertyName, TextWriter writer)
        {
            string url = item[propertyName] as string;

            if (string.IsNullOrEmpty(url))
            {
                return;
            }

            string extension = VirtualPathUtility.GetExtension(url);

            switch (ImagesUtility.GetExtensionGroup(extension))
            {
            case ImagesUtility.ExtensionGroups.Images:
                var sizes = DisplayableImageAttribute.GetSizes(PreferredSize);
                DisplayableImageAttribute.WriteImage(item, propertyName, sizes, alt, CssClass, writer);
                return;

            case ImagesUtility.ExtensionGroups.Flash:
                WriteFlash(url, writer);
                return;

            case ImagesUtility.ExtensionGroups.Video:
                WriteMovie(url, writer);
                return;

            case ImagesUtility.ExtensionGroups.Audio:
                WriteAudio(url, writer);
                return;

            default:
                WriteUrl(item, propertyName, cssClass, writer, url);
                return;
            }
        }
示例#4
0
        public virtual void Write(ContentItem item, string propertyName, TextWriter writer)
        {
            string url = item[propertyName] as string;

            if (string.IsNullOrEmpty(url))
            {
                return;
            }

            switch (ExtensionGroup ?? ImagesUtility.GetExtensionGroup(VirtualPathUtility.GetExtension(url)))
            {
            case ImagesUtility.ExtensionGroups.Flash:
                WriteFlash(url, writer);
                return;

            case ImagesUtility.ExtensionGroups.Video:
                WriteMovie(url, writer);
                return;

            case ImagesUtility.ExtensionGroups.Audio:
                WriteAudio(url, writer);
                return;

            case ImagesUtility.ExtensionGroups.ClientCode:
            case ImagesUtility.ExtensionGroups.Compressed:
            case ImagesUtility.ExtensionGroups.Excel:
            case ImagesUtility.ExtensionGroups.Pdf:
            case ImagesUtility.ExtensionGroups.ServerCode:
            case ImagesUtility.ExtensionGroups.Text:
            case ImagesUtility.ExtensionGroups.Word:
                WriteUrl(item, propertyName, CssClass, writer, url);
                return;

            case ImagesUtility.ExtensionGroups.Images:
            default:
                var sizes = DisplayableImageAttribute.GetSizes(PreferredSize);
                DisplayableImageAttribute.WriteImage(item, propertyName, sizes, (AltSource != null ? item[AltSource] as string : null) ?? alt, CssClass, writer);
                return;
            }
        }
        public virtual void Write(ContentItem item, string propertyName, TextWriter writer)
        {
            string url = item[propertyName] as string;

            if (string.IsNullOrEmpty(url))
            {
                return;
            }

            string extension = VirtualPathUtility.GetExtension(url);

            switch (ImagesUtility.GetExtensionGroup(extension))
            {
            case ImagesUtility.ExtensionGroups.Images:
                DisplayableImageAttribute.WriteImage(item, propertyName, PreferredSize, alt, CssClass, writer);
                return;

            default:
                WriteUrl(item, propertyName, cssClass, writer, url);
                return;
            }
        }
示例#6
0
        public override Control AddTo(ContentItem item, string detailName, Control container)
        {
            string url = item[detailName] as string;

            if (!string.IsNullOrEmpty(url))
            {
                string extension = VirtualPathUtility.GetExtension(url);
                switch (extension.ToLower())
                {
                case ".gif":
                case ".png":
                case ".jpg":
                case ".jpeg":
                    break;

                default:
                    return(null);
                }

                return(DisplayableImageAttribute.AddImage(container, item, detailName, PreferredSize, CssClass, Alt));
            }
            return(null);
        }
        public override void Write(ContentItem item, string detailName, System.IO.TextWriter writer)
        {
            var sizes = DisplayableImageAttribute.GetSizes(PreferredSize);

            DisplayableImageAttribute.WriteImage(item, detailName, sizes, alt, CssClass, writer);
        }
 public override Control AddTo(ContentItem item, string detailName, Control container)
 {
     return(DisplayableImageAttribute.AddImage(container, item, detailName, PreferredSize, CssClass, Alt));
 }
示例#9
0
 public static Control AddImage(Control container, ContentItem item, string detailName, string cssClass, string altText)
 {
     return(DisplayableImageAttribute.AddImage(container, item, detailName, null, cssClass, altText));
 }
示例#10
0
 public void Write(ContentItem item, string propertyName, System.IO.TextWriter writer)
 {
     DisplayableImageAttribute.WriteImage(item, propertyName, PreferredSize, alt, CssClass, writer);
 }