diff options
Diffstat (limited to 'src/widgets')
| -rw-r--r-- | src/widgets/moderator_dialog.cpp | 14 | ||||
| -rw-r--r-- | src/widgets/moderator_dialog.h | 4 |
2 files changed, 14 insertions, 4 deletions
diff --git a/src/widgets/moderator_dialog.cpp b/src/widgets/moderator_dialog.cpp index 11b99ccf..a39840fe 100644 --- a/src/widgets/moderator_dialog.cpp +++ b/src/widgets/moderator_dialog.cpp @@ -9,6 +9,7 @@ #include <QMessageBox> #include <QUiLoader> #include <QVBoxLayout> +#include <chrono> const QString ModeratorDialog::UI_FILE_PATH = "moderator_action_dialog.ui"; @@ -31,7 +32,9 @@ ModeratorDialog::ModeratorDialog(int clientId, bool ban, AOApplication *ao_app, layout->addWidget(ui_widget); FROM_UI(QComboBox, action); - FROM_UI(QSpinBox, duration); + FROM_UI(QSpinBox, duration_mm); + FROM_UI(QSpinBox, duration_hh); + FROM_UI(QSpinBox, duration_dd); FROM_UI(QLabel, duration_label); FROM_UI(QCheckBox, permanent); FROM_UI(QTextEdit, details); @@ -46,7 +49,9 @@ ModeratorDialog::ModeratorDialog(int clientId, bool ban, AOApplication *ao_app, ui_action->addItem(tr("Kick")); } - ui_duration->setVisible(m_ban); + ui_duration_mm->setVisible(m_ban); + ui_duration_hh->setVisible(m_ban); + ui_duration_dd->setVisible(m_ban); ui_duration_label->setVisible(m_ban); ui_permanent->setVisible(m_ban); @@ -87,7 +92,10 @@ void ModeratorDialog::onAcceptedClicked() } else { - arglist.append(QString::number(ui_duration->value())); + qint64 duration = std::chrono::duration_cast<std::chrono::seconds>(std::chrono::days(ui_duration_dd->value())).count(); + duration = duration + std::chrono::duration_cast<std::chrono::seconds>(std::chrono::hours(ui_duration_hh->value())).count(); + duration = duration + std::chrono::duration_cast<std::chrono::seconds>(std::chrono::minutes(ui_duration_mm->value())).count(); + arglist.append(QString::number(duration)); } } else diff --git a/src/widgets/moderator_dialog.h b/src/widgets/moderator_dialog.h index 648f979d..558080f0 100644 --- a/src/widgets/moderator_dialog.h +++ b/src/widgets/moderator_dialog.h @@ -27,7 +27,9 @@ private: QWidget *ui_widget; QComboBox *ui_action; - QSpinBox *ui_duration; + QSpinBox *ui_duration_mm; + QSpinBox *ui_duration_hh; + QSpinBox *ui_duration_dd; QLabel *ui_duration_label; QCheckBox *ui_permanent; QTextEdit *ui_details; |
