public FileUploadResult ProcessUpload(HttpContext context) { var fileUploadResult = new FileUploadResult(); if (!FileToUpload.HasFilesToUpload(context)) return fileUploadResult; var file = new FileToUpload(context); if (String.IsNullOrEmpty(file.FileName) || file.ContentLength == 0) throw new InvalidOperationException("Invalid file."); if (0 < SetupInfo.MaxImageUploadSize && SetupInfo.MaxImageUploadSize < file.ContentLength) { fileUploadResult.Success = false; fileUploadResult.Message = FileSizeComment.GetFileImageSizeNote(CRMCommonResource.ErrorMessage_UploadFileSize,false).HtmlEncode(); return fileUploadResult; } if (FileUtility.GetFileTypeByFileName(file.FileName) != FileType.Image) { fileUploadResult.Success = false; fileUploadResult.Message = CRMJSResource.ErrorMessage_NotImageSupportFormat.HtmlEncode(); return fileUploadResult; } var photoUri = OrganisationLogoManager.UploadLogo(file.InputStream, true); fileUploadResult.Success = true; fileUploadResult.Data = photoUri; return fileUploadResult; }
public override FileUploadResult ProcessUpload(HttpContext context) { var fileUploadResult = new FileUploadResult(); if (!FileToUpload.HasFilesToUpload(context)) return fileUploadResult; var file = new FileToUpload(context); if (String.IsNullOrEmpty(file.FileName) || file.ContentLength == 0) throw new InvalidOperationException("Invalid file."); if (0 < SetupInfo.MaxUploadSize && SetupInfo.MaxUploadSize < file.ContentLength) throw FileSizeComment.FileSizeException; if (CallContext.GetData("CURRENT_ACCOUNT") == null) CallContext.SetData("CURRENT_ACCOUNT", new Guid(context.Request["UserID"])); var fileName = file.FileName.LastIndexOf('\\') != -1 ? file.FileName.Substring(file.FileName.LastIndexOf('\\') + 1) : file.FileName; var document = new File { Title = fileName, FolderID = Global.DaoFactory.GetFileDao().GetRoot(), ContentLength = file.ContentLength }; document = Global.DaoFactory.GetFileDao().SaveFile(document, file.InputStream); fileUploadResult.Data = document.ID; fileUploadResult.FileName = document.Title; fileUploadResult.FileURL = document.FileDownloadUrl; fileUploadResult.Success = true; return fileUploadResult; }
public FileUploadResult ProcessUpload(HttpContext context) { var fileUploadResult = new FileUploadResult(); if (!FileToUpload.HasFilesToUpload(context)) return fileUploadResult; var file = new FileToUpload(context); String assignedPath; Global.GetStore().SaveTemp("temp", out assignedPath, file.InputStream); file.InputStream.Position = 0; var jObject = ImportFromCSV.GetInfo(file.InputStream, context.Request["importSettings"]); jObject.Add("assignedPath", assignedPath); fileUploadResult.Success = true; fileUploadResult.Data = Global.EncodeTo64(jObject.ToString()); return fileUploadResult; }
public FileUploadResult ProcessUpload(HttpContext context) { var fileUploadResult = new FileUploadResult(); if (!FileToUpload.HasFilesToUpload(context)) return fileUploadResult; var file = new FileToUpload(context); if (String.IsNullOrEmpty(file.FileName) || file.ContentLength == 0) throw new InvalidOperationException("Invalid file."); if (0 < SetupInfo.MaxImageUploadSize && SetupInfo.MaxImageUploadSize < file.ContentLength) { fileUploadResult.Success = false; fileUploadResult.Message = FileSizeComment.GetFileImageSizeNote(CRMCommonResource.ErrorMessage_UploadFileSize, false).HtmlEncode(); return fileUploadResult; } if (FileUtility.GetFileTypeByFileName(file.FileName) != FileType.Image) { fileUploadResult.Success = false; fileUploadResult.Message = CRMJSResource.ErrorMessage_NotImageSupportFormat.HtmlEncode(); return fileUploadResult; } var contactId = Convert.ToInt32(context.Request["contactID"]); var uploadOnly = Convert.ToBoolean(context.Request["uploadOnly"]); var tmpDirName = Convert.ToString(context.Request["tmpDirName"]); string photoUri; try { if (contactId != 0) { photoUri = ContactPhotoManager.UploadPhoto(file.InputStream, contactId, uploadOnly); } else { if (String.IsNullOrEmpty(tmpDirName)) { tmpDirName = Guid.NewGuid().ToString(); } photoUri = ContactPhotoManager.UploadPhoto(file.InputStream, tmpDirName); } fileUploadResult.Success = true; fileUploadResult.Data = photoUri; } catch (Exception e) { fileUploadResult.Success = false; fileUploadResult.Message = e.Message.HtmlEncode(); return fileUploadResult; } var contact = Global.DaoFactory.GetContactDao().GetByID(contactId); if (contact != null) { var messageAction = contact is Company ? MessageAction.CompanyUpdatedPhoto : MessageAction.PersonUpdatedPhoto; MessageService.Send(context.Request, messageAction, contact.GetTitle()); } return fileUploadResult; }
public override FileUploadResult ProcessUpload(HttpContext context) { var file_name = string.Empty; MailAttachment attachment = null; try { if (!SecurityContext.AuthenticateMe(CookiesManager.GetCookies(CookiesType.AuthKey))) throw new UnauthorizedAccessException(MailResource.AttachemntsUnauthorizedError); if (FileToUpload.HasFilesToUpload(context)) { try { var stream_id = context.Request["stream"]; var mail_id = Convert.ToInt32(context.Request["messageId"]); if (mail_id < 1) throw new AttachmentsException(AttachmentsException.Types.MESSAGE_NOT_FOUND, "Message not yet saved!"); if (String.IsNullOrEmpty(stream_id)) throw new AttachmentsException(AttachmentsException.Types.BAD_PARAMS, "Have no stream"); var posted_file = new FileToUpload(context); file_name = context.Request["name"]; attachment = new MailAttachment { fileId = -1, size = posted_file.ContentLength, fileName = file_name, streamId = stream_id, tenant = TenantId, user = Username }; attachment = _mailBoxManager.AttachFile(TenantId, Username, mail_id, file_name, posted_file.InputStream, stream_id); return new FileUploadResult { Success = true, FileName = attachment.fileName, FileURL = attachment.storedFileUrl, Data = attachment }; } catch (AttachmentsException e) { string error_message; switch (e.ErrorType) { case AttachmentsException.Types.BAD_PARAMS: error_message = MailScriptResource.AttachmentsBadInputParamsError; break; case AttachmentsException.Types.EMPTY_FILE: error_message = MailScriptResource.AttachmentsEmptyFileNotSupportedError; break; case AttachmentsException.Types.MESSAGE_NOT_FOUND: error_message = MailScriptResource.AttachmentsMessageNotFoundError; break; case AttachmentsException.Types.TOTAL_SIZE_EXCEEDED: error_message = MailScriptResource.AttachmentsTotalLimitError; break; case AttachmentsException.Types.DOCUMENT_NOT_FOUND: error_message = MailScriptResource.AttachmentsDocumentNotFoundError; break; case AttachmentsException.Types.DOCUMENT_ACCESS_DENIED: error_message = MailScriptResource.AttachmentsDocumentAccessDeniedError; break; default: error_message = MailScriptResource.AttachmentsUnknownError; break; } throw new Exception(error_message); } catch (ASC.Core.Tenants.TenantQuotaException) { throw; } catch (Exception) { throw new Exception(MailScriptResource.AttachmentsUnknownError); } } throw new Exception(MailScriptResource.AttachmentsBadInputParamsError); } catch (Exception ex) { return new FileUploadResult { Success = false, FileName = file_name, Data = attachment, Message = ex.Message, }; } }
public override FileUploadResult ProcessUpload(HttpContext context) { var fileName = string.Empty; MailAttachment attachment = null; try { if (!SecurityContext.AuthenticateMe(CookiesManager.GetCookies(CookiesType.AuthKey))) throw new UnauthorizedAccessException(MailResource.AttachemntsUnauthorizedError); if (FileToUpload.HasFilesToUpload(context)) { try { var streamId = context.Request["stream"]; var mailId = Convert.ToInt32(context.Request["messageId"]); var copyToMy = Convert.ToInt32(context.Request["copyToMy"]); if (string.IsNullOrEmpty(streamId)) throw new AttachmentsException(AttachmentsException.Types.BadParams, "Have no stream"); if (mailId < 1) throw new AttachmentsException(AttachmentsException.Types.MessageNotFound, "Message not yet saved!"); var postedFile = new FileToUpload(context); fileName = context.Request["name"]; if (copyToMy == 1) { var uploadedFile = FileUploader.Exec(Global.FolderMy.ToString(), fileName, postedFile.ContentLength, postedFile.InputStream, true); return new FileUploadResult { Success = true, FileName = uploadedFile.Title, FileURL = FilesLinkUtility.GetFileWebPreviewUrl(uploadedFile.Title, uploadedFile.ID), Data = new MailAttachment { fileId = Convert.ToInt32(uploadedFile.ID), fileName = uploadedFile.Title, size = uploadedFile.ContentLength, contentType = uploadedFile.ConvertedType, attachedAsLink = true, tenant = TenantId, user = Username } }; } attachment = new MailAttachment { fileId = -1, size = postedFile.ContentLength, fileName = fileName, streamId = streamId, tenant = TenantId, user = Username }; attachment = MailBoxManager.AttachFile(TenantId, Username, mailId, fileName, postedFile.InputStream, streamId); return new FileUploadResult { Success = true, FileName = attachment.fileName, FileURL = attachment.storedFileUrl, Data = attachment }; } catch(AttachmentsException e) { string errorMessage; switch (e.ErrorType) { case AttachmentsException.Types.BadParams: errorMessage = MailScriptResource.AttachmentsBadInputParamsError; break; case AttachmentsException.Types.EmptyFile: errorMessage = MailScriptResource.AttachmentsEmptyFileNotSupportedError; break; case AttachmentsException.Types.MessageNotFound: errorMessage = MailScriptResource.AttachmentsMessageNotFoundError; break; case AttachmentsException.Types.TotalSizeExceeded: errorMessage = MailScriptResource.AttachmentsTotalLimitError; break; case AttachmentsException.Types.DocumentNotFound: errorMessage = MailScriptResource.AttachmentsDocumentNotFoundError; break; case AttachmentsException.Types.DocumentAccessDenied: errorMessage = MailScriptResource.AttachmentsDocumentAccessDeniedError; break; default: errorMessage = MailScriptResource.AttachmentsUnknownError; break; } throw new Exception(errorMessage); } catch(ASC.Core.Tenants.TenantQuotaException) { throw; } catch(Exception) { throw new Exception(MailScriptResource.AttachmentsUnknownError); } } throw new Exception(MailScriptResource.AttachmentsBadInputParamsError); } catch(Exception ex) { return new FileUploadResult { Success = false, FileName = fileName, Data = attachment, Message = ex.Message, }; } }