// GET: Agent/Create
        public ActionResult Create(int id = 0)
        {
            bool   userLoggedin = (System.Web.HttpContext.Current.User != null) && System.Web.HttpContext.Current.User.Identity.IsAuthenticated;
            string path         = Server.MapPath("~/Content/Countries.txt");
            var    _countries   = System.IO.File.ReadAllText(path);
            var    resultt      = Newtonsoft.Json.JsonConvert.DeserializeObject <RootObject>(_countries);

            ViewBag.Countries = resultt.countries;
            var userid = "";

            //string paths = Server.MapPath("~/Content/Cities.txt");
            //var _cities = System.IO.File.ReadAllText(paths);
            //var resultts = Newtonsoft.Json.JsonConvert.DeserializeObject<RootObjects>(_cities);
            //ViewBag.Cities = resultts.cities;

            ViewBag.Cities   = InsuranceContext.Cities.All();
            ViewBag.Branches = InsuranceContext.Branches.All();



            if (userLoggedin)
            {
                userid = System.Web.HttpContext.Current.User.Identity.GetUserId();
                // var role = UserManager.GetRoles(userid).FirstOrDefault();
                //if (role != "SuperAdmin")
                //{
                //    return RedirectToAction("Index", "CustomerRegistration");
                //}
            }
            else
            {
                return(RedirectToAction("Index", "CustomerRegistration"));
            }

            CustomerModel       obj   = new CustomerModel();
            List <IdentityRole> roles = roleManager.Roles.ToList();


            InsuranceClaim.Models.RoleManagementListViewModel _roles = new RoleManagementListViewModel();

            _roles.RoleList = roles;
            ViewBag.Adduser = _roles.RoleList;

            obj.Zipcode = "00263";



            var data = InsuranceContext.Customers.Single(id);

            //   var branchs = InsuranceContext.Branches.Single(data.BranchId) == null ? "" : InsuranceContext.Branches.Single(data.BranchId).BranchName;



            return(View(obj));
        }
        // GET: Agent/Edit/5
        public ActionResult Edit(int id)
        {
            bool   userLoggedin = (System.Web.HttpContext.Current.User != null) && System.Web.HttpContext.Current.User.Identity.IsAuthenticated;
            string path         = Server.MapPath("~/Content/Countries.txt");
            var    _countries   = System.IO.File.ReadAllText(path);
            var    resultt      = Newtonsoft.Json.JsonConvert.DeserializeObject <RootObject>(_countries);

            ViewBag.Countries = resultt.countries;


            //string paths = Server.MapPath("~/Content/Cities.txt");
            //var _cities = System.IO.File.ReadAllText(paths);
            //var resultts = Newtonsoft.Json.JsonConvert.DeserializeObject<RootObjects>(_cities);
            //ViewBag.Cities = resultts.cities;

            ViewBag.Cities   = InsuranceContext.Cities.All();
            ViewBag.Branches = InsuranceContext.Branches.All();



            if (userLoggedin)
            {
                var userid = System.Web.HttpContext.Current.User.Identity.GetUserId();
                // var role = UserManager.GetRoles(userid).FirstOrDefault();
                //if (role != "SuperAdmin")
                //{
                //    return RedirectToAction("Index", "CustomerRegistration");
                //}
            }
            else
            {
                return(RedirectToAction("Index", "Agent"));
            }

            CustomerModel       obj   = new CustomerModel();
            List <IdentityRole> roles = roleManager.Roles.ToList();


            InsuranceClaim.Models.RoleManagementListViewModel _roles = new RoleManagementListViewModel();

            _roles.RoleList = roles;
            ViewBag.Adduser = _roles.RoleList;



            if (id != 0)
            {
                var data    = InsuranceContext.Customers.Single(id);
                var branchs = InsuranceContext.Branches.Single(data.BranchId) == null ? "" : InsuranceContext.Branches.Single(data.BranchId).BranchName;
                var user    = UserManager.FindById(data.UserID);
                var email   = user.Email;
                var phone   = user.PhoneNumber;
                var role    = UserManager.GetRoles(data.UserID).FirstOrDefault();


                // for corporate

                if (data.IsCorporate)
                {
                    // data.EmailAddress = model.CompanyEmail;
                    obj.CompanyEmail      = data.CompanyEmail;
                    obj.CompanyName       = data.CompanyName;
                    obj.CompanyAddress    = data.CompanyAddress;
                    obj.CompanyPhone      = data.CompanyPhone;
                    obj.CompanyCity       = data.CompanyCity;
                    obj.CompanyBusinessId = data.CompanyBusinessId;
                    obj.IsCorporate       = data.IsCorporate;
                }


                obj.FirstName    = data.FirstName;
                obj.LastName     = data.LastName;
                obj.AddressLine1 = data.AddressLine1;
                obj.AddressLine2 = data.AddressLine2;
                obj.City         = data.City;
                //  obj.Branch = Convert.ToString(data.BranchId);

                obj.AgentBranch = data.AgentBranch;
                obj.CountryCode = data.Countrycode;
                obj.Gender      = data.Gender;
                obj.Id          = data.Id;
                obj.DateOfBirth = data.DateOfBirth;
                obj.NationalIdentificationNumber = data.NationalIdentificationNumber;
                obj.Zipcode       = data.Zipcode;
                obj.role          = role;
                obj.PhoneNumber   = Convert.ToString(phone);
                obj.EmailAddress  = Convert.ToString(email);
                obj.IsActive      = data.IsActive;
                obj.AgentWhatsapp = data.AgentWhatsapp;
            }
            return(View(obj));
        }