public ActionResult GetUserCompanies(string userId)
        {
            var companies = _userCompanyService.GetUserCompanies(userId);

            Dictionary <string, int> dictionary = new Dictionary <string, int>();

            foreach (var company in companies)
            {
                dictionary.Add(company.CompanyName, company.Id);
            }

            return(PartialView("UserCompaniesMenu", dictionary));
        }
        public async Task <JsonResult> AnonymiseUser(string userId)
        {
            var result = new { Success = true, Message = "Success" };

            try
            {
                var email = Encryptor.EncryptionService.EncryptEmail(userId);
                var user  = await _applicationUserManager.FindByEmailAsync(email);

                user.Email     = Encryptor.EncryptionService.EncryptEmail("*****@*****.**");
                user.FirstName = gdpr_forget_data_hash;
                user.Surname   = gdpr_forget_data_hash;
                user.UserName  = gdpr_forget_data_hash;
                user.IsActive  = false;

                var userCompanies = _userCompanyService.GetUserCompanies(user.Id);

                foreach (var company in userCompanies)
                {
                    company.CompanyName          = gdpr_forget_data_hash;
                    company.Address.PlaceNumber  = gdpr_forget_data_hash;
                    company.Address.StreetName   = gdpr_forget_data_hash;
                    company.Address.ZIPCode      = gdpr_forget_data_hash;
                    company.Address.StreetNumber = gdpr_forget_data_hash;

                    _userCompanyService.Update(company);

                    foreach (var employee in company.Employees)
                    {
                        employee.FirstName            = gdpr_forget_data_hash;
                        employee.Surname              = gdpr_forget_data_hash;
                        employee.PESEL                = gdpr_forget_data_hash;
                        employee.Address.PlaceNumber  = gdpr_forget_data_hash;
                        employee.Address.StreetName   = gdpr_forget_data_hash;
                        employee.Address.ZIPCode      = gdpr_forget_data_hash;
                        employee.Address.StreetNumber = gdpr_forget_data_hash;

                        _employeeService.Update(employee);
                    }
                }

                _applicationUserManager.Update(user);
            }
            catch (Exception ex)
            {
                logger.Error(ex, ex.Message);
                result = new { Success = false, ex.Message };
            }

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
        public ActionResult MyProfile()
        {
            string userId           = User.Identity.GetUserId();
            var    user             = _applicationUserManager.Users.FirstOrDefault(x => x.Id == userId);
            var    userProfileModel = Mapper.Map <UserViewModel>(user);

            userProfileModel.UserCompanies = Mapper.Map <List <UserCompanyViewModel> >(_userCompanyService.GetUserCompanies(userId));

            return(View(userProfileModel));
        }