示例#1
0
        public async Task <IActionResult> Edit(Guid id, [Bind("FirstName,LastName,Gender,Age,Bio,GiftName,GiftDescription,GiftImage,GiftUrl,GiftReservedFrom,ActiveFrom,ActiveTo,IsActive,ActionTypeId,StatusId,CreatedBy,CreatedAt,EditedBy,EditedAt,Id")] Donatee donatee)
        {
            if (id != donatee.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(donatee);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!DonateeExists(donatee.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["ActionTypeId"] = new SelectList(_context.ActionTypes, "Id", "ActionTypeValue", donatee.ActionTypeId);
            ViewData["StatusId"]     = new SelectList(_context.Statuses, "Id", "StatusValue", donatee.StatusId);
            return(View(donatee));
        }
示例#2
0
        public async Task <IActionResult> Create([Bind("FirstName,LastName,Gender,Age,Bio,GiftName,GiftDescription,GiftImage,GiftUrl,GiftReservedFrom,ActiveFrom,ActiveTo,IsActive,ActionTypeId,StatusId,CreatedBy,CreatedAt,EditedBy,EditedAt,Id")] Donatee donatee)
        {
            if (ModelState.IsValid)
            {
                donatee.Id = Guid.NewGuid();
                _context.Add(donatee);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["ActionTypeId"] = new SelectList(_context.ActionTypes, "Id", "ActionTypeValue", donatee.ActionTypeId);
            ViewData["StatusId"]     = new SelectList(_context.Statuses, "Id", "StatusValue", donatee.StatusId);
            return(View(donatee));
        }
        public async Task <Guid> SaveDonatee([FromBody] DonateeModel donateeModel)
        {
            var donatee = new Donatee(
                donateeModel.Name,
                donateeModel.Title,
                donateeModel.EmailAddress,
                donateeModel.Story,
                donateeModel.EndDate,
                donateeModel.Address,
                donateeModel.Keywords,
                donateeModel.Image);

            this.db.Donatee.Add(donatee);
            await this.db.SaveChangesAsync();

            try
            {
                if (!string.IsNullOrEmpty(donateeModel.EmailAddress))
                {
                    var client = GetClient();

                    var fullAddress = $"{this.configuration.GetValue<string>("PartWithEndpoint")}/content/{donatee.Id}";
                    var htmlBody    = "<p>Thank you for using PartWith!<br/> Here is a direct " + "<a href=" + fullAddress + ">link</a>" + " to your campaign. </p>";
                    var mail        = new MailMessage("*****@*****.**", donateeModel.EmailAddress, "Track PartWith campaign: " + donateeModel.Title, htmlBody);
                    mail.IsBodyHtml = true;
                    client.Send(mail);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }


            return(donatee.Id);
        }