public async Task <JsonResult> sendMessge(string name, string email, string phone, string message, int emp_id) { if (!string.IsNullOrEmpty(name) && !string.IsNullOrEmpty(email) && !string.IsNullOrEmpty(phone) && !string.IsNullOrEmpty(message)) { employer_info emp = db.employer_info.Find(emp_id); message mess = new Models.message(); mess.message1 = message; mess.created_at = DateTime.Now; mess.read_status = 0; mess.sender_address = email; mess.sender_contact = phone; mess.status = 1; db.messages.Add(mess); if (db.SaveChanges() > 0) { await SendEmail(name, emp.email, phone, message, emp.company_name); return(Json(true, JsonRequestBehavior.AllowGet)); } else { return(Json(false, JsonRequestBehavior.AllowGet)); } } else { return(Json(false, JsonRequestBehavior.AllowGet)); } }
public JsonResult changeProfile(HttpPostedFileBase photo) { string filename = null; if (photo != null) { string pic = Path.GetExtension(photo.FileName); filename = Guid.NewGuid().ToString() + pic; string path = Path.Combine(Server.MapPath("~/Content/images"), filename); photo.SaveAs(path); employer_info emp = db.employer_info.Find(Convert.ToInt16(Session["emp_id"].ToString())); emp.logo = filename; if (db.SaveChanges() > 0) { Session["profileimage"] = filename; return(Json(true, JsonRequestBehavior.AllowGet)); } else { return(Json(false, JsonRequestBehavior.AllowGet)); } } else { return(Json(false, JsonRequestBehavior.AllowGet)); } }
public ActionResult jobs() { List <job> job = db.jobs.ToList(); List <job_model> jobs = new List <job_model>(); foreach (var item in job) { job_model jobmodel = new job_model(); jobmodel.category = item.category.ToString(); jobmodel.city = item.city; jobmodel.created_at = item.created_at; jobmodel.description = item.description; jobmodel.district = item.district; employer_info name = db.employer_info .Where(c => c.emp_id == item.employer) .SingleOrDefault(); jobmodel.image = name.logo; jobmodel.salaryfrom = item.salaryfrom; jobmodel.salaryto = item.salaryto; jobmodel.job_level = item.job_level; jobmodel.status = Convert.ToInt32(item.status); jobmodel.submission_date = item.submission_date; jobmodel.employer = name.company_name; jobmodel.full_address = item.full_address; jobmodel.state = item.state; jobmodel.district = item.district; jobmodel.job_id = item.job_id; jobmodel.title = item.title; jobmodel.job_type = item.job_type; jobmodel.emp_id = item.employer.HasValue ? Convert.ToInt32(item.employer) : 0; jobmodel.category = db.job_categories.Find(Convert.ToInt32(item.category)).category_name.ToString(); jobs.Add(jobmodel); } return(View(jobs)); }
public ActionResult logOn(string username = "", string password = "", string returnurl = "") { Md5Calculator Md5Calculator = new Md5Calculator(); password = Md5Calculator.CalculateMD5Hash(password); AccountModel accountModel = new AccountModel(); if (string.IsNullOrEmpty(username) || string.IsNullOrEmpty(password) || accountModel.login(username, password) == null) { ViewBag.message = "<div class='alert alert-danger'>Wrong Credentials</div>"; return(View("login")); } else { SessionPersister.username = username; var userDetails = db.users.Where(a => a.user_name == username && a.password == password).FirstOrDefault(); Session["userid"] = userDetails.user_id; Session["username"] = userDetails.user_name; Session["role"] = userDetails.role; Session["is_logged_in"] = true; int userid = Convert.ToInt32(userDetails.user_id); if (userDetails.role.ToString() == "employer") { int emp_id = (from p in db.employer_info where p.login_info == userid select p.emp_id).FirstOrDefault(); employer_info em = db.employer_info.Find(emp_id); em.updated_at = DateTime.Now; db.SaveChanges(); string profileimage = (from p in db.employer_info where p.login_info == userid select p.logo).FirstOrDefault(); Session["emp_id"] = emp_id; Session["profileimage"] = profileimage; if (!string.IsNullOrEmpty(returnurl)) { return(Redirect(returnurl)); } else { return(RedirectToAction("managejobs", "Employer")); } } else { int js_id = (from p in db.jobseeker_info where p.login_info == userid select p.js_id).FirstOrDefault(); jobseeker_info js = db.jobseeker_info.Find(js_id); js.updated_at = DateTime.Now; db.SaveChanges(); string profileimage = (from p in db.jobseeker_info where p.login_info == userid select p.profile).FirstOrDefault(); Session["js_id"] = js_id; Session["profileimage"] = profileimage; if (!string.IsNullOrEmpty(returnurl)) { return(Redirect(returnurl)); } else { return(RedirectToAction("savedjobs", "jobseeker")); } } } }
public ActionResult loginVerify(string username = "", string password = "", string returnurl = "") { Md5Calculator Md5Calculator = new Md5Calculator(); password = Md5Calculator.CalculateMD5Hash(password); AccountModel accountModel = new AccountModel(); if (string.IsNullOrEmpty(username) || string.IsNullOrEmpty(password) || accountModel.login(username, password) == null) { return(Json(new { success = false })); } else { SessionPersister.username = username; var userDetails = db.users.Where(a => a.user_name == username && a.password == password).FirstOrDefault(); Session["userid"] = userDetails.user_id; Session["username"] = userDetails.user_name; Session["role"] = userDetails.role; Session["is_logged_in"] = true; int userid = Convert.ToInt32(userDetails.user_id); if (userDetails.role.ToString() == "employer") { int emp_id = (from p in db.employer_info where p.login_info == userid select p.emp_id).FirstOrDefault(); string profileimage = (from p in db.employer_info where p.login_info == userid select p.logo).FirstOrDefault(); string name = (from p in db.employer_info where p.login_info == userid select p.company_name).FirstOrDefault(); employer_info em = db.employer_info.Find(emp_id); em.updated_at = DateTime.Now; db.SaveChanges(); Session["name"] = name; Session["emp_id"] = emp_id; Session["profileimage"] = profileimage; return(Json(new { success = true, username = username, role = "employer" })); } else { string sessid = Guid.NewGuid().ToString(); Session["sessid"] = sessid; int js_id = (from p in db.jobseeker_info where p.login_info == userid select p.js_id).FirstOrDefault(); jobseeker_info js = db.jobseeker_info.Find(js_id); js.updated_at = DateTime.Now; db.SaveChanges(); string profileimage = js.profile; string name = js.full_name; Session["name"] = name; Session["js_id"] = js_id; Session["profileimage"] = profileimage; Session["emailverified"] = js.email_verified; return(Json(new { success = true, username = username, role = "jobseeker" })); } } }
public ActionResult EmployerProfile(string emp_id, string company_name, string email, string phone, string reg_type, string company_type, string address, string description, string facebook = "", string youtube = "", string google = "", string website = "", string twitter = "") { int emp_id_ = Convert.ToInt16(emp_id); employer_info e = db.employer_info.Find(emp_id_); e.address = address; e.company_name = company_name; e.company_type = Convert.ToInt16(company_type); e.phone = phone; e.description = description; e.reg_type = Convert.ToInt16(reg_type); e.updated_at = DateTime.Now; e.email = email; if (db.SaveChanges() > 0) { ViewBag.edit = "<div class='alert alert-success'>Sucessfully updated</div>"; employer_social soc = db.employer_social.Where(a => a.emp_id == emp_id_).FirstOrDefault(); if (soc != null) { soc.emp_id = Convert.ToInt16(emp_id); soc.facebook = facebook; soc.youtube = youtube; soc.twitter = twitter; soc.website = website; soc.google = google; db.SaveChanges(); } else { employer_social soc1 = new employer_social(); soc1.facebook = facebook; soc1.youtube = youtube; soc1.twitter = twitter; soc1.website = website; soc1.google = google; db.employer_social.Add(soc1); db.SaveChanges(); } } else { ViewBag.edit = "<div class='alert alert-alert'>Cannnot Update</div>"; } return(RedirectToAction("EmployerProfile", "employer")); }
public ActionResult Register(HttpPostedFileBase logo, employer model) { if (ModelState.IsValid) { try { user tempuser = new user(); employer_info employer = new employer_info(); tempuser.user_name = model.user_name; tempuser.password = CalculateMD5Hash(model.password); tempuser.role = "employer"; tempuser.status = "ACTIVE"; db.users.Add(tempuser); if (db.SaveChanges() > 0) { string filename = null; if (logo != null) { string pic = Path.GetExtension(logo.FileName); filename = Guid.NewGuid().ToString() + pic; string path = Path.Combine(Server.MapPath("~/Content/images"), filename); logo.SaveAs(path); } int insertId = tempuser.user_id; employer.company_type = model.company_type; employer.company_name = model.company_name; employer.address = model.address; employer.contact = model.contact; employer.description = model.description; employer.email = model.email; employer.name = model.name; employer.phone = model.phone; employer.reg_type = model.reg_type; employer.login_info = insertId; employer.status = "ACTIVE"; employer.created_at = DateTime.Now; employer.updated_at = DateTime.Now; employer.logo = filename; db.employer_info.Add(employer); db.SaveChanges(); Session["name"] = employer.company_name; Session["userid"] = employer.login_info; Session["role"] = "employer"; Session["profileimage"] = employer.logo; Session["emp_id"] = employer.emp_id; Session["is_logged_in"] = true; Session["username"] = model.user_name; return(RedirectToAction("EmployerProfile", "Employer")); } else { return(Json(new { errorMsg = "Cannot Insert!" })); } } catch (Exception ex) { return(Json(new { errorMsg = "Something went wrong! Error message (" + ex.ToString() + ")" })); } } else { return(Json(new { errorMsg = "validation error!" })); } }
public ActionResult jobdetail(int?id) { if (Session["js_id"] != null) { string sessid = Session["sessid"].ToString(); itemset itemset = db.itemsets.Find(sessid); Recommendation rm = new Recommendation(); List <job> recommended = new List <job>(); if (itemset != null) { string temp = itemset.items; if (string.IsNullOrEmpty(temp)) { temp += id.ToString(); } else { int status = 0; var strarr = temp.Split(',').ToList(); foreach (var ichek in strarr) { int icheck_ = Convert.ToInt32(ichek); if (icheck_ == id) { status = 1; break; } } if (status == 0) { temp += "," + id.ToString(); itemset.items = temp; } } db.SaveChanges(); } else { itemset itemsetnew = new itemset(); itemsetnew.session_id = Session["sessid"].ToString(); itemsetnew.items = id.ToString(); db.itemsets.Add(itemsetnew); db.SaveChanges(); } List <string> jobids = rm.recommendedjobs(Session["sessid"].ToString()); if (jobids != null) { foreach (var tempIds in jobids) { int intjob = Convert.ToInt16(tempIds); var next = db.jobs.Where(a => a.job_id == intjob && a.status == 1).FirstOrDefault(); if (next != null) { recommended.Add(next); } } recommended = recommended.Distinct().ToList(); List <job_model> jobsfinal = new List <job_model>(); foreach (var item in recommended) { job_model jobmodel = new job_model(); jobmodel.category = item.category.ToString(); employer_info name = db.employer_info .Where(c => c.emp_id == item.employer) .SingleOrDefault(); jobmodel.image = name.logo; jobmodel.submission_date = item.submission_date; jobmodel.employer = name.company_name; jobmodel.full_address = item.full_address; jobmodel.job_id = item.job_id; jobmodel.title = item.title; jobmodel.job_type = item.job_type; jobmodel.emp_id = item.employer.HasValue ? Convert.ToInt32(item.employer) : 0; jobmodel.category = db.job_categories.Find(Convert.ToInt32(item.category)).category_name.ToString(); jobsfinal.Add(jobmodel); } ViewBag.recommended = jobsfinal; ViewBag.recognize = jobids; } } if (id != null) { jobdetails job_det = new jobdetails(); var data = (from p in db.jobs join q in db.employer_info on p.employer equals q.emp_id join r in db.job_categories on p.category equals r.jobcat_id where p.job_id == id select new { p, q.company_name, q.logo, q.emp_id, r.category_name }).FirstOrDefault(); List <job> jobs = new List <Models.job>(); if (data != null) { job_det.emp_id = data.emp_id; job_det.category_name = data.category_name; job_det.city = data.p.city; job_det.created_at = data.p.created_at; job_det.description = data.p.description; job_det.district = data.p.district; job_det.employer = data.company_name; job_det.experience = data.p.experience; job_det.full_address = data.p.full_address; job_det.gender = data.p.gender; job_det.job_id = data.p.job_id; job_det.job_level = data.p.job_level; job_det.job_type = data.p.job_type; job_det.openings = data.p.openings; job_det.postalcode = data.p.postalcode; job_det.salaryfrom = data.p.salaryfrom; job_det.salaryto = data.p.salaryto; job_det.state = data.p.state; job_det.status = data.p.status; job_det.skills = data.p.skills; job_det.submission_date = data.p.submission_date; job_det.title = data.p.title; jobs = db.jobs.ToList(); } ViewBag.logo = data.logo; int appcount = 0; jobs = jobs.Where(c => c.employer == data.p.employer && c.job_id != id).Take(5).ToList(); if (Session["role"] != null && Session["role"].ToString() == "jobseeker") { int userid = Convert.ToInt32(Session["userid"].ToString()); userid = (from r in db.jobseeker_info where r.login_info == userid select r.js_id).FirstOrDefault(); int count = (from p in db.applications where p.job_id == id where p.jobseeker_id == userid where p.status == 1 select p.job_id ).Count(); ViewBag.count = count; int shortlist = (from exa in db.interests where exa.job_id == id where exa.jobseeker_id == userid where exa.status == 1 select exa.int_id).Count(); ViewBag.interested = shortlist; } appcount = (from f in db.interests where f.status == 1 where f.job_id == id select f.int_id).Count(); ViewBag.appcount = appcount; ViewBag.data = jobs.ToList(); return(View(job_det)); } else { return(RedirectToAction("index", "login")); } }
public ActionResult jobListingajax(int?page, string keyword = "", string city = "", string level = "", string time = "", string cat = "", string type = "") { DateTime today = DateTime.Now; int span; int pageSize = 10; int pageIndex = 1; pageIndex = page.HasValue ? Convert.ToInt16(page) : 1; var predicate1 = PredicateBuilder.New <job>(true); var predicate2 = PredicateBuilder.New <job>(true); List <job> job = new List <Models.job>(); if (!string.IsNullOrEmpty(keyword)) { predicate1.And(p => p.title.Contains(keyword)); } if (!string.IsNullOrEmpty(city)) { predicate1.And(p => p.city.Contains(city)); } if (!string.IsNullOrEmpty(level)) { predicate1.And(p => p.job_level.Equals(level)); } predicate1.And(a => a.status == 1); if (string.IsNullOrEmpty(keyword) && string.IsNullOrEmpty(level) && string.IsNullOrEmpty(city) && string.IsNullOrEmpty(time) && string.IsNullOrEmpty(cat) && string.IsNullOrEmpty(type)) { if (Session["js_id"] != null) { int ssid = Convert.ToInt16(Session["js_id"].ToString()); string skills = db.jobseeker_info.Where(a => a.js_id == ssid).Select(a => a.skills).First(); predicate2.And(a => a.status == 1); if (skills != null) { foreach (var d in skills.Split(',').ToList()) { job.AddRange(db.jobs.Where(a => a.status == 1 && a.skills.Contains(d)).ToList()); } } job.AddRange(db.jobs.Where(a => a.status == 1)); job = job.GroupBy(g => g.job_id).OrderByDescending(g => g.Count()).SelectMany(g => g).ToList(); job = job.Distinct().ToList(); } else { job = db.jobs.Where(predicate1).OrderByDescending(c => Guid.NewGuid()).ToList(); } } else { job = db.jobs.Where(predicate1).OrderByDescending(c => Guid.NewGuid()).ToList(); } // predicate1.And(a => a.submission_date > DateTime.Now); List <job_model> jobs = new List <job_model>(); List <job_model> temp = new List <job_model>(); List <job_model> jobsfinal = new List <job_model>(); List <job_model> temptype = new List <job_model>(); foreach (var item in job) { job_model jobmodel = new job_model(); jobmodel.category = item.category.ToString(); jobmodel.city = item.city; jobmodel.created_at = item.created_at; jobmodel.description = item.description; jobmodel.district = item.district; jobmodel.job_level = item.job_level; jobmodel.gender = item.gender; jobmodel.salaryfrom = item.salaryfrom; jobmodel.salaryto = item.salaryto; jobmodel.experience = item.experience; employer_info name = db.employer_info .Where(c => c.emp_id == item.employer) .SingleOrDefault(); jobmodel.image = name.logo; jobmodel.submission_date = item.submission_date; jobmodel.employer = name.company_name; jobmodel.full_address = item.full_address; jobmodel.state = item.state; jobmodel.district = item.district; jobmodel.job_id = item.job_id; jobmodel.title = item.title; jobmodel.job_type = item.job_type; jobmodel.emp_id = item.employer.HasValue ? Convert.ToInt32(item.employer) : 0; jobmodel.category = db.job_categories.Find(Convert.ToInt32(item.category)).category_name.ToString(); jobs.Add(jobmodel); } jobsfinal = jobs; var predicate = PredicateBuilder.New <job_model>(true); if (!string.IsNullOrEmpty(cat)) { string[] cat_ = cat.Split(','); foreach (string item in cat_) { int item__ = Convert.ToInt16(item); string name = db.job_categories .Where(c => c.jobcat_id == item__) .Select(cc => cc.category_name) .SingleOrDefault().ToString(); predicate.Or(p => p.category.Equals(name)); } } if (!string.IsNullOrEmpty(type)) { string[] type_ = type.Split(','); foreach (var text in type_) { predicate.Or(p => p.job_type.Contains(text)); } } jobsfinal = jobsfinal.Where(predicate).ToList(); if (!string.IsNullOrEmpty(time)) { if (time == "all") { span = 2500000; } else { span = Convert.ToInt32(time); } foreach (var variable in jobsfinal.ToList()) { TimeSpan t = (today - Convert.ToDateTime(variable.created_at)); double days = t.TotalHours; if (!(days <= span)) { jobsfinal.Remove(variable); } } } if (!string.IsNullOrEmpty(type) || !string.IsNullOrEmpty(cat) || !string.IsNullOrEmpty(time)) { return(PartialView(jobsfinal.ToPagedList(pageIndex, pageSize))); } else { return(PartialView(jobsfinal.ToPagedList(pageIndex, pageSize))); } }