diff --git a/core/merginapi.cpp b/core/merginapi.cpp index efb1bd1dd..e3f89a82f 100644 --- a/core/merginapi.cpp +++ b/core/merginapi.cpp @@ -3966,7 +3966,7 @@ DownloadQueueItem::DownloadQueueItem( const QString &fp, qint64 s, int v, qint64 void MerginApi::reloadProjectRole( const QString &projectFullName ) { - if ( projectFullName.isEmpty() ) + if ( projectFullName.isEmpty() || !isLoggedIn() ) { return; } @@ -4053,3 +4053,8 @@ void MerginApi::setNetworkManager( QNetworkAccessManager *manager ) emit networkManagerChanged(); } + +bool MerginApi::isLoggedIn() const +{ + return mUserAuth->hasAuthData() && !mUserAuth->authToken().isEmpty(); +} diff --git a/core/merginapi.h b/core/merginapi.h index f36874b4a..67b9d6db9 100644 --- a/core/merginapi.h +++ b/core/merginapi.h @@ -593,6 +593,11 @@ class MerginApi: public QObject */ void setNetworkManager( QNetworkAccessManager *manager ); + /** + * Returns whether user is currently logged in + */ + Q_INVOKABLE bool isLoggedIn() const; + signals: void apiSupportsSubscriptionsChanged(); void supportsSelectiveSyncChanged();