// Get Cv PArtial public IActionResult Cv() { var model = new CvSearch() { Cvs = db.Cv.Where(cv => cv.Profile.Disabled == false).ToList(), Skills = db.Position.ToList(), Users = db.Users.ToList(), Profiles = db.Profile.Where(p => p.Disabled == false).ToList() }; bool isAjaxCall = Request.Headers["x-requested-with"] == "XMLHttpRequest"; if (isAjaxCall) { return(PartialView("_indexCv", model)); } else { return(View(model)); } }
public async Task <IActionResult> GetCv(string tags) { var currentUser = await _userManager.GetUserAsync(User); if (tags == null) { return(RedirectToAction("Cv", "Search")); } string[] skillsQuery = tags.Split(","); List <string> Skills = new List <string>(); List <Users> FindedUsers = new List <Users>(); foreach (string skill in skillsQuery) { Skills.Add(skill.Replace('-', ' ')); } foreach (var user in db.Users.ToList()) { List <string> userSkills = new List <string>(); var profile = db.Profile.FirstOrDefault(p => p.UsersId == user.Id); if (!profile.Disabled) { var sh = db.SkillsHeader.Where(s => s.ProfileId == profile.id); foreach (var header in sh) { foreach (var pear in db.SkillsHeaderPosition.Where(p => p.SkillsHeaderId == header.id)) { var skill = db.Position.FirstOrDefault(p => p.id == pear.PositionId); userSkills.Add(skill.Name.ToLower()); } } int c = 0; foreach (var item in userSkills) { foreach (var skill in Skills) { if (item.ToLower() == skill.ToLower()) { c++; } } } if (c == Skills.Count()) { FindedUsers.Add(user); } } } var model = new CvSearch() { Cvs = db.Cv.ToList(), Skills = db.Position.ToList(), Users = FindedUsers, Profiles = db.Profile.ToList() }; bool isAjaxCall = Request.Headers["x-requested-with"] == "XMLHttpRequest"; if (isAjaxCall) { return(PartialView("_indexCv", model)); } else { return(View("Cv", model)); } }
public async Task <IActionResult> GetByName(string type, string text) { string searctTxt = text.ToLower(); if (type == "cv") { List <Cv> cvList = new List <Cv>(); List <Profile> profList = new List <Profile>(); List <Users> usersList = new List <Users>(); var findedUsers = db.Users.Where(u => u.Name.ToLower().Contains(searctTxt) || u.Surname.ToLower().Contains(searctTxt) || u.Email.ToLower().Contains(searctTxt)).ToList(); foreach (var item in findedUsers) { var profile = db.Profile.FirstOrDefault(p => p.UsersId == item.Id); if (profile.Disabled == false) { cvList.Add(db.Cv.FirstOrDefault(c => c.ProfileId == profile.id)); profList.Add(profile); usersList.Add(item); } } var model = new CvSearch() { Cvs = cvList, Skills = db.Position.ToList(), Users = usersList, Profiles = profList }; return(PartialView("_indexCv", model)); } else if (type == "person") { List <Profile> profiles = new List <Profile>(); List <Users> userList = new List <Users>(); var users = db.Users.Where(u => u.Name.ToLower().Contains(searctTxt) || u.Surname.ToLower().Contains(searctTxt) || u.Email.ToLower().Contains(searctTxt)).ToList(); foreach (var user in users) { var prof = db.Profile.FirstOrDefault(p => p.UsersId == user.Id); if (prof.Disabled == false) { profiles.Add(prof); userList.Add(user); } } var userModel = new PersonSearchVM() { Users = users, Profiles = profiles }; return(PartialView("_indexPerson", userModel)); } else if (type == "port") { var portList = db.Portfolio.Where(p => p.Name.ToLower().Contains(searctTxt) && p.Profile.Disabled == false).ToList(); var portModel = new PortSearchVM() { Portfolios = portList, Users = db.Users.ToList(), CurrentUser = await _userManager.GetUserAsync(User), PortfolioImages = db.PortfolioImages.ToList(), Profiles = db.Profile.Where(p => p.Disabled == false).ToList() }; return(PartialView("_indexPortfolio", portModel)); } else { return(Json(new { error = "Netice tapilmadi" })); } }