Пример #1
0
        // 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));
 }
Пример #4
0
        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);
        }
Пример #5
0
        // 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());
        }
Пример #7
0
 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);
 }
Пример #8
0
 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);
 }
Пример #9
0
        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)));
 }
Пример #11
0
 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)));
 }
Пример #12
0
        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))));
        }
Пример #13
0
        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))));
        }