public async Task <ActionResult> AddJob(ViewModels.AddJob data) { if (ModelState.IsValid) { var organization = await repository.GetOrganization(User.Identity.Name); if (organization != null) { var addJob = await repository.AddJob(data, organization); if (addJob) { return(RedirectToAction("Jobs")); } } } return(View()); }
public async Task <ActionResult> EditJob(ViewModels.AddJob data) { var job = await db.Jobs.Where(x => x.Id == data.Id).SingleOrDefaultAsync(); if (job != null) { DateTimeFormatInfo fmt = new CultureInfo("id-id").DateTimeFormat; DateTimeOffset start = job.Start; DateTimeOffset finish = job.Finish; if (data.Start != null && data.Finish != null) { start = DateTimeOffset.Parse(data.Start ?? job.Start.ToString(), fmt); finish = DateTimeOffset.Parse(data.Finish ?? job.Finish.ToString(), fmt); } job.Title = data.Title ?? job.Title; job.Location = data.Location ?? job.Location; job.Start = start; job.Finish = finish; job.Descriptions = data.Descriptions ?? job.Descriptions; job.Banner = await Helpers.UploadFileHelper.UploadBannerImage(data.Banner) ?? job.Banner; } ; try { db.Entry(job).State = EntityState.Modified; var result = await db.SaveChangesAsync(); if (result > 0) { return(RedirectToAction("Jobs")); } } catch (Exception ex) { Trace.TraceError(ex.Message); Trace.TraceError(ex.StackTrace); } return(View(job)); }
public async Task <bool> AddJob(ViewModels.AddJob data, Models.Organization organization) { DateTimeFormatInfo fmt = new CultureInfo("id-id").DateTimeFormat; DateTimeOffset start = DateTimeOffset.Parse(data.Start, fmt); DateTimeOffset finish = DateTimeOffset.Parse(data.Finish, fmt); var newJob = new Models.Job() { Id = data.Id, Start = start, Finish = finish, Title = data.Title, Location = data.Location, Created = DateTimeOffset.Now, Descriptions = data.Descriptions, Organization = organization, Banner = await Helpers.UploadFileHelper.UploadBannerImage(data.Banner) }; try { db.Jobs.Add(newJob); var result = await db.SaveChangesAsync(); if (result > 0) { return(true); } } catch (Exception ex) { Trace.TraceError(ex.Message); Trace.TraceError(ex.StackTrace); } return(false); }