private bool AuthorizationHandler(string htmlContent) { AuthFault authSuccess = CheckAuthSuccess(htmlContent); if (authSuccess == AuthFault.UnknownError) { return(UnknownErrorHandler()); } if (authSuccess == AuthFault.Block) { return(BlockErrorHandler(htmlContent)); } if (authSuccess == AuthFault.WrongLogin) { return(WrongLoginErrorHandler()); } if (authSuccess == AuthFault.WrongSymbols) { return(WrongSymbolsErrorHandler()); } if (authSuccess != AuthFault.Success) { return(false); } return(true); }
/// <summary> /// Проверяет успешность авторизации /// </summary> /// <param name="htmlContent">html контент</param> /// <returns><paramref name="AuthFault"/> в зависимости от типа ошибки</returns> private AuthFault CheckAuthSuccess(string htmlContent) { AuthFault code = AuthFault.UnknownError; if (htmlContent.Contains("Вы совершаете слишком частые попытки авторизации")) { code = AuthFault.Block; } else if (htmlContent.Contains("Введен неверный пароль или абонент не существует")) { code = AuthFault.WrongLogin; } else if (htmlContent.Contains("<script>$.jGrowl(\'<hr>Ошибка символов\'")) { code = AuthFault.WrongSymbols; } else if (htmlContent.Contains(@"<title>Состояние счета :: Личный кабинет</title>")) { code = AuthFault.Success; } return(code); }