protected SitecoreMediaItem GetMediaSitecoreItem(MediaItemStruct mediaItem) { if (mediaItem == null || mediaItem.Extension.IsNullOrEmpty() || mediaItem.Name.IsNullOrEmpty()) { return(null); } var fileName = _tempFileLocation + mediaItem.Name + "." + mediaItem.Extension; if (mediaItem.Data != null) { byte[] rawItem = mediaItem.Data; var ms = new MemoryStream(rawItem); var fs = new FileStream(fileName, FileMode.Create); ms.WriteTo(fs); fs.Close(); ms.Close(); } var media = new SitecoreMediaItem { Extension = mediaItem.Extension, FileName = fileName, Url = mediaItem.Url, Title = mediaItem.Name, UploadDate = mediaItem.UploadDate, Uploader = mediaItem.Uploader, AltText = mediaItem.altText }; return(media); }
public SitecoreMediaItem GetDocumentInfo(string path) { MediaItemStruct mediaItem = null; try { mediaItem = SitecoreClient.GetMediaStatistics(path); } catch (WebException) { throw; } catch (Exception e) { Globals.SitecoreAddin.LogException("Trying to Download Sitecore Media Item", e); } return(GetMediaSitecoreItem(mediaItem)); }
public JsonResult <MediaItemStruct> Get(string path) { Item item = _sitecoreService.GetItem <Item>(path); if (item == null) { return(Json(new MediaItemStruct())); } var media = MediaManager.GetMedia(item); var stream = media.GetStream(); if (stream == null) { return(Json(new MediaItemStruct())); } var data = new byte[stream.Stream.Length]; stream.Stream.Read(data, 0, (int)stream.Stream.Length); var mediaItem = new MediaItemStruct { Data = data, Extension = media.Extension, Name = item.DisplayName, Path = path, Uploader = item.Statistics.UpdatedBy, UploadDate = item.Statistics.Created, Url = "http://" + WebUtil.GetHostName() + MediaManager.GetMediaUrl(item) }; IImage imageItem = _sitecoreService.GetItem <IImage>(path); if (imageItem != null) { mediaItem.altText = imageItem.Alt; } return(Json(mediaItem)); }
public JsonResult <MediaItemStruct> Get(string path) { Item item = _sitecoreService.GetItem <Item>(path); if (item == null) { return(Json(new MediaItemStruct())); } var media = MediaManager.GetMedia(item); var mediaItem = new MediaItemStruct { Extension = media.Extension, Name = item.DisplayName, Path = path, Uploader = item.Statistics.CreatedBy, UploadDate = item.Statistics.Created, Url = "http://" + WebUtil.GetHostName() + MediaManager.GetMediaUrl(item) }; return(Json(mediaItem)); }