using System; using System.Collections.Generic; using System.Linq; using System.Web; using CPE.App.Web.Elucidat; using CPE.App.Web.Models; using CPE.App.Web.Code; namespace CPE.App.Web.Helpers { public class ReleaseHelper { public static bool GetReleaseDescriptionDetails(ReleaseModel release) { try { var description = release.Description; string[] fields = description.Split('|'); var releaseCode = release.ReleaseCode; string presenter = fields.Where(p => p.Contains("Presenter")).FirstOrDefault(); presenter = presenter.Substring(presenter.IndexOf('=') + 1); string fos = fields.Where(f => f.Contains("FOS") || f.Contains("Field of Study")).FirstOrDefault(); fos = fos.Substring(fos.IndexOf('=') + 1); string credits = fields.Where(c => c.Contains("Credits")).FirstOrDefault(); credits = credits.Substring(credits.IndexOf('=') + 1); if (String.IsNullOrEmpty(presenter) || String.IsNullOrEmpty(fos) || String.IsNullOrEmpty(credits)) { return false; } var course = BaseController.Database.CourseDetails.FirstOrDefault(c => c.ReleaseCode == releaseCode); if (course == null) { course = new CourseDetail { ProjectCode = release.Project.ProjectCode, ReleaseCode = releaseCode, Presenter = presenter, Fos = fos, Credits = credits, CreatedDate = release.Created, Name = release.Project.Name }; BaseController.Database.CourseDetails.InsertOnSubmit(course); } else { course.Presenter = !String.IsNullOrEmpty(presenter)? presenter : ""; course.Fos = !String.IsNullOrEmpty(fos)? fos : ""; course.Credits = !String.IsNullOrEmpty(credits)? credits: ""; course.Name = release.Project.Name; } BaseController.Database.SubmitChanges(); return true; } catch (Exception) { return false; } } } }