Index: sources/device/DeviceView.cpp =================================================================== diff -u -rdeaef8b5bdfe9be7293e63fb6ac256a9ce3cd3f4 -r6e18f1d24b8cc3d84d26f46f36f73deb34e54371 --- sources/device/DeviceView.cpp (.../DeviceView.cpp) (revision deaef8b5bdfe9be7293e63fb6ac256a9ce3cd3f4) +++ sources/device/DeviceView.cpp (.../DeviceView.cpp) (revision 6e18f1d24b8cc3d84d26f46f36f73deb34e54371) @@ -15,6 +15,7 @@ #include "DeviceView.h" // Qt +#include // Project #include "ApplicationController.h" @@ -31,8 +32,8 @@ DEVICE_VIEW_INIT_CONNECTIONS_LIST connect(&_DeviceController , SIGNAL(didPOSTOSVersionData(QString)), this , SLOT( onPOSTOSVersionData(QString))); - connect(&_DeviceController , SIGNAL(didWiFiIP(QString)), - this , SLOT( onWiFiIP(QString))); + connect(&_DeviceController , SIGNAL(didWiFiIP(QString, bool)), + this , SLOT( onWiFiIP(QString, bool))); } // ================================================================================================== @@ -166,30 +167,29 @@ // ================================================= RootSSHAccess void VDevice::doInitRootSSHAccess() { - // DEBUG : qDebug() << "HERE Request" << vValue; DeviceRootSSHAccessRequestData data; data.mIsGet = true; emit didAttributeRequest(data); } void VDevice::rootSSHAccessRequest(const Qt::CheckState &vValue) { - // DEBUG : qDebug() << "HERE Request" << vValue; DeviceRootSSHAccessRequestData data; data.mIsGet = false; data.mRootSSHAccess = vValue; emit didAttributeRequest(data); } void VDevice::onAttributeResponse(const DeviceRootSSHAccessResponseData &vData) { - if ( vData.mAccepted ) { - rootSSHAccess(vData.mRootSSHAccess); - status(""); + + if ( vData.mCompleted ) { + if ( vData.mAccepted ) { + emit rootSSHAccessChanged(vData.mRootSSHAccess); + status(""); + } + else { + status(vData.mMessage); + } } - else { - // this has to be called to let Gui to set to old value that device controller provided. - emit rootSSHAccessChanged(vData.mRootSSHAccess); - status(vData.mMessage); - } accepted(vData.mAccepted); reason (vData.mReason ); @@ -203,18 +203,14 @@ // Nothing for now. } -void VDevice::factoryResetRequest(const QString &vCommand) { - Q_UNUSED(vCommand) - // DEBUG : qDebug() << "HERE Request" << vCommand; - +void VDevice::factoryResetRequest(const QString &) { factoryResetEnabled(false); DeviceFactoryResetRequestData data; emit didAttributeRequest(data); } void VDevice::onAttributeResponse(const DeviceFactoryResetResponseData &vData) { - // QDEBUG : qDebug() << "HERE Response " << Q_FUNC_INFO << " accepted: " << vData.mAccepted; // this has to be called to let Gui to set to old value that device controller provided. status(vData.mMessage); @@ -232,10 +228,7 @@ // Nothing for now. } -void VDevice::decommissionRequest(const QString &vCommand) { - Q_UNUSED(vCommand) - // DEBUG : qDebug() << "HERE Request" << vCommand; - +void VDevice::decommissionRequest(const QString &) { decommissionEnabled(true); DeviceDecommissionRequestData data; @@ -251,7 +244,6 @@ } void VDevice::onAttributeResponse(const DeviceDecommissionResponseData &vData) { - //QDEBUG : qDebug() << "HERE Response " << Q_FUNC_INFO << " accepted: "<< vData.mAccepted << vData.mReason; // this has to be called to let Gui to set to old value that device controller provided. status(vData.mMessage); @@ -627,8 +619,58 @@ } // ================================================= WiFi Indicator -void VDevice::onWiFiIP (const QString &vData) +void VDevice::onWiFiIP (const QString &vData, bool vWifiError) { + if ( vWifiError ) { + ssid(""); + } ipAddress(vData); } +// ================================================= Date/Time +void VDevice::doInitDateTime() { + // Nothing for now. +} + +void VDevice::dateTimeRequest( const QString &) { + // Nothing for now. +} + +void VDevice::doDateTime(const QString &vYear, const QString &vMonth, const QString &vDay, + const QString &vHour, const QString &vMinute, bool vNTP) { + + const QDateTime currentDateTimeLocal ( QDate( vYear .toInt() , + vMonth .toInt() , + vDay .toInt()) , + QTime( vHour .toInt() , + vMinute .toInt())); + const QString dateTimeLocalStr = currentDateTimeLocal.toString(_Settings.getUpdateFormat()); // sudo date -s requires this format + + DeviceDateTimeRequestData data; + data.mDateTime = dateTimeLocalStr; + data.mNTP = vNTP; + + LOG_DEBUG(tr("SetDateTime %1").arg(dateTimeLocalStr)); + + emit didAttributeRequest(data); +} + +void VDevice::onAttributeResponse(const DeviceDateTimeResponseData &vData) { + + if ( vData.mCompleted ) { + if ( vData.mAccepted ) { + emit dateTimeChanged(""); + status(""); + } + else { + status(vData.mMessage); + } + } + + accepted(vData.mAccepted); + reason (vData.mReason ); + + // has to be the last one + response(true); +} +