public string testThumbnail(string qqfile = null) { if (Request.RequestType.Equals("OPTIONS", StringComparison.InvariantCultureIgnoreCase)) { return null; } try { var length = Request.ContentLength; var bytes = new byte[length]; Request.InputStream.Read(bytes, 0, length); Stream s = new MemoryStream(bytes); ThumbnailEngine te = new ThumbnailEngine(); Bitmap b = te.CreateProfileThumbnail(s, 100, 100); MemoryStream ms = new MemoryStream(); b.Save(ms, ImageFormat.Bmp); BlobStorageAccessor ba = new BlobStorageAccessor(); string location = ba.uploadImage(ms, false).ToString(); return location; } catch (Exception ex) { return null; } }
public string UpdateCoverPicture(int networkId, Stream coverPicture) { try { string messageQueueName = "uploadqueue"; //queue name must be in lower case CloudQueueClient queueClient; CloudQueue queue; CloudStorageAccount storageAccount; BlobStorageAccessor blobStorageAccessor = new BlobStorageAccessor(); storageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("BlobConnectionString")); queueClient = storageAccount.CreateCloudQueueClient(); queue = queueClient.GetQueueReference(messageQueueName); queue.CreateIfNotExist(); string fileName = Guid.NewGuid().ToString(); string artifactURL = string.Format("{0}{1}", fileName, ".jpeg"); string blobReference = blobStorageAccessor.uploadImage(coverPicture, false).ToString(); string coverPictureLocation = RoleEnvironment.GetConfigurationSettingValue("storageAccountUrl").ToString()+"thumbnails/" + artifactURL; CloudQueueMessage message = new CloudQueueMessage(String.Format("{0},{1},{2},{3},{4},{5},{6},{7}", blobReference, networkId, "thumbnail", "Network", 170, 170, "", artifactURL)); queue.AddMessage(message); bool updated = networkAccessor.UpdateNetworkCoverPicture(networkId, coverPictureLocation); if (updated) { return coverPictureLocation; } else { return "Error"; } } catch (Exception ex) { logAccessor.CreateLog(DateTime.Now, "Network Manager - AddNetworkAdmin", ex.StackTrace); return "Error"; } }
public JsonModels.UploadReponse UploadPictureElement(int projectId, Stream pictureStream, string fileName, bool isCoverPicture = false) { try { BlobStorageAccessor blobStorageAccessor = new BlobStorageAccessor(); UploadManager uploadManager = new UploadManager(); ProjectAccessor projectAccessor = new ProjectAccessor(); //initiate queue message storageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("BlobConnectionString")); queueClient = storageAccount.CreateCloudQueueClient(); queue = queueClient.GetQueueReference(messageQueueName); queue.CreateIfNotExist(); string imageURI = blobStorageAccessor.uploadImage(pictureStream, false).ToString(); Project p = pa.GetProject(projectId); if (isCoverPicture) { string FileNameThumb1 = Guid.NewGuid().ToString(); string artifactURL1 = string.Format("{0}{1}", FileNameThumb1, ".jpeg"); CloudQueueMessage message3 = new CloudQueueMessage(String.Format("{0},{1},{2},{3},{4},{5},{6},{7}", imageURI, p.id, "thumbnail", "ProjectPicture", 266, 266, "", artifactURL1)); queue.AddMessage(message3); p.coverPictureThumbnail = RoleEnvironment.GetConfigurationSettingValue("storageAccountUrl").ToString() + "thumbnails/" + artifactURL1; p.coverPicture = imageURI; p.dateModified = DateTime.Now; Project newP = projectAccessor.UpdateProject(p); return new JsonModels.UploadReponse { id = p.id, fileURL = imageURI, name = fileName, galeriaURL = "noGalleryURL", artifactURL = artifactURL1, description = "default description" }; } else { string FileNameThumb = Guid.NewGuid().ToString(); string artifactURL = string.Format("{0}{1}", FileNameThumb, ".jpeg"); ProjectElement_Picture pe = new ProjectElement_Picture { title = GetTitle(fileName), pictureLocation = imageURI, pictureThumbnailLocation = RoleEnvironment.GetConfigurationSettingValue("storageAccountUrl").ToString()+"thumbnails/" + artifactURL }; int projectElementId = pa.AddProjectElement(p, pe); if (projectElementId == -1) { logAccessor.CreateLog(DateTime.Now, "ProjectManager - UploadPictureElement", "problem saving project element - 165 ProjectManager"); return null; } //string FileNameGaleria = Guid.NewGuid().ToString(); //string galleryURL = string.Format("{0}{1}", FileNameGaleria, ".jpeg"); CloudQueueMessage message = new CloudQueueMessage(String.Format("{0},{1},{2},{3},{4},{5},{6},{7}", imageURI, projectElementId, "thumbnail", "PictureElement", 635, 397, "", artifactURL)); //CloudQueueMessage message2 = new CloudQueueMessage(String.Format("{0},{1},{2},{3},{4},{5},{6},{7}", imageURI, projectElementId, "thumbnail", "PictureElement_Galleria", 1000, 750, "", galleryURL)); queue.AddMessage(message); //queue.AddMessage(message2); return new JsonModels.UploadReponse { id = projectElementId, fileURL = imageURI, name = fileName, galeriaURL = "galleryURL", artifactURL = artifactURL, description = null }; } } catch (Exception ex) { logAccessor.CreateLog(DateTime.Now, "ProjectManager - UploadPictureElement", ex.StackTrace); return null; } }