public async Task <ActionResult <GroupInvitations> > PostGroupInvitations(GroupInvitations groupInvitations) { _context.GroupInvitations.Add(groupInvitations); await _context.SaveChangesAsync(); return(CreatedAtAction("GetGroupInvitations", new { id = groupInvitations.GroupInvitationId }, groupInvitations)); }
public async Task <IActionResult> PutGroupInvitations(int id, GroupInvitations groupInvitations) { if (id != groupInvitations.GroupInvitationId) { return(BadRequest()); } _context.Entry(groupInvitations).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!GroupInvitationsExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public ResponseModel <int> Post([FromBody] GroupInvitationsModel dataToAdd) { var resp = new ResponseModel <int>(); try { if (dataToAdd == null) { throw new Exception("Data is null"); } if (GroupInvitationsRepository.Exist(dataToAdd)) { throw new Exception("User has already been invited or exists in a group"); } var model = new GroupInvitations { Name = dataToAdd.Name, Date = DateTime.Now, Email = dataToAdd.Email, GroupId = dataToAdd.GroupId, IdUserInviting = dataToAdd.IdUserInviting, }; model.Token = GenerateToken(model).Replace("/", "").Replace("\\", ""); if (GroupInvitationsRepository.Insert(model)) { var mail = new MailClass(); mail.SendMail(model.Token, model.Email); resp.Status = 200; resp.Description = $"OK"; resp.Data = model.Id; } else { throw new Exception("Not inserted"); } } catch (Exception ex) { resp.Status = 500; resp.Description = $"Error: {ex.Message}"; resp.Data = 0; } return(resp); }
private string GetTokenHash(GroupInvitations model) { return($"{model.Name}/{model.Date}/{model.GroupId}/{model.Email}"); }
private string GenerateToken(GroupInvitations hash) { return(CryptoClass.CreateHash(GetTokenHash(hash))); }