示例#1
0
        async Task <Enums.AvailiabilityEnum> checkDisplayNameAvailability(Providers.StudentProvider provider, Interfaces.IConnectionUtility connection, string displayName)
        {
            try
            {
                var result = await provider.CheckDisplayNameAlreadyUsed(connection, displayName);

                if (result)
                {
                    return(Enums.AvailiabilityEnum.NotAvailable);
                }

                return(Enums.AvailiabilityEnum.Available);
            }
            catch
            {
                return(Enums.AvailiabilityEnum.Unknown);
            }
        }
示例#2
0
        async Task <Enums.AvailiabilityEnum> checkEmailAvailability(Providers.StudentProvider provider, Interfaces.IConnectionUtility connection, string email)
        {
            try
            {
                var result = await provider.CheckEmailAlreadyRegistered(connection, email);

                if (result)
                {
                    return(Enums.AvailiabilityEnum.NotAvailable);
                }

                return(Enums.AvailiabilityEnum.Available);
            }
            catch
            {
                return(Enums.AvailiabilityEnum.Unknown);
            }
        }
示例#3
0
        public async Task <StudentValidationResult> ValidateStudent(Providers.StudentProvider provider, Interfaces.IConnectionUtility conn, ViewModels.StudentVM studentVM)
        {
            var result = new StudentValidationResult();

            result.DisplayNameError = !checkDisplayName(studentVM.StudentDisplayName);
            result.NameError        = !checkName(studentVM.StudentName);
            result.EmailError       = !checkEmail(studentVM.StudentEmail);

            if (!result.EmailError)
            {
                result.EmailAvailiability = await checkEmailAvailability(provider, conn, studentVM.StudentEmail);
            }

            if (!result.DisplayNameError)
            {
                result.DisplayNameAvaliability = await checkDisplayNameAvailability(provider, conn, studentVM.StudentDisplayName);
            }

            result.PasswordError = !checkPassword(studentVM.Password);

            return(result);
        }