protected virtual string GetImage(ThumbnailField field)
        {
            var options = new MediaUrlOptions(16, 16, false);
            var url     = MediaManager.GetMediaUrl(field.MediaItem, new MediaUrlOptions(this.ImageWidth, this.ImageHeight, false));

            return(string.Format("<img src=\"{0}\" alt=\"{1}\" border=\"0\"/>", url, field.Alt));
        }
Beispiel #2
0
        private MediaItem Upload([NotNull] Item item, [NotNull] string fieldId, [NotNull] string filename)
        {
            Debug.ArgumentNotNull(filename, nameof(filename));

            MediaItem mediaItem = null;

            using (new SecurityDisabler())
            {
                ThumbnailField field = item.Fields[fieldId];
                if (field != null)
                {
                    mediaItem = field.MediaItem;
                }

                if (mediaItem == null)
                {
                    var path = GenerateMediaFolderPath(item.ID);

                    var options = new MediaCreatorOptions
                    {
                        Database      = Client.ContentDatabase,
                        Destination   = path,
                        KeepExisting  = false,
                        Versioned     = false,
                        AlternateText = "Thumbnail for " + item.Paths.Path
                    };

                    var notificationContext = Context.Notifications;
                    if (notificationContext != null)
                    {
                        notificationContext.Disabled = true;
                    }

                    mediaItem = MediaManager.Creator.CreateFromFile(filename, options);

                    if (notificationContext != null)
                    {
                        notificationContext.Disabled = false;
                    }
                }
                else
                {
                    using (var fileStream = new FileStream(FileUtil.MapPath(filename), FileMode.Open, FileAccess.Read, FileShare.Read))
                    {
                        var media = MediaManager.GetMedia(mediaItem);

                        media.SetStream(fileStream, "png");
                    }
                }

                return(mediaItem);
            }
        }