using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
namespace HelpHelf.Classes
{
public class CheckFields
{
///
/// Проверка полей для регистрации пользователя
///
/// Фамилия
/// Имя
/// Логин
/// Пароль
/// Поля заполнены (true), поля не заполнены (false)
public static bool CheckUser(string surname, string name, string login, string password)
{
if (!string.IsNullOrWhiteSpace(surname))
{
if (!string.IsNullOrWhiteSpace(name))
{
if (!string.IsNullOrWhiteSpace(login))
{
if (!string.IsNullOrWhiteSpace(password))
{
return true;
}
else
{
MessageBox.Show("Заполните Пароль!", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
else
{
MessageBox.Show("Заполните Логин!", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
else
{
MessageBox.Show("Заполните Имя!", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
else
{
MessageBox.Show("Заполните Фамилию!", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
///
/// Проверка полей при авторизации
///
/// Логин
/// Пароль
/// Поля заполнены (true), поля не заполнены (false)
public static bool CheckAuthorization(string login, string password)
{
if (!string.IsNullOrWhiteSpace(login))
{
if (!string.IsNullOrEmpty(password))
{
return true;
}
else
{
MessageBox.Show("Заполните Пароль", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
else
{
MessageBox.Show("Заполните Логин", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
///
/// Проверка повторяющихся логинов при регистрации
///
/// Логин
/// Поля заполнены (true), поля не заполнены (false)
public static bool CheckLogin(string login, LoginedTable loginedTable)
{
LoginedTable logined;
if(loginedTable == null)
{
logined = Classes.DateBase.connect.LoginedTable.FirstOrDefault(x => x.Login == login);
}
else
{
logined = Classes.DateBase.connect.LoginedTable.FirstOrDefault(x => x.Login == login && x.ID == loginedTable.ID);
}
if(logined == null)
{
return true;
}
else
{
MessageBox.Show("Такой Логин уже занят", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
///
/// Проверка на совподения повтора пароля при изменении
///
/// Пароль
/// Старый пароль
/// Пароли совпвдают (true), пароли не совпвдают (false)
public static bool CheckRepeatePassword(string password, string repeat)
{
if(password == repeat)
{
return true;
}
else
{
MessageBox.Show("Пароли не совпадают", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
///
/// Проверка пароля в бд
///
/// Пароль
/// Пользователь
/// Пароль совадает (true), пароль не совпвдает (false)
public static bool CheckOldPassword(string password, LoginedTable logined)
{
int passw = password.GetHashCode();// шифровка введенных данных для проверки с бд
if(passw == logined.Password)
{
return true;
}
else
{
MessageBox.Show("Старый Пароль не верный", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
///
/// Проверка полей для изменения данных пользователя
///
/// Фамилия
/// Имя
/// Логин
/// Поля заполнены (true), поля не заполнены (false)
public static bool CheckUpdateUser(string surname, string name, string login)
{
if(!string.IsNullOrEmpty(surname))
{
if(!string.IsNullOrEmpty(name))
{
if(!string.IsNullOrEmpty(login))
{
return true;
}
else
{
MessageBox.Show("Заполните Логин", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
else
{
MessageBox.Show("Заполните Имя", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
else
{
MessageBox.Show("Заполните Фамилию", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
///
/// Проверка полей для смены пароля
///
/// Старый пароль
/// Новый пароль
/// Повтор
/// Поля заполнены (true), поля не заполнены (false)
public static bool CheckUpdatePassword(string oldPassword, string newPassword, string repeatPassword)
{
if (!string.IsNullOrEmpty(oldPassword))
{
if (!string.IsNullOrEmpty(newPassword))
{
if (!string.IsNullOrEmpty(repeatPassword))
{
return true;
}
else
{
MessageBox.Show("Неверный повтор пароля", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
else
{
MessageBox.Show("Введите новый пароль", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
else
{
MessageBox.Show("Введите старый пароль", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
///
/// Проверка наличия ответов
///
/// Лист с ответами
/// Выбраны все ответы (true), выбраны не все ответы (false)
public static bool CheckAnswer(List answerList)
{
int a = 0;
foreach (Classes.AnswerClass answer in answerList)
{
if(answer.Aswer==0)
{
a++;
}
}
if(a==0)
{
return true;
}
else
{
MessageBox.Show("Заполните все ответы","Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
}
}