2 #include "ui_2faconfirmdialog.h"
10 QDialog(parent, Qt::WindowSystemMenuHint | Qt::WindowTitleHint | Qt::WindowCloseButtonHint),
15 ui->txtcode_7->setVisible(
false);
16 ui->txtcode_8->setVisible(
false);
18 QIntValidator *intVal_1 =
new QIntValidator(0, 9,
ui->txtcode_1);
19 intVal_1->setLocale(QLocale::C);
20 ui->txtcode_1->setValidator(intVal_1);
21 ui->txtcode_1->setAlignment(Qt::AlignCenter);
23 QIntValidator *intVal_2 =
new QIntValidator(0, 9,
ui->txtcode_2);
24 intVal_2->setLocale(QLocale::C);
25 ui->txtcode_2->setValidator(intVal_2);
26 ui->txtcode_2->setAlignment(Qt::AlignCenter);
28 QIntValidator *intVal_3 =
new QIntValidator(0, 9,
ui->txtcode_3);
29 intVal_3->setLocale(QLocale::C);
30 ui->txtcode_3->setValidator(intVal_3);
31 ui->txtcode_3->setAlignment(Qt::AlignCenter);
33 QIntValidator *intVal_4 =
new QIntValidator(0, 9,
ui->txtcode_4);
34 intVal_4->setLocale(QLocale::C);
35 ui->txtcode_4->setValidator(intVal_4);
36 ui->txtcode_4->setAlignment(Qt::AlignCenter);
38 QIntValidator *intVal_5 =
new QIntValidator(0, 9,
ui->txtcode_5);
39 intVal_5->setLocale(QLocale::C);
40 ui->txtcode_5->setValidator(intVal_5);
41 ui->txtcode_5->setAlignment(Qt::AlignCenter);
43 QIntValidator *intVal_6 =
new QIntValidator(0, 9,
ui->txtcode_6);
44 intVal_6->setLocale(QLocale::C);
45 ui->txtcode_6->setValidator(intVal_6);
46 ui->txtcode_6->setAlignment(Qt::AlignCenter);
49 int digits =
settings.value(
"2fadigits").toInt();
51 ui->label->setText(
"Please enter an eight digit 2FA code:");
52 ui->txtcode_7->setVisible(
true);
53 ui->txtcode_8->setVisible(
true);
55 QIntValidator *intVal_7 =
new QIntValidator(0, 9,
ui->txtcode_7);
56 intVal_7->setLocale(QLocale::C);
57 ui->txtcode_7->setValidator(intVal_7);
58 ui->txtcode_7->setAlignment(Qt::AlignCenter);
60 QIntValidator *intVal_8 =
new QIntValidator(0, 9,
ui->txtcode_8);
61 intVal_8->setLocale(QLocale::C);
62 ui->txtcode_8->setValidator(intVal_8);
63 ui->txtcode_8->setAlignment(Qt::AlignCenter);
68 connect(
ui->btnCancel, SIGNAL(clicked()),
this, SLOT(reject()));
88 char code1, code2, code3, code4, code5, code6, code7, code8;
92 input =
ui->txtcode_1->text();
93 if (input.length() > 1)
95 if (!re.exactMatch(input))
97 chrlist = input.toUtf8().data();
100 input =
ui->txtcode_2->text();
101 if (input.length() > 1)
103 if (!re.exactMatch(input))
105 chrlist = input.toUtf8().data();
108 input =
ui->txtcode_3->text();
109 if (input.length() > 1)
111 if (!re.exactMatch(input))
113 chrlist = input.toUtf8().data();
116 input =
ui->txtcode_4->text();
117 if (input.length() > 1)
119 if (!re.exactMatch(input))
121 chrlist = input.toUtf8().data();
124 input =
ui->txtcode_5->text();
125 if (input.length() > 1)
127 if (!re.exactMatch(input))
129 chrlist = input.toUtf8().data();
132 input =
ui->txtcode_6->text();
133 if (input.length() > 1)
135 if (!re.exactMatch(input))
137 chrlist = input.toUtf8().data();
140 input =
ui->txtcode_7->text();
141 if (input.length() > 1)
143 if (!re.exactMatch(input))
145 chrlist = input.toUtf8().data();
148 input =
ui->txtcode_8->text();
149 if (input.length() > 1)
151 if (!re.exactMatch(input))
153 chrlist = input.toUtf8().data();
157 int digits =
settings.value(
"2fadigits").toInt();
159 code.sprintf(
"%c%c%c%c%c%c%c%c", code1, code2, code3, code4, code5, code6, code7, code8);
160 }
else if (digits == 6) {
161 code.sprintf(
"%c%c%c%c%c%c", code1, code2, code3, code4, code5, code6);
168 if (result != code) {
169 QMessageBox::critical(
this, tr(
"Wrong 2FA Code"),
170 tr(
"Incorrect 2FA code entered.\nPlease try again."));
178 this->focusNextChild();