private void LoginDocumentCompleted(object sender, System.Windows.Forms.WebBrowserDocumentCompletedEventArgs e)
{
if (LogManager != null) {
LogManager.InfoFormat("Document requested: {0}", e.Url.OriginalString);
}
switch (e.Url.AbsolutePath) {
//loginning
case "/RealMedia/ads/adstream_sx.ads/www.imbc.com/Login@Middle":
{
if (LoginAttemptNum >= 1) {
OnCompleted(LoginCode.WRONG_USER, string.Empty, UserId);
return;
}
LoginAttemptNum++;
bool isFound = true;
try {
Browser.Document.GetElementsByTagName("input").GetElementsByName("Uid")[0].SetAttribute("value", UserId);
Browser.Document.GetElementsByTagName("input").GetElementsByName("Password")[0].SetAttribute("value", PassEncrypt.ConvertToUnsecureString(Password));
} catch {
isFound = false;
}
if (isFound) {
System.Windows.Forms.HtmlElement form = Browser.Document.GetElementById("frmLogin");
if (form != null) {
form.InvokeMember("submit");
}
} else {
OnCompleted(LoginCode.WRONG_PAGE, string.Empty, UserId);
return;
}
break;
}
//logged
case "/Counsel/PasswordModify90Days.aspx":
case "/":
{
OnStateChanged(LoginState.GETTING_DATA);
Browser.Navigate("http://dm.imbc.com/inc/xml/launcher.aspx");
break;
}
//getting data
case "/inc/xml/launcher.aspx":
{
TryParseInfo(Browser.DocumentText);
break;
}
default:
break;
}
}