Absence plugin #54

Merged
0xFEEDC0DE64 merged 12 commits from absence-plugin into devel 2017-12-29 02:36:35 +01:00
29 changed files with 779 additions and 19 deletions
Showing only changes of commit a5df54c003 - Show all commits

View File

@@ -2,6 +2,8 @@
#include "ui_absencedialog.h" #include "ui_absencedialog.h"
#include <QDate> #include <QDate>
#include <QMessageBox>
#include <QStringBuilder>
#include "absencesmodel.h" #include "absencesmodel.h"
@@ -19,10 +21,20 @@ AbsenceDialog::AbsenceDialog(int userId, const QDate &date, ZeiterfassungApi &er
ui->labelTitle->setText(tr("Absences for %0").arg(date.toString(tr("dd.MM.yyyy")))); ui->labelTitle->setText(tr("Absences for %0").arg(date.toString(tr("dd.MM.yyyy"))));
ui->treeView->setModel(new AbsencesModel(userId, date, erfassung, this)); m_model = new AbsencesModel(userId, date, erfassung, this);
connect(m_model, &AbsencesModel::errorOccured, this, &AbsenceDialog::errorOccured);
ui->treeView->setModel(m_model);
ui->treeView->setEnabled(m_model->enabled());
connect(m_model, &AbsencesModel::enabledChanged, ui->treeView, &QWidget::setEnabled);
} }
AbsenceDialog::~AbsenceDialog() AbsenceDialog::~AbsenceDialog()
{ {
delete ui; delete ui;
} }
void AbsenceDialog::errorOccured(const QString &message)
{
QMessageBox::warning(this, tr("Could not load absences!"), tr("Could not load absences!") % "\n\n" % message);
}

View File

@@ -6,6 +6,7 @@ class QDate;
class ZeiterfassungApi; class ZeiterfassungApi;
class AbsencesModel;
namespace Ui { class AbsenceDialog; } namespace Ui { class AbsenceDialog; }
class AbsenceDialog : public QDialog class AbsenceDialog : public QDialog
@@ -16,6 +17,11 @@ public:
explicit AbsenceDialog(int userId, const QDate &date, ZeiterfassungApi &erfassung, QWidget *parent = 0); explicit AbsenceDialog(int userId, const QDate &date, ZeiterfassungApi &erfassung, QWidget *parent = 0);
~AbsenceDialog(); ~AbsenceDialog();
private Q_SLOTS:
void errorOccured(const QString &message);
private: private:
Ui::AbsenceDialog *ui; Ui::AbsenceDialog *ui;
AbsencesModel *m_model;
}; };

View File

@@ -9,22 +9,75 @@
<translation>Abwesenheiten</translation> <translation>Abwesenheiten</translation>
</message> </message>
<message> <message>
<location filename="../absencedialog.cpp" line="18"/> <location filename="../absencedialog.cpp" line="22"/>
<source>Absences for %0</source> <source>Absences for %0</source>
<translation>Abwesenheiten für %0</translation> <translation>Abwesenheiten für %0</translation>
</message> </message>
<message> <message>
<location filename="../absencedialog.cpp" line="18"/> <location filename="../absencedialog.cpp" line="22"/>
<source>dd.MM.yyyy</source> <source>dd.MM.yyyy</source>
<translation>dd.MM.yyyy</translation> <translation>dd.MM.yyyy</translation>
</message> </message>
<message>
<location filename="../absencedialog.cpp" line="39"/>
<source>Could not load absences!</source>
<translation>Konnte Abwesenheiten nicht laden!</translation>
</message>
</context> </context>
<context> <context>
<name>AbsenceWidget</name> <name>AbsenceWidget</name>
<message> <message>
<location filename="../absencewidget.cpp" line="12"/> <location filename="../absencewidget.cpp" line="13"/>
<source>Absence</source> <source>Absence</source>
<translation>Abwesenheit</translation> <translation>Abwesenheit</translation>
</message> </message>
</context> </context>
<context>
<name>AbsencesModel</name>
<message>
<location filename="../absencesmodel.cpp" line="69"/>
<source>altRepresentative</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="70"/>
<source>compositeId</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="71"/>
<source>end</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="72"/>
<source>hourCategory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="73"/>
<source>openMarking</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="74"/>
<source>persNr</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="75"/>
<source>representative</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="76"/>
<source>start</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="77"/>
<source>text</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS> </TS>

View File

@@ -9,22 +9,75 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../absencedialog.cpp" line="18"/> <location filename="../absencedialog.cpp" line="22"/>
<source>Absences for %0</source> <source>Absences for %0</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../absencedialog.cpp" line="18"/> <location filename="../absencedialog.cpp" line="22"/>
<source>dd.MM.yyyy</source> <source>dd.MM.yyyy</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../absencedialog.cpp" line="39"/>
<source>Could not load absences!</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>AbsenceWidget</name> <name>AbsenceWidget</name>
<message> <message>
<location filename="../absencewidget.cpp" line="12"/> <location filename="../absencewidget.cpp" line="13"/>
<source>Absence</source> <source>Absence</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context> </context>
<context>
<name>AbsencesModel</name>
<message>
<location filename="../absencesmodel.cpp" line="69"/>
<source>altRepresentative</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="70"/>
<source>compositeId</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="71"/>
<source>end</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="72"/>
<source>hourCategory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="73"/>
<source>openMarking</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="74"/>
<source>persNr</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="75"/>
<source>representative</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="76"/>
<source>start</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../absencesmodel.cpp" line="77"/>
<source>text</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS> </TS>