// Add a new speaker public void PostSpeaker(SpeakerDTO speaker) { var newAddress = new Address() { Street = speaker.CoStreet, City = speaker.CoCity, State = speaker.CoState, Zip = speaker.CoZip }; _addressRepo.add(newAddress); _addressRepo.saveChanges(); var addedSpeaker = new Speaker() { FirstName = speaker.FirstName, LastName = speaker.LastName, AddressId = newAddress.Id, Title = speaker.Title, Phone = speaker.Phone, Email = speaker.Email, Company = speaker.Company, Bio = speaker.Bio, ImageUrl = speaker.ImageUrl, ConferenceId = speaker.ConferenceId //Id = speaker.Id }; _speakerRepo.AddSpeaker(addedSpeaker); _speakerRepo.SaveChanges(); }
public HttpResponseMessage Delete(int conferenceId, int id, [FromBody] SpeakerDTO user) { if (SessionSpeakerRepository.Instance.GetSessionSpeaker(user.UserId, id) == null) { return(ServiceError("No such speaker for this session")); } SessionSpeakerRepository.Instance.DeleteSessionSpeaker(user.UserId, id); return(Request.CreateResponse(HttpStatusCode.OK, "")); }
public IActionResult Post([FromBody] SpeakerDTO speaker) { if (ModelState.IsValid) { _speakerServ.PostSpeaker(speaker); return(Ok(speaker)); } return(HttpBadRequest(ModelState)); }
public SpeakerDTO ToDto(Speaker speaker) { var dto = new SpeakerDTO(); dto.FirstName = speaker.FirstName; dto.LastName = speaker.LastName; dto.Company = speaker.Company; dto.PresentingOnline = speaker is OnlineSpeaker; return(dto); }
// This is an Edit of a specific speaker public void UpdateSpeaker(int speakerId, SpeakerDTO speaker) { var editedSpeaker = _speakerRepo.GetById(speakerId).FirstOrDefault(); if (editedSpeaker == null) { throw new Exception("Could not find speaker with id " + speakerId); } editedSpeaker.FirstName = speaker.FirstName; editedSpeaker.LastName = speaker.LastName; editedSpeaker.Title = speaker.Title; editedSpeaker.Phone = speaker.Phone; editedSpeaker.Email = speaker.Email; editedSpeaker.Company = speaker.Company; editedSpeaker.Bio = speaker.Bio; editedSpeaker.ImageUrl = speaker.ImageUrl; editedSpeaker.ConferenceId = speaker.ConferenceId; //BROCK - VERIFY THIS WORKS WHEN EDITING A CONFERENCE WITH NULL ADDRESSID if (speaker.AddressId != null) { editedSpeaker.AddressId = speaker.AddressId; //var editedAddress = _addressRepo.GetById(speakerId).FirstOrDefault(); var editedAddress = _addressRepo.GetById(editedSpeaker.AddressId).FirstOrDefault(); editedAddress.Street = speaker.CoStreet; editedAddress.City = speaker.CoCity; editedAddress.State = speaker.CoState; editedAddress.Zip = speaker.CoZip; _addressRepo.saveChanges(); } else { var newAddress = new Address() { Street = speaker.CoStreet, City = speaker.CoCity, State = speaker.CoState, Zip = speaker.CoZip }; _addressRepo.add(newAddress); _addressRepo.saveChanges(); //VERIFY THIS WORKS editedSpeaker.AddressId = newAddress.Id; } _speakerRepo.SaveChanges(); }
public IActionResult Post(int id, [FromBody] SpeakerDTO speaker) { if (speaker == null) { throw new Exception("Could not find speaker with id " + id); } //Wendy - NEED TO MAKE SURE Admins can add new rooms _speakerServ.UpdateSpeaker(id, speaker); return(Ok()); }
public ActionResult Edit(int conferenceId, int speakerId) { if (!ConferenceModuleContext.Security.CanManage) { if (User.UserID != speakerId) { ConferenceModuleContext.ThrowAccessViolation(); } } var speaker = _repository.GetSpeaker(conferenceId, speakerId); var dto = new SpeakerDTO(speaker); return View(dto); }
public ActionResult Edit(int conferenceId, int speakerId) { if (!ConferenceModuleContext.Security.CanManage) { if (User.UserID != speakerId) { ConferenceModuleContext.ThrowAccessViolation(); } } var speaker = _repository.GetSpeaker(conferenceId, speakerId); var dto = new SpeakerDTO(speaker); DotNetNuke.Framework.ServicesFramework.Instance.RequestAjaxAntiForgerySupport(); return View(dto); }
public ActionResult Edit(int conferenceId, int speakerId) { if (!ConferenceModuleContext.Security.CanManage) { if (User.UserID != speakerId) { ConferenceModuleContext.ThrowAccessViolation(); } } var speaker = _repository.GetSpeaker(conferenceId, speakerId); var dto = new SpeakerDTO(speaker); DotNetNuke.Framework.ServicesFramework.Instance.RequestAjaxAntiForgerySupport(); return(View(dto)); }
public HttpResponseMessage Add(int conferenceId, int id, [FromBody] SpeakerDTO user) { if (SpeakerRepository.Instance.GetSpeaker(conferenceId, user.UserId) == null) { SpeakerRepository.Instance.AddSpeaker(new Connect.Conference.Core.Models.Speakers.SpeakerBase() { ConferenceId = conferenceId, UserId = user.UserId, Sort = 999 }, UserInfo.UserID); } SessionSpeakerRepository.Instance.AddSessionSpeaker(new Connect.Conference.Core.Models.SessionSpeakers.SessionSpeakerBase() { SessionId = id, SpeakerId = user.UserId, Sort = 0 }, UserInfo.UserID); Connect.Conference.Core.Controllers.DnnRoleController.CheckSpeaker(PortalSettings.PortalId, conferenceId, user.UserId); return(Request.CreateResponse(HttpStatusCode.OK, SessionSpeakerRepository.Instance.GetSessionSpeakersBySession(id).FirstOrDefault(s => s.SpeakerId == user.UserId))); }
public ActionResult Edit(int conferenceId, int speakerId, SpeakerDTO speaker) { if (!ConferenceModuleContext.Security.CanManage) { if (User.UserID != speakerId) { ConferenceModuleContext.ThrowAccessViolation(); } } SpeakerBase recordToUpdate = null; var existingRecord = _repository.GetSpeaker(conferenceId, speakerId); var modeAdd = false; if (existingRecord == null) { recordToUpdate = new SpeakerBase() { ConferenceId = conferenceId, UserId = speakerId }; modeAdd = true; } else { recordToUpdate = existingRecord.GetSpeakerBase(); } recordToUpdate.Description = speaker.Description; recordToUpdate.DescriptionShort = speaker.DescriptionShort; recordToUpdate.Url = speaker.Url; recordToUpdate.Company = speaker.Company; if (modeAdd) { _repository.AddSpeaker(recordToUpdate, User.UserID); } else { _repository.UpdateSpeaker(recordToUpdate, User.UserID); } // Now the DNN side of things var dnnUser = DotNetNuke.Entities.Users.UserController.GetUserById(PortalSettings.PortalId, speakerId); if (dnnUser == null) { // create the user } dnnUser.FirstName = speaker.FirstName.Trim(); dnnUser.LastName = speaker.LastName.Trim(); dnnUser.DisplayName = speaker.DisplayName.Trim(); dnnUser.Email = speaker.Email.Trim(); // Handle the picture if (speaker.ProfilePic.filename != "") { IFileInfo file = null; var userFolder = FolderManager.Instance.GetUserFolder(dnnUser); var folderManager = FolderManager.Instance; file = FileManager.Instance.GetFile(userFolder, speaker.ProfilePic.filename); dnnUser.Profile.Photo = file.FileId.ToString(); if (file != null & speaker.ProfilePic.crop.points != null) { System.IO.MemoryStream sizedContent = null; using (var content = FileManager.Instance.GetFileContent(file)) { sizedContent = ImageUtils.CreateImage(content, speaker.ProfilePic.crop.points, file.Extension); } FileManager.Instance.AddFile(userFolder, file.FileName, sizedContent, true, false, file.ContentType); sizedContent.Dispose(); ImageUtils.CreateThumbnails(file.FileId); } } DotNetNuke.Entities.Users.UserController.UpdateUser(PortalSettings.PortalId, dnnUser); DotNetNuke.Entities.Profile.ProfileController.UpdateUserProfile(dnnUser); return ReturnRoute(speaker.ConferenceId, View("View", _repository.GetSpeaker(speaker.ConferenceId, speaker.UserId))); }
public ActionResult Edit(int conferenceId, int speakerId, SpeakerDTO speaker) { if (!ConferenceModuleContext.Security.CanManage) { if (User.UserID != speakerId) { ConferenceModuleContext.ThrowAccessViolation(); } } SpeakerBase recordToUpdate = null; var existingRecord = _repository.GetSpeaker(conferenceId, speakerId); var modeAdd = false; if (existingRecord == null) { recordToUpdate = new SpeakerBase() { ConferenceId = conferenceId, UserId = speakerId }; modeAdd = true; } else { recordToUpdate = existingRecord.GetSpeakerBase(); } recordToUpdate.Description = speaker.Description; recordToUpdate.DescriptionShort = speaker.DescriptionShort; recordToUpdate.Url = speaker.Url; recordToUpdate.Company = speaker.Company; if (modeAdd) { _repository.AddSpeaker(recordToUpdate, User.UserID); } else { _repository.UpdateSpeaker(recordToUpdate, User.UserID); } // Now the DNN side of things var dnnUser = DotNetNuke.Entities.Users.UserController.GetUserById(PortalSettings.PortalId, speakerId); if (dnnUser == null) { // create the user } dnnUser.FirstName = speaker.FirstName.Trim(); dnnUser.LastName = speaker.LastName.Trim(); dnnUser.DisplayName = speaker.DisplayName.Trim(); dnnUser.Email = speaker.Email.Trim(); // Handle the picture if (speaker.ProfilePic.filename != "") { IFileInfo file = null; var userFolder = FolderManager.Instance.GetUserFolder(dnnUser); var folderManager = FolderManager.Instance; file = FileManager.Instance.GetFile(userFolder, speaker.ProfilePic.filename); dnnUser.Profile.Photo = file.FileId.ToString(); if (file != null & speaker.ProfilePic.crop.points != null) { System.IO.MemoryStream sizedContent = null; using (var content = FileManager.Instance.GetFileContent(file)) { sizedContent = ImageUtils.CreateImage(content, speaker.ProfilePic.crop.points, speaker.ProfilePic.crop.zoom, 200, file.Extension); } FileManager.Instance.AddFile(userFolder, file.FileName, sizedContent, true, false, file.ContentType); sizedContent.Dispose(); ImageUtils.CreateThumbnails(file.FileId); } } DotNetNuke.Entities.Users.UserController.UpdateUser(PortalSettings.PortalId, dnnUser); DotNetNuke.Entities.Profile.ProfileController.UpdateUserProfile(dnnUser); return(ReturnRoute(speaker.ConferenceId, View("View", _repository.GetSpeaker(speaker.ConferenceId, recordToUpdate.UserId)))); }
public ActionResult Edit(int conferenceId, int speakerId, SpeakerDTO speaker) { if (!ConferenceModuleContext.Security.CanManage) { if (User.UserID != speakerId) { ConferenceModuleContext.ThrowAccessViolation(); } } SpeakerBase recordToUpdate = null; var existingRecord = _repository.GetSpeaker(conferenceId, speakerId); var modeAdd = false; if (existingRecord == null) { recordToUpdate = new SpeakerBase() { ConferenceId = conferenceId, UserId = speakerId }; modeAdd = true; } else { recordToUpdate = existingRecord.GetSpeakerBase(); } recordToUpdate.Description = speaker.Description; recordToUpdate.DescriptionShort = speaker.DescriptionShort; recordToUpdate.Url = speaker.Url; recordToUpdate.Company = speaker.Company; if (modeAdd) { _repository.AddSpeaker(recordToUpdate, User.UserID); } else { _repository.UpdateSpeaker(recordToUpdate, User.UserID); } // Now the DNN side of things var dnnUser = DotNetNuke.Entities.Users.UserController.GetUserById(PortalSettings.PortalId, speakerId); if (dnnUser == null) { // create the user } dnnUser.FirstName = speaker.FirstName.Trim(); dnnUser.LastName = speaker.LastName.Trim(); dnnUser.DisplayName = speaker.DisplayName.Trim(); dnnUser.Email = speaker.Email.Trim(); // Handle the picture if (speaker.ProfilePic.filename != "") { IFileInfo file = null; var userFolder = FolderManager.Instance.GetUserFolder(dnnUser); var folderManager = FolderManager.Instance; file = FileManager.Instance.GetFile(userFolder, speaker.ProfilePic.filename); if (file != null) { dnnUser.Profile.Photo = file.FileId.ToString(); var portalId = dnnUser.IsSuperUser ? -1 : PortalSettings.PortalId; FixDnnController.SetUserProfileProperty(portalId, dnnUser.UserID, "Photo", file.FileId.ToString()); } } DotNetNuke.Entities.Users.UserController.UpdateUser(PortalSettings.PortalId, dnnUser); // DotNetNuke.Common.Utilities.DataCache.ClearCache(); return(ReturnRoute(speaker.ConferenceId, View("View", _repository.GetSpeaker(speaker.ConferenceId, recordToUpdate.UserId)))); }