public bool UpdateListener(ListenerUpdateModel listenerUpdateModel) { if (listenerUpdateModel.ProfileImage != null) { listenerUpdateModel.ProfileImageUrl = UploadProfileImage(listenerUpdateModel.ProfileImage, listenerUpdateModel.Id); } else { listenerUpdateModel.ProfileImageUrl = null; } var collection = new MongodbConnectionProvider().GeShantyDatabase().GetCollection <BsonDocument>("listeners"); var filter = Builders <BsonDocument> .Filter.Eq("ListenerId", listenerUpdateModel.Id); var update = Builders <BsonDocument> .Update.Set("ListenerId", listenerUpdateModel.Id); foreach (PropertyInfo prop in listenerUpdateModel.GetType().GetProperties()) { var value = listenerUpdateModel.GetType().GetProperty(prop.Name).GetValue(listenerUpdateModel, null); if ((prop.Name != "Id") && (prop.Name != "JwtToken") && (prop.Name != "ProfileImage")) { if (value != null) { update = update.Set(prop.Name, value); } } } if (collection.UpdateOne(filter, update).ModifiedCount > 0) { return(true); } return(false); }
public ActionResult <CustomResponseModel> UpdateListener([FromForm] ListenerUpdateModel listenerUpdateModel) { listenerUpdateModel.Id = new UserDataAccess().JwtTokenValidation(listenerUpdateModel.JwtToken); if (listenerUpdateModel.Id == "") { return(Unauthorized(new CustomResponseModel() { Code = "401", Phrase = "Unauthorized", Message = "Invalid Jwt Token" })); } if (new UserDataAccess().GetUserType(listenerUpdateModel.Id) != "listener") { return(Unauthorized(new CustomResponseModel() { Code = "401", Phrase = "Unauthorized", Message = "Invalid Listener" })); } if (new UserDataAccess().UpdateListener(listenerUpdateModel)) { return(Ok(new CustomResponseModel() { Code = "200", Phrase = "OK", Message = "Listener Update Successful" })); } return(BadRequest(new CustomResponseModel() { Code = "400", Phrase = "BadRequest", Message = "Listener Update Failed" })); }