Remote class implementation
[irwi] / src / remote.cpp
index 7ebab5a..b6d623b 100644 (file)
-#include "irctrl.h"
 #include "remote.h"
-#include "netio.h"
 
+#include <QString>
 #include <QSettings>
+#include <QNetworkAccessManager>
+#include <QNetworkRequest>
+#include <QUrl>
 
-Remote::Remote()
-    : rated(false)
-    , model("", "")
-    , settings(new QSettings())
-    , irCtrl(new IrCtrl())
-    , netIO(NULL)
+Remote::Remote(const Remote::QString &name)
+    : m_name(name)
 {
 }
 
-Remote::Remote(const QString &id, NetIO *netIO)
-    : rated(false)
-    , settings(new QSettings())
-    , irCtrl(new IrCtrl())
-    , netIO(netIO)
+Remote::Remote(const QString &name, const QString &mfg,
+        int rating, int voteCount)
+    : m_name(name), m_mfg(mfg),
+    m_rating(rating), m_voteCount(voteCount)
 {
-    setId(id);
 }
 
-Remote::~Remote()
+void Remote::saveToFile()
 {
-    delete settings;
-    delete irCtrl;
 }
 
-const QString &Remote::id() const
-{
-    return model.id;
-}
-
-void Remote::setId(const QString &id)
-{
-    model.id = id;
-}
-
-void Remote::setNetIO(NetIO *netIO)
-{
-    this->netIO = netIO;
-}
-
-void Remote::updateRating()
-{
-    connect(netIO, SIGNAL(ratingDownloaded(int)),
-            this, SIGNAL(ratingChanged(int)));
-    netIO->ratingById(model.id);
-}
-
-void Remote::sendRating(bool)
+void Remote::updateInfo()
 {
+    QSettings settings;
+    if (m_name != "") {
+        m_infoNAM->get(QNetworkRequest(QUrl(
+              settings.value("baseUrl").toString() 
+                + "vote/get?name=" 
+                + m_name )));
+    }
 }
 
-void Remote::sendCmd(RemoteCmd cmd)
+void Remote::sendRating(Rating::Rating r)
 {
-    switch (cmd)
-    {
-        case VOLUMEUP:
-            irCtrl->sendCmd(
-                    model.name,
-                    settings->value("cmdVolumeUp", "VOLUP").toString());
-            break;
-
-        case VOLUMEDOWN:
-            irCtrl->sendCmd(
-                    model.name,
-                    settings->value("cmdVolumeDown", "VOLUP").toString());
-            break;
-
-        case CHANNELUP:
-            irCtrl->sendCmd(
-                    model.name,
-                    settings->value("cmdChannelUp", "CHUP").toString());
-            break;
-
-        case CHANNELDOWN:
-            irCtrl->sendCmd(
-                    model.name,
-                    settings->value("cmdChannelDown", "CHDOWN").toString());
-            break;
-
-        case POWER:
-            irCtrl->sendCmd(
-                    model.name,
-                    settings->value("cmdPower", "POWER").toString());
-            break;
-
-        case MUTE:
-            irCtrl->sendCmd(
-                    model.name,
-                    settings->value("cmdMute", "MUTE").toString());
-            break;
-
-        default:
-            break;
+    QSettings settings;
+    if (m_name != "") {
+        m_ratingNAM->get(QNetworkRequest(QUrl(
+              settings.value("baseUrl").toString() 
+                + "vote/"
+                + r == Rating::Up ? "up" : "down"
+                + "?name=" 
+                + m_name )));
     }
 }
 
-
-