private void SetProfile(PublisherProfileViewModel viewModel)
        {
            viewModel.Description = viewModel.Description.Trim();
            // create Id
            var  publisher = publisherProfileManager.FindProfileByUserId(User.Identity.GetUserId());
            Guid profileId;

            if (publisher == null)
            {
                profileId = Guid.NewGuid();
            }
            else
            {
                profileId = Guid.Parse(publisher.profile.Id);
                viewModel.profile.RegisterDate = publisher.profile.RegisterDate;
            }


            // get images and urls
            List <Models.Core.FileUpload> images = GetFiles();
            Dictionary <string, string>   urls   = UploadAndGetUrls(images);

            // check if icon is uploaded
            string value = string.Empty;

            urls.TryGetValue("fileupIcon", out value);
            if (!string.IsNullOrEmpty(value))
            {
                viewModel.profile.IconUrl = value;
            }
            else
            {
                if (publisher != null)
                {
                    viewModel.profile.IconUrl = publisher.profile.IconUrl;
                }
                else
                {
                    viewModel.profile.IconUrl = string.Empty;
                }
            }

            // add preferences
            viewModel.preferences = publisherProfileManager.GetPreferences(viewModel.preferencesStringify, profileId.ToString());

            // update properties
            viewModel.profile.ExperienceLevel = viewModel.ExperienceLevel;
            viewModel.profile.Id                  = profileId.ToString();
            viewModel.profile.Name                = viewModel.Name;
            viewModel.profile.Description         = Negocio.Utilerias.StringUtilities.RemoveNewLineInString(viewModel.Description);
            viewModel.profile.CountryBusinessInId = viewModel.Country.ToString();
            viewModel.profile.UserId              = User.Identity.GetUserId();
        }
        public ActionResult GetProfile()
        {
            var publisherId = new Guid(User.Identity.GetUserId());

            var publisher = _publisherService.GetPublisher(publisherId);

            var model = new PublisherProfileViewModel();

            Mapper.Map(publisher, model);

            return(View("PublisherProfile", model));
        }
Пример #3
0
 // Get PublisherDashboard/SetProfile
 public IActionResult SetProfile()
 {
     if (HasSession())
     {
         PublisherProfileViewModel publisherProfileViewModel = new PublisherProfileViewModel
         {
             UserId = SessionExtensions.GetInt32(HttpContext.Session, "UserId").Value
         };
         return(View(publisherProfileViewModel));
     }
     else
     {
         return(GetLoginRedirect());
     }
 }
        public ActionResult CreateProfile(PublisherProfileViewModel model)
        {
            bool result = false;

            SetProfile(model);
            result = publisherProfileManager.AddProfile(model);

            if (result)
            {
                return(result ? Json(new { success = true, message = "Profile create sucessfull" }) : Json(new { error = "Error creating profile" }));
            }

            model = new PublisherProfileViewModel();
            return(View(model));
        }
        public JsonResult EditProfile(PublisherProfileViewModel profile)
        {
            try {
                string userId = User.Identity.GetUserId();

                SetProfile(profile);
                publisherProfileManager.Update(profile.profile, profile.preferences);


                return(Json(new { success = true, message = "Profile updated sucessfull" }));
            }
            catch (Exception ex) {
                return(Json(new { error = "Error updating profile" }));
            }
        }
        // GET: Publisher Profile
        public ActionResult Profile()
        {
            string userId = User.Identity.GetUserId();
            PublisherProfileViewModel          profile     = publisherProfileManager.FindProfileByUserId(userId);
            List <PublisherPreferenceDocument> preferences = publisherProfileManager.FindPreferencesByProfileId(profile.profile.Id);

            ViewBag.Preferences = preferences;
            ApplicationUser appUser = _cosmosIdentityManager.FindUserByUserId(userId);

            ViewBag.Name  = appUser.Name;
            ViewBag.Email = appUser.Email;



            return(View(profile));
        }
Пример #7
0
        public async Task <IActionResult> SetProfile([Bind("UserId,GivenName,FamilyName,ProfilePicture")] PublisherProfileViewModel publisherProfileViewModel)
        {
            if (ModelState.IsValid)
            {
                User    user = _context.Users.Where(u => u.UserId == publisherProfileViewModel.UserId).FirstOrDefault();
                var     profilePictureUri = new ProfilePictureController().Upload(publisherProfileViewModel.ProfilePicture, DateTime.Now.ToFileTime() + "-" + publisherProfileViewModel.GivenName + "-" + publisherProfileViewModel.FamilyName + "-ProfilePicture");
                Profile userProfile       = new PublisherProfile
                {
                    User           = user,
                    GivenName      = publisherProfileViewModel.GivenName,
                    FamilyName     = publisherProfileViewModel.FamilyName,
                    ProfilePicture = profilePictureUri.Result
                };
                _context.Add(userProfile);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(publisherProfileViewModel));
        }
Пример #8
0
        public bool AddProfile(PublisherProfileViewModel model)
        {
            bool result = false;

            try
            {
                context.AddDocument <PublisherProfileDocument>(databaseName, publisherProfileCollection, model.profile);

                foreach (var preference in model.preferences)
                {
                    context.AddDocument <PublisherPreferenceDocument>(databaseName, publisherPreferenceCollection, preference);
                }

                // set result to true
                result = true;
            }
            catch (Exception e)
            {
                var messageException = telemetria.MakeMessageException(e, System.Reflection.MethodBase.GetCurrentMethod().Name);
                telemetria.Critical(messageException);
            }
            return(result);
        }
        // GET: Create Publisher Profile
        public ActionResult CreateProfile()
        {
            PublisherProfileViewModel viewModel = new PublisherProfileViewModel();

            return(View(viewModel));
        }