Изменение пароля

This commit is contained in:
2025-10-16 18:56:09 +03:00
parent 241382d305
commit b539f9fd2b
12 changed files with 174 additions and 15 deletions

View File

@@ -1,12 +1,14 @@
#include "dialogedittrainee.h"
#include "ui_dialogedittrainee.h"
#include "hashtools.h"
#include <QPushButton>
#include <QRegExpValidator>
DialogEditTrainee::DialogEditTrainee(QWidget *parent) :
QDialog(parent),
ui(new Ui::DialogEditTrainee),
traineeInput()
traineeInput(),
flNeedHashPassword(false)
{
ui->setupUi(this);
verify();
@@ -16,15 +18,17 @@ DialogEditTrainee::DialogEditTrainee(QWidget *parent) :
ui->editPassword->setProperty("mandatoryField", true);
ui->btnViewPassword->setObjectName("btnViewPassword");
ui->btnChangePassword->setObjectName("btnChangePassword");
ui->editLogin->setValidator(new QRegExpValidator(QRegExp("[A-Za-z\\d]+"), this));
ui->editPassword->setEnabled(false);
//#ifndef PROJECT_TYPE_DEBUG
#ifndef PROJECT_TYPE_DEBUG
ui->editPassword->setEchoMode(QLineEdit::EchoMode::Password);
//#endif
#endif
ui->btnViewPassword->setEnabled(false);
ui->btnChangePassword->setEnabled(false);
ui->btnOK->setEnabled(false);
}
@@ -50,8 +54,8 @@ void DialogEditTrainee::setTrainee(Trainee trainee)
ui->editPassword->setEnabled(true);
ui->btnViewPassword->setEnabled(true);
}
//else
//ui->editPassword->setText("*****");
else
ui->btnChangePassword->setEnabled(true);
ui->btnOK->setEnabled(false);
}
@@ -62,7 +66,15 @@ Trainee DialogEditTrainee::getTrainee()
trainee.setName(ui->editName->text());
trainee.setLogin(ui->editLogin->text());
trainee.setPassword(ui->editPassword->text());
if(flNeedHashPassword)
{
QString psw = ui->editPassword->text();
psw = HashTools::hashingMD5string(psw);
trainee.setPassword(psw);
}
else
trainee.setPassword(ui->editPassword->text());
trainee.setArchived(ui->checkArchived->isChecked());
trainee.setLoggedIn(ui->checkLoggedIn->isChecked());
@@ -109,3 +121,12 @@ void DialogEditTrainee::on_btnViewPassword_released()
{
ui->editPassword->setEchoMode(QLineEdit::EchoMode::Password);
}
void DialogEditTrainee::on_btnChangePassword_clicked()
{
ui->editPassword->setEnabled(true);
ui->btnViewPassword->setEnabled(true);
ui->editPassword->setText("");
flNeedHashPassword = true;
}