diff --git a/PasswordManager.zip b/PasswordManager.zip deleted file mode 100644 index 377c0e1..0000000 Binary files a/PasswordManager.zip and /dev/null differ diff --git a/PasswordManager/hello.cpp b/PasswordManager/hello.cpp index 655db45..4aea33b 100644 --- a/PasswordManager/hello.cpp +++ b/PasswordManager/hello.cpp @@ -29,29 +29,6 @@ void Hello::on_pushButton_2_clicked() ui->stackedWidget->setCurrentIndex(1); } -void Hello::on_pushButton_4_clicked() -{ - - - - dbFileFullPath = QFileDialog::getOpenFileName(this, tr("Open SQLite Database File"), "", Hello::fileDialogFilterString); -// manager->initAppWithDatabaseFile(dbFileFullPath); - ui->lineEdit->setText(dbFileFullPath); - -// emit sendText(dbFileFullPath); -} - - -void Hello::on_pushButton_5_clicked() -{ - dbFileFullPath = QFileDialog::getSaveFileName(this, tr("Open SQLite Database File"), "", Hello::fileDialogFilterString); -// manager->initAppWithDatabaseFile(dbFileFullPath); - ui->lineEdit_3->setText(dbFileFullPath); - -// emit sendText(dbFileFullPath); -} - - void Hello::on_pushButton_6_clicked() { ui->stackedWidget->setCurrentIndex(0); @@ -60,9 +37,18 @@ void Hello::on_pushButton_6_clicked() void Hello::on_okButton_clicked() { + QString dbLogin; + if(!ui->lineEdit->text().isEmpty()){ + dbLogin = ui->lineEdit->text(); + } + else + { + return; + } QString password = ui->passwordLine->text(); + // mainwindow.createModel(); - if(mainwindow.initAppWithDatabaseFile(dbFileFullPath, password, false)) + if(mainwindow.initAppWithDatabaseFile(dbLogin, password, false)) { if(mainwindow.checkPassoword(password)) @@ -78,11 +64,22 @@ void Hello::on_okButton_clicked() void Hello::on_createOkButton_clicked() { - if(QString::compare(ui->newPasswordLine1->text(), ui->newPasswordLine2->text()) == 0) + qDebug() << "creating db"; + QString dbLogin; + if(!ui->lineEdit_3->text().isEmpty()){ + dbLogin = ui->lineEdit_3->text(); + } + else { - mainwindow.initAppWithDatabaseFile(dbFileFullPath, ui->newPasswordLine1->text(), true); + return; + } + if(QString::compare(ui->newPasswordLine1->text(), ui->newPasswordLine2->text()) == 0 && !dbLogin.isEmpty()) + { + if(mainwindow.initAppWithDatabaseFile(dbLogin, ui->newPasswordLine1->text(), true)) + { mainwindow.show(); QWidget::close() ; + } }else { // std::cout << "passwords not equals : " << ui->newPasswordLine1->text().toStdString() << "!=" << ui->newPasswordLine2->text().toStdString() << std::endl; diff --git a/PasswordManager/hello.h b/PasswordManager/hello.h index 4263c3b..a182e96 100644 --- a/PasswordManager/hello.h +++ b/PasswordManager/hello.h @@ -21,10 +21,6 @@ private slots: void on_pushButton_2_clicked(); - void on_pushButton_4_clicked(); - - void on_pushButton_5_clicked(); - void on_pushButton_6_clicked(); void on_okButton_clicked(); @@ -37,7 +33,6 @@ private: Manager* manager; AddDialog dial; - QString dbFileFullPath; static const QString fileDialogFilterString; diff --git a/PasswordManager/hello.ui b/PasswordManager/hello.ui index 195b46a..37c60e7 100644 --- a/PasswordManager/hello.ui +++ b/PasswordManager/hello.ui @@ -56,7 +56,7 @@ - Путь: + Логин: @@ -82,7 +82,7 @@ - Войти + Вход @@ -111,19 +111,6 @@ Создать - - - - 340 - 90 - 31 - 21 - - - - ... - - @@ -136,7 +123,7 @@ - Создать новую + Регистрация @@ -179,7 +166,7 @@ - Путь: + Логин: @@ -192,7 +179,7 @@ - Пароль + Пароль: @@ -205,7 +192,7 @@ - Подтвердить пароль + Подтвердить пароль: @@ -221,19 +208,6 @@ Ок - - - - 360 - 70 - 31 - 21 - - - - ... - - diff --git a/PasswordManager/mainwindow.cpp b/PasswordManager/mainwindow.cpp index 773fb9c..41caa35 100644 --- a/PasswordManager/mainwindow.cpp +++ b/PasswordManager/mainwindow.cpp @@ -61,16 +61,36 @@ void MainWindow::createRecordsModel() ui->tableViewRecords->horizontalHeader()->hideSection(3); } -bool MainWindow::initAppWithDatabaseFile(const QString &dbFileFullPath, const QString &password, bool isCreationNeed) { +bool MainWindow::initAppWithDatabaseFile(const QString &dbLogin, const QString &password, bool isCreationNeed) { + QString dbFileFullPath = getDbFileFullPath(dbLogin); qDebug() << "dbFileFullPath=" << dbFileFullPath; - if (dbFileFullPath.isEmpty()) + if( QFile::exists(dbFileFullPath)) { - return false; + + if(isCreationNeed) + { + qDebug()<<"Data base exist...."; + return false; + } + else + { + connectToDatabase(dbFileFullPath); + + } } - connectToDatabase(dbFileFullPath); - if(isCreationNeed) + else { - createDatabase(dbFileFullPath, password); + if(isCreationNeed) + { + connectToDatabase(dbFileFullPath); + createDatabase(password); + } + else + { + qDebug()<<"Data base not exist...."; + return false; + } + } createRecordsModel(); createCardsModel(); @@ -213,7 +233,7 @@ void MainWindow::connectToDatabase(const QString &dbName) query = new QSqlQuery(m_db); // создание объекта для запроса. } -void MainWindow::createDatabase(const QString &dbName, const QString &password) +void MainWindow::createDatabase(const QString &password) { qDebug() << "В базе не существует таблица records!"; diff --git a/PasswordManager/mainwindow.h b/PasswordManager/mainwindow.h index c33d98c..7f40080 100644 --- a/PasswordManager/mainwindow.h +++ b/PasswordManager/mainwindow.h @@ -34,7 +34,7 @@ public: int getRecordsCount(); bool initAppWithDatabaseFile(const QString &dbFileFullPath, const QString &password, bool isCreationNeed); void connectToDatabase(const QString &dbName); - void createDatabase(const QString &dbName, const QString &password); + void createDatabase(const QString &password); bool checkPassoword(QString word); void createCardsModel(); @@ -72,6 +72,10 @@ private: } return value; } + inline QString getDbFileFullPath(const QString dbLogin) + { + return "./" + dbLogin; + } // void initAppWithDatabaseFile(const QString &dbFileFullPath); diff --git a/PasswordManager/mainwindow.ui b/PasswordManager/mainwindow.ui index 430fbef..8fec42b 100644 --- a/PasswordManager/mainwindow.ui +++ b/PasswordManager/mainwindow.ui @@ -1014,7 +1014,6 @@ Сервис -