Beispiel #1
0
        public static Teacher Convert(this DbTeacher teacher, DbUser user = null)
        {
            var res = new Teacher()
            {
                Id         = teacher.TeacherId,
                EntryYear  = teacher.EnteringYear,
                Name       = teacher.Name,
                Surname    = teacher.Surname,
                Middlename = teacher.Middlename,
                Rank       = new TeacherRank()
                {
                    Id   = teacher.Rank.RankId,
                    Name = teacher.Rank.RankName
                }
            };

            if (user != null)
            {
                res.Login            = user.Login;
                res.UserId           = user.UserId;
                res.Password         = user.Password;
                res.LastActivityDate = user.LastActivityDate ?? DateTime.Now;
                res.RegistredDate    = user.RegDate;
            }
            return(res);
        }
Beispiel #2
0
        public override void LoadModel(DbBase entity)
        {
            DbTeacher teacher = entity as DbTeacher;

            this.name           = teacher.name;
            this.id             = teacher.id;
            this.subjectIds     = teacher.subjects;
            this.fbId           = teacher.facebookId;
            this.email          = teacher.email;
            this.isMale         = teacher.isMale;
            this.favTeachers    = teacher.favTeachers;
            this.messagingToken = (entity as DbUser).messagingToken;
            this.messengerId    = teacher.messengerId;
        }
Beispiel #3
0
        public override DbBase GetDbModel()
        {
            DbTeacher teacher = new DbTeacher()
            {
                subjects    = GetDbSubjects(),
                name        = name,
                id          = id,
                facebookId  = fbId,
                email       = this.email,
                isMale      = this.isMale,
                favTeachers = this.favTeachers,
                messengerId = this.messengerId
            };

            return(teacher);
        }
Beispiel #4
0
        public int AddTeacher(string login, string password, string fname, string lname, string mname, int entryYear, int rankId)
        {
            if (string.IsNullOrEmpty(login) || string.IsNullOrEmpty(password))
            {
                return(-1);
            }

            if (Context.Users.Any(x => x.Login == login))
            {
                return(-1);
            }

            var newUser = new DbUser();

            newUser.RegDate  = DateTime.Now;
            newUser.Login    = login;
            newUser.Password = password;
            Context.Users.Add(newUser);

            var Teacher = new DbTeacher();

            Teacher.UserId       = newUser.UserId;
            Teacher.Name         = fname;
            Teacher.Surname      = lname;
            Teacher.Middlename   = mname;
            Teacher.EnteringYear = entryYear;
            Teacher.RankId       = rankId;
            Context.Teachers.Add(Teacher);

            try
            {
                Context.SaveChanges();
            }
            catch (Exception ex)
            {
                Debug.WriteLine($"Exception:{ex.Message}");
                return(-1);
            }
            return(Teacher.TeacherId);
        }
Beispiel #5
0
 private void TeacherFetched(DbTeacher loggedIn)
 {
     if (loggedIn == null)
     {
         MessagePopupManager.Instance.
         SetUpperText(Strings.GetString(Strings.Account.teacher_doesnt_exist)).
         SetLeftButtonText(Strings.GetString(Strings.UI.OK)).
         OnlyRightButton(true).EnablePopup();
         MessagePopupManager.Instance.StopLoader();
     }
     else
     {
         if ((string.IsNullOrEmpty(loggedIn.messagingToken) && !string.IsNullOrEmpty(UserPreferences.MessagingToken)) ||
             loggedIn.messagingToken != UserPreferences.MessagingToken)
         {
             loggedIn.messagingToken = UserPreferences.MessagingToken;
             FirebaseManager.Instance.PushToCloud <DbTeacher>(loggedIn);
         }
         UserPreferences.CurrentUserId = loggedIn.id;
         LoadMainMenu();
     }
 }
Beispiel #6
0
        private void RegisterWithSubjects()
        {
            List <Subject> subjects = _subjectController.GetSubjectsFromInput();

            subjects.AddRange(CreateNewSubjectsWithFaculty(_subjectController.GetTotallyNewlyAddedSubjects()));
            subjects.AddRange(CreateNewSubjects(_subjectController.GetNewlyAddedSubjects()));
            subjects.AddRange(CreateNewSubjects(_subjectController.GetModifiedSubjects()));
            if (subjects.Count == 0)
            {
                ShowNoSubjectsPopup();
                return;
            }

            string msgId = messengerInput.text;

            if (msgId.Contains("/"))
            {
                msgId = msgId.Substring(msgId.IndexOf("/"));
            }
            Teacher teacher = new Teacher()
            {
                id             = Guid.NewGuid().ToString(),
                name           = fbHandler.FbName.text,
                subjects       = subjects,
                fbId           = _login.FbId,
                email          = emailInput.text,
                isMale         = genderDropdown.value == 0,
                messengerId    = msgId,
                messagingToken = UserPreferences.MessagingToken
            };

            UserPreferences.CurrentUserId = teacher.id;
            DbTeacher dbModel = teacher.GetDbModel() as DbTeacher;

            FirebaseManager.Instance.PushToCloud <DbTeacher>(dbModel, ShowRegisterSuccessPopup);
            FirebaseManager.Instance.PushToFbConnectionTable(dbModel);
            StorageManager.Instance.UploadImage(fbHandler.GetPicture().EncodeToPNG(), teacher.id, false);
            _repo.AddModel(teacher);
        }