public void AddNoteType([FromForm] string noteTypeName) { ProMaUser user = DataController.LoggedInUser; if (user == null) { throw new NotLoggedInException(); } if (noteTypeName.Contains("'") || noteTypeName.Contains("\"")) { throw new Exception("Invalid Note Type name"); } NoteType newNoteType = new NoteType(); newNoteType.NoteTypeName = noteTypeName; NoteTypeHandler.AddNoteType(newNoteType); NoteTypeMembership originalMembership = new NoteTypeMembership(); originalMembership.UserId = user.UserId; originalMembership.NoteTypeId = newNoteType.NoteTypeId; originalMembership.IsCreator = true; originalMembership.CanUseNotes = true; NoteTypeMembershipHandler.AddNoteTypeMembership(originalMembership); }
public PostedNote.PostedNotePayload SetNoteActive([FromBody] SetNoteActiveRequestObject requestObject) { ProMaUser user = DataController.LoggedInUser; if (user == null) { throw new NotLoggedInException(); } PostedNote relevantNote = PostedNoteHandler.GetNote(requestObject.noteId); if (relevantNote == null) { throw new Exception("No note with id " + requestObject.noteId.ToString()); } if (relevantNote.NoteTypeId.HasValue && !NoteTypeHandler.UserCanPostNotesOfType(user.UserId, relevantNote.NoteTypeId.Value)) { throw new Exception("Cannot modify or create notes of this type"); } relevantNote.Active = requestObject.active; relevantNote.EditedTime = ProMaUser.NowTime(); relevantNote.EditedUserId = user.UserId; PostedNoteHandler.UpdatePostedNote(relevantNote); return(PostedNoteHandler.GetPayloadNote(relevantNote, user.UserId)); }
public PostedNote.PostedNotePayload ToggleHighlightNote([FromForm] int noteId) { ProMaUser user = DataController.LoggedInUser; if (user == null) { throw new NotLoggedInException(); } PostedNote relevantNote = PostedNoteHandler.GetNote(noteId); if (relevantNote == null) { throw new Exception("No note with id " + noteId.ToString()); } if (relevantNote.NoteTypeId.HasValue && !NoteTypeHandler.UserCanPostNotesOfType(user.UserId, relevantNote.NoteTypeId.Value)) { throw new Exception("Cannot modify or create notes of this type"); } relevantNote.Highlighted = !relevantNote.Highlighted; relevantNote.EditedTime = ProMaUser.NowTime(); relevantNote.EditedUserId = user.UserId; PostedNoteHandler.UpdatePostedNote(relevantNote); return(PostedNoteHandler.GetPayloadNote(relevantNote, user.UserId)); }
public List <NoteType> GetNoteTypes() { ProMaUser user = DataController.LoggedInUser; if (user == null) { throw new NotLoggedInException(); } List <NoteType> returnThis = NoteTypeHandler.GetNoteTypesForUser(user.UserId).OrderByDescending(x => x.Membership.IsCreator).ThenBy(x => x.NoteTypeName).ThenBy(x => x.NoteTypeId).ToList(); return(returnThis); }
public PostedNote.PostedNotePayload EditNote([FromBody] EditNoteRequestObject requestObject) { ProMaUser user = DataController.LoggedInUser; if (user == null) { throw new NotLoggedInException(); } PostedNote relevantNote = PostedNoteHandler.GetNote(requestObject.noteId); if (relevantNote == null) { throw new Exception("No note with id " + requestObject.noteId.ToString()); } if (relevantNote.NoteTypeId.HasValue && !NoteTypeHandler.UserCanPostNotesOfType(user.UserId, relevantNote.NoteTypeId.Value)) { throw new Exception("Cannot modify or create notes of this type"); } relevantNote.NoteText = PostedNoteHandler.CleanNoteText(requestObject.noteText); if (requestObject.noteTypeId != -1) { relevantNote.NoteTypeId = requestObject.noteTypeId; } else { relevantNote.NoteTypeId = null; } relevantNote.EditedTime = ProMaUser.NowTime(); relevantNote.EditedUserId = user.UserId; relevantNote.NoteTitle = requestObject.noteTitle; PostedNoteHandler.UpdatePostedNote(relevantNote); return(PostedNoteHandler.GetPayloadNote(relevantNote, (int?)(user.UserId))); }
public PostedNote.PostedNotePayload PostNote([FromBody] PostNoteRequestObject requestObject) { ProMaUser user = DataController.LoggedInUser; if (user == null) { throw new NotLoggedInException(); } if (requestObject.noteTypeId != -1 && !NoteTypeHandler.UserCanPostNotesOfType(user.UserId, requestObject.noteTypeId)) { throw new Exception(); } PostedNote newNote = new PostedNote(); newNote.NoteText = PostedNoteHandler.CleanNoteText(requestObject.noteText); newNote.PostedTime = ProMaUser.NowTime(); newNote.UserId = user.UserId; newNote.Active = true; newNote.Completed = false; newNote.CompletedTime = null; newNote.Highlighted = false; if (requestObject.noteTypeId != -1) { newNote.NoteTypeId = requestObject.noteTypeId; } else { newNote.NoteTypeId = null; } PostedNoteHandler.AddPostedNote(newNote); return(PostedNoteHandler.GetPayloadNote(newNote, user.UserId)); }
public void DeleteNoteType([FromForm] int noteTypeId) { ProMaUser user = DataController.LoggedInUser; if (user == null) { throw new NotLoggedInException(); } NoteType relevantNoteType = NoteTypeHandler.GetNoteType(noteTypeId, user.UserId); if (relevantNoteType == null) { throw new Exception("No note with id " + noteTypeId.ToString()); } if (!relevantNoteType.Membership.IsCreator) { throw new Exception("Created by someone else"); } NoteTypeHandler.DeleteNoteType(relevantNoteType); }
public void ShareNoteType([FromBody] ShareNoteTypeRequestObject requestObject) { ProMaUser user = DataController.LoggedInUser; if (user == null) { throw new NotLoggedInException(); } NoteType relevantNoteType = NoteTypeHandler.GetNoteType(requestObject.noteTypeId, user.UserId); if (!relevantNoteType.Membership.IsCreator) { throw new Exception("Created by someone else"); } NoteTypeMembership newMembership = new NoteTypeMembership(); newMembership.NoteTypeId = requestObject.noteTypeId; newMembership.CanUseNotes = requestObject.canEdit; newMembership.UserId = requestObject.userId; NoteTypeMembershipHandler.AddNoteTypeMembership(newMembership); }
public void RenameNoteType([FromBody] RenameNoteTypeRequestObject requestObject) { ProMaUser user = DataController.LoggedInUser; if (user == null) { throw new NotLoggedInException(); } if (requestObject.newName.Contains("'") || requestObject.newName.Contains("\"")) { throw new Exception("Invalid Note Type name"); } NoteType relevantNoteType = NoteTypeHandler.GetNoteType(requestObject.noteTypeId, user.UserId); if (!relevantNoteType.Membership.IsCreator) { throw new Exception("Created by someone else"); } relevantNoteType.NoteTypeName = requestObject.newName; NoteTypeHandler.UpdateNoteType(relevantNoteType); }