Beispiel #1
0
        public ActionResult SaveAddPerson(SaveEditParameters param)
        {
            if (string.IsNullOrWhiteSpace(param.FirstName) ||
                string.IsNullOrWhiteSpace(param.LastName))
            {
                throw new Exception("Name is required");
            }

            var person = new Person();

            person.FirstName  = (param.FirstName ?? string.Empty).Trim();
            person.LastName   = (param.LastName ?? string.Empty).Trim();
            person.MiddleName = (param.MiddleName ?? string.Empty).Trim();
            person.Honorific  = (param.Honorific ?? string.Empty).Trim();
            person.Suffix     = (param.Suffix ?? string.Empty).Trim();
            person.Nickname   = (param.Nickname ?? string.Empty).Trim();
            person.Biography  = (param.Biography ?? string.Empty).Trim();
            person.Photo      = DatabaseSession.Load <Photo>(Photo.NoPic);
            // TODO: build in auditing
            person.InsertedDateTime     = DateTime.UtcNow;
            person.LastModifiedDateTime = DateTime.UtcNow;
            DatabaseSession.Save(person);
            DatabaseSession.Flush();

            return(this.RedirectToAction(x => x.PersonDetails(person.PersonId)));
        }
Beispiel #2
0
        public ActionResult AddCrew(int personId, int showId, string position)
        {
            var entity = new ShowCrew(DatabaseSession.Load <Person>(personId), DatabaseSession.Load <Show>(showId), position);

            DatabaseSession.Save(entity);
            return(new ViewModelResult(new HttpApiResult
            {
                RedirectToURL = this.GetURL(c => c.PersonDetails(personId)),
            }));
        }
Beispiel #3
0
        public ActionResult AddClubPosition(int personId, string position, short year)
        {
            var entity = new PersonClubPosition(DatabaseSession.Load <Person>(personId), position, year);

            DatabaseSession.Save(entity);
            return(new ViewModelResult(new HttpApiResult
            {
                RedirectToURL = this.GetURL(c => c.PersonDetails(personId)),
            }));
        }
Beispiel #4
0
        public ActionResult AddAward(int personId, int awardTypeId, short year, int?showId)
        {
            Show show  = showId.HasValue ? DatabaseSession.Load <Show>(showId.Value) : null;
            var  award = new Award(show, DatabaseSession.Load <Person>(personId), DatabaseSession.Load <AwardType>(awardTypeId), year);

            DatabaseSession.Save(award);
            return(new ViewModelResult(new HttpApiResult
            {
                Message = "Award Added",
                RedirectToURL = this.GetURL(c => c.PersonDetails(personId)),
            }));
        }
        public ActionResult AddAward(int showId, int awardTypeId, short year, int?personId)
        {
            Person person = null;

            if (personId.HasValue)
            {
                person = DatabaseSession.Load <Person>(personId.Value);
            }
            var award = new Award(DatabaseSession.Load <Show>(showId), person, DatabaseSession.Load <AwardType>(awardTypeId), year);

            DatabaseSession.Save(award);

            return(new ViewModelResult(new HttpApiResult
            {
                Message = "Award Added",
                RedirectToURL = this.GetURL(c => c.ShowDetails(showId)),
            }));
        }
Beispiel #6
0
        public ActionResult POSTAddEditAwardType(AwardTypeViewModel postModel)
        {
            if (string.IsNullOrWhiteSpace(postModel.Name))
            {
                return(new HttpBadRequestResult("Name Must Not Be Null"));
            }

            var awardType = new AwardType();

            awardType.Name = postModel.Name;
            DatabaseSession.Save(awardType);

            if (Request.IsAjaxRequest())
            {
                return(Json("OK"));
            }

            return(this.RedirectToAction(c => c.Admin()));
        }
        public ActionResult Upload(int personId, PhotosController.UploadPOSTParameters param)
        {
            var validationResult = param.Validate();

            if (validationResult != null)
            {
                return(validationResult);
            }

            var photo = PhotosController.Upload(this, param);

            var personPhoto = new PersonPhoto();

            personPhoto.Person           = DatabaseSession.Load <Person>(personId);
            personPhoto.Photo            = photo;
            personPhoto.InsertedDateTime = DateTime.UtcNow;
            DatabaseSession.Save(personPhoto);

            return(Redirect(Url.GetUrl(ListPersonPhotos, personId, (int?)photo.PhotoId)));
        }
        public ActionResult Upload(int showId, PhotosController.UploadPOSTParameters param)
        {
            var validationResult = param.Validate();

            if (validationResult != null)
            {
                return(validationResult);
            }

            var photo = PhotosController.Upload(this, param);

            var showPhoto = new ShowPhoto();

            showPhoto.Show             = DatabaseSession.Load <Show>(showId);
            showPhoto.Photo            = photo;
            showPhoto.InsertedDateTime = DateTime.UtcNow;
            DatabaseSession.Save(showPhoto);

            return(Redirect(Url.GetUrl(ListShowPhotos, showId, (int?)photo.PhotoId)));
        }
Beispiel #9
0
        public ActionResult HandleFacebookOAuthCallback(string code, string state)
        {
            if (code.IsNullOrWhiteSpace())
            {
                return(this.RedirectToAction(c => c.Login()));
            }

            // TODO, decrypt redirectURL
            var redirectURL = string.Empty;

            if (!string.IsNullOrWhiteSpace(state))
            {
                redirectURL = HttpUtility.UrlDecode(state);
            }

            var facebookAccessToken = FacebookAuthentication.ExchangeCodeForAccessToken(Request, FacebookAuthenticationOptions.FromWebConfig(), code);

            var user = DatabaseSession.Query <UserAccount>().Where(x => x.FacebookId == facebookAccessToken.FacebookID).SingleOrDefault();

            if (user == null)
            {
                user = new UserAccount(facebookAccessToken);
                // TODO: redirect to a welcome page to confirm info redirectURL = this.GetURL<>
            }
            user.UpdateSeen();
            var tokenEntity = user.AddFacebookAccessToken(facebookAccessToken);

            DatabaseSession.Save(user);
            DatabaseSession.Flush();
            var tokenID = tokenEntity.UserFacebookAccessTokenId;

            HttpContext.Get <IAuthenticationManager>().SignIn(tokenID.ToString(), FacebookAuthentication.AuthenticationType);

            if (redirectURL.IsNullOrWhiteSpace())
            {
                redirectURL = "~";
            }
            return(Redirect(redirectURL));
        }