示例#1
0
        public async Task <ActionResult> CreateArtist(ArtistCreateView model, HttpPostedFileBase upload)
        {
            if (ModelState.IsValid)
            {
                PaskolUser user = model.UserFromArtistEditView(null);
                user.Status = UserStatus.Active;

                // Save photo if have
                var PhotoRes = FSservice.StorePhoto(upload, user);

                if (PhotoRes.Success)
                {
                    user.Artist.PhotoID = PhotoRes.PhotoId;

                    // Call userbase CreateUserAsync
                    IdentityResult res = await CreateUserAsync(user, model.Password,
                                                               new string[] { UserType.Artist.ToString() });

                    if (res.Succeeded)
                    {
                        // Create PermissionAgreement
                        _pdfService.ArtistPermissionAgreement
                            (DateTime.Now, user.UserName, user.Email, user.Id, WebConf.FSBaseRoute);

                        return(RedirectToAction("Index"));
                    }
                }
                else
                {
                    ModelState.AddModelError("PictureId", PhotoRes.Message);
                }
            }

            return(View(model));
        }