mirror of
https://github.com/martinrotter/rssguard.git
synced 2025-02-05 20:03:31 +01:00
Fix build errors.
This commit is contained in:
parent
10604b6a65
commit
bd6143aead
@ -58,10 +58,15 @@ QStringList NetworkFactory::extractFeedLinksFromHtmlPage(const QUrl& url, const
|
||||
}
|
||||
|
||||
QPair<QByteArray, QByteArray> NetworkFactory::generateBasicAuthHeader(const QString& username, const QString& password) {
|
||||
QString basic_value = username + ":" + password;
|
||||
QString header_value = QString("Basic ") + QString(basic_value.toUtf8().toBase64());
|
||||
if (username.isEmpty()) {
|
||||
return QPair<QByteArray, QByteArray>(QByteArray(), QByteArray());
|
||||
}
|
||||
else {
|
||||
QString basic_value = username + ":" + password;
|
||||
QString header_value = QString("Basic ") + QString(basic_value.toUtf8().toBase64());
|
||||
|
||||
return QPair<QByteArray, QByteArray>(HTTP_HEADERS_AUTHORIZATION, header_value.toLocal8Bit());
|
||||
return QPair<QByteArray, QByteArray>(HTTP_HEADERS_AUTHORIZATION, header_value.toLocal8Bit());
|
||||
}
|
||||
}
|
||||
|
||||
QString NetworkFactory::networkErrorText(QNetworkReply::NetworkError error_code) {
|
||||
@ -180,7 +185,9 @@ Downloader* NetworkFactory::performAsyncNetworkOperation(const QString& url, int
|
||||
QObject::connect(downloader, &Downloader::completed, downloader, &Downloader::deleteLater);
|
||||
|
||||
foreach (const auto& header, additional_headers) {
|
||||
downloader->appendRawHeader(header.first, header.second);
|
||||
if (!header.first.isEmpty()) {
|
||||
downloader->appendRawHeader(header.first, header.second);
|
||||
}
|
||||
}
|
||||
|
||||
downloader->manipulateData(url, operation, input_data, timeout, protected_contents, username, password);
|
||||
@ -200,7 +207,9 @@ NetworkResult NetworkFactory::performNetworkOperation(const QString& url, int ti
|
||||
QObject::connect(&downloader, &Downloader::completed, &loop, &QEventLoop::quit);
|
||||
|
||||
foreach (const auto& header, additional_headers) {
|
||||
downloader.appendRawHeader(header.first, header.second);
|
||||
if (!header.first.isEmpty()) {
|
||||
downloader.appendRawHeader(header.first, header.second);
|
||||
}
|
||||
}
|
||||
|
||||
downloader.manipulateData(url, operation, input_data, timeout, protected_contents, username, password);
|
||||
|
@ -173,17 +173,17 @@ QPair<StandardFeed*, QNetworkReply::NetworkError> StandardFeed::guessFeed(const
|
||||
QPair<StandardFeed*, QNetworkReply::NetworkError> result;
|
||||
result.first = nullptr;
|
||||
QByteArray feed_contents;
|
||||
|
||||
QList<QPair<QByteArray, QByteArray>> headers;
|
||||
headers << NetworkFactory::generateBasicAuthHeader(username, password);
|
||||
|
||||
NetworkResult network_result = NetworkFactory::performNetworkOperation(url,
|
||||
qApp->settings()->value(GROUP(Feeds),
|
||||
SETTING(Feeds::UpdateTimeout)).toInt(),
|
||||
QByteArray(),
|
||||
QString(),
|
||||
feed_contents,
|
||||
QNetworkAccessManager::GetOperation,
|
||||
!username.isEmpty(),
|
||||
username,
|
||||
password,
|
||||
true);
|
||||
headers);
|
||||
|
||||
result.second = network_result.first;
|
||||
|
||||
@ -435,16 +435,15 @@ QList<Message> StandardFeed::obtainNewMessages(bool* error_during_obtaining) {
|
||||
QByteArray feed_contents;
|
||||
int download_timeout = qApp->settings()->value(GROUP(Feeds), SETTING(Feeds::UpdateTimeout)).toInt();
|
||||
|
||||
QList<QPair<QByteArray, QByteArray>> headers;
|
||||
headers << NetworkFactory::generateBasicAuthHeader(username(), password());
|
||||
|
||||
m_networkError = NetworkFactory::performNetworkOperation(url(),
|
||||
download_timeout,
|
||||
QByteArray(),
|
||||
QString(),
|
||||
feed_contents,
|
||||
QNetworkAccessManager::GetOperation,
|
||||
!username().isEmpty(),
|
||||
username(),
|
||||
password(),
|
||||
true).first;
|
||||
headers).first;
|
||||
|
||||
if (m_networkError != QNetworkReply::NoError) {
|
||||
qWarning("Error during fetching of new messages for feed '%s' (id %d).", qPrintable(url()), id());
|
||||
|
@ -97,17 +97,19 @@ TtRssLoginResponse TtRssNetworkFactory::login() {
|
||||
json["password"] = m_password;
|
||||
|
||||
QByteArray result_raw;
|
||||
|
||||
QList<QPair<QByteArray, QByteArray>> headers;
|
||||
headers << QPair<QByteArray, QByteArray>(HTTP_HEADERS_CONTENT_TYPE, TTRSS_CONTENT_TYPE_JSON);
|
||||
headers << NetworkFactory::generateBasicAuthHeader(m_authUsername, m_authPassword);
|
||||
|
||||
NetworkResult network_reply = NetworkFactory::performNetworkOperation(m_fullUrl,
|
||||
qApp->settings()->value(GROUP(Feeds),
|
||||
SETTING(
|
||||
Feeds::UpdateTimeout)).toInt(),
|
||||
QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed,
|
||||
m_authUsername,
|
||||
m_authPassword);
|
||||
headers);
|
||||
TtRssLoginResponse login_response(QString::fromUtf8(result_raw));
|
||||
|
||||
if (network_reply.first == QNetworkReply::NoError) {
|
||||
@ -129,17 +131,19 @@ TtRssResponse TtRssNetworkFactory::logout() {
|
||||
json["op"] = QSL("logout");
|
||||
json["sid"] = m_sessionId;
|
||||
QByteArray result_raw;
|
||||
|
||||
QList<QPair<QByteArray, QByteArray>> headers;
|
||||
headers << QPair<QByteArray, QByteArray>(HTTP_HEADERS_CONTENT_TYPE, TTRSS_CONTENT_TYPE_JSON);
|
||||
headers << NetworkFactory::generateBasicAuthHeader(m_authUsername, m_authPassword);
|
||||
|
||||
NetworkResult network_reply = NetworkFactory::performNetworkOperation(m_fullUrl,
|
||||
qApp->settings()->value(GROUP(Feeds),
|
||||
SETTING(
|
||||
Feeds::UpdateTimeout)).toInt(),
|
||||
QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed,
|
||||
m_authUsername,
|
||||
m_authPassword);
|
||||
headers);
|
||||
|
||||
m_lastError = network_reply.first;
|
||||
|
||||
@ -167,11 +171,16 @@ TtRssGetFeedsCategoriesResponse TtRssNetworkFactory::getFeedsCategories() {
|
||||
json["include_empty"] = true;
|
||||
const int timeout = qApp->settings()->value(GROUP(Feeds), SETTING(Feeds::UpdateTimeout)).toInt();
|
||||
QByteArray result_raw;
|
||||
|
||||
QList<QPair<QByteArray, QByteArray>> headers;
|
||||
headers << QPair<QByteArray, QByteArray>(HTTP_HEADERS_CONTENT_TYPE, TTRSS_CONTENT_TYPE_JSON);
|
||||
headers << NetworkFactory::generateBasicAuthHeader(m_authUsername, m_authPassword);
|
||||
|
||||
NetworkResult network_reply = NetworkFactory::performNetworkOperation(m_fullUrl, timeout,
|
||||
QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON, result_raw,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed, m_authUsername, m_authPassword);
|
||||
headers);
|
||||
TtRssGetFeedsCategoriesResponse result(QString::fromUtf8(result_raw));
|
||||
|
||||
if (result.isNotLoggedIn()) {
|
||||
@ -179,9 +188,9 @@ TtRssGetFeedsCategoriesResponse TtRssNetworkFactory::getFeedsCategories() {
|
||||
login();
|
||||
json["sid"] = m_sessionId;
|
||||
network_reply = NetworkFactory::performNetworkOperation(m_fullUrl, timeout, QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON, result_raw,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed, m_authUsername, m_authPassword);
|
||||
headers);
|
||||
result = TtRssGetFeedsCategoriesResponse(QString::fromUtf8(result_raw));
|
||||
}
|
||||
|
||||
@ -209,11 +218,16 @@ TtRssGetHeadlinesResponse TtRssNetworkFactory::getHeadlines(int feed_id, int lim
|
||||
json["sanitize"] = sanitize;
|
||||
const int timeout = qApp->settings()->value(GROUP(Feeds), SETTING(Feeds::UpdateTimeout)).toInt();
|
||||
QByteArray result_raw;
|
||||
|
||||
QList<QPair<QByteArray, QByteArray>> headers;
|
||||
headers << QPair<QByteArray, QByteArray>(HTTP_HEADERS_CONTENT_TYPE, TTRSS_CONTENT_TYPE_JSON);
|
||||
headers << NetworkFactory::generateBasicAuthHeader(m_authUsername, m_authPassword);
|
||||
|
||||
NetworkResult network_reply = NetworkFactory::performNetworkOperation(m_fullUrl, timeout,
|
||||
QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON, result_raw,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed, m_authUsername, m_authPassword);
|
||||
headers);
|
||||
TtRssGetHeadlinesResponse result(QString::fromUtf8(result_raw));
|
||||
|
||||
if (result.isNotLoggedIn()) {
|
||||
@ -221,9 +235,9 @@ TtRssGetHeadlinesResponse TtRssNetworkFactory::getHeadlines(int feed_id, int lim
|
||||
login();
|
||||
json["sid"] = m_sessionId;
|
||||
network_reply = NetworkFactory::performNetworkOperation(m_fullUrl, timeout, QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON, result_raw,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed, m_authUsername, m_authPassword);
|
||||
headers);
|
||||
result = TtRssGetHeadlinesResponse(QString::fromUtf8(result_raw));
|
||||
}
|
||||
|
||||
@ -249,11 +263,16 @@ TtRssUpdateArticleResponse TtRssNetworkFactory::updateArticles(const QStringList
|
||||
json["field"] = (int) field;
|
||||
const int timeout = qApp->settings()->value(GROUP(Feeds), SETTING(Feeds::UpdateTimeout)).toInt();
|
||||
QByteArray result_raw;
|
||||
|
||||
QList<QPair<QByteArray, QByteArray>> headers;
|
||||
headers << QPair<QByteArray, QByteArray>(HTTP_HEADERS_CONTENT_TYPE, TTRSS_CONTENT_TYPE_JSON);
|
||||
headers << NetworkFactory::generateBasicAuthHeader(m_authUsername, m_authPassword);
|
||||
|
||||
NetworkResult network_reply = NetworkFactory::performNetworkOperation(m_fullUrl, timeout,
|
||||
QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON, result_raw,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed, m_authUsername, m_authPassword);
|
||||
headers);
|
||||
TtRssUpdateArticleResponse result(QString::fromUtf8(result_raw));
|
||||
|
||||
if (result.isNotLoggedIn()) {
|
||||
@ -261,9 +280,9 @@ TtRssUpdateArticleResponse TtRssNetworkFactory::updateArticles(const QStringList
|
||||
login();
|
||||
json["sid"] = m_sessionId;
|
||||
network_reply = NetworkFactory::performNetworkOperation(m_fullUrl, timeout, QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON, result_raw,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed, m_authUsername, m_authPassword);
|
||||
headers);
|
||||
result = TtRssUpdateArticleResponse(QString::fromUtf8(result_raw));
|
||||
}
|
||||
|
||||
@ -292,11 +311,16 @@ TtRssSubscribeToFeedResponse TtRssNetworkFactory::subscribeToFeed(const QString&
|
||||
|
||||
const int timeout = qApp->settings()->value(GROUP(Feeds), SETTING(Feeds::UpdateTimeout)).toInt();
|
||||
QByteArray result_raw;
|
||||
|
||||
QList<QPair<QByteArray, QByteArray>> headers;
|
||||
headers << QPair<QByteArray, QByteArray>(HTTP_HEADERS_CONTENT_TYPE, TTRSS_CONTENT_TYPE_JSON);
|
||||
headers << NetworkFactory::generateBasicAuthHeader(m_authUsername, m_authPassword);
|
||||
|
||||
NetworkResult network_reply = NetworkFactory::performNetworkOperation(m_fullUrl, timeout,
|
||||
QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON, result_raw,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed, m_authUsername, m_authPassword);
|
||||
headers);
|
||||
TtRssSubscribeToFeedResponse result(QString::fromUtf8(result_raw));
|
||||
|
||||
if (result.isNotLoggedIn()) {
|
||||
@ -304,9 +328,9 @@ TtRssSubscribeToFeedResponse TtRssNetworkFactory::subscribeToFeed(const QString&
|
||||
login();
|
||||
json["sid"] = m_sessionId;
|
||||
network_reply = NetworkFactory::performNetworkOperation(m_fullUrl, timeout, QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON, result_raw,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed, m_authUsername, m_authPassword);
|
||||
headers);
|
||||
result = TtRssSubscribeToFeedResponse(QString::fromUtf8(result_raw));
|
||||
}
|
||||
|
||||
@ -326,15 +350,17 @@ TtRssUnsubscribeFeedResponse TtRssNetworkFactory::unsubscribeFeed(int feed_id) {
|
||||
json["feed_id"] = feed_id;
|
||||
const int timeout = qApp->settings()->value(GROUP(Feeds), SETTING(Feeds::UpdateTimeout)).toInt();
|
||||
QByteArray result_raw;
|
||||
|
||||
QList<QPair<QByteArray, QByteArray>> headers;
|
||||
headers << QPair<QByteArray, QByteArray>(HTTP_HEADERS_CONTENT_TYPE, TTRSS_CONTENT_TYPE_JSON);
|
||||
headers << NetworkFactory::generateBasicAuthHeader(m_authUsername, m_authPassword);
|
||||
|
||||
NetworkResult network_reply = NetworkFactory::performNetworkOperation(m_fullUrl,
|
||||
timeout,
|
||||
QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed,
|
||||
m_authUsername,
|
||||
m_authPassword);
|
||||
headers);
|
||||
TtRssUnsubscribeFeedResponse result(QString::fromUtf8(result_raw));
|
||||
|
||||
if (result.isNotLoggedIn()) {
|
||||
@ -342,9 +368,9 @@ TtRssUnsubscribeFeedResponse TtRssNetworkFactory::unsubscribeFeed(int feed_id) {
|
||||
login();
|
||||
json["sid"] = m_sessionId;
|
||||
network_reply = NetworkFactory::performNetworkOperation(m_fullUrl, timeout, QJsonDocument(json).toJson(QJsonDocument::Compact),
|
||||
TTRSS_CONTENT_TYPE_JSON, result_raw,
|
||||
result_raw,
|
||||
QNetworkAccessManager::PostOperation,
|
||||
m_authIsUsed, m_authUsername, m_authPassword);
|
||||
headers);
|
||||
result = TtRssUnsubscribeFeedResponse(QString::fromUtf8(result_raw));
|
||||
}
|
||||
|
||||
@ -529,7 +555,7 @@ RootItem* TtRssGetFeedsCategoriesResponse::feedsCategories(bool obtain_icons, QS
|
||||
QByteArray icon_data;
|
||||
|
||||
if (NetworkFactory::performNetworkOperation(full_icon_address, DOWNLOAD_TIMEOUT,
|
||||
QByteArray(), QString(), icon_data,
|
||||
QByteArray(), icon_data,
|
||||
QNetworkAccessManager::GetOperation).first == QNetworkReply::NoError) {
|
||||
// Icon downloaded, set it up.
|
||||
QPixmap icon_pixmap;
|
||||
@ -569,7 +595,7 @@ QList<Message> TtRssGetHeadlinesResponse::messages() const {
|
||||
|
||||
// Multiply by 1000 because Tiny Tiny RSS API does not include miliseconds in Unix
|
||||
// date/time number.
|
||||
message.m_created = TextFactory::parseDateTime(mapped["updated"].toDouble() * 1000);
|
||||
message.m_created = TextFactory::parseDateTime(int(mapped["updated"].toDouble()) * 1000);
|
||||
message.m_createdFromFeed = true;
|
||||
message.m_customId = QString::number(mapped["id"].toInt());
|
||||
message.m_feedId = mapped["feed_id"].toString();
|
||||
|
Loading…
x
Reference in New Issue
Block a user