Example #1
0
        private void AddUpdateSpeaker(SpeakerImport speaker)
        {
            var spkr = _context.Speakers.FirstOrDefault(s => s.Id == speaker.Id);

            if (spkr == null)
            {
                var newSpeaker = new Models.Speaker();

                newSpeaker.Id              = speaker.Id;
                newSpeaker.FirstName       = speaker.FirstName;
                newSpeaker.LastName        = speaker.LastName;
                newSpeaker.Biography       = speaker.Biography;
                newSpeaker.GravatarUrl     = speaker.GravatarUrl;
                newSpeaker.TwitterLink     = speaker.TwitterLink;
                newSpeaker.GitHubLink      = speaker.GitHubLink;
                newSpeaker.LinkedInProfile = speaker.LinkedInProfile;
                newSpeaker.BlogUrl         = speaker.BlogUrl;

                _context.Speakers.Add(newSpeaker);
                _context.SaveChanges();
            }
            else
            {
                spkr.FirstName       = speaker.FirstName;
                spkr.LastName        = speaker.LastName;
                spkr.Biography       = speaker.Biography;
                spkr.GravatarUrl     = speaker.GravatarUrl;
                spkr.TwitterLink     = speaker.TwitterLink;
                spkr.GitHubLink      = speaker.GitHubLink;
                spkr.LinkedInProfile = speaker.LinkedInProfile;
                spkr.BlogUrl         = speaker.BlogUrl;
                _context.SaveChanges();
            }
        }
Example #2
0
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Speaker = await _context.Speaker
                      .Include(s => s.Planner).FirstOrDefaultAsync(m => m.SpeakerId == id);

            if (Speaker == null)
            {
                return(NotFound());
            }
            return(Page());
        }
Example #3
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Speaker = await _context.Speaker.FindAsync(id);

            if (Speaker != null)
            {
                _context.Speaker.Remove(Speaker);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Speaker = await _context.Speaker
                      .Include(s => s.Planner).FirstOrDefaultAsync(m => m.SpeakerId == id);

            if (Speaker == null)
            {
                return(NotFound());
            }
            ViewData["PlannerId"] = new SelectList(_context.Planners, "PlannerId", "BishopricMemeber");
            return(Page());
        }
        public object Get(SpeakerPhoto speakerPhoto)
        {
            if (speakerPhoto.SpeakerUid == null)
            {
                throw new ArgumentNullException("speakerPhoto", "The SpeakerUid parameter must be a Guid");
            }

            using (IDbConnection db = _dbConnectionFactory.Open())
            {
                Models.Speaker speaker = db.Single <DbSpeaker>(s => !s.Deleted && s.Uid == speakerPhoto.SpeakerUid).ToSpeaker();
                if (speaker == null)
                {
                    throw HttpError.NotFound("Couldn't find a photo with the given ID.");
                }

                FileInfo fileResponse = new FileInfo(speaker.PhotoPath);
                if (speakerPhoto.MaxDimension == null)
                {
                    return(new HttpResult(fileResponse, GetMimeType(fileResponse.Name)));
                }

                var cacheFileName =
                    $"{_soundWordsConfiguration.CachePath}/{speaker.Uid}#{speakerPhoto.MaxDimension}{fileResponse.Extension}";

                if (!_fileSystem.File.Exists(cacheFileName))
                {
                    if (!_fileSystem.Directory.Exists(_soundWordsConfiguration.CachePath))
                    {
                        _fileSystem.Directory.CreateDirectory(_soundWordsConfiguration.CachePath);
                    }

                    CreateCacheFile(speaker.PhotoPath, cacheFileName, (int)speakerPhoto.MaxDimension);
                }
                else
                {
                    _logger.DebugFormat("Found image in cache: {0}", cacheFileName);
                }

                FileInfo fileInfo    = new FileInfo(cacheFileName);
                string   contentType = GetMimeType(fileInfo.Name);
                return(new HttpResult(fileInfo, contentType));
            }
        }
 private void OnShowSpeaker(object sender, Models.Speaker e)
 {
     var speaker = new SpeakerPage(e);
     var page    = new NavigationPage(speaker);
 }