Exemplo n.º 1
0
        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();
            }
        }
Exemplo n.º 2
0
        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();
        }
Exemplo n.º 3
0
        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();
        }
Exemplo n.º 4
0
        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();
                }
            }
        }
Exemplo n.º 5
0
        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);
                }
            }
        }
Exemplo n.º 6
0
        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;
            }
        }