public static void AddTermData(ITermStorable objectToAddTo, UniversityYear universtiyYear, bool Debug) { SchoolTerm newTerm1 = new SchoolTerm(1, new DateTime(2014, 3, 3), universtiyYear, Debug); newTerm1.universityTerm = universtiyYear.GetUniTerm(newTerm1.TermNumber); objectToAddTo.AddTerm(newTerm1); SchoolTerm newTerm2 = new SchoolTerm(2, new DateTime(2014, 5, 5), universtiyYear, Debug); newTerm2.universityTerm = universtiyYear.GetUniTerm(newTerm2.TermNumber); objectToAddTo.AddTerm(newTerm2); SchoolTerm newTerm3 = new SchoolTerm(3, new DateTime(2014, 7, 14), universtiyYear, Debug); newTerm3.universityTerm = universtiyYear.GetUniTerm(newTerm3.TermNumber); objectToAddTo.AddTerm(newTerm3); SchoolTerm newTerm4 = new SchoolTerm(4, new DateTime(2014, 9, 8), universtiyYear, Debug); newTerm4.universityTerm = universtiyYear.GetUniTerm(newTerm4.TermNumber); objectToAddTo.AddTerm(newTerm4); }
public Course2(string CourseCode, bool Debug) : base(CourseCode) { if (!VictoriaUniversity.Course.CheckCourseCode(CourseCode)) { throw new CourseNotValid(); } if (Debug) { SetToDebug(); } uri = new Uri("http://www.victoria.ac.nz/courses/" + CourseCode.Substring(0, 4).ToLower() + "/" + CourseCode.Substring(4, 3) + "?year=2014"); Console.WriteLine(uri); client.DownloadFile(uri, CourseCode + ".htm"); doc.Load(CourseCode + ".htm"); SchoolTerm.AddTermData(this, this.GetUniversityYear(), debug); cs = chooseCRN(this); printNodes("//section/div/h3", "Trimester"); List <ScreenScrapedInfo> tempList = printNodes("//p", "Teaching dates"); List <ScreenScrapedInfo> LectureDatails = printNodes("//ol/li/h6/div"); foreach (SchoolTerm st in copyOfSchoolTerms) { st.SetLineNumberRange(tempList, startingLinePosition, endingLinePosition); allLectureTimes.AddRange(CreateLectureTime(st.ReturnScreenScrapedInfoInTermRange(LectureDatails), st)); } if (debug) { Console.WriteLine("==Debug=="); Console.WriteLine("Print out SchoolTerms:"); foreach (SchoolTerm st in copyOfSchoolTerms) { Console.WriteLine(st.ToString()); Console.WriteLine("==" + st.TermStartDate.ToLongDateString() + "=="); } } Console.WriteLine("Lecture times added:"); foreach (LectureTime lt in allLectureTimes) { Console.WriteLine(lt.ToString()); } }
public void AddTerm(SchoolTerm schoolTerm) { copyOfSchoolTerms.Add(schoolTerm); }
private List <LectureTime> CreateLectureTime(List <ScreenScrapedInfo> infoToUse, SchoolTerm st) { List <LectureTime> addedLectureTimes = new List <LectureTime>(); List <ScreenScrapedInfo> threeStringsToUse = infoToUse.Where(wh => nodeInEstablishedRange(wh.lineNumber)).ToList(); DateTime startTime = new DateTime(2014, 1, 1, 8, 30, 0); DateTime endTime = new DateTime(2014, 1, 1, 8, 30, 0); int dayOfDaWeek = 1; string roomName = "No room"; foreach (ScreenScrapedInfo sci in threeStringsToUse.OrderBy(oo => oo.lineNumber)) { if (sci.lineString.StartsWith("Monday")) { dayOfDaWeek = 1; } else if (sci.lineString.StartsWith("Tuesday")) { dayOfDaWeek = 2; } else if (sci.lineString.StartsWith("Wednesday")) { dayOfDaWeek = 3; } else if (sci.lineString.StartsWith("Thursday")) { dayOfDaWeek = 4; } else if (sci.lineString.StartsWith("Friday")) { dayOfDaWeek = 5; } else { try { int startHour = int.Parse(sci.lineString.Substring(0, 2)); int startMinute = int.Parse(sci.lineString.Substring(3, 2)); int endHour = int.Parse(sci.lineString.Substring(8, 2)); int endMinute = int.Parse(sci.lineString.Substring(11, 2)); startTime = new DateTime(2014, 1, 1, startHour, startMinute, 0); endTime = new DateTime(2014, 1, 1, endHour, endMinute, 0); if (debug) { Console.WriteLine("Lecture starts " + startTime.ToLongTimeString()); Console.WriteLine("Lecture ends " + endTime.ToLongTimeString()); } } catch (FormatException fx) { if (debug) { Console.WriteLine("============="); Console.WriteLine(fx.Message + " " + sci.lineString); } roomName = sci.lineString; addedLectureTimes.Add(new LectureTime(cs, st.universityTerm, roomName, dayOfDaWeek, startTime, endTime)); } } if (debug) { Console.WriteLine("Success on " + sci.lineString); } //new LectureTime(startTime, endTime, roomName, dayOfDaWeek, newCourse); infoToUse.Remove(sci); } if (debug) { Console.WriteLine("+++ print all added lecture times +++"); foreach (LectureTime lt in addedLectureTimes) { Console.WriteLine(lt.ToString()); } } return(addedLectureTimes); }