1
0
mirror of https://github.com/clementine-player/Clementine synced 2025-01-31 11:35:24 +01:00

Add validation for Magnatune accounts.

This commit is contained in:
John Maguire 2011-03-18 14:39:29 +00:00
parent 744bf922f3
commit 32193dbb9f
53 changed files with 285 additions and 1 deletions

View File

@ -16,25 +16,95 @@
*/
#include "magnatuneconfig.h"
#include "core/network.h"
#include "magnatuneservice.h"
#include "radiomodel.h"
#include "ui_magnatuneconfig.h"
#include <QMessageBox>
#include <QNetworkReply>
#include <QNetworkRequest>
#include <QSettings>
#include <QtDebug>
MagnatuneConfig::MagnatuneConfig(QWidget *parent)
: QWidget(parent),
credentials_changed_(false),
network_(new NetworkAccessManager(this)),
ui_(new Ui_MagnatuneConfig)
{
ui_->setupUi(this);
ui_->busy->hide();
connect(ui_->membership, SIGNAL(currentIndexChanged(int)), SLOT(MembershipChanged(int)));
connect(network_, SIGNAL(authenticationRequired(QNetworkReply*, QAuthenticator*)),
SLOT(AuthenticationRequired(QNetworkReply*, QAuthenticator*)));
connect(ui_->username, SIGNAL(textEdited(const QString&)),
SLOT(CredentialsChanged()));
connect(ui_->password, SIGNAL(textEdited(const QString&)),
SLOT(CredentialsChanged()));
}
MagnatuneConfig::~MagnatuneConfig() {
delete ui_;
}
bool MagnatuneConfig::NeedsValidation() const {
return credentials_changed_;
}
const char* kMagnatuneDownloadValidateUrl = "http://download.magnatune.com/";
const char* kMagnatuneStreamingValidateUrl = "http://streaming.magnatune.com/";
void MagnatuneConfig::Validate() {
ui_->busy->show();
MagnatuneService::MembershipType type = (MagnatuneService::MembershipType)(ui_->membership->currentIndex());
QUrl url(type == MagnatuneService::Membership_Streaming ? kMagnatuneStreamingValidateUrl : kMagnatuneDownloadValidateUrl, QUrl::StrictMode);
url.setUserName(ui_->username->text());
// NOTE: Magnatune actually only checks the first 8 characters.
url.setPassword(ui_->password->text());
QNetworkRequest req(url);
// Disable keep-alives and gzip compression as it's broken on magnatune.
req.setRawHeader("Connection", "Close");
req.setRawHeader("Accept-Encoding", "identity");
// Disable caching.
req.setAttribute(QNetworkRequest::CacheLoadControlAttribute,
QNetworkRequest::AlwaysNetwork);
QNetworkReply* reply = network_->head(req);
connect(reply, SIGNAL(finished()), SLOT(ValidationFinished()));
}
void MagnatuneConfig::ValidationFinished() {
QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender());
Q_ASSERT(reply);
reply->deleteLater();
ui_->busy->hide();
const bool success =
reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt() == 200;
credentials_changed_ = !success;
if (!success) {
QMessageBox::warning(
this, tr("Authentication failed"), tr("Your Magnatune credentials were incorrect"));
}
emit ValidationComplete(success);
}
void MagnatuneConfig::AuthenticationRequired(
QNetworkReply* reply, QAuthenticator*) {
// We send the authentication with the first request so this means we got
// a 401 Authentication Required, ie. the credentials are incorrect.
reply->abort();
}
void MagnatuneConfig::Load() {
QSettings s;
s.beginGroup(MagnatuneService::kSettingsGroup);
@ -43,6 +113,8 @@ void MagnatuneConfig::Load() {
ui_->username->setText(s.value("username").toString());
ui_->password->setText(s.value("password").toString());
ui_->format->setCurrentIndex(s.value("format", MagnatuneService::Format_Ogg).toInt());
credentials_changed_ = false;
}
void MagnatuneConfig::Save() {
@ -63,3 +135,7 @@ void MagnatuneConfig::MembershipChanged(int value) {
ui_->login_container->setEnabled(enabled);
ui_->preferences_group->setEnabled(enabled);
}
void MagnatuneConfig::CredentialsChanged() {
credentials_changed_ = true;
}

View File

@ -20,6 +20,10 @@
#include <QWidget>
class QAuthenticator;
class QNetworkReply;
class NetworkAccessManager;
class Ui_MagnatuneConfig;
class MagnatuneConfig : public QWidget {
@ -28,14 +32,25 @@ public:
MagnatuneConfig(QWidget* parent = 0);
~MagnatuneConfig();
bool NeedsValidation() const;
void Validate();
public slots:
void Load();
void Save();
signals:
void ValidationComplete(bool);
private slots:
void MembershipChanged(int value);
void ValidationFinished();
void AuthenticationRequired(QNetworkReply* reply, QAuthenticator* auth);
void CredentialsChanged();
private:
bool credentials_changed_;
NetworkAccessManager* network_;
Ui_MagnatuneConfig* ui_;
};

View File

@ -105,7 +105,7 @@
</property>
<layout class="QFormLayout" name="formLayout_2">
<item row="0" column="0">
<widget class="QLabel" name="label_5">
<widget class="QLabel" name="audio_format_label">
<property name="text">
<string>Preferred audio format</string>
</property>
@ -156,8 +156,44 @@
</property>
</spacer>
</item>
<item>
<widget class="QWidget" name="busy" native="true">
<layout class="QHBoxLayout" name="horizontalLayout">
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_5">
<property name="text">
<string>Authenticating...</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="BusyIndicator" name="label_6">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>BusyIndicator</class>
<extends>QLabel</extends>
<header>widgets/busyindicator.h</header>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2733,6 +2733,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2797,6 +2797,9 @@ msgstr "Данните ви за вход в Google бяха грешни"
msgid "Your Last.fm credentials were incorrect"
msgstr "Вашите Last.fm данни са грешни"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2743,6 +2743,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2772,6 +2772,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "Les teves credencials de Last.fm son incorrectes"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2788,6 +2788,9 @@ msgstr "Vaše osobní doklady u Google byly nesprávné"
msgid "Your Last.fm credentials were incorrect"
msgstr "Vaše přihlašovací údaje k Last.fm byly nesprávné"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2724,6 +2724,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "Dine Last.fm login-oplysninger var forkerte"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2799,6 +2799,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "Ihre Last.fm Daten sind falsch"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2821,6 +2821,9 @@ msgstr "Τα διαπιστευτήρια του Google δεν ήταν σωστ
msgid "Your Last.fm credentials were incorrect"
msgstr "Τα στοιχεία σας στο Last.fm ήταν εσφαλμένα"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2723,6 +2723,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "Your Last.fm credentials were incorrect"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2720,6 +2720,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "Your Last.fm credentials were incorrect"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2812,6 +2812,9 @@ msgstr "Sus credenciales de Google son incorrectos."
msgid "Your Last.fm credentials were incorrect"
msgstr "Sus credenciales de Last.fm fueron incorrectas"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2720,6 +2720,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2744,6 +2744,9 @@ msgstr "Google-tilisi tiedot olivat virheelliset"
msgid "Your Last.fm credentials were incorrect"
msgstr "Last.fm-tunnustietosi eivät olleet oikein"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2821,6 +2821,9 @@ msgstr "Vos identifiants Google sont incorrect"
msgid "Your Last.fm credentials were incorrect"
msgstr "Vos identifiants Last.fm sont incorrects"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2728,6 +2728,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "A suas credenciais da Last.fm son incorrectas"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2756,6 +2756,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "הפרטים שהוקשו עבור Last.fm אינם נכונים"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2788,6 +2788,9 @@ msgstr "Vaša Google akreditacija je pogrešna"
msgid "Your Last.fm credentials were incorrect"
msgstr "Vaša Last.fm akreditacija je netočna"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2793,6 +2793,9 @@ msgstr "A Google fiókadataid hibásan lettek megadva"
msgid "Your Last.fm credentials were incorrect"
msgstr "A Last.fm előfizetési adatai hibásak"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2811,6 +2811,9 @@ msgstr "Le credenziali di Google non erano corrette"
msgid "Your Last.fm credentials were incorrect"
msgstr "Le credenziali Last.fm non sono corrette"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2770,6 +2770,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "Last.fm の資格情報が正しくありません"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2783,6 +2783,9 @@ msgstr "Jūsų Google duomenys buvo neteisingi"
msgid "Your Last.fm credentials were incorrect"
msgstr "Jūsų Last.fm duomenys buvo neteisingi"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2732,6 +2732,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "Din last.fm brukerinformasjon var ikke korrekt"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2808,6 +2808,9 @@ msgstr "Uw Google inloggegevens zijn onjuist"
msgid "Your Last.fm credentials were incorrect"
msgstr "Uw Last.fm gegevens zijn incorrect"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2719,6 +2719,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2795,6 +2795,9 @@ msgstr "Niepoprawne dane konta Google"
msgid "Your Last.fm credentials were incorrect"
msgstr "Twoje dane Last.fm są niepoprawne"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2802,6 +2802,9 @@ msgstr "Os seus dados Google são inválidos"
msgid "Your Last.fm credentials were incorrect"
msgstr "A suas credenciais last.fm estão incorretas"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2789,6 +2789,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "Suas credencias do Last.fm estavam incorretas"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2723,6 +2723,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2783,6 +2783,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "Ваши данные Last.fm некорректны"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2785,6 +2785,9 @@ msgstr "Vaše Google údaje sú neplatné"
msgid "Your Last.fm credentials were incorrect"
msgstr "Vaše Last.fm poverenie bolo nekorektné"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2788,6 +2788,9 @@ msgstr "Vaša Google poverila so bila napačna"
msgid "Your Last.fm credentials were incorrect"
msgstr "Vaši podatki Last.fm so bili napačni"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2725,6 +2725,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr "Акредитиви за ЛастФМ које сте унели су нетачни"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2786,6 +2786,9 @@ msgstr "Dina Google-uppgifter var felaktiga"
msgid "Your Last.fm credentials were incorrect"
msgstr "Dina Last.fm-uppgifter var felaktiga"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2779,6 +2779,9 @@ msgstr "Google hesap bilgileriniz doğru değil"
msgid "Your Last.fm credentials were incorrect"
msgstr "Last.fm giriş bilgileriniz doğru değil"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2709,6 +2709,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2780,6 +2780,9 @@ msgstr "Вказані дані рахунку Google помилкові"
msgid "Your Last.fm credentials were incorrect"
msgstr "Ваші облікові дані Last.fm неправильні"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2786,6 +2786,9 @@ msgstr "Thông tin tài khoản Google của bạn không đúng"
msgid "Your Last.fm credentials were incorrect"
msgstr "Chứng thư Last.fm của bạn không đúng"
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2721,6 +2721,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -2725,6 +2725,9 @@ msgstr ""
msgid "Your Last.fm credentials were incorrect"
msgstr ""
msgid "Your Magnatune credentials were incorrect"
msgstr ""
msgid ""
"Your gstreamer installation is missing the 'ofa' plugin. This is required "
"for automatic tag fetching. Try installing the 'gstreamer-plugins-bad' "

View File

@ -135,6 +135,8 @@ SettingsDialog::SettingsDialog(BackgroundStreams* streams, QWidget* parent)
connect(remote_config_, SIGNAL(ValidationComplete(bool)), SLOT(ValidationComplete(bool)));
#endif
connect(ui_->magnatune, SIGNAL(ValidationComplete(bool)), SLOT(ValidationComplete(bool)));
// Icons
ui_->list->item(Page_Playback)->setIcon(IconLoader::Load("media-playback-start"));
ui_->list->item(Page_SongInformation)->setIcon(IconLoader::Load("view-media-lyrics"));
@ -309,6 +311,14 @@ void SettingsDialog::accept() {
}
#endif
if (ui_->magnatune->NeedsValidation()) {
ui_->magnatune->Validate();
ui_->buttonBox->setEnabled(false);
return;
} else {
ui_->magnatune->Save();
}
QSettings s;
// Behaviour