public string GetTimetableForUserAsXml(string username, string faculty) { var fullTimetable = GetTimetableForUser(username, faculty); var subjectsBL = new SubjectsBL(); return ConvertToXML(fullTimetable, subjectsBL.GetAllSubjects()); }
public string GetXMLTimetableForMastersYear(StudyYear year) { var subjectsBL = new SubjectsBL(); return _exporter.ConvertToXML(_parser.GetTimetableForYear(year), subjectsBL.GetAllSubjects()); }
public string GetStudentAsXml(string username) { User user = dal.GetUser(username, UserTypes.Student); Student student; var xDocument = new XDocument(new XDeclaration("1.0", "utf-8", "yes")); var studentElement = new XElement("student"); if(user != null && (student = user as Student) != null) { var name = new XElement("name", student.Name); var email = new XElement("email", student.Email); var userName = new XElement("username", student.Id); var faculties = new XElement("faculties"); if (student.SubscribedFaculties != null) foreach (var faculty in student.SubscribedFaculties) { faculties.Add(new XElement("faculty", faculty)); } // var websites = new XElement("websites"); // if (student.SubscribedWebsites != null) // { // var monitoredWebsitesBL = new MonitoredWebsitesBL(); // foreach (var website in student.SubscribedWebsites) // { // var websiteObject = monitoredWebsitesBL.GetWebsite(website); // if (websiteObject != null) // { // var websiteElement = new XElement("website"); // // var websiteName = new XElement("name"); // if (websiteObject.Title != null) websiteName.Value = websiteObject.Title; // // var websiteLink = new XElement("link"); // if (websiteObject.Id != null) websiteLink.Value = websiteObject.Id; // // var websiteOwner = new XElement("owner"); // if (websiteObject.Owner != null) // websiteOwner.Value = websiteObject.Owner; // // websiteElement.Add(websiteName); // websiteElement.Add(websiteLink); // websiteElement.Add(websiteOwner); // // websites.Add(new XElement("website", websiteElement)); // } // } // } var groups = new XElement("groups"); if (student.SubscribedGroups != null) foreach (var groupElement in student.SubscribedGroups) { var group = new XElement("group"); group.Value = groupElement; groups.Add(group); } var subjectsBL = new SubjectsBL(); var optionalSubjects = new XElement("optionalSubjects"); if(student.OptionalSubjects != null) { foreach (var optionalSubject in student.OptionalSubjects) { var optionalSubjectElement = new XElement("optionalSubject"); optionalSubjectElement.Add(new XElement("id", optionalSubject)); var subject = subjectsBL.GetSubject(optionalSubject); if (subject != null && subject.Name != null) optionalSubjectElement.Add(new XElement("name", subject.Name)); optionalSubjects.Add(optionalSubjectElement); } } var failedSubjects = new XElement("failedSubjects"); if (student.FailedSubjects != null) foreach (var failedSubject in student.FailedSubjects) { var failedSubjectElement = new XElement("failedSubject"); failedSubjectElement.Add(new XElement("id", failedSubject)); var subject = subjectsBL.GetSubject(failedSubject); if (subject != null && subject.Name != null) failedSubjectElement.Add(new XElement("name", subject.Name)); failedSubjects.Add(failedSubjectElement); } studentElement.Add(name); studentElement.Add(email); studentElement.Add(userName); studentElement.Add(faculties); // studentElement.Add(websites); studentElement.Add(groups); studentElement.Add(optionalSubjects); studentElement.Add(failedSubjects); } xDocument.Add(studentElement); return xDocument.ToString(); }
public string GetFailedAndOptionalSubjectsAndWebsitesAsXml(string username) { var usersBL = new UsersBL(); var student = usersBL.GetStudent(username); var subjectsBL = new SubjectsBL(); var document = new XDocument(new XDeclaration("1.0", "utf-8", "yes")); var subjects = new XElement("subjects"); if(student != null) { if (student.OptionalSubjects != null) { var optionalSubjects = new XElement("optionalSubjects"); foreach (var optionalSubject in student.OptionalSubjects) { var optionalSubjectElement = new XElement("optionalSubject"); optionalSubjectElement.Add(new XElement("id", optionalSubject)); var subject = subjectsBL.GetSubject(optionalSubject); if (subject != null && subject.Name != null) { optionalSubjectElement.Add(new XElement("name", subject.Name)); if (subject.Websites != null) { var websitesElement = new XElement("websites"); foreach (var website in subject.Websites) { websitesElement.Add(new XElement("website", website)); } optionalSubjectElement.Add(websitesElement); } } optionalSubjects.Add(optionalSubjectElement); } subjects.Add(optionalSubjects); } if (student.FailedSubjects != null) { var failedSubjects = new XElement("failedSubjects"); foreach (var failedSubject in student.FailedSubjects) { var failedSubjectElement = new XElement("failedSubject"); failedSubjectElement.Add(new XElement("id", failedSubject)); var subject = subjectsBL.GetSubject(failedSubject); if (subject != null && subject.Name != null) { failedSubjectElement.Add(new XElement("name", subject.Name)); if (subject.Websites != null) { var websitesElement = new XElement("websites"); foreach (var website in subject.Websites) { websitesElement.Add(new XElement("website", website)); } failedSubjectElement.Add(websitesElement); } } failedSubjects.Add(failedSubjectElement); subjects.Add(failedSubjects); } } } document.Add(subjects); return document.ToString(); }