123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- using Microsoft.Win32;
- using System;
- using System.Collections.Generic;
- using System.Data.SqlClient;
- using System.Linq;
- using System.Security.Cryptography;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Controls.Primitives;
- using System.Windows.Data;
- using System.Windows.Documents;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Imaging;
- using System.Windows.Navigation;
- using System.Windows.Shapes;
- namespace PFC.Program.Verification.Pages
- {
- /// <summary>
- /// Логика взаимодействия для Regis.xaml
- /// </summary>
- public partial class Regis : Page
- {
- public Regis()
- {
- InitializeComponent();
- }
- /* Подтверждение регистрации */
- private void button_Registration_Click(object sender, RoutedEventArgs e)
- {
- string login = textBox_login.Text.Replace(" ", string.Empty);
- string password = Hash_SHA1(passwordBox_password.Password.Replace(" ", string.Empty));
- string secFrase = textBox_phrase.Text;
- if (login != "" && password != "")
- {
- // Проверка на уникальность логина
- SqlDataReader readerCheckUniqLogin = ClassRequests.CheckUniqLogin_Registration();
- while (readerCheckUniqLogin.Read())
- {
- if (readerCheckUniqLogin["login"].ToString() == login)
- {
- MessageBox.Show("Пользователь с таким именем уже существует!", "Ошибка",
- MessageBoxButton.OK, MessageBoxImage.Error);
- return;
- }
- }
- // Передача логина в глоб. переменную
- GlobalVaribles.login = textBox_login.Text;
- // Создание профиля, пространства для кошельков и пространства транзакций
- ClassRequests.AddProfile_Registration(login, password, secFrase);
- ClassRequests.CreateSpaceWallets();
- ClassRequests.CreateTxsTable();
- MessageBox.Show("Успешная регистрация", "Оповещение", MessageBoxButton.OK,
- MessageBoxImage.Information);
- NavigationService.GoBack();
- }
- else
- MessageBox.Show("Постойте! Вы не ввели все данные в поля.", "Внимание",
- MessageBoxButton.OK, MessageBoxImage.Warning);
- }
- /* На пред. страницу */
- private void back_Btn_Click(object sender, RoutedEventArgs e)
- {
- NavigationService.GoBack();
- }
- // Метод хэширования пароля
- public string Hash_SHA1(string password)
- {
- using (SHA1Managed sha1 = new SHA1Managed())
- {
- var hash = sha1.ComputeHash(Encoding.UTF8.GetBytes(password));
- var sb = new StringBuilder(hash.Length * 2);
- foreach (byte b in hash)
- sb.Append(b.ToString("X2"));
- return sb.ToString();
- }
- }
- }
- }
|