public ActionResult BuildTimetable(int?TermId) { if (TermId == null) { return(RedirectToAction("ChooseTermForTimetable")); } int termId = TermId.Value; int studentId = ((Student)Session["student"]).StudentId; if (!CanEnroll(studentId, termId)) { return(RedirectToAction("RegistrationStatus")); } List <EnrollmentOption> enrollmentOptions = dao.GetEnrollmentOptions(studentId, termId); List <TermDisplay> terms = new List <TermDisplay>(); TermDisplay currentTerm = null; CourseDisplay currentCourse = null; int prevTermId = 0, prevCourseId = 0; foreach (EnrollmentOption o in enrollmentOptions) { if (prevTermId != o.ProgramSemesterId) { // new term, new course prevTermId = o.ProgramSemesterId; prevCourseId = o.CourseId; currentTerm = new TermDisplay() { ProgramSemesterName = o.ProgramSemesterName, Courses = new List <CourseDisplay>(), Electives = new List <ElectiveDisplay>() }; terms.Add(currentTerm); currentCourse = AddCourseToTerm(o, currentTerm); } else if (prevCourseId != o.CourseId) { // same term, new course prevCourseId = o.CourseId; currentCourse = AddCourseToTerm(o, currentTerm); } else { // same course, another section AddSectionToCourse(o, currentCourse); } } ViewBag.JSONString = JsonConvert.SerializeObject(enrollmentOptions); TimetableBuilder timetableBuilder = new TimetableBuilder() { Terms = terms, TermId = termId }; return(View(timetableBuilder)); }
private void TerminalWindow_Load(object sender, EventArgs e) { LoadSettings(); TermDisplay.Focus(); if (CurrentConnection != null) { CurrentConnection.Transport.Open(); } }
private void Variable_Y_Click(object sender, RoutedEventArgs e) { if (DefineXY.IsChecked == true) { Y = Answer; Y_Text.Text = "X = " + Y.ToString(); } else { TermDisplay.AppendText(Y.ToString()); } }
private CourseDisplay AddCourseToTerm(EnrollmentOption o, TermDisplay currentTerm) { CourseDisplay currentCourse = new CourseDisplay { CourseIsOffered = o.CourseIsOffered, CourseIsCompleted = o.courseIsCompleted, CourseId = o.CourseId, CourseCode = o.CourseCode, CourseTitle = o.CourseTitle, CourseCredits = o.CourseCredits, IsAcademic = o.IsAcademic, Prereqs = o.Prereqs.Select(p => new PrereqDisplay { CourseCode = $"{p.courseSubject}{p.courseNum}" }).ToList(), Sections = new List <SectionDisplay>() }; if (o.IsMandatory) { currentTerm.Courses.Add(currentCourse); } else { bool electiveAdded = false; foreach (ElectiveDisplay e in currentTerm.Electives) { if (e.IsTechnicalElective == o.IsTechnicalElective) { e.Courses.Add(currentCourse); electiveAdded = true; } } if (!electiveAdded) { currentTerm.Electives.Add(new ElectiveDisplay { IsTechnicalElective = o.IsTechnicalElective, Courses = new List <CourseDisplay>() { currentCourse } }); } } AddSectionToCourse(o, currentCourse); return(currentCourse); }
void SaveSettings() { TermDisplay.EnableTimers(false); try { INIFile config = new INIFile(); if (CurrentConnection != null) { CurrentConnection.Save(config); Properties.Settings.Default.LastConnection = config.Text; Properties.Settings.Default.Save(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void EditConnection(Connection SelectedConnection) { if (System.Diagnostics.Debugger.IsAttached) { TermDisplay.DisableTimers(); } Application.DoEvents(); ConnectionSettingsDialog dialog = new ConnectionSettingsDialog(); dialog.SelectedConnection = SelectedConnection; DialogResult result = dialog.ShowDialog(); if (result == System.Windows.Forms.DialogResult.OK) { CurrentConnection = dialog.SelectedConnection; } if (CurrentConnection != null && !CurrentConnection.Connected) { CurrentConnection.Connect(); } TermDisplay.EnableTimers(true); }
private void Digit_0_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText("0"); }
private void Faculty_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText("!"); }
private void RightBracket_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText(")"); }
private void RootOf_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText("V"); }
private void PowerrOf_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText("^"); }
private void Multiply_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText("*"); }
private void TerminalWindow_KeyPress(object sender, KeyPressEventArgs e) { TermDisplay.HandleKeyPress(sender, e); }
private void Negative_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText("-"); }
private void Add_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText("+"); }
private void Subtract_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText("-"); }
private void TerminalWindow_KeyDown(object sender, KeyEventArgs e) { TermDisplay.HandleKeyDown(sender, e); }
private void Divide_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText("/"); }
private void Decimalpoint_Click(object sender, RoutedEventArgs e) { TermDisplay.AppendText(","); }