public async Task <OperationResult <IEnumerable <community> > > GetCommunitiesFromUserByRole(string userId, Role role) { var user = await userService.GetByIdAsync(userId); if (user.Success) { IEnumerable <community> communities; if (Role.Admin == role) { communities = user.Result.admin; } else { communities = user.Result.member; } return(new OperationResult <IEnumerable <community> >() { Success = true, Message = Messages.COMMUNITIES_SUCCESS, Result = communities }); } return(new OperationResult <IEnumerable <community> >() { Success = false, Message = user.Message }); }
/** * NOT SAFE!!!!!!!!!!!!!!!! */ public async Task <OperationResult <int> > DislikeQuestion(string likedAuthor, int questionId) { using (TransactionScope scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled)) { var question = await questionRepo.GetByIdAsync(questionId); var user = await userService.GetByIdAsync(likedAuthor); try { await questionRepo.deleteLiker(user.Result, question); scope.Complete(); return(new OperationResult <int>() { Success = true, Message = Messages.QUESTION_UPDATED, Result = 0 }); } catch (Exception ex) { return(new OperationResult <int>() { Success = false, Message = ex.Message }); } } }
public async Task <OperationResult <IEnumerable <@event> > > GetAllEventsFromUserAsync(string userId, Time time) { var userRes = await userService.GetByIdAsync(userId); if (userRes.Success) { if (Time.Past == time) { return(new OperationResult <IEnumerable <@event> >() { Success = true, Result = userRes.Result.eventSubscribers.Where(i => [email protected] < DateTime.Now).Select(i => i.@event), Message = Messages.USER_EVENTS_SUCCESS }); } else if (Time.Future == time) { return(new OperationResult <IEnumerable <@event> >() { Success = true, Result = userRes.Result.eventSubscribers.Where(i => [email protected] > DateTime.Now.Date).Select(i => i.@event), Message = Messages.USER_EVENTS_SUCCESS }); } else { return(new OperationResult <IEnumerable <@event> >() { Success = true, Result = userRes.Result.eventSubscribers.Select(i => i.@event), Message = Messages.USER_EVENTS_SUCCESS }); } } return(new OperationResult <IEnumerable <@event> >() { Success = false, Message = userRes.Message }); }