public async Task <IActionResult> EditUserCertification(string id)
        {
            IdentityUser usr = await GetCurrentUserAsync();

            var user1 = await _userManager.FindByIdAsync(usr.Id);

            var role1 = await _userManager.GetRolesAsync(user1);

            string logintypee = role1[0].ToString();


            var objfromdb = _db.ApplicationUser.FirstOrDefault(u => u.Id == id);

            if (objfromdb == null)
            {
                return(NotFound());
            }

            var model = new CertificationInformationEditViewModel
            {
                Id = objfromdb.Id,
                Ceritication_IECImg       = objfromdb.Ceritication_IEC,
                Ceritication_APEDAImg     = objfromdb.Ceritication_APEDA,
                Ceritication_FIEOImg      = objfromdb.Ceritication_FIEO,
                Ceritication_GlobalGapImg = objfromdb.Ceritication_GlobalGap,
                Ceritication_OthersImg    = objfromdb.Ceritication_Others,
                loginType = logintypee
            };

            return(View(model));
        }
        public async Task <IActionResult> EditUserCertification(CertificationInformationEditViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var obj = _db.ApplicationUser.FirstOrDefault(u => u.Id == model.Id);
                    if (obj == null)
                    {
                        return(NotFound());
                    }

                    CertificationInformationDtos objCertificationInformationDtos = new CertificationInformationDtos();
                    objCertificationInformationDtos.Id = model.Id;
                    //Ceritication_IEC, Ceritication_APEDA, Ceritication_FIEO, Ceritication_GlobalGap, Ceritication_Others
                    objCertificationInformationDtos.isCertificationFill = true;
                    if (model.Ceritication_IEC != null && model.Ceritication_IEC.Length > 0)
                    {
                        using (var ms = new MemoryStream())
                        {
                            model.Ceritication_IEC.CopyTo(ms);
                            var    fileBytes = ms.ToArray();
                            string s         = Convert.ToBase64String(fileBytes);
                            objCertificationInformationDtos.Ceritication_IEC = s;
                            ms.Close();
                        }
                    }
                    if (model.Ceritication_APEDA != null && model.Ceritication_APEDA.Length > 0)
                    {
                        using (var ms = new MemoryStream())
                        {
                            model.Ceritication_APEDA.CopyTo(ms);
                            var    fileBytes = ms.ToArray();
                            string s         = Convert.ToBase64String(fileBytes);
                            objCertificationInformationDtos.Ceritication_APEDA = s;
                            ms.Close();
                        }
                    }

                    if (model.Ceritication_FIEO != null && model.Ceritication_FIEO.Length > 0)
                    {
                        using (var ms = new MemoryStream())
                        {
                            model.Ceritication_FIEO.CopyTo(ms);
                            var    fileBytes = ms.ToArray();
                            string s         = Convert.ToBase64String(fileBytes);
                            objCertificationInformationDtos.Ceritication_FIEO = s;
                            ms.Close();
                        }
                    }
                    if (model.Ceritication_GlobalGap != null && model.Ceritication_GlobalGap.Length > 0)
                    {
                        using (var ms = new MemoryStream())
                        {
                            model.Ceritication_GlobalGap.CopyTo(ms);
                            var    fileBytes = ms.ToArray();
                            string s         = Convert.ToBase64String(fileBytes);
                            objCertificationInformationDtos.Ceritication_GlobalGap = s;
                            ms.Close();
                        }
                    }

                    if (model.Ceritication_Others != null && model.Ceritication_Others.Length > 0)
                    {
                        using (var ms = new MemoryStream())
                        {
                            model.Ceritication_Others.CopyTo(ms);
                            var    fileBytes = ms.ToArray();
                            string s         = Convert.ToBase64String(fileBytes);
                            objCertificationInformationDtos.Ceritication_Others = s;
                            ms.Close();
                        }
                    }

                    #region "API CALL"

                    string url     = SD.APIBaseUrl + "user/UpdateCertificationInformation";
                    var    request = new HttpRequestMessage(HttpMethod.Patch, url);
                    if (objCertificationInformationDtos != null)
                    {
                        request.Content = new StringContent(
                            JsonConvert.SerializeObject(objCertificationInformationDtos), Encoding.UTF8, "application/json");
                    }
                    else
                    {
                        //return false;
                    }

                    var client = _clientFactory.CreateClient();
                    //if (token != null && token.Length != 0)
                    //{
                    //    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
                    //}
                    HttpResponseMessage response = await client.SendAsync(request);

                    if (response.StatusCode == System.Net.HttpStatusCode.NoContent || response.StatusCode == System.Net.HttpStatusCode.OK)
                    {
                        TempData["success"] = "Certification Doucument update successfully";
                        // return true;
                    }
                    else
                    {
                        TempData["error"] = "Record Not Update";
                        // return false;
                    }
                    #endregion
                    //    string path1 = SD.APIBaseUrl + "user/UpdateCertificationInformation";
                    //bool res = await _userRegistrationAPIRepository.UpdateAsync(path1, objCertificationInformationDtos);
                }
                catch { }
                var user = await _userManager.FindByIdAsync(model.Id);

                var roles = await _userManager.GetRolesAsync(user);

                //if (roles[0].ToString() == "Admin")
                if (model.loginType == "Admin")
                {
                    return(RedirectToAction(nameof(Index)));
                }
                else
                {
                    return(RedirectToAction("Profile", "UserLogin", new { area = "Admin", id = model.Id }));
                }

                // return RedirectToAction(nameof(Index));
            }
            else
            {
                return(View(model));
            }
        }