Beispiel #1
0
        /*******Begin code to modify********/

        /// <summary>
        /// Create a new user of the LMS with the specified information.
        /// Assigns the user a unique uID consisting of a 'u' followed by 7 digits.
        /// </summary>
        /// <param name="fName">First Name</param>
        /// <param name="lName">Last Name</param>
        /// <param name="DOB">Date of Birth</param>
        /// <param name="SubjectAbbrev">The department the user belongs to (professors and students only)</param>
        /// <param name="SubjectAbbrev">The user's role: one of "Administrator", "Professor", "Student"</param>
        /// <returns>A unique uID that is not be used by anyone else</returns>
        public string CreateNewUser(string fName, string lName, DateTime DOB, string SubjectAbbrev, string role)
        {
            var chars       = "0123456789";
            var stringChars = new char[8];
            var random      = new Random();

            stringChars[0] = 'u';
            for (int i = 1; i < stringChars.Length; i++)
            {
                stringChars[i] = chars[random.Next(chars.Length)];
            }

            var uid = new String(stringChars);


            using (Models.LMSModels.Team13LMSContext db = new Models.LMSModels.Team13LMSContext())
            {
                if (role.Equals("Student"))
                {
                    Models.LMSModels.Students s = new Models.LMSModels.Students();
                    s.FirstName           = fName;
                    s.LastName            = lName;
                    s.DateOfBirth         = DOB;
                    s.SubjectAbbreviation = SubjectAbbrev;
                    s.UId = uid;
                    db.Students.Add(s);
                    db.SaveChanges();
                }

                if (role.Equals("Professor"))
                {
                    Models.LMSModels.Professors p = new Models.LMSModels.Professors();
                    p.FirstName           = fName;
                    p.LastName            = lName;
                    p.DateOfBirth         = DOB;
                    p.SubjectAbbreviation = SubjectAbbrev;
                    p.UId = uid;
                    db.Professors.Add(p);
                    db.SaveChanges();
                }

                if (role.Equals("Administrator"))
                {
                    Models.LMSModels.Administrators admin = new Models.LMSModels.Administrators();
                    admin.FirstName   = fName;
                    admin.LastName    = lName;
                    admin.DateOfBirth = DOB;
                    admin.UId         = uid;
                    db.Administrators.Add(admin);
                    db.SaveChanges();
                }
            }

            return(uid);
        }
Beispiel #2
0
        /*******Begin code to modify********/

        /// <summary>
        /// Create a new user of the LMS with the specified information.
        /// Assigns the user a unique uID consisting of a 'u' followed by 7 digits.
        /// </summary>
        /// <param name="fName">First Name</param>
        /// <param name="lName">Last Name</param>
        /// <param name="DOB">Date of Birth</param>
        /// <param name="SubjectAbbrev">The department the user belongs to (professors and students only)</param>
        /// <param name="role">The user's role: one of "Administrator", "Professor", "Student"</param>
        /// <returns>A unique uID that is not be used by anyone else</returns>
        public string CreateNewUser(string fName, string lName, DateTime DOB, string SubjectAbbrev, string role)
        {
            String uID = GenerateUID();

            if (role == "Administrator")
            {
                Models.LMSModels.Administrators admin = new Models.LMSModels.Administrators();
                admin.FirstName = fName;
                admin.LastName  = lName;
                admin.BirthDate = DOB;
                admin.UId       = uID;

                db.Administrators.Add(admin);
            }
            else if (role == "Professor")
            {
                Models.LMSModels.Professors professor = new Models.LMSModels.Professors();
                professor.FirstName  = fName;
                professor.LastName   = lName;
                professor.BirthDate  = DOB;
                professor.UId        = uID;
                professor.Department = SubjectAbbrev;

                db.Professors.Add(professor);
            }
            else if (role == "Student")
            {
                Models.LMSModels.Students student = new Models.LMSModels.Students();
                student.FirstName = fName;
                student.LastName  = lName;
                student.BirthDate = DOB;
                student.UId       = uID;
                student.Major     = SubjectAbbrev;

                db.Students.Add(student);
            }

            db.SaveChanges();

            return(uID);
        }
        /*******Begin code to modify********/

        /// <summary>
        /// Create a new user of the LMS with the specified information.
        /// Assigns the user a unique uID consisting of a 'u' followed by 7 digits.
        /// </summary>
        /// <param name="fName">First Name</param>
        /// <param name="lName">Last Name</param>
        /// <param name="DOB">Date of Birth</param>
        /// <param name="SubjectAbbrev">The department the user belongs to (professors and students only)</param>
        /// <param name="role">The user's role: one of "Administrator", "Professor", "Student"</param>
        /// <returns>A unique uID. This uID must not be used by anyone else</returns>
        public string CreateNewUser(string fName, string lName, DateTime DOB, string SubjectAbbrev, string role)
        {
            // String for new uID to be given new user
            string newIDNumber;

            using (db)
            {
                // List for storing all user ID's
                List <string> userIDs = new List <string>();

                var infoQuery =
                    (from stu in db.Students
                     select stu.UId)
                    .Union
                        (from prof in db.Professors
                        select prof.UId)
                    .Union(from adm in db.Administrators
                           select adm.UId);
                foreach (string uID in infoQuery)
                {
                    userIDs.Add(uID);
                }


                // Create unique uID that doesn't match any existing uID's
                newIDNumber = getNextUserID(userIDs);

                // Add the user to the database
                if (role.Equals("Student"))
                {
                    // Set up the student
                    Models.LMSModels.Students student = new Models.LMSModels.Students();
                    student.FirstName   = fName;
                    student.LastName    = lName;
                    student.DateOfBirth = DOB;
                    student.Major       = SubjectAbbrev;
                    student.UId         = newIDNumber;
                    student.Password    = "";

                    // Insert the student into the database
                    db.Students.Add(student);
                    db.SaveChanges();
                }
                else if (role.Equals("Professor"))
                {
                    // Set up the professor
                    Models.LMSModels.Professors professor = new Models.LMSModels.Professors();
                    professor.FirstName   = fName;
                    professor.LastName    = lName;
                    professor.DateOfBirth = DOB;
                    professor.WorksIn     = SubjectAbbrev;
                    professor.UId         = newIDNumber;
                    professor.Password    = "";

                    // Insert the professor into the database
                    db.Professors.Add(professor);
                    db.SaveChanges();
                }
                else
                {
                    // Set up the administrator
                    Models.LMSModels.Administrators admin = new Models.LMSModels.Administrators();
                    admin.FirstName   = fName;
                    admin.LastName    = lName;
                    admin.DateOfBirth = DOB;
                    admin.UId         = newIDNumber;
                    admin.Password    = "";

                    // Insert the professor into the database
                    db.Administrators.Add(admin);
                    db.SaveChanges();
                }
            }


            // Return the uID
            return(newIDNumber);
        }