public ResearcherController()
        {
            researchers         = DatabaseConn.fetchFullResearcherDetail().OrderBy(o => o.GivenName).ToList();
            viewableresearchers = new ObservableCollection <Researher>(researchers); //this list we will modify later

            foreach (Researher e in researchers)
            {
                PublicationController p = new PublicationController();
                e.publish  = p.loadPublicationsFor(e);
                e.position = DatabaseConn.loadPositionFor(e.id);
                if (e.types == type.Staff)
                {
                    e.sup_student = DatabaseConn.fetchSupervision(e.id);
                    e.calculateStaff(e.publish);
                }
                e.previousJobDetail();
            }
        }