public async Task <ApiServiceResponse <CompoPackClientUpdateModel> > CreateCompoPack(CompoPackClientUpdateModel cpcm)
        {
            //generate a new compopack on the database
            var newcompo = new CompoPack()
            {
                Id            = Guid.NewGuid().ToString(),
                CompetitionID = cpcm.CompetitionId,
                CompoPackLink = cpcm.CompoPackLink,
                Instructions  = cpcm.Instructions,
                isReleased    = cpcm.isReleased
            };

            try
            {
                db.CompoPacks.Add(newcompo);
            }
            catch (Exception ex)
            {
                MasterLogger.LogIssue(ex.Message, typeof(CompoPackController).Name, DateTime.Now, LogSeverity.EXCPETION);
                return(new ApiServiceResponse <CompoPackClientUpdateModel>
                {
                    ResponseCode = ApiServiceResponseCode.FAILURE,
                    ResponseObject = null,
                    Message = ex.Message,
                });
            }

            return(new ApiServiceResponse <CompoPackClientUpdateModel>
            {
                ResponseCode = ApiServiceResponseCode.SUCCESS,
                ResponseObject = null,
                Message = ""
            });
        }
Esempio n. 2
0
        public async Task <ApiServiceResponse <CompoPackClientUpdateModel> > CreateCompoPack(CompoPackClientUpdateModel cpcm)
        {
            //prevent XSS attacks
            var sanitizer = new HtmlSanitizer();
            //create a new compo pack
            var cpck = new CompoPack()
            {
                Id            = Guid.NewGuid().ToString(),
                CompetitionID = cpcm.CompetitionId,
                CompoPackLink = sanitizer.Sanitize(cpcm.CompoPackLink),
                Instructions  = sanitizer.Sanitize(cpcm.Instructions),
                isReleased    = false,
                Created       = DateTime.Now,
                Modified      = DateTime.Now
            };

            try
            {
                db.CompoPacks.Add(cpck);
                db.SaveChanges();
            }
            catch (Exception ex)
            {
                MasterLogger.LogIssue(ex.Message, this.GetType().Name, DateTime.Now, LogSeverity.EXCPETION);
                return(new ApiServiceResponse <CompoPackClientUpdateModel>
                {
                    ResponseCode = ApiServiceResponseCode.FAILURE,
                    Message = ex.Message,
                    ResponseObject = null
                });
            }

            return(new ApiServiceResponse <CompoPackClientUpdateModel>
            {
                ResponseCode = ApiServiceResponseCode.SUCCESS,
                Message = null,
                ResponseObject = cpcm
            });
        }