2024-08-27 22:13:54 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <QApplication>
|
|
|
|
#include <QNetworkAccessManager>
|
|
|
|
#include <QNetworkReply>
|
2024-08-29 11:21:00 +00:00
|
|
|
|
2024-08-27 22:13:54 +00:00
|
|
|
#include <dialogs/FederatedLogin.h>
|
2024-08-29 11:21:00 +00:00
|
|
|
#include <lib/Service.h>
|
2024-08-27 22:13:54 +00:00
|
|
|
|
|
|
|
class Configurator:public QApplication {
|
|
|
|
Q_OBJECT
|
|
|
|
public:
|
|
|
|
Configurator(int &argc, char **&argv);
|
2024-09-03 13:40:08 +00:00
|
|
|
QNetworkAccessManager &nam() { return _nam; }
|
|
|
|
QString baseUrl() const { return "https://dashboard." + _loginDialog->domain(); }
|
|
|
|
QByteArray download(QUrl const &url);
|
|
|
|
void waitForDownload(QNetworkReply *r) const;
|
|
|
|
Services const &services() const { return _services; }
|
2024-08-27 22:13:54 +00:00
|
|
|
protected Q_SLOTS:
|
|
|
|
void loginRequested();
|
|
|
|
private:
|
|
|
|
QNetworkAccessManager _nam;
|
|
|
|
FederatedLogin * _loginDialog;
|
2024-08-29 11:21:00 +00:00
|
|
|
Services _services;
|
2024-08-27 22:13:54 +00:00
|
|
|
};
|
2024-09-03 13:40:08 +00:00
|
|
|
|
|
|
|
#define app static_cast<Configurator*>(Configurator::instance())
|