private async void EmalTextBox_TextChanged(object sender, TextChangedEventArgs e) { if (ValidatorClass.IsValidEmail(EmalTextBox.Text) == true) { string EmailCheckAsync = await DatabaseLogicClass.MySQLGetAsync("SELECT Password FROM Users WHERE Email='" + CryptoClass.MD5Hash(EmalTextBox.Text) + "'"); if (EmailCheckAsync == "") { Emailcomments.Content = "-> валидный e-mail"; EmalTextBox.Foreground = Brushes.Black; ValidEmail = true; } else { Emailcomments.Content = "-> e-mail уже зарегистрирован!"; EmalTextBox.Foreground = Brushes.Red; ValidEmail = false; } } else { Emailcomments.Content = "-> некорректный e-mail"; EmalTextBox.Foreground = Brushes.Red; ValidEmail = false; } NextButton.IsEnabled = (ValidUsername == true) && (ValidEmail == true) && (ValidPhone == true) && (ValidPassword == true) && (ValidMasterPassword == true); }
private async Task <bool> ValidOldEmail(string OldEmailText) { if (ValidatorClass.IsValidEmail(OldEmailText) == true) { string MD5Login = DatabaseLogicClass.SQLiteGet("SELECT login FROM logins WHERE authenticated=1"); string result = await DatabaseLogicClass.MySQLGetAsync("SELECT Email FROM Users WHERE (Phone='" + MD5Login + "' OR Email='" + MD5Login + "')"); result = result.Remove(result.Length - 1); if ((CryptoClass.MD5Hash(OldEmailText) == MD5Login) || (CryptoClass.MD5Hash(OldEmailText) == result)) { return(true); } else { OldEmailComments.Content = "-> не ваш e-mail или его не существует"; } } else { OldEmailComments.Content = "-> некорректный e-mail"; } return(false); }
private async Task AddGroupListBoxAsync() { string bufgroupsstr = await DatabaseLogicClass.MySQLGetAsync("SELECT name FROM SMSSender_schema.GroupsTable"); string[] groupsarr = bufgroupsstr.Split(','); for (int i = 0; i < groupsarr.Length - 1; i++) { GroupsComboBox.Items.Add(groupsarr[i]); } }
private static async Task <bool> CheckUserLogin(string InputLogin) { string ThisResult = await DatabaseLogicClass.MySQLGetAsync("SELECT Password FROM Users WHERE Email='" + CryptoClass.MD5Hash(InputLogin) + "' OR Phone='" + CryptoClass.MD5Hash(InputLogin) + "'"); if (ThisResult != "") { return(true); } return(false); }
public async Task <Boolean> AdminCheckerAsync(string id) { string admins = await DatabaseLogicClass.MySQLGetAsync("SELECT AdminTG FROM TGAdmins"); string[] AdminArr = admins.Split(','); for (int i = 0; i < AdminArr.Length; i++) { if (AdminArr[i] == id) { return(true); } } return(false); }
private async Task <bool> ValidationOldPhone(string OldPhone) { if (ValidatorClass.IsPhoneNumber(OldPhone) == true) { string MD5Login = DatabaseLogicClass.SQLiteGet("SELECT login FROM logins WHERE authenticated=1"); string result = await DatabaseLogicClass.MySQLGetAsync("SELECT Phone FROM Users WHERE (Phone='" + MD5Login + "' OR Email='" + MD5Login + "')"); result = result.Remove(result.Length - 1); return(CryptoClass.MD5Hash(OldPhone) == result); } return(false); }
private async Task <bool> ValidationOldPassword(string OldPassword) { if (ValidatorClass.ValidatePassword(OldPassword) == true) { string MD5Login = DatabaseLogicClass.SQLiteGet("SELECT login FROM logins WHERE authenticated=1"); string result = await DatabaseLogicClass.MySQLGetAsync("SELECT Password FROM Users WHERE (Phone='" + MD5Login + "' OR Email='" + MD5Login + "')"); result = result.Remove(result.Length - 1); if (CryptoClass.MD5Hash(OldPassword) == result) { OldPasswordComments.Content = "-> верный пароль"; return(true); } else { OldPasswordComments.Content = "-> неверный пароль"; } } return(false); }
private async void FinalSendButton_Click(object sender, RoutedEventArgs e) { //Отправка произовольного текста произвольному получателю if ((TextSecondRadioButton.IsChecked == true) && (NumbersSecondRadioButton.IsChecked == true)) { if ((NumbersToSend.Text != "") && (TextToSend.Text != "")) { if (MessageBox.Show("Вы действительно хотите отправить сообщение '" + TextToSend.Text + "' на номер " + NumbersToSend.Text + "?", "Отправка сообщения", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { SMSSenderClass sms_obj = new SMSSenderClass(); string[] numbers = new string[] { NumbersToSend.Text }; var request = new Request { numbers = numbers, text = TextToSend.Text, channel = "DIRECT" }; if (sms_obj.sms_send(request) != "false") { MessageBox.Show("Успешная отправка сообщения"); } } } else { MessageBox.Show("Сообщение и/или номер отправления не могут быть пустыми"); } } //Отправка произвольного текста всем получателям из БД else if ((TextSecondRadioButton.IsChecked == true) && (NumbersFirstRadioButton.IsChecked == true)) { if (TextToSend.Text != "") { SMSSenderClass sms_obj = new SMSSenderClass(); string bufnumberstr = await DatabaseLogicClass.MySQLGetAsync("SELECT phone FROM Phones"); string[] numbers = bufnumberstr.Split(','); Array.Resize(ref numbers, numbers.Length - 1); var request = new Request { numbers = numbers, text = TextToSend.Text, channel = "DIRECT" }; if (sms_obj.sms_send(request) != "false") { MessageBox.Show("Успешная отправка сообщения всем получателям из БД!"); } } else { MessageBox.Show("Сообщение для отправки не может быть пустым"); } } //Отправка текста из БД произвольному получателю else if ((TextFirstRadioButton.IsChecked == true) && (NumbersSecondRadioButton.IsChecked == true) && (GroupsComboBox.SelectedIndex != -1)) { if (NumbersToSend.Text != "") { if (SaveDatabaseCheckBox.IsChecked == true) { string thisgroup = GroupsComboBox.SelectedValue.ToString(); await DatabaseLogicClass.MySQLExecuteAsync("INSERT INTO Phones(phone,groups) VALUES (\"" + NumbersToSend.Text + "\",\"" + thisgroup + "\");"); MessageBox.Show("Успешное добавление нового пользователя с " + thisgroup + " и номером телефона " + NumbersToSend.Text + "!"); } if (SendSMSCheckBox.IsChecked == true) { ParseJSONLogicClass thisjson_obj = new ParseJSONLogicClass(); thisjson_obj.GetTimetableJSON(); string selectedgroup = GroupsComboBox.SelectedValue.ToString(); string thisgroupresult = thisjson_obj.GetTimetableByGroup(selectedgroup); SMSSenderClass sms_obj = new SMSSenderClass(); if (thisgroupresult == "false") { if (MessageBox.Show("Нет изменений в расписании для группы " + selectedgroup + "\nХотите отправить оповещение об этом?", "Нет изменений", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { string[] numbers = new string[] { NumbersToSend.Text }; var request = new Request { numbers = numbers, text = "Нет изменений в расписании группы " + selectedgroup, channel = "DIRECT" }; if (sms_obj.sms_send(request) != "false") { MessageBox.Show("Успешная отправка сообщения"); } } } else { string[] numbers = new string[] { NumbersToSend.Text }; var request = new Request { numbers = numbers, text = thisgroupresult, channel = "DIRECT" }; if (sms_obj.sms_send(request) != "false") { MessageBox.Show("Успешная отправка сообщения"); } } } } else { MessageBox.Show("Номер отправления не может быть пустым"); } } //Отправка сообщения из БД получателям из БД else if ((TextFirstRadioButton.IsChecked == true) && (NumbersFirstRadioButton.IsChecked == true)) { ParseJSONLogicClass mainjson_obj = new ParseJSONLogicClass(); mainjson_obj.GetTimetableJSON(); string phonesbufresult = await DatabaseLogicClass.MySQLGetAsync("SELECT phone FROM Phones"); string groupsbufresult = await DatabaseLogicClass.MySQLGetAsync("SELECT groups FROM Phones"); string[] phonesarr = phonesbufresult.Split(','); Array.Resize(ref phonesarr, phonesarr.Length - 1); string[] groupsarr = groupsbufresult.Split(','); Array.Resize(ref groupsarr, groupsarr.Length - 1); int globalcounter = 0; for (int i = 0; i < phonesarr.Length; i++) { string thisgroupresult = mainjson_obj.GetTimetableByGroup(groupsarr[i]); if (thisgroupresult != "false") { SMSSenderClass sms_obj = new SMSSenderClass(); string[] numbers = new string[] { phonesarr[i] }; var request = new Request { numbers = numbers, text = thisgroupresult, channel = "DIRECT" }; if (sms_obj.sms_send(request) != "false") { globalcounter++; } } } MessageBox.Show("Отправлено " + globalcounter.ToString() + " сообщений из " + phonesarr.Length.ToString()); } GetSMSBalance(); TextToSend.Text = ""; NumbersToSend.Text = ""; }