private void btnRegisterNewUser_Click(object sender, EventArgs e) { QDAddUser addUser = new QDAddUser() { DBData = dbData }; if (addUser.ShowDialog() == DialogResult.OK) { try { mysql.ExecuteNonQueryACon("INSERT INTO qd_users (ID, Name, Username, Password) VALUES (?,?,?,?)", Guid.NewGuid(), addUser.DisplayName, addUser.Username, QDLib.HashPassword(addUser.Password) ); } catch { MessageBox.Show("Could not add new user. Please try again later.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } UpdateUsersSettings(); } }
private void Submit() { QDLoader qdLoader = new QDLoader(); qdLoader.Show(); if (masterPassword == QDLib.HashPassword(txbMasterPassword.Text)) { pnlSettings.BringToFront(); } else { MessageBox.Show("Password not valid.", "Invalid Password", MessageBoxButtons.OK, MessageBoxIcon.Warning); } qdLoader.Close(); }
private void Submit() { if (QDLib.HashPassword(txbOldPassword.Text) != MasterPassword) { MessageBox.Show("Old password is not valid.", "Invalid password", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (!QDLib.ValidatePasswords(txbNewPassword.Text, txbConfirmNewPassword.Text)) { return; } MasterPassword = txbNewPassword.Text; this.DialogResult = DialogResult.OK; this.Close(); }
private void EditSelectedUser() { if (lbxUserList.SelectedIndex != -1) { QDAddUser editUser = new QDAddUser { EditID = lbxUserList.SelectedValue.ToString(), DBData = dbData }; if (editUser.ShowDialog() == DialogResult.OK) { try { if (string.IsNullOrEmpty(editUser.Password)) { mysql.ExecuteNonQueryACon("UPDATE qd_users SET Name = ?, Username = ? WHERE ID = ?", editUser.DisplayName, editUser.Username, editUser.EditID ); } else { mysql.ExecuteNonQueryACon("UPDATE qd_users SET Name = ?, Username = ?, Password = ? WHERE ID = ?", editUser.DisplayName, editUser.Username, QDLib.HashPassword(editUser.Password), editUser.EditID ); } } catch { MessageBox.Show("Could not update user data. Please try again later.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } UpdateUsersSettings(); } } }
private void btnChangeMasterPassword_Click(object sender, EventArgs e) { QDChangeMasterPassword changeMasterPassword = new QDChangeMasterPassword() { MasterPassword = masterPassword }; if (changeMasterPassword.ShowDialog() == DialogResult.OK) { try { mysql.ExecuteNonQueryACon("UPDATE qd_info SET QDValue = ? WHERE QDKey = ?", QDLib.HashPassword(changeMasterPassword.MasterPassword), QDInfo.DBO.MasterPassword); MessageBox.Show("Successfully changed Master-Password.", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch { MessageBox.Show("Could not change password. Please try again later.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
private void CreateOnlineDB() { try { using (WrapMySQL sql = new WrapMySQL(onlineDBConDat)) { if (onlineConfigureAsNewDB) { if (!QDLib.ManagedDBOpen(sql)) { QDLib.DBOpenFailed(); return; } sql.TransactionBegin(); try { // Delete old tables sql.ExecuteNonQuery("DROP TABLE IF EXISTS `qd_info`"); sql.ExecuteNonQuery("DROP TABLE IF EXISTS `qd_drives`"); sql.ExecuteNonQuery("DROP TABLE IF EXISTS `qd_users`"); sql.ExecuteNonQuery("DROP TABLE IF EXISTS `qd_assigns`"); sql.ExecuteNonQuery("DROP TABLE IF EXISTS `qd_conlog`"); sql.ExecuteNonQuery("DROP TABLE IF EXISTS `qd_devices`"); // Create new tables sql.ExecuteNonQuery("CREATE TABLE `qd_info` ( `QDKey` VARCHAR(255) NOT NULL , `QDValue` VARCHAR(255) NOT NULL , PRIMARY KEY (`QDKey`))"); sql.ExecuteNonQuery("CREATE TABLE `qd_drives` ( `ID` VARCHAR(50) NOT NULL , `DefaultName` VARCHAR(50) NOT NULL , `DefaultDriveLetter` VARCHAR(1) NOT NULL , `LocalPath` VARCHAR(255) NOT NULL , `RemotePath` VARCHAR(255) NOT NULL , `IsPublic` BOOLEAN NOT NULL , `IsDeployable` BOOLEAN NOT NULL , PRIMARY KEY (`ID`))"); sql.ExecuteNonQuery("CREATE TABLE `qd_users` ( `ID` varchar(50) NOT NULL, `Name` varchar(100) NOT NULL, `Username` varchar(100) NOT NULL, `Password` varchar(100) NOT NULL, PRIMARY KEY(`ID`), UNIQUE KEY `Username` (`Username`))"); sql.ExecuteNonQuery("CREATE TABLE `qd_assigns` ( `ID` varchar(50) NOT NULL, `UserID` varchar(50) NOT NULL, `DriveID` varchar(50) NOT NULL, `CustomDriveName` varchar(50) NOT NULL, `CustomDriveLetter` varchar(1) NOT NULL, `DUsername` varchar(200) NOT NULL, `DPassword` varchar(200) NOT NULL, `DDomain` varchar(200) NOT NULL, PRIMARY KEY(`ID`))"); sql.ExecuteNonQuery("CREATE TABLE `qd_conlog` ( `ID` varchar(50) COLLATE utf8_unicode_ci NOT NULL, `UserID` varchar(50) COLLATE utf8_unicode_ci NOT NULL, `DeviceID` varchar(50) COLLATE utf8_unicode_ci NOT NULL, `LogTime` datetime NOT NULL, `LogAction` int(11) NOT NULL, PRIMARY KEY(`ID`))"); sql.ExecuteNonQuery("CREATE TABLE `qd_devices` ( `ID` varchar(50) COLLATE utf8_unicode_ci NOT NULL, `MacAddress` varchar(50) COLLATE utf8_unicode_ci NOT NULL, `LogonName` varchar(150) COLLATE utf8_unicode_ci NOT NULL, `DeviceName` varchar(150) COLLATE utf8_unicode_ci NOT NULL, PRIMARY KEY(`ID`)) "); // Create pre-defined settings sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.UserCanToggleKeepLoggedIn, false); sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.UserCanAddPrivateDrive, false); sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.UserCanAddPublicDrive, true); sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.UserCanSelfRegister, true); sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.MasterPassword, QDLib.HashPassword(onlineMasterPassword)); sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.DefaultDomain, ""); sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.UseLoginAsDriveAuthentication, false); sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.ForceLoginAsDriveAuthentication, false); sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.DisconnectDrivesAtShutdown, false); sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.LogUserActions, false); sql.ExecuteNonQuery($"INSERT INTO `qd_info` (`QDKey`, `QDValue`) VALUES (?, ?)", QDInfo.DBO.UserCanChangeManagerSettings, true); sql.TransactionCommit(); } catch (Exception ex) { sql.TransactionRollback(); errorEncountered = true; txbS3ErrorLog.Text = ex.Message + " " + ex.StackTrace; } sql.Close(); if (errorEncountered) { MessageBox.Show("Could not create online database. Please try again later.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } catch (Exception ex) { MessageBox.Show("Could not create online database. Please try again later.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); errorEncountered = true; txbS3ErrorLog.Text = ex.Message + " " + ex.StackTrace; } }