Exemple #1
0
 public UnitController()
 {
     unitList     = SchoolDBAAdapter.FetchAllUnit();//load all units to local
     viewableUnit = new ObservableCollection <Unit>(unitList);
     foreach (Unit i in unitList)
     {
         i.classList = SchoolDBAAdapter.FetchClassByCode(i.Code);
     }
 }
Exemple #2
0
        public StaffController()
        {
            staffList     = SchoolDBAAdapter.FetchAllStaff();//load all staffs to local
            viewableStaff = new ObservableCollection <Staff>(staffList);

            foreach (Staff s in staffList)
            {
                s.eventList = SchoolDBAAdapter.FetchEvent(s.ID);
                s.classList = SchoolDBAAdapter.FetchUnitByID(s.ID);
                s.AvilInfo  = Availability(s.ID);
            }
        }
Exemple #3
0
        public void FilterByCampus(string code, Campus cam)
        {
            Campus all = ParseEnum <Campus>("All");

            classList     = SchoolDBAAdapter.FetchClassByCode(code);
            viewableClass = new ObservableCollection <UnitClass>(classList);
            if (cam != all)
            {
                var SearchtName = from UnitClass uc in classList
                                  where (uc.Campus == cam)
                                  select uc;
                viewableClass.Clear();
                SearchtName.ToList().ForEach(viewableClass.Add);
            }
        }
Exemple #4
0
        public string Availability(int ID)
        {
            List <UnitClass> classlist = SchoolDBAAdapter.FetchClassByID(ID);
            List <Event>     eventlist = SchoolDBAAdapter.FetchEvent(ID);
            string           result;

            DateTime now = DateTime.Now;

            dt = DateTime.Today.DayOfWeek.ToString();
            TimeSpan time = now.TimeOfDay;

            var cls = from UnitClass uc in classlist
                      where uc.Day == dt && uc.Start <= time && uc.End >= time
                      select uc;
            int classnum           = cls.ToList().Count();
            List <UnitClass> teach = cls.ToList <UnitClass>();
            var evt = from Event et in eventlist
                      where et.Day == dt && et.Start <= time && et.End >= time
                      select et;
            int eventnum = evt.ToList().Count();

            if (eventnum > 0)
            {
                result = "Consulting";
            }
            else if (classnum > 0)
            {
                result = "Teaching" + " (" + teach[0].Unit_Code + "," + teach[0].Room + ")";
            }
            else
            {
                result = "Free";
            }
            //Availability status = ParseEnum<Availability>(result);
            return(result);
        }