select q;
if (query.Count() == 1)
{
Variables.CurrentUserID = query.First().Attribute("ID").Value;
Variables.CurrentUserName = textBoxUsername.Text.Trim();
}
else
{
Variables.CurrentUserID = "";
Variables.CurrentUserName = "";
MessageBox.Show("Ваше ім'я користувача та пароль невірні", "Помилка", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
}
#endregion
#region change info
else if (this.ChangeInfo)
{
bool changePassword = true;
if (textBoxUsername.Text.Trim() == "" && textBoxUsername.Enabled)
{
errorProvider1.SetError(this.textBoxUsername, "Ваше ім'я користувача та пароль невірні");
return;
}
else if (textBoxEmail.Text.Trim() == "" && textBoxEmail.Enabled)
{
errorProvider1.SetError(this.textBoxEmail, "Будь-ласка, введіть вірний Email");
return;
}
else if (textBoxPassword1.Text.Trim() == textBoxPassword2.Text.Trim() && textBoxPassword2.Text.Trim() == "")
{
changePassword = false;
}
else if (textBoxPassword1.Text.Trim() == "" && textBoxPassword1.Enabled)
{
errorProvider1.SetError(this.textBoxPassword1, "Будь-ласка, введіть старий пароль");
return;
}
else if (textBoxPassword2.Text.Trim() == "" && textBoxPassword2.Enabled)
{
errorProvider1.SetError(this.textBoxPassword2, "Будь-ласка, введіть новий пароль");
return;
}
errorProvider1.Clear();
var query = (from q in Variables.xDocument.Descendants("User")
where q.Attribute("ID").Value == Variables.CurrentUserID
select q).First();
string oldPassword = query.Attribute("Password").Value;
if (oldPassword.ToLower()!= textBoxPassword1.Text.Trim().ToLower() && changePassword)
{
errorProvider1.SetError(this.textBoxPassword1, "Старий пароль невірний");
return;
}
else if (oldPassword == textBoxPassword1.Text.Trim() && changePassword)
{
query.Attribute("UserName").Value = textBoxUsername.Text.Trim();
query.Attribute("Password").Value = textBoxPassword2.Text.Trim();
query.Attribute("Email").Value = textBoxEmail.Text.Trim();
}
else if (!changePassword)
{
query.Attribute("UserName").Value = textBoxUsername.Text.Trim();
query.Attribute("Email").Value = textBoxEmail.Text.Trim();
}
Variables.CurrentUserID = query.Attribute("ID").Value;
Variables.CurrentUserName = textBoxUsername.Text.Trim();
TripleDES.EncryptToFile(Variables.xDocument.ToString(SaveOptions.DisableFormatting), Variables.DBFile, TripleDES.ByteKey, TripleDES.IV);
//Variables.xDocument.Save("debug.xml");
}
#endregion
this.Close();
}
catch (Exception ex)
{
Variables.CurrentUserID = Variables.CurrentUserName = "";
StackFrame file_info = new StackFrame(true);
Messages.error(ref file_info, ex.Message, this);
}
}
}
}
Додаток 2: Головне вікно програми
Додаток 3: Форма користувача БД