summaryrefslogtreecommitdiffstats
path: root/provisioning-model.lua
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2011-10-14 14:35:27 +0000
committerTed Trask <ttrask01@yahoo.com>2011-10-14 14:35:27 +0000
commit0501a13026838f688eb8822bf080b0040672190a (patch)
tree63ffdc84867d74efc6eebe96a902a95ab384e43e /provisioning-model.lua
parent102f3e62cedd0ff6cc6f556c3e506951ccb25c1a (diff)
downloadacf-provisioning-0501a13026838f688eb8822bf080b0040672190a.tar.bz2
acf-provisioning-0501a13026838f688eb8822bf080b0040672190a.tar.xz
Modify listdevices to also display the class values for each device
Diffstat (limited to 'provisioning-model.lua')
-rw-r--r--provisioning-model.lua12
1 files changed, 10 insertions, 2 deletions
diff --git a/provisioning-model.lua b/provisioning-model.lua
index f96da7e..61633d6 100644
--- a/provisioning-model.lua
+++ b/provisioning-model.lua
@@ -1191,8 +1191,16 @@ list_devices = function()
-- Get the devices from the DB
local res, err = pcall(function()
local connected = databaseconnect()
- local sql = "SELECT device_id FROM devices_to_classes GROUP BY device_id ORDER BY device_id ASC"
- retval = getselectresponse(sql)
+ local sql = "SELECT device_id, c.label AS class, g.label AS group FROM devices_to_classes d2c JOIN provisioning_classes c USING(class_id) JOIN provisioning_class_groups g USING(class_group_id) ORDER BY device_id"
+ local tmp = getselectresponse(sql)
+ local reverse_device_id = {}
+ for i,d in ipairs(tmp) do
+ if not reverse_device_id[d.device_id] then
+ retval[#retval+1] = {device_id=d.device_id}
+ reverse_device_id[d.device_id] = #retval
+ end
+ retval[reverse_device_id[d.device_id]][d.group] = d.class
+ end
if connected then databasedisconnect() end
end)
if not res and err then