public async Task <(bool found, bool success)> UpdateTemplateAsync(int id, TemplateUpdateRequest request)
        {
            var dbTemplate = await templateRepository.ReadAsync(t => t.Id == id);

            if (dbTemplate != null)
            {
                if (!string.IsNullOrEmpty(request.Name))
                {
                    dbTemplate.Name = request.Name;
                }

                dbTemplate.CpuCount    = request.CpuCount;
                dbTemplate.MemoryCount = request.MemoryCount;
                dbTemplate.DiskSpace   = request.DiskSpace;

                if (!string.IsNullOrEmpty(request.Name))
                {
                    dbTemplate.BaseTemplate = request.BaseTemplate;
                }

                return(true, (await templateRepository.UpdateAsync(dbTemplate)) > 0);
            }

            return(false, false);
        }
        public async Task <IActionResult> Update([FromRoute] int id, [FromBody] TemplateUpdateRequest request)
        {
            var updateResult = await templateBusiness.UpdateTemplateAsync(id, request);

            if (!updateResult.found)
            {
                return(NotFound());
            }

            if (updateResult.success)
            {
                return(Ok());
            }

            return(BadRequest());
        }
Example #3
0
        public async Task <ServiceProviderResponse> UpdateTemplateAsync(
            [FromHeader(Constant.OperationTrackingIdHeader)] string requestId,
            string account,
            string value,
            [FromBody] TemplateUpdateRequest request)
        {
            await ValidateAccount(account);

            Validator.ArgumentNotNull(request, nameof(request));
            Validator.IsTrue <ArgumentException>(request.State != ResourceState.Unknown, nameof(request.State), "Invalid template state.");

            var template = await this.store.GetTemplateAsync(account, value);

            Validator.IsTrue <ArgumentException>(template != null, nameof(template), "Template '{0}' does not exist.", value);

            template.State   = request.State;
            template.Message = request.Message;

            template = await this.store.CreateOrUpdateTemplateAsync(template);

            return(ServiceProviderResponse.CreateJsonResponse(HttpStatusCode.OK, template));
        }
Example #4
0
        /// <summary>
        ///     Updates the email template used by the system for emails sent to new users
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public TemplateUpdateResponse UpdateTemplate(
            TemplateUpdateRequest request)
        {
            //this method looks for all templates and returns the first entry
            //it then updates the template fields based on the parsed object
            //to update in the database

            //look for first template and assign request variable to fields
            var template = TemplateRepository.FindAll().FirstOrDefault();

            if (template == null)
            {
                template = new Template
                {
                    //if no template exists create one
                    Subject = request.Subject,
                    Title   = request.Title,
                    Body    = request.Body,
                    Footer  = request.Footer
                };
                TemplateRepository.Add(template);
            }
            else
            {
                //if template exists, override the existing one
                template.Subject = request.Subject;
                template.Title   = request.Title;
                template.Body    = request.Body;
                template.Footer  = request.Footer;
                TemplateRepository.Update(template);
            }

            //return successful response
            return(new TemplateUpdateResponse
            {
                Success = true,
                Message = "Template has been updated successfully."
            });
        }
Example #5
0
        public TemplateUpdateResponse UpdateTemplate(TemplateUpdateRequest request)
        {
            TemplateUpdateResponse response;

            if (!ModelState.IsValid)
            {
                var errors = ModelState.Keys.SelectMany(key =>
                                                        ModelState[key].Errors.Select(x => x.ErrorMessage));
                response = new TemplateUpdateResponse
                {
                    Success = false,
                    Message = "Form has validation errors",
                    Errors  = errors.ToArray()
                };
            }
            else
            {
                //send request to the admin service and return the
                //response (success or fail)
                response = AdminService.UpdateTemplate(request);
            }
            return(response);
        }
 /// <summary>
 /// Update template
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='apiVersion'>
 /// </param>
 /// <param name='account'>
 /// Name of CEF account
 /// </param>
 /// <param name='template'>
 /// Name of template
 /// </param>
 /// <param name='signature'>
 /// Signature
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <Template> UpdateTemplateAsync(this ISmsOperations operations, string apiVersion, string account, string template, TemplateUpdateRequest signature, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.UpdateTemplateWithHttpMessagesAsync(apiVersion, account, template, signature, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Update template
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='apiVersion'>
 /// </param>
 /// <param name='account'>
 /// Name of CEF account
 /// </param>
 /// <param name='template'>
 /// Name of template
 /// </param>
 /// <param name='signature'>
 /// Signature
 /// </param>
 public static Template UpdateTemplate(this ISmsOperations operations, string apiVersion, string account, string template, TemplateUpdateRequest signature)
 {
     return(operations.UpdateTemplateAsync(apiVersion, account, template, signature).GetAwaiter().GetResult());
 }