8 #include <QNetworkAccessManager>
9 #include <QNetworkRequest>
10 #include <QNetworkReply>
13 Remote::Remote(const QString &name)
20 Remote::Remote(const QString &name, const QString &mfg,
21 int rating, int voteCount)
22 : m_name(name), m_mfg(mfg),
23 m_rating(rating), m_voteCount(voteCount)
30 connect(&m_remoteNAM, SIGNAL(finished(QNetworkReply*)),
31 this, SLOT(remoteDownloadFinished(QNetworkReply*)));
32 connect(&m_infoNAM, SIGNAL(finished(QNetworkReply*)),
33 this, SLOT(infoRequestFinished(QNetworkReply *reply)));
36 void Remote::saveToFile()
39 if (!m_name.isEmpty()) {
40 QString url = settings.value("remoteUrl",
41 "http://mercury.wipsl.com/irwi/uploaded/").toString()
43 m_remoteNAM.get(QNetworkRequest(QUrl(url)));
44 settings.setValue("remoteName", m_name);
48 void Remote::updateInfo()
51 if (!m_name.isEmpty()) {
52 QString url = settings.value("baseUrl",
53 "http://mercury.wipsl.com/irwi/").toString()
56 m_infoNAM.get(QNetworkRequest(QUrl(url)));
60 void Remote::sendRating(Rating::Rating r)
64 m_ratingNAM.get(QNetworkRequest(QUrl(
65 settings.value("baseUrl",
66 "http://mercury.wipsl.com/irwi/db.xml").toString()
68 + ((r == Rating::Up) ? "up" : "down")
74 void Remote::remoteDownloadFinished(QNetworkReply *reply)
76 if (reply->error() == QNetworkReply::NoError) {
77 QFile file(settings->value("lircConf", "/etc/lircd.conf").toString());
78 if(file.open(QIODevice::WriteOnly))
80 file.write(reply->readAll());
87 std::system("sudo /etc/init.d/lirc reload");
89 //emit remoteDownloaded();
92 void Remote::infoRequestFinished(QNetworkReply *reply)
94 if (reply->error() == QNetworkReply::NoError) {
95 m_rating = QString(reply->readline(20)).toInt();
96 m_voteCount = QString(reply->readline(20)).toInt();