public FormResult PostUpload(string id, string context, string name, string contentType, byte[] content)
        {
            try
            {
                // Check permissions
                _authorizationService.AuthorizeUserForFunction(Functions.UpdatePageElements);

                // Get page and element identifiers
                string[] parts = context.Split('|');
                long pageId = Convert.ToInt64(parts[0]);
                long elementId = Convert.ToInt64(parts[1]);

                // Get upload model
                long tenantId = _authenticationService.TenantId;
                CreateUploadModel model = new CreateUploadModel
                {
                    Content = content,
                    ContentType = contentType,
                    Name = name,
                    TenantId = tenantId
                };

                // Create uploads, ready to be assigned to HTML element when form submitted
                IUploadElementService htmlService = (IUploadElementService)_elementFactory.GetElementService(FormId);
                long htmlUploadId = htmlService.PrepareImages(tenantId, elementId, model);

                // Return form result
                string status = _htmlUrlService.GetHtmlUploadUrl(elementId, htmlUploadId);
                return _formHelperService.GetFormResult(status);
            }
            catch (ValidationErrorException ex)
            {
                // Return form result containing errors
                return _formHelperService.GetFormResultWithValidationErrors(ex.Errors);
            }
            catch (Exception)
            {
                // Return form result containing unexpected error message
                return _formHelperService.GetFormResultWithErrorMessage(ApplicationResource.UnexpectedErrorMessage);
            }
        }
Esempio n. 2
0
        private FormResult PostCreateUpload(long elementId, string name, string contentType, byte[] content)
        {
            // Get tenant identifier, website identifier
            long tenantId = _authenticationService.TenantId;

            // Get upload model
            CreateUploadModel model = new CreateUploadModel {
                Content     = content,
                ContentType = contentType,
                Name        = name,
                TenantId    = tenantId
            };

            // Create uploads, ready to be assigned to photo when form submitted
            IUploadElementService albumService = (IUploadElementService)_elementFactory.GetElementService(FormId);
            ImageUploadIds        uploadIds    = albumService.PrepareImages2(tenantId, elementId, model);

            // Return form result
            string status = string.Format("{0}|{1}|{2}", uploadIds.ThumbnailImageUploadId, uploadIds.PreviewImageUploadId, uploadIds.ImageUploadId);

            return(_formHelperService.GetFormResult(status));
        }