public async Task <ActionResult> UpdateProfile([Bind] Profile profile, string clientKey = null, string secretKey = null) { Profile model = new Profile(); ViewBag.IsAlertResponse = false; ViewBag.ActivityResponsMessage = null; var identity = (ClaimsPrincipal)Thread.CurrentPrincipal; var userName = identity.Claims.Where(c => c.Type == ClaimTypes.Name) .Select(c => c.Value).SingleOrDefault(); //side menu validasi var fetchingProfileList = await reader.SearchProfileIndex(userName); var role = fetchingProfileList.Data.FirstOrDefault(x => x.RoleID == x.RoleID)?.RoleID; ViewBag.roleID = role; var DateRequest = profile.DOB; var time = DateTime.Now.ToString("hh:mm:ss"); string format = "MM/dd/yyyy"; CultureInfo provider = CultureInfo.InvariantCulture; var date = DateTime.ParseExact(DateRequest, format, provider); var dateFinal = Convert.ToDateTime(date).ToString("yyyy-MM-ddThh:mm:ss.549Z").Substring(0, 10) + "T" + time + ".549Z"; var item = new Profile(); if (role == "4") { item = new Profile() { //CallItemDate = Convert.ToDateTime(date).ToString("yyyy-MM-ddThh:mm:ss.549Z"), Email = profile.Email, FullName = profile.FullName, ProfileID = profile.ProfileID, RoleID = "0", CreateDate = dateFinal, Username = userName, Profession = profile.Profession, DOB = dateFinal, Gender = profile.Gender, Phone = profile.Phone, CoverImage = profile.CoverImage, ProfileImage = profile.ProfileImage, Experience = profile.Experience, Jabatan = profile.Jabatan, Qualification = profile.Qualification, Type = profile.Type, SalaryRange = profile.SalaryRange, Setyourprofile = profile.Setyourprofile, AboutSelf = profile.AboutSelf, JobTitle = profile.JobTitle, SectorID = profile.SectorID, AddID = profile.AddID, PostalCode = profile.PostalCode, FullAddress = profile.FullAddress, CompanyName = "-", IsActive = profile.IsActive, }; } else if (role == "5") { item = new Profile() { //CallItemDate = Convert.ToDateTime(date).ToString("yyyy-MM-ddThh:mm:ss.549Z"), Email = profile.Email, FullName = profile.FullName, ProfileID = profile.ProfileID, RoleID = "0", CreateDate = dateFinal, Username = userName, Profession = "-", DOB = dateFinal, Gender = "-", Phone = profile.Phone, CoverImage = profile.CoverImage, ProfileImage = profile.ProfileImage, Experience = "-", Jabatan = "-", Qualification = "-", Type = "-", SalaryRange = "-", Setyourprofile = profile.Setyourprofile, AboutSelf = profile.AboutSelf, JobTitle = "-", SectorID = profile.SectorID, AddID = profile.AddID, PostalCode = profile.PostalCode, FullAddress = profile.FullAddress, CompanyName = profile.CompanyName, IsActive = profile.IsActive, }; } else { item = new Profile() { Email = profile.Email, FullName = profile.FullName, ProfileID = profile.ProfileID, RoleID = "0", CreateDate = dateFinal, Username = userName, Profession = profile.Profession, DOB = dateFinal, Gender = profile.Gender, Phone = profile.Phone, CoverImage = profile.CoverImage, ProfileImage = profile.ProfileImage, Experience = profile.Experience, Jabatan = profile.Jabatan, Qualification = profile.Qualification, Type = profile.Type, SalaryRange = profile.SalaryRange, Setyourprofile = profile.Setyourprofile, AboutSelf = profile.AboutSelf, JobTitle = profile.JobTitle, SectorID = profile.SectorID, AddID = profile.AddID, PostalCode = profile.PostalCode, FullAddress = profile.FullAddress, CompanyName = profile.CompanyName, IsActive = profile.IsActive, }; } var result = await writer.UpdateProfile(item, clientKey, secretKey); if (result.Item2) { ViewBag.IsAlertResponse = true; var responser = new ActivityResponsMessage() { Message = "The data has been updated successfully!", RequestTime = DateTime.Now, ResponseTime = DateTime.Now, Type = "success" }; ViewBag.ActivityResponsMessage = responser; } else { ViewBag.IsAlertResponse = true; var responser = new ActivityResponsMessage() { Message = "Opss.. Failed to update item!", RequestTime = DateTime.Now, ResponseTime = DateTime.Now, Type = "error" }; ViewBag.ActivityResponsMessage = responser; } //balikin data get atau panggil method get //Get dropdown list gender string genderString = "Laki-laki,Wanita"; IEnumerable <GenderProfile> Infogender = from name in genderString.Split(',') select new GenderProfile() { Gender = name, NameGender = name }; List <GenderProfile> listGender = Infogender.ToList(); ViewBag.GenderList = listGender; //Get dropdown list Experience string experienceString = "Fresh Graduate,1 Tahun,2 Tahun,3 Tahun,4 Tahun,5 Tahun"; IEnumerable <ExperienceProfile> Infoexperience = from name in experienceString.Split(',') select new ExperienceProfile() { Experience = name, NameExperience = name }; List <ExperienceProfile> listExp = Infoexperience.ToList(); ViewBag.ExpList = listExp; //Get dropdown list Qualification string QualificationString = "SMK/SMA,Diploma 1,Diploma 2,Diploma 3,Sarjana 1,Sarjana 2,Sarjana 3"; IEnumerable <QualificationProfile> InfoQualification = from name in QualificationString.Split(',') select new QualificationProfile() { Qualification = name, NameQualification = name }; List <QualificationProfile> listQualification = InfoQualification.ToList(); ViewBag.QualificationList = listQualification; //Get dropdown list Jabatan string JabatanString = "Staff,Manager,Supervisor"; IEnumerable <JabatanProfile> InfoJabatan = from name in JabatanString.Split(',') select new JabatanProfile() { Jabatan = name, NameJabatan = name }; List <JabatanProfile> listJabatan = InfoJabatan.ToList(); ViewBag.JabatanList = listJabatan; //Get dropdown list Type string TypeString = "Freelance,Kontrak,Paruh Waktu,Penuh Waktu"; IEnumerable <TypeProfile> InfoType = from name in TypeString.Split(',') select new TypeProfile() { Type = name, NameType = name }; List <TypeProfile> listType = InfoType.ToList(); ViewBag.TypeList = listType; //Get dropdown list Setyourprofile string SetyourprofileString = "Public,Private"; IEnumerable <SetYourProfile> InfoSetyourprofile = from name in SetyourprofileString.Split(',') select new SetYourProfile() { Setyourprofile = name, NameSetYourProfile = name }; List <SetYourProfile> listSetyourprofile = InfoSetyourprofile.ToList(); ViewBag.SetyourprofileList = listSetyourprofile; //Get dropdown list Profession string ProfessionString = "Professional,Private"; IEnumerable <ProfessionProfile> InfoProfession = from name in ProfessionString.Split(',') select new ProfessionProfile() { Profession = name, NameProfession = name }; List <ProfessionProfile> listProfession = InfoProfession.ToList(); ViewBag.ProfessionList = listProfession; var itemAdd = new SearchAddress() { City = null, Country = null, Provinsi = null }; var AddressResult = await reader.SearchAddress(itemAdd); ViewBag.AddressList = AddressResult; var itemSector = new SearchSector() { SectorName = null }; var SectorResult = await reader.SearchSector(itemSector); ViewBag.SectorList = SectorResult; //setting label kanan var FullNameRightLabel = fetchingProfileList.Data.FirstOrDefault(x => x.FullName == x.FullName)?.FullName; ViewBag.FullNameLabel = FullNameRightLabel; var ProfessionRightLabel = fetchingProfileList.Data.FirstOrDefault(x => x.Profession == x.Profession)?.Profession; ViewBag.ProfessionLabel = ProfessionRightLabel; var EmailRightLabel = fetchingProfileList.Data.FirstOrDefault(x => x.Email == x.Email)?.Email; ViewBag.EmailLabel = EmailRightLabel; var PhoneRightLabel = fetchingProfileList.Data.FirstOrDefault(x => x.Phone == x.Phone)?.Phone; ViewBag.PhoneLabel = PhoneRightLabel; var JobTitleRightLabel = fetchingProfileList.Data.FirstOrDefault(x => x.JobTitle == x.JobTitle)?.JobTitle; ViewBag.JobTitleLabel = JobTitleRightLabel; //formatRight tanggal kanan var DOBRightLabel = fetchingProfileList.Data.FirstOrDefault(x => x.DOB == x.DOB)?.DOB; var DOBRightTemp = DOBRightLabel.Substring(0, 10); //var time = DateTime.Now.ToString("hh:mm:ss"); string formatRight = "yyyy-MM-dd"; CultureInfo providerRight = CultureInfo.InvariantCulture; var dateRight = DateTime.ParseExact(DOBRightTemp, formatRight, providerRight); var dateFinalRight = Convert.ToDateTime(dateRight).ToString("dd MMMM yyyy"); ViewBag.DOBLabel = dateFinalRight; //await Task.Run(() => //{ // ViewBag.MemberList = reader.GetMemberAsync().Result; //}); return(await Task.FromResult(View(profile))); }