more work on aqhome-cgi.
This commit is contained in:
@@ -53,7 +53,7 @@ void AQH_ModDevices_RunSetData(AQH_MODULE *m, AQCGI_REQUEST *rq, AQH_SESSION *se
|
||||
GWEN_DB_NODE *dbPost;
|
||||
const char *sDeviceName;
|
||||
const char *sValueName;
|
||||
AQH_VALUE_LIST *valueList;
|
||||
const AQH_VALUE *value;
|
||||
|
||||
/* sample data */
|
||||
sv=AQH_ModService_GetService(m);
|
||||
@@ -61,33 +61,25 @@ void AQH_ModDevices_RunSetData(AQH_MODULE *m, AQCGI_REQUEST *rq, AQH_SESSION *se
|
||||
sDeviceName=dbPost?GWEN_DB_GetCharValue(dbPost, "device", 0, NULL):NULL;
|
||||
sValueName=dbPost?GWEN_DB_GetCharValue(dbPost, "value", 0, NULL):NULL;
|
||||
DBG_ERROR(NULL, "Device=[%s], value=[%s]", sDeviceName?sDeviceName:"", sValueName?sValueName:"");
|
||||
valueList=sDeviceName?AQH_DataClient_GetValues(dc, sDeviceName, 0):NULL;
|
||||
if (valueList && AQH_Value_List_GetCount(valueList)) {
|
||||
const AQH_VALUE *value;
|
||||
|
||||
value=AQH_Value_List_First(valueList);
|
||||
while(value) {
|
||||
if (AQH_Value_GetValueType(value)==AQH_ValueType_Actor) {
|
||||
const char *sValueName;
|
||||
const char *sValue;
|
||||
value=AQH_ModDevices_GetValueForDevice(dc, sDeviceName, sValueName);
|
||||
if(value && AQH_Value_GetValueType(value)==AQH_ValueType_Actor) {
|
||||
const char *sValueName;
|
||||
const char *sValue;
|
||||
|
||||
sValueName=AQH_Value_GetName(value);
|
||||
sValue=GWEN_DB_GetCharValue(dbPost, sValueName, 0, NULL);
|
||||
if (sValueName && *sValueName) {
|
||||
DBG_ERROR(NULL, "Setting value %s to %s", sValueName?sValueName:"no name", sValue?sValue:"no value");
|
||||
switch(AQH_Value_GetModality(value)) {
|
||||
case AQH_ValueModality_RGBW: _setRgbwData(dc, value, sValue); break;
|
||||
case AQH_ValueModality_OnOff: _setOnOffData(dc, value, sValue); break;
|
||||
case AQH_ValueModality_OnOffAuto: _setOnOffAutoData(dc, value, sValue); break;
|
||||
default:
|
||||
break;
|
||||
} /* switch */
|
||||
} /* if (sValueName) */
|
||||
}
|
||||
value=AQH_Value_List_Next(value);
|
||||
} /* while */
|
||||
sValueName=AQH_Value_GetName(value);
|
||||
sValue=GWEN_DB_GetCharValue(dbPost, sValueName, 0, NULL);
|
||||
if (sValueName && *sValueName) {
|
||||
DBG_ERROR(NULL, "Setting value %s to %s", sValueName?sValueName:"no name", sValue?sValue:"no value");
|
||||
switch(AQH_Value_GetModality(value)) {
|
||||
case AQH_ValueModality_RGBW: _setRgbwData(dc, value, sValue); break;
|
||||
case AQH_ValueModality_OnOff: _setOnOffData(dc, value, sValue); break;
|
||||
case AQH_ValueModality_OnOffAuto: _setOnOffAutoData(dc, value, sValue); break;
|
||||
default:
|
||||
break;
|
||||
} /* switch */
|
||||
} /* if (sValueName) */
|
||||
}
|
||||
AQH_Value_List_free(valueList);
|
||||
|
||||
if (sDeviceName && *sDeviceName) {
|
||||
GWEN_BUFFER *pbuf;
|
||||
|
||||
Reference in New Issue
Block a user